- About Scala
- Documentation
- Code Examples
- Software
- Scala Developers
Scala 2.8.0 Beta 1
Wed, 2010-01-27, 15:14
After many months of hard work, the Scala Team is proud to release
the first beta of the much-awaited new Scala 2.8! Scala 2.8.0 Beta 1
is now available from our Download Page. It includes a huge number
of bug fixes with respect to 2.7.7, and many new features. This beta
is the foundation for the release of the upcoming final version
of 2.8.0, expected in a few months. You can download the Scala 2.8.0
Beta 1 pre-release from: http://www.scala-lang.org/downloads
The Scala 2.8.0 Beta distribution
=====================================
What is new?
============
The new Scala 2.8 codebase includes the following new fixes and features:
- Redesigned collection library
The collection library has undergone a complete overhaul for Scala
2.8, offering a more coherent and efficient design, while
maintaining virtually complete compatibility with existing sources.
Detailed information at: http://www.scala-lang.org/sid/3
- New array implementation, manifests for polymorphic arrays
Handling of arrays has been simplified and optimized in Scala 2.8.
The previous compiler magic has been replaced by a more systematic
and predictable implementation in terms of implicit conversions.
Full details at: http://www.scala-lang.org/sid/7
- Type specialization
Scala 2.8 adds specialized type parameters, which enable the
compiler to generate transparently multiple versions of a given
definition, and to use the most specific version whenever the static
type information at a call site allows it. Details at:
http://www.scala-lang.org/sid/9
- Named and default arguments
Named arguments improve the readability of method calls with many
arguments. Default arguments reduce code duplication, and enable
"copy" methods for case classes, useful to generate quickly modified
copies of case classes. A complete description at:
http://www.scala-lang.org/sid/1
- Package objects
Packages can now contain besides classes and objects also methods,
fields or type aliases. These are added to a package by declaring a
package object. Package objects are still work in progress; more
capabilities might come for 2.8 final or a release soon afterwards.
- Beefed up Scala Swing libraries, better documentation
Components publish key events, input events can be consumed,
refactored window subhierarchy, additional demos, Swing listeners
are installed lazily, more complete component caching, minor
refactorings, bugfixes, more Scaladocs. Design document at:
http://www.scala-lang.org/sid/8
- Revamped REPL
Many bugfixes. Tab-completion for all packages on the classpath, as
well as object and instance methods and fields, including type
aliases and package objects. Searchable history, integrated shell
access, and a power mode which offers direct access to compiler
internals.
- Implicits changes
We have refined the implicit resolution process so that resolution
is now able to determine type variables.
- Improved equality
Equality across numeric types is to be consistent across all the
primitives types, while also adhering to the equals/hashCode
contract. Numeric comparisons will have the same results as they
would between Java primitives. This is currently still being
completed.
- Packrat parser combinators
With support for packrat parsing, parser combinators are now able to
handle left-recursive grammars and will show improved performance
for ambiguous productions.
- Improved XML library
Many bugfixes.
- Type constructor inference
Type inference has been extended to deal with type constructors,
so that, in certain cases, you can omit type parameter lists that
contain higher-kinded types (aka type constructors, e.g., List).
- Improved Annotations
Scala 2.8 adds support for nested java annotations. For annotations
on fields, it is now possible to specify which synthetic members
(getter / setter) will have the annotation. Documentation about
Scala annotations can be found at: http://www.scala-lang.org/sid/5
- Enhanced actors
New Reactors provide more lightweight, purely event-based actors
with optional, implicit sender identification. Support for actors
with daemon-style semantics was added. Actors can be configured to
use the efficient JSR166y fork/join pool, resulting in significant
performance improvements on 1.6 JVMs. Schedulers are now pluggable
and easier to customize.
- Support for continuations
Continuations are supported by a compiler plugin. This plugin is not
included in this first beta, but will be added in subsequent
releases.
Internal improvements
=====================
- New presentation compiler
This new infrastructure, within the Scala compiler, enables IDEs to
hook into the compiler to find efficiently information about the
structure of the program under editing. This new code offers a
better platform for the development of IDE plugins.
- New build manager
The new feature used by for example Eclipse to detect intelligently
changes in the files and compile only necessary Scala sources,
instead of performing clean build on whole projects. This technique
enables to significantly reduce the compilation time on bigger
projects.
- Speed improvements
The compiler now runs as optimised code. In addition, a number of
improvements and fine-tunings have further improved the compiler
speed up to 50%.
Bug fixes
=========
- Scala 2.8 includes a huge number of bug fixes; the main ones are
listed at: http://www.scala-lang.org/node/299
Additional tools
================
- Scaladoc 2
A new look-and-feel, automatic comments expansion and wiki-like
syntax, as well as compile-time error checking. Read more about
changes on the Scaladoc 2 mini-site at
http://lampsvn.epfl.ch/trac/scala/wiki/Scaladoc
- Sbaz 2
Sbaz includes many bug fixes and enhancements. It now gives better
feedback to the user during lengthy downloads and while diagnosing
dependency audits, which in turn have been re-factored and enhanced.
Sbaz should work properly on Windows using either cmd or cygwin, and
is now capable of reliably updating itself. Support for pack200 has
been added, in some cases reducing file sizes up to 70%.
- Scalap
A new Scalap, contributed by the community, is included. The new
Scalap is aware of package objects and can decompile them by using
.package
- Scala IDE for Eclipse
The IDE has been extensively reworked with much functionality moved
into the Scala compiler where it can be better maintained and reused
by non-Eclipse IDEs and other tools. The integration with Eclipse's
JDT has been deepened, and much previously Scala-specific behaviour
and functionality is now provided directly by the JDT leading to
across the board improvements.
During the beta preview period, the Scala IDE for Eclipse will be
updated more frequently with respect to the main Scala beta
releases. You can follow its development by using the following
update site:
http://www.scala-lang.org/scala-eclipse-plugin-beta-preview
Please note that you must use this address as an update site within
Eclipse as described on this page, it cannot be visited using your
internet browser.
Acknowledgments and Thanks
==========================
Many members of the Scala community have helped us by fixing or
reporting bugs, contributing new code and tools (including some of
those listed above), and addressing user questions on the mailing
lists: their contributions help shaping the future of Scala day by
day.
- We would like to thank:
Paul Phillips, Miles Sabin, Ilya Sergey, Caoyuan Deng, James Matlik,
Frank Teubler, Kevin Wright, Manohar Jonnalagedda, Pedro Furlanetto,
Johannes Rudolph, Jason Zaugg, Seth Tisue, Ismael Juma, Mark Harrah,
Miguel Garcia, Colin Howe, Mirko Stocker, Spiros Tzavellas, Matt
Russell, David Taylor, and all the other frequent contributors to our
mailing lists, too many to list here. Thank you all!
The Scala Team at EPFL
======================
Martin Odersky, Lukas Rytz, Hubert Plociniczak, Iulian Dragos,
Gilles Dubochet, Philipp Haller, Aleksandar Prokopec, Antonio Cunei,
Tiark Rompf, Eugene Zouev, Donna Malayeri, Phil Bagwell, Adriaan
Moors, Ingo Maier.
Wed, 2010-01-27, 16:37
#2
Re: Scala 2.8.0 Beta 1
To cite a Swedish legend: ÄNTLIGEN!
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall
Akka - the Actor Kernel: Akkasource.org
Twttr: twitter.com/viktorklang
On Wed, Jan 27, 2010 at 3:18 PM, Francois <fanf42@gmail.com> wrote:
Viktor Klang
| "A complex system that works is invariably
| found to have evolved from a simple system
| that worked." - John Gall
Akka - the Actor Kernel: Akkasource.org
Twttr: twitter.com/viktorklang
On Wed, Jan 27, 2010 at 3:18 PM, Francois <fanf42@gmail.com> wrote:
Le 27/01/2010 15:13, Antonio Cunei a écrit :
After many months of hard work, the Scala Team is proud to release
the first beta of the much-awaited new Scala 2.8!
Hourra, and many many many many thanks for all the hard work, too the EPFL team and all the contributors !
Wed, 2010-01-27, 17:37
#3
Re: Scala 2.8.0 Beta 1
On Wed, Jan 27, 2010 at 6:18 AM, Francois <fanf42@gmail.com> wrote:
Le 27/01/2010 15:13, Antonio Cunei a écrit :
After many months of hard work, the Scala Team is proud to release
the first beta of the much-awaited new Scala 2.8!
Hourra, and many many many many thanks for all the hard work, too the EPFL team and all the contributors !
Everything he said, plus ***ROCK ON***!!!
Oh, and a very hearty great job EPFL and the Scala community!!
Wed, 2010-01-27, 18:47
#4
Re: Scala 2.8.0 Beta 1
Hi all,
On Wed, Jan 27, 2010 at 2:13 PM, Antonio Cunei wrote:
> After many months of hard work, the Scala Team is proud to release
> the first beta of the much-awaited new Scala 2.8!
Congratulations and thanks. :) So much work went into this beta that
it almost feels like a final release! Hopefully a short-ish road to
the real final release now. ;)
Best,
Ismael
Wed, 2010-01-27, 20:27
#5
Re: Scala 2.8.0 Beta 1
On Thu, Jan 28, 2010 at 3:13 AM, Antonio Cunei wrote:
> - Support for continuations
>
> Continuations are supported by a compiler plugin. This plugin is not
> included in this first beta, but will be added in subsequent
> releases.
For those who want to have a play with continuations, I've written
some instructions for building the plugin from source.
http://blog.richdougherty.com/2010/01/scala-280-beta-1-released.html
Thanks a lot to the Scala team for an excellent release.
Rich
--
Rich Dougherty
http://www.richdougherty.com/
Thu, 2010-01-28, 23:07
#6
Re: Scala 2.8.0 Beta 1
Dear Rich,
i followed your blog instructions to the letter. Everything works up to building the continuations plugin, then we're missing a lib. See the trace below.
Best wishes,
--greg
bash-3.2$ ANT_OPTS=-Xmx512m ant testBuildfile: build.xml
build.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/pack [jar] Building jar: /Users/lgm/work/src/devtools/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] Compiling 11 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] error: error while loading ForkJoinPool, Missing dependency 'class java.util.concurrent.RunnableFuture', required by /Users/lgm/work/src/devtools/scala/continuations/lib/jsr166y.jar(jsr166y/ForkJoinPool.class) [scalac] one error found
BUILD FAILED/Users/lgm/work/src/devtools/scala/continuations/build.xml:89: Compile failed with 1 error; see the compiler error output for details.
Total time: 13 secondsbash-3.2$
On Wed, Jan 27, 2010 at 11:26 AM, Rich Dougherty <rich@nil.co.nz> wrote:
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
i followed your blog instructions to the letter. Everything works up to building the continuations plugin, then we're missing a lib. See the trace below.
Best wishes,
--greg
bash-3.2$ ANT_OPTS=-Xmx512m ant testBuildfile: build.xml
build.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/pack [jar] Building jar: /Users/lgm/work/src/devtools/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] Compiling 11 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] error: error while loading ForkJoinPool, Missing dependency 'class java.util.concurrent.RunnableFuture', required by /Users/lgm/work/src/devtools/scala/continuations/lib/jsr166y.jar(jsr166y/ForkJoinPool.class) [scalac] one error found
BUILD FAILED/Users/lgm/work/src/devtools/scala/continuations/build.xml:89: Compile failed with 1 error; see the compiler error output for details.
Total time: 13 secondsbash-3.2$
On Wed, Jan 27, 2010 at 11:26 AM, Rich Dougherty <rich@nil.co.nz> wrote:
On Thu, Jan 28, 2010 at 3:13 AM, Antonio Cunei <antonio.cunei@epfl.ch> wrote:
> - Support for continuations
>
> Continuations are supported by a compiler plugin. This plugin is not
> included in this first beta, but will be added in subsequent
> releases.
For those who want to have a play with continuations, I've written
some instructions for building the plugin from source.
http://blog.richdougherty.com/2010/01/scala-280-beta-1-released.html
Thanks a lot to the Scala team for an excellent release.
Rich
--
Rich Dougherty
http://www.richdougherty.com/
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
Thu, 2010-01-28, 23:27
#7
Re: [scala-announce] Re: Scala 2.8.0 Beta 1
i've attached my script that i run. try it if you want. the log is below.
% ./continuations.sh --- updating from svn --- At revision 20719. done updating --- --- building --- Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
clean.build: [delete] Deleting directory /home/mbana/scala/continuations/build/build.plugin [delete] Deleting directory /home/mbana/scala/continuations/build/build.library [delete] Deleting directory /home/mbana/scala/continuations/build/build.examples
clean.pack: [delete] Deleting directory /home/mbana/scala/continuations/build/pack
clean.dist:
clean.doc:
clean.all:
clean:
BUILD SUCCESSFULTotal time: 0 seconds Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
build.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /home/mbana/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/pack [jar] Building jar: /home/mbana/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.library [scalac] Compiling 11 source files to /home/mbana/scala/continuations/build/build.library [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.examples: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.examples [scalac] Compiling 18 source files to /home/mbana/scala/continuations/build/build.examples [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.all:
test.partest:
BUILD FAILED/home/mbana/scala/continuations/build.xml:125: Problem: failed to create task or type partest Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any <presetdef>/<macrodef> declarations have taken place.
Total time: 27 secondsdone building ---
---making cps jar--- selectivecps-plugin.jardone jar --- --- making cps-library jar --- added manifest adding: jsr166y/(in = 0) (out= 0)(stored 0%)adding: jsr166y/FJTaskWrapper$.class(in = 959) (out= 531)(deflated 44%)adding: jsr166y/FJTaskWrapper.class(in = 780) (out= 498)(deflated 36%) adding: scala/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/Loops$.class(in = 2144) (out= 918)(deflated 57%) adding: scala/continuations/Loops.class(in = 2039) (out= 1156)(deflated 43%)adding: scala/continuations/ControlContext$$anonfun$flatMap$1.class(in = 1490) (out= 714)(deflated 52%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$2.class(in = 1439) (out= 671)(deflated 53%) adding: scala/continuations/Loops$$anonfun$loopWhile$1.class(in = 1317) (out= 644)(deflated 51%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$1.class(in = 1226) (out= 622)(deflated 49%) adding: scala/continuations/TaskScheduler.class(in = 1265) (out= 703)(deflated 44%) adding: scala/continuations/docps.class(in = 381) (out= 276)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$2.class(in = 1522) (out= 679)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1.class(in = 1885) (out= 789)(deflated 58%) adding: scala/continuations/cps.class(in = 716) (out= 438)(deflated 38%) adding: scala/continuations/ControlContext$$anonfun$shiftUnitR$1.class(in = 1007) (out= 543)(deflated 46%) adding: scala/continuations/ControlContext$$anonfun$reset$1.class(in = 727) (out= 432)(deflated 40%) adding: scala/continuations/ControlContext$.class(in = 3249) (out= 1067)(deflated 67%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1.class(in = 1848) (out= 775)(deflated 58%) adding: scala/continuations/ControlContext$$anonfun$map$1.class(in = 1469) (out= 703)(deflated 52%) adding: scala/continuations/Loops$$anon$1.class(in = 688) (out= 375)(deflated 45%) adding: scala/continuations/ControlContext$$anonfun$map$1$$anonfun$apply$1.class(in = 1271) (out= 629)(deflated 50%) adding: scala/continuations/cpsv.class(in = 523) (out= 360)(deflated 31%) adding: scala/continuations/uncps.class(in = 381) (out= 275)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$2.class(in = 1510) (out= 675)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1$$anonfun$apply$1.class(in = 1570) (out= 714)(deflated 54%) adding: scala/continuations/Loops$SuspendableListView.class(in = 3985) (out= 1161)(deflated 70%) adding: scala/continuations/ControlContext$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1366) (out= 676)(deflated 50%)adding: scala/continuations/ControlContext$$anonfun$run$1.class(in = 877) (out= 484)(deflated 44%) adding: scala/continuations/TaskScheduler$.class(in = 1579) (out= 791)(deflated 49%)adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1743) (out= 766)(deflated 56%) adding: scala/continuations/ControlContext.class(in = 5346) (out= 2064)(deflated 61%)adding: scala/concurrent/(in = 0) (out= 0)(stored 0%)adding: scala/concurrent/SimpleTaskRunners$class.class(in = 705) (out= 327)(deflated 53%) adding: scala/concurrent/SimpleTaskRunners.class(in = 1061) (out= 628)(deflated 40%)adding: scala/concurrent/ImmediateTaskRunners.class(in = 879) (out= 483)(deflated 45%)adding: scala/concurrent/cpsops.class(in = 920) (out= 551)(deflated 40%) adding: scala/concurrent/ImmediateTaskRunners$ImmediateTaskRunner.class(in = 1179) (out= 560)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners$class.class(in = 705) (out= 326)(deflated 53%) adding: scala/concurrent/AbstractTaskRunner.class(in = 680) (out= 445)(deflated 34%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner$$anon$1.class(in = 911) (out= 485)(deflated 46%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner.class(in = 1811) (out= 892)(deflated 50%) adding: scala/concurrent/cpsops$.class(in = 1011) (out= 518)(deflated 48%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner.class(in = 1269) (out= 589)(deflated 53%)adding: scala/concurrent/TaskRunnersBase.class(in = 748) (out= 439)(deflated 41%) adding: scala/concurrent/FJTaskRunners$class.class(in = 938) (out= 444)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners.class(in = 818) (out= 465)(deflated 43%)adding: scala/concurrent/SimpleTaskRunners$SimpleTaskRunner.class(in = 2043) (out= 951)(deflated 53%) adding: scala/concurrent/AbstractSequentialTaskRunner.class(in = 452) (out= 285)(deflated 36%)adding: scala/concurrent/ImmediateTaskRunners$class.class(in = 738) (out= 329)(deflated 55%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner$$anon$1.class(in = 857) (out= 412)(deflated 51%) adding: scala/concurrent/TaskRunnersBase$class.class(in = 590) (out= 318)(deflated 46%)adding: scala/concurrent/FJTaskRunners.class(in = 938) (out= 579)(deflated 38%)adding: scala/concurrent/cpsops$$anonfun$spawn$1.class(in = 1101) (out= 609)(deflated 44%) cps.jar scala-compiler.jar scala-library.jar scala-swing.jarjline.jar scala-dbc.jar scalap.jardone jar------compiling example--- done example---
—Mohamed
2010/1/28 Meredith Gregory <lgreg.meredith@gmail.com>
% ./continuations.sh --- updating from svn --- At revision 20719. done updating --- --- building --- Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
clean.build: [delete] Deleting directory /home/mbana/scala/continuations/build/build.plugin [delete] Deleting directory /home/mbana/scala/continuations/build/build.library [delete] Deleting directory /home/mbana/scala/continuations/build/build.examples
clean.pack: [delete] Deleting directory /home/mbana/scala/continuations/build/pack
clean.dist:
clean.doc:
clean.all:
clean:
BUILD SUCCESSFULTotal time: 0 seconds Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
build.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /home/mbana/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/pack [jar] Building jar: /home/mbana/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.library [scalac] Compiling 11 source files to /home/mbana/scala/continuations/build/build.library [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.examples: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.examples [scalac] Compiling 18 source files to /home/mbana/scala/continuations/build/build.examples [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.all:
test.partest:
BUILD FAILED/home/mbana/scala/continuations/build.xml:125: Problem: failed to create task or type partest Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any <presetdef>/<macrodef> declarations have taken place.
Total time: 27 secondsdone building ---
---making cps jar--- selectivecps-plugin.jardone jar --- --- making cps-library jar --- added manifest adding: jsr166y/(in = 0) (out= 0)(stored 0%)adding: jsr166y/FJTaskWrapper$.class(in = 959) (out= 531)(deflated 44%)adding: jsr166y/FJTaskWrapper.class(in = 780) (out= 498)(deflated 36%) adding: scala/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/Loops$.class(in = 2144) (out= 918)(deflated 57%) adding: scala/continuations/Loops.class(in = 2039) (out= 1156)(deflated 43%)adding: scala/continuations/ControlContext$$anonfun$flatMap$1.class(in = 1490) (out= 714)(deflated 52%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$2.class(in = 1439) (out= 671)(deflated 53%) adding: scala/continuations/Loops$$anonfun$loopWhile$1.class(in = 1317) (out= 644)(deflated 51%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$1.class(in = 1226) (out= 622)(deflated 49%) adding: scala/continuations/TaskScheduler.class(in = 1265) (out= 703)(deflated 44%) adding: scala/continuations/docps.class(in = 381) (out= 276)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$2.class(in = 1522) (out= 679)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1.class(in = 1885) (out= 789)(deflated 58%) adding: scala/continuations/cps.class(in = 716) (out= 438)(deflated 38%) adding: scala/continuations/ControlContext$$anonfun$shiftUnitR$1.class(in = 1007) (out= 543)(deflated 46%) adding: scala/continuations/ControlContext$$anonfun$reset$1.class(in = 727) (out= 432)(deflated 40%) adding: scala/continuations/ControlContext$.class(in = 3249) (out= 1067)(deflated 67%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1.class(in = 1848) (out= 775)(deflated 58%) adding: scala/continuations/ControlContext$$anonfun$map$1.class(in = 1469) (out= 703)(deflated 52%) adding: scala/continuations/Loops$$anon$1.class(in = 688) (out= 375)(deflated 45%) adding: scala/continuations/ControlContext$$anonfun$map$1$$anonfun$apply$1.class(in = 1271) (out= 629)(deflated 50%) adding: scala/continuations/cpsv.class(in = 523) (out= 360)(deflated 31%) adding: scala/continuations/uncps.class(in = 381) (out= 275)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$2.class(in = 1510) (out= 675)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1$$anonfun$apply$1.class(in = 1570) (out= 714)(deflated 54%) adding: scala/continuations/Loops$SuspendableListView.class(in = 3985) (out= 1161)(deflated 70%) adding: scala/continuations/ControlContext$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1366) (out= 676)(deflated 50%)adding: scala/continuations/ControlContext$$anonfun$run$1.class(in = 877) (out= 484)(deflated 44%) adding: scala/continuations/TaskScheduler$.class(in = 1579) (out= 791)(deflated 49%)adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1743) (out= 766)(deflated 56%) adding: scala/continuations/ControlContext.class(in = 5346) (out= 2064)(deflated 61%)adding: scala/concurrent/(in = 0) (out= 0)(stored 0%)adding: scala/concurrent/SimpleTaskRunners$class.class(in = 705) (out= 327)(deflated 53%) adding: scala/concurrent/SimpleTaskRunners.class(in = 1061) (out= 628)(deflated 40%)adding: scala/concurrent/ImmediateTaskRunners.class(in = 879) (out= 483)(deflated 45%)adding: scala/concurrent/cpsops.class(in = 920) (out= 551)(deflated 40%) adding: scala/concurrent/ImmediateTaskRunners$ImmediateTaskRunner.class(in = 1179) (out= 560)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners$class.class(in = 705) (out= 326)(deflated 53%) adding: scala/concurrent/AbstractTaskRunner.class(in = 680) (out= 445)(deflated 34%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner$$anon$1.class(in = 911) (out= 485)(deflated 46%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner.class(in = 1811) (out= 892)(deflated 50%) adding: scala/concurrent/cpsops$.class(in = 1011) (out= 518)(deflated 48%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner.class(in = 1269) (out= 589)(deflated 53%)adding: scala/concurrent/TaskRunnersBase.class(in = 748) (out= 439)(deflated 41%) adding: scala/concurrent/FJTaskRunners$class.class(in = 938) (out= 444)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners.class(in = 818) (out= 465)(deflated 43%)adding: scala/concurrent/SimpleTaskRunners$SimpleTaskRunner.class(in = 2043) (out= 951)(deflated 53%) adding: scala/concurrent/AbstractSequentialTaskRunner.class(in = 452) (out= 285)(deflated 36%)adding: scala/concurrent/ImmediateTaskRunners$class.class(in = 738) (out= 329)(deflated 55%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner$$anon$1.class(in = 857) (out= 412)(deflated 51%) adding: scala/concurrent/TaskRunnersBase$class.class(in = 590) (out= 318)(deflated 46%)adding: scala/concurrent/FJTaskRunners.class(in = 938) (out= 579)(deflated 38%)adding: scala/concurrent/cpsops$$anonfun$spawn$1.class(in = 1101) (out= 609)(deflated 44%) cps.jar scala-compiler.jar scala-library.jar scala-swing.jarjline.jar scala-dbc.jar scalap.jardone jar------compiling example--- done example---
—Mohamed
2010/1/28 Meredith Gregory <lgreg.meredith@gmail.com>
Dear Rich,
i followed your blog instructions to the letter. Everything works up to building the continuations plugin, then we're missing a lib. See the trace below.
Best wishes,
--greg
bash-3.2$ ANT_OPTS=-Xmx512m ant testBuildfile: build.xml
build.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/pack [jar] Building jar: /Users/lgm/work/src/devtools/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] Compiling 11 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] error: error while loading ForkJoinPool, Missing dependency 'class java.util.concurrent.RunnableFuture', required by /Users/lgm/work/src/devtools/scala/continuations/lib/jsr166y.jar(jsr166y/ForkJoinPool.class) [scalac] one error found
BUILD FAILED/Users/lgm/work/src/devtools/scala/continuations/build.xml:89: Compile failed with 1 error; see the compiler error output for details.
Total time: 13 secondsbash-3.2$
On Wed, Jan 27, 2010 at 11:26 AM, Rich Dougherty <rich@nil.co.nz> wrote:
On Thu, Jan 28, 2010 at 3:13 AM, Antonio Cunei <antonio.cunei@epfl.ch> wrote:
> - Support for continuations
>
> Continuations are supported by a compiler plugin. This plugin is not
> included in this first beta, but will be added in subsequent
> releases.
For those who want to have a play with continuations, I've written
some instructions for building the plugin from source.
http://blog.richdougherty.com/2010/01/scala-280-beta-1-released.html
Thanks a lot to the Scala team for an excellent release.
Rich
--
Rich Dougherty
http://www.richdougherty.com/
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
Thu, 2010-01-28, 23:27
#8
Re: [scala-announce] Re: Scala 2.8.0 Beta 1
Dear Rich,
i found the problem. i'm not running java 1.6 by default, yet. When i switch to
bash-3.2$ env PATH=/Users/lgm/work/src/projex/biosimilarity/scala/build/pack/bin:/Users/lgm/work/src/devtools/javaSDK/soylatte16-1.0.2/bin:$PATH JAVA_HOME=/Users/lgm/work/src/devtools/javaSDK/soylatte16-1.0.2 ANT-OPTS=-Xmx1024m ant test
it works as advertised.
Best wishes,
--greg
On Thu, Jan 28, 2010 at 2:18 PM, Mohamed Bana <mohamed@bana.org.uk> wrote:
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
i found the problem. i'm not running java 1.6 by default, yet. When i switch to
bash-3.2$ env PATH=/Users/lgm/work/src/projex/biosimilarity/scala/build/pack/bin:/Users/lgm/work/src/devtools/javaSDK/soylatte16-1.0.2/bin:$PATH JAVA_HOME=/Users/lgm/work/src/devtools/javaSDK/soylatte16-1.0.2 ANT-OPTS=-Xmx1024m ant test
it works as advertised.
Best wishes,
--greg
On Thu, Jan 28, 2010 at 2:18 PM, Mohamed Bana <mohamed@bana.org.uk> wrote:
i've attached my script that i run. try it if you want. the log is below.
% ./continuations.sh --- updating from svn --- At revision 20719. done updating --- --- building --- Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
clean.build: [delete] Deleting directory /home/mbana/scala/continuations/build/build.plugin [delete] Deleting directory /home/mbana/scala/continuations/build/build.library [delete] Deleting directory /home/mbana/scala/continuations/build/build.examples
clean.pack: [delete] Deleting directory /home/mbana/scala/continuations/build/pack
clean.dist:
clean.doc:
clean.all:
clean:
BUILD SUCCESSFULTotal time: 0 seconds Buildfile: build.xml [taskdef] Could not load definitions from resource scala/tools/partest/antlib.xml. It could not be found.
build.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /home/mbana/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /home/mbana/scala/continuations/build/pack [jar] Building jar: /home/mbana/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.library [scalac] Compiling 11 source files to /home/mbana/scala/continuations/build/build.library [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.examples: [mkdir] Created dir: /home/mbana/scala/continuations/build/build.examples [scalac] Compiling 18 source files to /home/mbana/scala/continuations/build/build.examples [scalac] warning: there were deprecation warnings; re-run with -deprecation for details [scalac] one warning found [scalac] Compile succeeded with 1 warning; see the compiler output for details.
build.all:
test.partest:
BUILD FAILED/home/mbana/scala/continuations/build.xml:125: Problem: failed to create task or type partest Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any <presetdef>/<macrodef> declarations have taken place.
Total time: 27 secondsdone building ---
---making cps jar--- selectivecps-plugin.jardone jar --- --- making cps-library jar --- added manifest adding: jsr166y/(in = 0) (out= 0)(stored 0%)adding: jsr166y/FJTaskWrapper$.class(in = 959) (out= 531)(deflated 44%)adding: jsr166y/FJTaskWrapper.class(in = 780) (out= 498)(deflated 36%) adding: scala/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/(in = 0) (out= 0)(stored 0%) adding: scala/continuations/Loops$.class(in = 2144) (out= 918)(deflated 57%) adding: scala/continuations/Loops.class(in = 2039) (out= 1156)(deflated 43%)adding: scala/continuations/ControlContext$$anonfun$flatMap$1.class(in = 1490) (out= 714)(deflated 52%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$2.class(in = 1439) (out= 671)(deflated 53%) adding: scala/continuations/Loops$$anonfun$loopWhile$1.class(in = 1317) (out= 644)(deflated 51%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$foreach$1.class(in = 1226) (out= 622)(deflated 49%) adding: scala/continuations/TaskScheduler.class(in = 1265) (out= 703)(deflated 44%) adding: scala/continuations/docps.class(in = 381) (out= 276)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$2.class(in = 1522) (out= 679)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1.class(in = 1885) (out= 789)(deflated 58%) adding: scala/continuations/cps.class(in = 716) (out= 438)(deflated 38%) adding: scala/continuations/ControlContext$$anonfun$shiftUnitR$1.class(in = 1007) (out= 543)(deflated 46%) adding: scala/continuations/ControlContext$$anonfun$reset$1.class(in = 727) (out= 432)(deflated 40%) adding: scala/continuations/ControlContext$.class(in = 3249) (out= 1067)(deflated 67%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1.class(in = 1848) (out= 775)(deflated 58%) adding: scala/continuations/ControlContext$$anonfun$map$1.class(in = 1469) (out= 703)(deflated 52%) adding: scala/continuations/Loops$$anon$1.class(in = 688) (out= 375)(deflated 45%) adding: scala/continuations/ControlContext$$anonfun$map$1$$anonfun$apply$1.class(in = 1271) (out= 629)(deflated 50%) adding: scala/continuations/cpsv.class(in = 523) (out= 360)(deflated 31%) adding: scala/continuations/uncps.class(in = 381) (out= 275)(deflated 27%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$2.class(in = 1510) (out= 675)(deflated 55%) adding: scala/continuations/Loops$SuspendableListView$$anonfun$map$1$$anonfun$apply$1.class(in = 1570) (out= 714)(deflated 54%) adding: scala/continuations/Loops$SuspendableListView.class(in = 3985) (out= 1161)(deflated 70%) adding: scala/continuations/ControlContext$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1366) (out= 676)(deflated 50%)adding: scala/continuations/ControlContext$$anonfun$run$1.class(in = 877) (out= 484)(deflated 44%) adding: scala/continuations/TaskScheduler$.class(in = 1579) (out= 791)(deflated 49%)adding: scala/continuations/Loops$SuspendableListView$$anonfun$flatMap$1$$anonfun$apply$2.class(in = 1743) (out= 766)(deflated 56%) adding: scala/continuations/ControlContext.class(in = 5346) (out= 2064)(deflated 61%)adding: scala/concurrent/(in = 0) (out= 0)(stored 0%)adding: scala/concurrent/SimpleTaskRunners$class.class(in = 705) (out= 327)(deflated 53%) adding: scala/concurrent/SimpleTaskRunners.class(in = 1061) (out= 628)(deflated 40%)adding: scala/concurrent/ImmediateTaskRunners.class(in = 879) (out= 483)(deflated 45%)adding: scala/concurrent/cpsops.class(in = 920) (out= 551)(deflated 40%) adding: scala/concurrent/ImmediateTaskRunners$ImmediateTaskRunner.class(in = 1179) (out= 560)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners$class.class(in = 705) (out= 326)(deflated 53%) adding: scala/concurrent/AbstractTaskRunner.class(in = 680) (out= 445)(deflated 34%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner$$anon$1.class(in = 911) (out= 485)(deflated 46%)adding: scala/concurrent/FJTaskRunners$FJTaskRunner.class(in = 1811) (out= 892)(deflated 50%) adding: scala/concurrent/cpsops$.class(in = 1011) (out= 518)(deflated 48%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner.class(in = 1269) (out= 589)(deflated 53%)adding: scala/concurrent/TaskRunnersBase.class(in = 748) (out= 439)(deflated 41%) adding: scala/concurrent/FJTaskRunners$class.class(in = 938) (out= 444)(deflated 52%)adding: scala/concurrent/ThreadTaskRunners.class(in = 818) (out= 465)(deflated 43%)adding: scala/concurrent/SimpleTaskRunners$SimpleTaskRunner.class(in = 2043) (out= 951)(deflated 53%) adding: scala/concurrent/AbstractSequentialTaskRunner.class(in = 452) (out= 285)(deflated 36%)adding: scala/concurrent/ImmediateTaskRunners$class.class(in = 738) (out= 329)(deflated 55%)adding: scala/concurrent/ThreadTaskRunners$ThreadTaskRunner$$anon$1.class(in = 857) (out= 412)(deflated 51%) adding: scala/concurrent/TaskRunnersBase$class.class(in = 590) (out= 318)(deflated 46%)adding: scala/concurrent/FJTaskRunners.class(in = 938) (out= 579)(deflated 38%)adding: scala/concurrent/cpsops$$anonfun$spawn$1.class(in = 1101) (out= 609)(deflated 44%) cps.jar scala-compiler.jar scala-library.jar scala-swing.jarjline.jar scala-dbc.jar scalap.jardone jar------compiling example--- done example---
—Mohamed
2010/1/28 Meredith Gregory <lgreg.meredith@gmail.com>Dear Rich,
i followed your blog instructions to the letter. Everything works up to building the continuations plugin, then we're missing a lib. See the trace below.
Best wishes,
--greg
bash-3.2$ ANT_OPTS=-Xmx512m ant testBuildfile: build.xml
build.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin [scalac] Compiling 5 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.plugin
pack.plugin: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/pack [jar] Building jar: /Users/lgm/work/src/devtools/scala/continuations/build/pack/selectivecps-plugin.jar
build.library: [mkdir] Created dir: /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] Compiling 11 source files to /Users/lgm/work/src/devtools/scala/continuations/build/build.library [scalac] error: error while loading ForkJoinPool, Missing dependency 'class java.util.concurrent.RunnableFuture', required by /Users/lgm/work/src/devtools/scala/continuations/lib/jsr166y.jar(jsr166y/ForkJoinPool.class) [scalac] one error found
BUILD FAILED/Users/lgm/work/src/devtools/scala/continuations/build.xml:89: Compile failed with 1 error; see the compiler error output for details.
Total time: 13 secondsbash-3.2$
On Wed, Jan 27, 2010 at 11:26 AM, Rich Dougherty <rich@nil.co.nz> wrote:
On Thu, Jan 28, 2010 at 3:13 AM, Antonio Cunei <antonio.cunei@epfl.ch> wrote:
> - Support for continuations
>
> Continuations are supported by a compiler plugin. This plugin is not
> included in this first beta, but will be added in subsequent
> releases.
For those who want to have a play with continuations, I've written
some instructions for building the plugin from source.
http://blog.richdougherty.com/2010/01/scala-280-beta-1-released.html
Thanks a lot to the Scala team for an excellent release.
Rich
--
Rich Dougherty
http://www.richdougherty.com/
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
--
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117
+1 206.650.3740
http://biosimilarity.blogspot.com
Le 27/01/2010 15:13, Antonio Cunei a écrit :
> After many months of hard work, the Scala Team is proud to release
> the first beta of the much-awaited new Scala 2.8!
Hourra, and many many many many thanks for all the hard work, too the
EPFL team and all the contributors !