Xmonad - Xmonad
![]() | |
![]() xmonad v režimu obkládání | |
Původní autoři | Spencer Janssen, Don Stewart, Jason Creighton |
---|---|
První vydání | 6. března 2007[1] |
Stabilní uvolnění | 0.15[2] / 30. září 2018 |
Náhled verze | nejnovější Darcs revize / (snímek) |
Úložiště | ![]() |
Napsáno | Haskell |
Operační systém | Kompatibilní s POSIX |
Plošina | Cross-platform; vyžaduje Systém X Window a GHC |
Velikost | 56 KB (zdrojový kód)[3] |
K dispozici v | Angličtina |
Typ | Správce oken |
Licence | BSD-3 |
webová stránka | xmonad![]() |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/6/64/Xmonad-tall-status-dons.png/220px-Xmonad-tall-status-dons.png)
xmonad je dynamický správce oken (obklady ) pro Systém X Window, známý pro psaní v funkční programovací jazyk Haskell.[4][5]
Správce oken
Zahájeno v březnu 2007, byla oznámena verze 0.1[6] v dubnu 2007 jako 500 řádky Haskell.[7] xmonad je a správce oken obkladů, blízký dwm, larswm, a StumpWM. Uspořádá okna v nepřekrývajícím se vzoru a umožňuje správu oken bez použití myš. xmonad je zabaleno a distribuovány na širokou škálu Unixový operační systémy, jako je velký počet Linuxové distribuce, a BSD systémy.
Zatímco původně a klon z dwm (derivát v oblastech, jako jsou výchozí klávesové zkratky), xmonad nyní podporuje funkce, které nejsou uživatelům dwm k dispozici[8][9] jako je rozložení podle pracovního prostoru, odraz obkladů, zachování stavu, zrcadlení rozložení, GNOME podpora a stavové pruhy na obrazovce; lze jej upravit úpravou externího konfiguračního souboru a během provozu jej znovu načíst.[10] funkce xmonad začaly ovlivňovat další správce oken obkladů - dwm si vypůjčil „háčky na naléhavost“ od xmonad,[11] také zahrnoval Xinerama podpora pro multihead displeje ) s uvolnění 4.8 a existují opravy, které mají znovu implementovat Fibonacciho rozložení xmonad.[12]
Haskellův projekt
V roce 2007 manuálová stránka stanovený:
Využitím expresivity moderního funkčního jazyka s bohatým statický typ Systém xmonad poskytuje kompletního a funkčního správce oken v méně než 500 řádcích kódu s důrazem na správnost a robustnost. Vnitřní vlastnosti správce oken se kontrolují pomocí kombinace statických záruk poskytovaných typovým systémem a podle typu automatizované testování. Výhodou je, že kód je snadno srozumitelný a snadno se upravuje.[13]
Rozšíření základního systému, včetně emulace dalších správců oken a neobvyklých algoritmů rozložení, například okna obklady založeno na Fibonacciho spirála, byly implementovány aktivní komunitou[14] a jsou k dispozici jako knihovna.[15]
Kromě odstranění potřeby myši[16] vývojáři xmonad hojně využívají semi-formální metody a odvození programu pro zlepšení spolehlivosti a umožnění celkového počtu řádků kódu méně než 1200 od verze 0.7; vlastnosti správce oken (například chování fokusu okna) jsou kontrolovány pomocí Rychlá kontrola.[17] Díky tomuto důrazu je xmonad neobvyklý mnoha způsoby; kromě toho, že je prvním správcem oken napsaným v Haskellu, je také prvním, kdo používá zip datová struktura pro automatickou správu soustředit se a jeho jádro se ukázalo jako bezpečné vzor odpovídá,[18] dále přispívá ke spolehlivosti. Vývojáři píší:
xmonad je správce obkladových oken pro systém X Window, implementovaný, konfigurovaný a dynamicky rozšiřitelný v Haskellu. Tato demonstrace představuje případ, kterému dominuje software vedlejší efekty lze vyvinout s přesností a účinností, kterou od Haskella očekáváme, využitím čistě funkčních datových struktur, expresivních typový systém, rozšířená statická kontrola a testování na základě vlastností. Kromě toho popisujeme použití Haskellu jako jazyka konfigurace a rozšíření aplikace.[19]
Kód je rozdělen na bezplatný kód s vedlejšími účinky a tenký obal pro vedlejší účinky.[20] Podle Alejandra Serrana Meny existují dva způsoby implementace jazyky specifické pro doménu pro akce v Haskellu aplikace a knihovny "vývoj a kombinátor knihovna "nebo" válcování vlastní monad ", přičemž xmonad je úspěšným příkladem toho druhého.[21]xmonad byl považován za jeden z nejznámějších projektů Haskell v knize 2013 o funkčním programování.[5]
Recepce
Linux Magazine zahrnoval xmonad do seznamu „Moje hlavní zdroje roku 2009“.[22] V roce 2012, How-To Geek popsal xmonad jako mající dobrou, ale komplikovanou schopnost konfigurovat,[23] a byla zahrnuta do seznamu osmi desktopových prostředí pro Linux z roku 2013.[24] Záchranář napsal, že základní operace uživatelského rozhraní xmonads lze naučit pomocí malé sady pokynů.[25] Vysokou úroveň přizpůsobení a rychlost zaznamenal Síťový svět,[4] a v MakeUseOf byla xmonad hodnocena pozitivně ve srovnání s Otevřít krabici.[26]
V roce 2016 Ars Technica řekl xmonad a Úžasné měl pokročilejší schopnost obkládání než Skořice.[27] V roce 2017 byl popsán jako výkonný s aplikací jako správce systému Windows pro velká data,[28] zatímco v článku o opensource.com na druhou stranu, dwm byl vybrán nad xmonad.[29] A TechRadar recenze „Nejlepší desktop Linuxu roku 2018“ uvedl: „Pokud existuje jedno desktopové prostředí, které se vymyká všem ostatním, které zde máme, je to právě toto.“[30]
Vzhledem k malému počtu řádků kódu aplikace Xmonad bylo použití čistě funkční programování Jazyk Haskell a zaznamenané použití přísného testovacího postupu se někdy používá jako základní aplikace v jiných výzkumných projektech. To zahrnovalo opětovnou implementaci xmonad pomocí Coq proof asistent,[31] odhodlání xmonad je imperativní program,[32] a studie o správa balíčků týkající se NixOS linuxová distribuce.[33]
Viz také
Reference
- ^ „Počáteční import. · Xmonad / xmonad @ b2c1430“. GitHub.
- ^ „Vydání - xmonad / xmonad“. Citováno 1. února 2019 - přes GitHub.
- ^ "xmonad: stáhnout". suckless.org. Archivováno z původního dne 2012-12-26. Citováno 17. prosince 2012.
- ^ A b Lunduke, Bryan (15. května 2013). „10 úžasných desktopových prostředí Linuxu, které jste pravděpodobně nikdy neviděli“. Síťový svět. xmonad. Archivováno z původního dne 25. května 2018.
- ^ A b Ohlig, Jens; Mehnert, Hannes; Schirmer, Stefanie (24. září 2018). Das Curry-Buch - Funkční programové rozhraní s JavaScriptem. O'Reilly Německo. p. 177. ISBN 978-3868993691 - prostřednictvím Knih Google.
- ^ "{titul}". Archivovány od originálu dne 2007-06-25. Citováno 2018-09-23.CS1 maint: BOT: stav původní adresy URL neznámý (odkaz) Seznam adresátů Haskell-cafe od Spencera Janssena
- ^ „Xmonad: správce obkladových oken napsaný v Haskellu“. OSNews. 2007-05-22. Archivováno od originálu dne 2008-04-11. Citováno 2007-09-23.
- ^ „Prostředí ovládaná klávesnicí Otevřít nové okno“. OSNews. 2007-05-31. Archivováno z původního dne 2007-06-04. Citováno 2007-05-31.
- ^ "xmonad 0.4 Vydáno". OSNews. 2007-10-19. Archivováno od originálu na 2007-12-22. Citováno 2007-12-23.
- ^ Prostřednictvím kombinace rychlého překompilování a poté popravující nový binární soubor xmonad; vidět „Haskell Weekly News: 27. dubna 2007“. Haskell Weekly News. 2007-04-27. Archivovány od originál dne 29. 05. 2007. Citováno 2007-05-23.
- ^ Viz vývojářská diskuse Archivováno 2018-09-18 na Wayback Machine na seznamu adresářů dwm
- ^ Suckless.org: Oprava rozvržení Fibonacci Archivováno 2013-04-13 na Wayback Machine do dwm
- ^ „Manpage of xmonad“. xmonad.org. 2007-04-18. Archivováno z původního dne 2007-07-08. Citováno 2007-05-17.
- ^ xmonad uživatelé generují značný provoz v #xmonad Archivováno 2007-12-29 na Wayback Machine IRC kanál a e-mailový seznam xmonad; kromě toho existuje značný počet revizí do rozšiřující knihovny od vývojářů, kteří nejsou jádry (viz Stránka statistik xmonad Archivováno 2007-12-23 na Wayback Machine )
- ^ "xmonad: Přispěl kód". xmonad.org. 2007-05-22. Archivováno od originálu 2007-09-16. Citováno 2007-05-23.
- ^ Mitchell, Neil (červen 2008). „6.5.5“. Transformace a analýza (PDF) (PhD). University of York. Archivováno (PDF) z původního dne 12. září 2018. Citováno 12. září 2018.
- ^ Hu, Zhenjiang; Hughes, John; Wang, Meng (2015). „Na čem záleží funkční programování“ (PDF). National Science Review. 2 (3): 350–351. doi:10.1093 / nsr / nwv042. ISSN 2095-5138. Archivováno (PDF) od originálu 23. 7. 2018. Citováno 27. září 2018.
- ^ Mitchell, Neil (9. května 2007). „Blog Haskella od Neila Mitchella: Havaruje XMonad?“. Archivováno z původního dne 2007-05-14. Citováno 2007-05-17.
- ^ Stewart & Janssen, 2007
- ^ Warden, Shane; Biancuzzi, Federico (2009). Masterminds of Programming: Conversations with the Creators of Major Programming Languages. O'Reilly Media. p. 181. ISBN 978-0596515171. Archivováno od originálu na 2018-09-19. Citováno 2018-09-18.
- ^ Mena, Alejandro Serrano (5. března 2014). Beginning Haskell: A Project-Based Approach. Apress. p. 385. ISBN 9781430262510. Archivováno z původního dne 2018-09-24. Citováno 2018-09-24 - prostřednictvím Knih Google.
- ^ Zawodny, Jeremy (06.12.2009). „Moje hlavní zdroje roku 2009“. Linux Magazine. Archivováno z původního 23. září 2018. Citováno 2018-09-23.
- ^ Hoffman, Chris (2012-05-24). „Jak používat Xmonad, správce okenních oken pro Linux“. How-To Geek. Archivováno z původního dne 2018-09-18. Citováno 2018-09-17.
- ^ Hoffman, Chris (18. 05. 2013). „Uživatelé systému Linux mají na výběr: 8 desktopových prostředí Linuxu“. How-To Geek. Archivováno od originálu na 2017-07-13. Citováno 2018-09-24.
- ^ Goerzen, John (01.01.2013). „Vychoval jsem své děti na příkazovém řádku ... a oni to milují“. Záchranář. Univision Communications. Archivováno z původního dne 2018-09-18. Citováno 2018-09-17.
- ^ Stieben, Danny (2018-09-18). „Potřebujete nové desktopové prostředí pro Linux? Zkuste Openbox nebo xmonad“. makeuseof.com. Archivováno od originálu 23. 11. 2017. Citováno 2018-09-24.
- ^ „Recenze Mint 18:„ Just works “Linux už není o nic lepší než tento“. Ars Technica. 2016-08-04. Archivováno od originálu dne 2018-09-17. Citováno 2018-09-17.
- ^ Nita, Stefania Loredana; Mihailescu, Marius (14. září 2017). Praktický souběžný Haskell: S velkými datovými aplikacemi. Apress. 40–41. ISBN 978-1484227800 - přes Amazon.
- ^ „Nejlepší 4 důvody, proč používám dwm pro svého správce oken Linux“. Opensource.com. červená čepice. 2017-07-18. Archivováno z původního dne 2018-09-18. Citováno 2018-09-17.
- ^ „Nejlepší desktop Linuxu roku 2018“. TechRadar. Budoucí plc. 2018-01-15. Archivováno z původního dne 2018-09-18. Citováno 2018-09-17.
- ^ Swierstra, Wouter (13. září 2012). "xmonad in Coq (Experience Report) Programování správce oken s pomocníkem kontroly". In Voigtländer, J (ed.). Haskell '12 Proceedings of the 2012 Haskell Symposium. ICFP 2012 17. mezinárodní konference ACM SIGPLAN o funkčním programování. Kodaň, Dánsko: Sdružení pro výpočetní techniku. str. 131–136. ISBN 978-1-4503-1574-6.
- ^ Lippmeier, Ben (květen 2010). Zadejte odvození a optimalizaci pro nečistý svět (PDF) (PhD). Australská národní univerzita. str. 45–46. Archivováno (PDF) z původního dne 2018-09-27.
- ^ Dolstra, Eelco; LÖH, Andres; Pierron, Nicolas (listopad 2010). „NixOS: čistě funkční distribuce Linuxu“. Journal of Functional Programming. 20 (5–6): 577–615. doi:10.1017 / S0956796810000195. ISSN 0956-7968.
- Poznámky
- Stewart, Don; Janssen, Spencer (září 2007). „XMonad: Správce oken obkladů“ (PDF). Haskell '07: Proceedings of the ACM SIGPLAN Workshop on Haskell Workshop: 119. doi:10.1145/1291201.1291218. ISBN 978-1-59593-674-5. Citováno 2007-10-22.
- Archiv Asociace pro výpočetní techniku
- Návrh a implementace Xmonad - Správce obkladových oken - Video .mov prezentace na Wayback Machine (archivováno 30. dubna 2016)
Další čtení
- Lunduke, Bryan (05.02.2018). Půl dekády Linux-y Shenanigans. Bryan Lunduke. p. 5. ISBN 9781387571246. Podle Bryana Lunduke je xmonad neznámý desktopové prostředí napsáno v neznámém programovacím jazyce a dodává: „Jsou selhání xmonad a Haskell? Jsou mrtví? Ne. Protože jsou jedineční. Jsou přizpůsobitelní. Jsou živí a nakopávají (a úžasně).“
- Tucker, Ronnie (29. listopadu 2013). „Full Circle Magazine # 79: NEZÁVISLÝ ČASOPIS PRO KOMUNITU LINUXU UBUNTU“. Úplný kruh. Tým Full Circle - prostřednictvím Knih Google. - použití xmonad a dalších odlehčených správců oken
externí odkazy
- Oficiální webové stránky
- „Taste of Haskell“ - OSCON prezentace od Simon Peyton Jones na Haskellu, přičemž jako příklad použil xmonad
- První polovina řeči na YouTube (video)
- Druhá polovina řeči na YouTube (video)