madf: (Default)
[personal profile] madf
Прекрасне відео про нутрощі XMonad:

Продовження: http://www.youtube.com/watch?v=ivdyLaH3PhY&list=PLxj9UAX4Em-IBXkvcC3MycLlcxyoi7v8B&index=4
В основному мова йде про StackSet, структуру даних що керує вікнами і workspace'ами, і про Zipper. Показано принципи зневадження на реальному прикладі. Про Zipper зовсім трохи, поверхнево. Про нього краще почитати у Дона Стюарта (один із співавторів Real World Haskell і XMonad): https://donsbot.wordpress.com/2007/05/17/roll-your-own-window-manager-tracking-focus-with-a-zipper/
Там же є посилання на оригінальну працю Gerard’а Huet’а, який і придумав Zipper.
А у джерельних кодах XMonad можна знайти цитату самого Олега:
--    A Zipper is essentially an `updateable' and yet pure functional           
--    cursor into a data structure. Zipper is also a delimited                  
--    continuation reified as a data structure.                                 
--                                                                              
--    The Zipper lets us replace an item deep in a complex data                 
--    structure, e.g., a tree or a term, without an  mutation.  The             
--    resulting data structure will share as much of its components with        
--    the old structure as possible.                                            
--                                                                              
--      Oleg Kiselyov, 27 Apr 2005, haskell\@, "Zipper as a delimited continuation"
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

madf: (Default)
madf

April 2018

S M T W T F S
1234567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 28th, 2025 06:09 pm
Powered by Dreamwidth Studios