On Sat, Mar 21, 2009 at 7:24 AM, Alexander Kellett <[email protected]>wrote:

>
> thank you for the suggestion (and reallllly nice of javarebel to make
> this available to scala devels!), much nicer than refreshing and
> getting a jetty no-contexts page.
>
> unfortunately, as scala:cc is polling rather than using a filesystem
> notifier, the latency between file modification and .class update is
> huge.


This is almost all compilation time.  On my Linux box, I put the terminate
next to my IDE and I can see the compilation process start as soon as I hit
save.

Compiling Scala code just plain takes a lot of time.  Especially if you've
got a lot of functions in a file (e.g., a parser combinator) where compile
times for a single file may be > 30 secs and result in thousands of class
files.


> on top of that, the compiler is quite slow, therefore most of
> the time, i reload, and the page has not yet changed.
>
> my gut feeling (maybe there are better options) is that scala should
> in development mode on request verify that the timestamps of all files
> are earlier than that of the .class files. if thats the case, it
> should block until the .class file timestamps change. probably some
> corner cases, but this should be enough most of the time.
>
> going to find some docs on working on lift itself.
>
> Alex
>
> On Thu, Mar 19, 2009 at 5:07 PM, Timothy Perrett
> <[email protected]> wrote:
> >
> >
> > Alex, you could always use JavaRebel... This will replace the classes
> > dynamically for you instantly (no more Jetty reboots required, just
> browser
> > refresh). They do a scala only version of JavaRebel that you can download
> > for free.
> >
> > Thanks
> >
> > Tim
> >
> > On 19/03/2009 15:12, "Alexander Kellett" <[email protected]> wrote:
> >
> >>
> >> is it possible for lift to block until such compiles are redone? the
> >> compiler is simply too slow at this point to be used with such an
> >> interactive cycle for me alas. i reload and get either the old, or
> >> 500s. simply too error prone.
> >>
> >> Alex
> >>
> >> On Thu, Mar 5, 2009 at 6:02 AM, David Pollak
> >> <[email protected]> wrote:
> >>> One can get continuous build with any editor.  mvn scala:cc scans for
> >>> changed files and recompiles.  With the compiler changes that David
> MacIver
> >>> is work on, the compiler will not only recompile the changed files, but
> also
> >>> all dependent files (including dependencies due to implicits, traits,
> etc.)
> >>> Using mvn scala:cc or Eclipse along with JavaRebel makes writing Lift
> apps
> >>> kinda sorta like writing web apps in a scripting language.
> >>
> >> >
> >>
> >
> >
> >
> > >
> >
>
> >
>


-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Git some: http://github.com/dpp

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to