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
-~----------~----~----~----~------~----~------~--~---

Reply via email to