Hi all,

I'm working on the web framework and came up with this:

: render-plain-list ( seq component quot -- )
     '[ , component>> renderer>> @ ] each ; inline

: render-ordered-list ( seq quot component -- )
     <ol> '[ <li> @ </li> ] render-plain-list </ol> ; inline

: render-unordered-list ( seq quot component -- )
     <ul> '[ <li> @ </li> ] render-plain-list </ul> ; inline

: render-list ( value renderer quot -- )
     over type>> {
         { +plain+     [ render-plain-list ] }
         { +ordered+   [ render-ordered-list ] }
         { +unordered+ [ render-unordered-list ] }
     } case ; inline

M: list-renderer render-view*
     [ render-view* ] render-list ;

M: list-renderer render-summary*
     [ render-summary* ] render-list ;

I think this is a pretty nice use-case for 'fry' and its hard to  
imagine how this code could be improved further.

Slava

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to