- About Scala
- Documentation
- Code Examples
- Software
- Scala Developers
It's fast now! It's fast now!
Tue, 2010-01-19, 19:34
I updated (I think yesterday) the plugin and everything in eclipse just got
seriously faster...ctrl-shift-T, cstrl-shift-R, it doesn't get stuck anymore
etc.
GREAT! thank you!
Now the speed of cranking out a piece of functionality in scala is getting
finally faster than in Java...I always added the time wasted with eclipse
crashing and overall slowness to the saving in code size :)
There is just one major time waster I bump into all the time: the compiler
gets confused very often, when modifying code in base projects, if there's
any compile error, I get hundreds of errors everywhere in dependent
projects, which most of the time don't automatically go away if the original
error in the reused class is fixed, requiring a clean/build all, which is a
drag.
It also makes it hard to find the original error: digging in the error list,
because of the multiple projects and hundreds of errors.
Anyways, great job. Much appreciated!
-----
Razvan Cojocaru,
Work: http://www.sigma-systems.com
Me: http://feeds.razie.com/RazvanTech
Playground: http://wiki.homecloud.ca
Wed, 2010-01-20, 07:47
#2
Re: It's fast now! It's fast now!
On Tue, 2010-01-19 at 20:49 +0000, Miles Sabin wrote:
> Yup, this is the biggest issue at the moment.
I have been porting a set of projects with inter-dependencies from Scala
2.7 with the plugin and this is indeed one of the remaining issues. The
other two I found that I would classify as very important are:
- Clean builds don't seem to work very well.
A comment[1] by spiros on ticket #1964 describes it well:
"Unfortunately we now have the opposite problem, when we have
interconnected classes the incremental compiler works fine (there are
other bugs but not this one) and when we do a Clean&Build we get the
behavior described above (lots of not found errors)."
I have an instance where I always get an error "Foo is already defined
as object Foo" with a clean build that works fine with an incremental
build. Clean builds were the way out in 2.7.x, so it's a bit unsettling
to lose that in 2.8.x.
- Presentation compiler out of sync with the build compiler. During
porting, the presentation compiler was completely useless. I had to rely
on the Problems view and the error marker in the tab to guide me as the
editor contained a _lot_ of incorrect errors.
- Editor not initialized errors. Weirdly enough, these seem to sometimes
go away when the editor is reopened. The error log shows errors like the
following, so looks like ticket #2892[2]:
scala.tools.nsc.symtab.Symbols$CyclicReference: illegal cyclic reference
involving value content
On the other hand, no Java code is used in the given Scala files, so I
don't know if it's the same.
I haven't filed bugs as I don't yet have steps to reproduce and as has
been said, it's difficult to create them for these things. For the
record, I have been using the nightlies from the last 2 or 3 days
(including today)
Best,
Ismael
P.S. OK, it was 3 issues in the end. ;)
[1] https://lampsvn.epfl.ch/trac/scala/ticket/1964#comment:2
[2] https://lampsvn.epfl.ch/trac/scala/ticket/2892
Wed, 2010-01-20, 09:37
#3
Re: It's fast now! It's fast now!
On Wed, Jan 20, 2010 at 6:40 AM, Ismael Juma wrote:
> On Tue, 2010-01-19 at 20:49 +0000, Miles Sabin wrote:
>> Yup, this is the biggest issue at the moment.
>
> I have been porting a set of projects with inter-dependencies from Scala
> 2.7 with the plugin and this is indeed one of the remaining issues. The
> other two I found that I would classify as very important are:
>
> - Clean builds don't seem to work very well.
>
> A comment[1] by spiros on ticket #1964 describes it well:
>
> "Unfortunately we now have the opposite problem, when we have
> interconnected classes the incremental compiler works fine (there are
> other bugs but not this one) and when we do a Clean&Build we get the
> behavior described above (lots of not found errors)."
My assumption is that 1964 and 2767 are related ... reproducers for
either or both would be incredibly helpful.
One thing though. You say "Clean builds don't seem to work very well"
are you implying that there is a problem with the build compiler (ie.
no or only some classfiles generated) or just that a clean build
triggers the presentation compiler issue?
> - Editor not initialized errors. Weirdly enough, these seem to sometimes
> go away when the editor is reopened. The error log shows errors like the
> following, so looks like ticket #2892[2]:
>
> scala.tools.nsc.symtab.Symbols$CyclicReference: illegal cyclic reference
> involving value content
>
> On the other hand, no Java code is used in the given Scala files, so I
> don't know if it's the same.
I think that warrants a fresh ticket.
Cheers,
Miles
Wed, 2010-01-20, 10:07
#4
Re: It's fast now! It's fast now!
Unfortunately, I cannot share this experience.
I updated to the latest nightly on monday (and tried again with the one from today).For me, the editor has become very unresponsive when typing (not when navigating).
Whenever I type multiple characters, the first appears immediately on the screen, butthen the display is updated only every second or so, i.e. a bunch of typed charactersshow up every second. In between, the editor blocks (no cursor blinking). This was definitely not the case in earlier versions (few weeks ago).I'm working on the GenMSIL.scala file.
I have to say that in its current state, eclipse is really not usable for me...
Cheers: Lukas
On Tue, Jan 19, 2010 at 19:34, Razvan Cojocaru <razie@razie.com> wrote:
I updated to the latest nightly on monday (and tried again with the one from today).For me, the editor has become very unresponsive when typing (not when navigating).
Whenever I type multiple characters, the first appears immediately on the screen, butthen the display is updated only every second or so, i.e. a bunch of typed charactersshow up every second. In between, the editor blocks (no cursor blinking). This was definitely not the case in earlier versions (few weeks ago).I'm working on the GenMSIL.scala file.
I have to say that in its current state, eclipse is really not usable for me...
Cheers: Lukas
On Tue, Jan 19, 2010 at 19:34, Razvan Cojocaru <razie@razie.com> wrote:
I updated (I think yesterday) the plugin and everything in eclipse just got
seriously faster...ctrl-shift-T, cstrl-shift-R, it doesn't get stuck anymore
etc.
GREAT! thank you!
Now the speed of cranking out a piece of functionality in scala is getting
finally faster than in Java...I always added the time wasted with eclipse
crashing and overall slowness to the saving in code size :)
There is just one major time waster I bump into all the time: the compiler
gets confused very often, when modifying code in base projects, if there's
any compile error, I get hundreds of errors everywhere in dependent
projects, which most of the time don't automatically go away if the original
error in the reused class is fixed, requiring a clean/build all, which is a
drag.
It also makes it hard to find the original error: digging in the error list,
because of the multiple projects and hundreds of errors.
Anyways, great job. Much appreciated!
-----
Razvan Cojocaru,
Work: http://www.sigma-systems.com
Me: http://feeds.razie.com/RazvanTech
Playground: http://wiki.homecloud.ca
--
View this message in context: http://old.nabble.com/It%27s-fast-now%21-It%27s-fast-now%21-tp27230437p27230437.html
Sent from the Scala - Tools mailing list archive at Nabble.com.
Wed, 2010-01-20, 10:27
#5
Re: It's fast now! It's fast now!
On Wednesday 20 January 2010 10:00:16 Lukas Rytz wrote:
> Whenever I type multiple characters, the first appears immediately on the
> screen, but then the display is updated only every second or so, i.e. a
> bunch of typed characters show up every second. In between, the editor
> blocks (no cursor blinking). This was definitely not the case in earlier
> versions (few weeks ago). I'm working on the GenMSIL.scala file.
I've experienced similar behavior from time to time, also when working on the
compiler. I've noticed that the heap got filled up (Preferences -> General ->
Show Heap Status enables a bar on the bottom of Eclipse) and running the
garbage collector did not free any more memory. So I just had to restart
Eclipse every few hours and enlarge the max heap size...
Cheers,
Mirko
Wed, 2010-01-20, 10:37
#6
Re: It's fast now! It's fast now!
On Wed, 2010-01-20 at 10:24 +0100, Mirko Stocker wrote:
> I've noticed that the heap got filled up (Preferences -> General ->
> Show Heap Status enables a bar on the bottom of Eclipse) and running the
> garbage collector did not free any more memory. So I just had to restart
> Eclipse every few hours and enlarge the max heap size...
Yeah, this has been a problem since the 2.7.x series, but _seems_ like
it got worse in 2.8.x although I haven't used the latter for long enough
to be sure.
Ismael
Wed, 2010-01-20, 10:47
#7
Re: It's fast now! It's fast now!
On Wed, 2010-01-20 at 08:34 +0000, Miles Sabin wrote:
> One thing though. You say "Clean builds don't seem to work very well"
> are you implying that there is a problem with the build compiler (ie.
> no or only some classfiles generated) or just that a clean build
> triggers the presentation compiler issue?
A problem with the build compiler. The error shows itself in the
Problems view and no classfiles are generated. I can reliably reproduce
this with one project, but sadly I can't share the project. The error in
the problems view is:
"Foo is already defined as object Foo"
where Foo is the name of the object. If I change a given file and save,
then it compiles successfully without issues (and runs successfully
too). I'll see if I can create a minimised test case, but not sure if
I'll manage (the file seems pretty ordinary).
> > - Editor not initialized errors. Weirdly enough, these seem to sometimes
> > go away when the editor is reopened. The error log shows errors like the
> > following, so looks like ticket #2892[2]:
> >
> > scala.tools.nsc.symtab.Symbols$CyclicReference: illegal cyclic reference
> > involving value content
> >
> > On the other hand, no Java code is used in the given Scala files, so I
> > don't know if it's the same.
>
> I think that warrants a fresh ticket.
OK. I'll try to create a reproduceable test case for this one too.
Ismael
Wed, 2010-01-20, 10:57
#8
Re: It's fast now! It's fast now!
I use -Xmx1024m, and the editor is unresponsive right after starting up eclipse,when the heap status shows me "333M of 461M" used..
On Wed, Jan 20, 2010 at 10:24, Mirko Stocker <me@misto.ch> wrote:
On Wed, Jan 20, 2010 at 10:24, Mirko Stocker <me@misto.ch> wrote:
On Wednesday 20 January 2010 10:00:16 Lukas Rytz wrote:
> Whenever I type multiple characters, the first appears immediately on the
> screen, but then the display is updated only every second or so, i.e. a
> bunch of typed characters show up every second. In between, the editor
> blocks (no cursor blinking). This was definitely not the case in earlier
> versions (few weeks ago). I'm working on the GenMSIL.scala file.
I've experienced similar behavior from time to time, also when working on the
compiler. I've noticed that the heap got filled up (Preferences -> General ->
Show Heap Status enables a bar on the bottom of Eclipse) and running the
garbage collector did not free any more memory. So I just had to restart
Eclipse every few hours and enlarge the max heap size...
Cheers,
Mirko
Wed, 2010-01-20, 11:07
#9
Re: It's fast now! It's fast now!
On Wed, 2010-01-20 at 09:35 +0000, Ismael Juma wrote:
> I'll see if I can create a minimised test case, but not sure if
> I'll manage (the file seems pretty ordinary).
That was easier than expected:
https://lampsvn.epfl.ch/trac/scala/ticket/2931
Ismael
Wed, 2010-01-20, 12:47
#10
Re: It's fast now! It's fast now!
On Wed, Jan 20, 2010 at 9:00 AM, Lukas Rytz wrote:
> For me, the editor has become very unresponsive when typing (not when
> navigating). Whenever I type multiple characters, the first appears
> immediately on the screen, but then the display is updated only every
> second or so, i.e. a bunch of typed characters show up every second.
> In between, the editor blocks (no cursor blinking). This was definitely
> not the case in earlier versions (few weeks ago). I'm working on the
> GenMSIL.scala file. I have to say that in its current state, eclipse
> is really not usable for me...
Hubert mentioned this recently, and although it was noticeable on
large sources on my machine it didn't strike me as crippling (I must
have a faster machine than the two of you).
Anyhow, just fixed in r20622, so give it another try tomorrow.
Cheers,
Miles
Wed, 2010-01-20, 13:37
#11
Re: It's fast now! It's fast now!
r20622 definitely fixes the issues I described.Thanks!
On Wed, Jan 20, 2010 at 12:40, Miles Sabin <miles@milessabin.com> wrote:
On Wed, Jan 20, 2010 at 12:40, Miles Sabin <miles@milessabin.com> wrote:
On Wed, Jan 20, 2010 at 9:00 AM, Lukas Rytz <lukas.rytz@epfl.ch> wrote:
> For me, the editor has become very unresponsive when typing (not when
> navigating). Whenever I type multiple characters, the first appears
> immediately on the screen, but then the display is updated only every
> second or so, i.e. a bunch of typed characters show up every second.
> In between, the editor blocks (no cursor blinking). This was definitely
> not the case in earlier versions (few weeks ago). I'm working on the
> GenMSIL.scala file. I have to say that in its current state, eclipse
> is really not usable for me...
Hubert mentioned this recently, and although it was noticeable on
large sources on my machine it didn't strike me as crippling (I must
have a faster machine than the two of you).
Anyhow, just fixed in r20622, so give it another try tomorrow.
Cheers,
Miles
--
Miles Sabin
tel: +44 (0)7813 944 528
skype: milessabin
http://www.chuusai.com/
http://twitter.com/milessabin
Wed, 2010-01-20, 13:47
#12
Re: It's fast now! It's fast now!
On Wed, Jan 20, 2010 at 12:28 PM, Lukas Rytz wrote:
> r20622 definitely fixes the issues I described.
Cool :-)
Cheers,
Miles
Wed, 2010-01-20, 17:37
#13
Re: It's fast now! It's fast now!
Question: if I have 3 dependent classes: 1(base) <- 2 <- 3 and I break 1...
2 and 3 should not be compiled, since they will obviously have issues.
What I see is that 1 fails (expected), 2 is not compiled (no errors shown at
least) while 3 fails with error "not found: type 2" which is obvious and I
think this causes most of the problems, since it will cascade like nuts
across multiple projects.
Here's the trick: put class 3 in a separate project, otherwise it actually
works... I'll try to attach my experiment to the defect...
Miles Sabin wrote:
>
> On Tue, Jan 19, 2010 at 6:34 PM, Razvan Cojocaru wrote:
>> I updated (I think yesterday) the plugin and everything in eclipse just
>> got
>> seriously faster...ctrl-shift-T, cstrl-shift-R, it doesn't get stuck
>> anymore
>> etc.
>>
>> GREAT! thank you!
>>
>> Now the speed of cranking out a piece of functionality in scala is
>> getting
>> finally faster than in Java...I always added the time wasted with eclipse
>> crashing and overall slowness to the saving in code size :)
>
> Excellent news :-)
>
>> There is just one major time waster I bump into all the time: the
>> compiler
>> gets confused very often, when modifying code in base projects, if
>> there's
>> any compile error, I get hundreds of errors everywhere in dependent
>> projects, which most of the time don't automatically go away if the
>> original
>> error in the reused class is fixed, requiring a clean/build all, which is
>> a
>> drag.
>>
>> It also makes it hard to find the original error: digging in the error
>> list,
>> because of the multiple projects and hundreds of errors.
>
> Yup, this is the biggest issue at the moment. See,
>
> https://lampsvn.epfl.ch/trac/scala/ticket/2767
>
> If you or anyone else is able to construct the elusive 1 to 5 source
> file reliably reproducing example that would be incredibly helpful.
>
>> Anyways, great job. Much appreciated!
>
> Thanks :-)
>
> Cheers,
>
>
> Miles
>
Wed, 2010-01-20, 17:57
#14
Re: It's fast now! It's fast now!
Ok - I attached my experiment. You'll see that SC11 is broken on purpose.
dependent SC12 is not reported as failed...However, both SC22 and SC23,
which are identical but in different project, are reported.
It seems to be a different defect than described in the #2767, though...let
me know if you want another defect created...
-----
Razvan Cojocaru,
Work: http://www.sigma-systems.com
Me: http://feeds.razie.com/RazvanTech
Playground: http://wiki.homecloud.ca
Wed, 2010-01-20, 18:07
#15
Re: It's fast now! It's fast now!
On Wed, Jan 20, 2010 at 4:48 PM, Razvan Cojocaru wrote:
> Ok - I attached my experiment. You'll see that SC11 is broken on purpose.
> dependent SC12 is not reported as failed...However, both SC22 and SC23,
> which are identical but in different project, are reported.
>
> It seems to be a different defect than described in the #2767, though...let
> me know if you want another defect created...
This really is a different issue, and I think you'll see the same
(admittedly suboptimal) behaviour if you use the command line tools.
Cheers,
Miles
Wed, 2010-01-20, 18:17
#16
Re: It's fast now! It's fast now!
Agreed - however, command line tools don't know about multiple projects :).
That would be managed by ant/maven which won't build the second component,
since the first failed.
Projects simultaneously opened is an eclipse issue. You can see why this
makes a mess of working with multiple projects: every time you save a broken
file in a base project, you're flooded by hundreds of errors and good luck
finding the real one... :)
Miles Sabin wrote:
>
> This really is a different issue, and I think you'll see the same
> (admittedly suboptimal) behaviour if you use the command line tools.
>
-----
Razvan Cojocaru,
Work: http://www.sigma-systems.com
Me: http://feeds.razie.com/RazvanTech
Playground: http://wiki.homecloud.ca
Wed, 2010-01-20, 20:27
#17
Re: It's fast now! It's fast now!
I created a separate issue to track this.
https://lampsvn.epfl.ch/trac/scala/ticket/2937
thanks, Razie
-----
Razvan Cojocaru,
Work: http://www.sigma-systems.com
Me: http://feeds.razie.com/RazvanTech
Playground: http://wiki.homecloud.ca
On Tue, Jan 19, 2010 at 6:34 PM, Razvan Cojocaru wrote:
> I updated (I think yesterday) the plugin and everything in eclipse just got
> seriously faster...ctrl-shift-T, cstrl-shift-R, it doesn't get stuck anymore
> etc.
>
> GREAT! thank you!
>
> Now the speed of cranking out a piece of functionality in scala is getting
> finally faster than in Java...I always added the time wasted with eclipse
> crashing and overall slowness to the saving in code size :)
Excellent news :-)
> There is just one major time waster I bump into all the time: the compiler
> gets confused very often, when modifying code in base projects, if there's
> any compile error, I get hundreds of errors everywhere in dependent
> projects, which most of the time don't automatically go away if the original
> error in the reused class is fixed, requiring a clean/build all, which is a
> drag.
>
> It also makes it hard to find the original error: digging in the error list,
> because of the multiple projects and hundreds of errors.
Yup, this is the biggest issue at the moment. See,
https://lampsvn.epfl.ch/trac/scala/ticket/2767
If you or anyone else is able to construct the elusive 1 to 5 source
file reliably reproducing example that would be incredibly helpful.
> Anyways, great job. Much appreciated!
Thanks :-)
Cheers,
Miles