Looks great :-) can't wait to see this in master. Cheers, Tim
Sent from my iPhone On 25 Sep 2009, at 18:02, David Pollak <feeder.of.the.be...@gmail.com> wrote: > > > On Thu, Sep 24, 2009 at 11:33 AM, Naftoli Gugenheim <naftoli...@gmail.com > > wrote: > > If you like the idea of having them all as attributes but don't like > the idea of using a single attribute ('xx:eager_eval="true" > xx:parallel="true"' rather than 'xx:eval="eager parallel"' as I > suggested, where xx is the prefix to be chosen) then maybe the > prefix should be 'eval'. > > I've changed the code to: > liftx:eager_eval="true" > liftx:par="true" | liftx:parallel="true" > > The reasons for not combining them: > They are evaluated in different parts of the code, thus eager/ > parallel doesn't make sense from a code path perspective > I am reserving the value of liftx:par for future implementation to > allow farming the snippet evaluation to another mechanism. Right > now, it's hard-coded to use LiftActors. I can see a time when it > would work with Akka actors or some other parallelization mechanism > > > > As far as "ajax evaluation" I'm not sure I'm understanding. Could > you show me what you're thinking? > If I have a snippet > <lift:MySnippet /> > what would be the syntax to have it inserted via ajax? > > <lift:Ajax> <!-- the snippet name will not be ajax, but you get the > idea --> > <lift:MySnippet/> > </lift:Ajax> > > > ------------------------------------- > Ross Mellgren<dri...@gmail.com> wrote: > > My 2 cents, > > I'm not sure I'm a fan of do: namespace, though I agree it would be > nice to have a common one. Maybe snippet:parallel, snippet:eager_eval? > > -Ross > > On Sep 24, 2009, at 12:46 PM, David Pollak wrote: > > > > > > > On Wed, Sep 23, 2009 at 11:43 AM, Naftoli Gugenheim <naftoli...@gmail.com > > > wrote: > > > > What do you mean by "as a normal snippet"? > > > > The parallel snippet processing is implemented deep inside > > LiftSession. It's not a snippet. All the <lift:xxx/> tags, even > > those with defaults built into Lift, are implemented as snippets and > > are invoked with normal snippet invocation mechanisms. > > > > That you will nest your snippet inside a special snippet? > > > > There is no special snippet. I used the word "normal" to highlight > > that it's functionality that doesn't require a change to LiftSession > > or other parts of Lift to function correctly. > > > > To me it seems worthwhile to have a consistency between the two > > syntax-wise, since they have some common denominator semantics-wise. > > Actually, maybe throw in eager_eval to the mix. Maybe we could have > > one eval or lift:eval or liftx:eval or whatever attribute, which can > > contain a space separated list of specifiers--eager, ajax, parellel. > > > > Anything that's prefixed with lift: is a snippet. I'm open to > > unifying eager_eval and do:lazy (or do:par or do:parallel) into a > > unified namespace. > > > > > > > > ------------------------------------- > > David Pollak<feeder.of.the.be...@gmail.com> wrote: > > > > On Wed, Sep 23, 2009 at 10:40 AM, Naftoli Gugenheim <naftoli...@gmail.com > > >wrote: > > > > > > > > A snippet attribute can be invoked with something other than > > > lift:snippet="Class.method"? There's a short syntax? What is it? > > > > > > > There may be a short syntax (e.g., lift:Class.method) in the future. > > > > > > > What was used for the feature that inserts a snippet > > asynchronously via > > > Ajax? > > > > > > > That feature isn't done yet, but that feature is likely to be done > > as a > > normal snippet. > > > > > > > My concern is that as more features are thought up and added they > > shouldn't > > > all end up with different prefixes. > > > Also, if the prefix is nothing special I would go with the more > > verbose > > > "parallel" because otherwise it's not obvious what it does. If > > it's prefixed > > > with "lift:" at least you know it's a lift tag and you can look it > > up > > > somewhere or ask on the list etc. But if you come back to some old > > template > > > that says "do:par" you may be left clueless. > > > > > > > > > ------------------------------------- > > > David Pollak<feeder.of.the.be...@gmail.com> wrote: > > > > > > On Wed, Sep 23, 2009 at 3:59 AM, Naftoli Gugenheim <naftoli...@gmail.com > > > >wrote: > > > > > > > > > > > Could that be changed to lift:concurrent or lift:par etc. (see > > email on > > > > scala-user from Marting Odersky mentioned the future use of > > 'seq' and > > > 'par' > > > > in concurrent collections)? > > > > Why use a different prefix than everything else built in to > > lift? And > > > > 'lazy' is arguably not what's happening. > > > > > > > > > > > > > We're using a different prefix because if we use a lift:xxx > > prefix, the > > > snippet execution machinery will be invoked on the attribute and > > we don't > > > want that. > > > > > > I'm cool with do:par unless anyone has a better suggestion. > > > > > > Thanks, > > > > > > David > > > > > > > > > > Thanks. > > > > > > > > > > > > ------------------------------------- > > > > Jeppe Nejsum Madsen<je...@ingolfs.dk> wrote: > > > > > > > > > > > > David Pollak <feeder.of.the.be...@gmail.com> writes: > > > > > > > > > I've added code (it's in review board right now) that will > > > automatically > > > > > farm any snippet with the "do:lazy='true'" attribute set. > > > > > > > > > > So, <lift:foo/> will execute the foo snippet inline. > > > > > > > > > > <lift:foo do:lazy="true"/> will execute the foo snippet in > > parallel and > > > > join > > > > > the result back to page before its rendered. > > > > > > > > Very nice! In what context is the snippet executed? I assume > that > > > > all timeout handling, errors etc should be handled by the > > snippet just > > > > as in the non-lazy fashion? > > > > > > > > /Jeppe > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > Lift, the simply functional web framework http://liftweb.net > > > Beginning Scala http://www.apress.com/book/view/1430219890 > > > Follow me: http://twitter.com/dpp > > > Surf the harmonics > > > > > > > > > > > > > > > > > > > > > > -- > > Lift, the simply functional web framework http://liftweb.net > > Beginning Scala http://www.apress.com/book/view/1430219890 > > Follow me: http://twitter.com/dpp > > Surf the harmonics > > > > > > > > > > > > > > > > -- > > Lift, the simply functional web framework http://liftweb.net > > Beginning Scala http://www.apress.com/book/view/1430219890 > > Follow me: http://twitter.com/dpp > > Surf the harmonics > > > > > > > > > > > > > > -- > Lift, the simply functional web framework http://liftweb.net > Beginning Scala http://www.apress.com/book/view/1430219890 > Follow me: http://twitter.com/dpp > Surf the harmonics > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---