osdir.com
mailing list archive

Subject: Scala Eclipse Plugin Beta - msg#00002

List: lang.scala

Date: Prev Next Index Thread: Prev Next Index
Hi,

I'm happy to announce that our Scala Eclipse Plugin (2.1.0) is ready for public beta testing.

The remote Eclipse update site from where the plugin beta can be installed is located at http://lamp.epfl.ch/~mcdirmid/scala-plugin. Installation is standard for an eclipse plugin: activate the Help/ Software Updates/Find and Install.../ menu, select the "Search for new features to install" option, add a "New Remote Site" with the URL http://lamp.epfl.ch/~mcdirmid/scala-plugin and whatever name you want to give it, check this new update site, hit next, check the only feature on this site, say yes to the license, ...., restart Eclipse. The Scala Eclipse plugin is completely self contained, and no other downloads or installation steps are required. Conversely, there is no way to get the Scala plugin to use a pre-existing Scala distribution.

IMPORTANT: the plugin currently works under Eclipse 3.2M4 with Java 1.5+. Any other Eclipse/Java configuration will not work at all. Although platform/architecture should work, we have only tested under X86 Linux, Windows XP, and Mac OS X.

After you have installed the plugin and restarted Eclipse, you can activate the "Help/Help Contents" menu to look at the (very incomplete) Scala Development Tool documentation. The only documentation pages currently available is a "Getting Started" page and an "Issues" page. The getting started page will explain how to use the plugin to create and develop a Scala project. The "Issues" page lists known issues that exist in the plugin. Please take a look at both pages before reporting bugs.

This release of the Scala plugin includes the following features:

* An integrated incremental builder that conservatively recompiles Scala source files when the Scala source files that they depend on change.

* Integrated display of compiler errors

* An editor with the following features:

-- Syntax highlighting
-- Text hover to display inferred type information and Scala-doc documentation (if any)
-- Hyperlink navigation to definition of symbol
-- Content assist
-- Content outline

Please see the documentation for more information on how to use these features.

If you have any problems with the plugin, please send me email or post to this list. To report a bug, please include the version number of the plugin installed (currently @ 2.1.0, to check see "Help/About Eclipse SDK/Plug-in Details"), and the .metadata/.log file from your workspace.

Thank you,

Sean McDirmid
LAMP




Was this page helpful?
Yes No
Thread at a glance:

Previous Message by Date: click to view message preview

Sbaz reference manual

I've posted a reference manual for Scala Bazaars. http://lamp.epfl.ch/~spoon/sbaz/ This is a place to document decisions about the system as they accumulate. Regards, -Lex

Next Message by Date: click to view message preview

New linearization

Been playing a bit with the new mixin classes; see http://scala.sygneca.com/code/shared-objects Scala2 forces the first class "extension" to be an "extends" clause, and does not allow "with". This seems a bit draconian -- can an "extends ScalaObject" not be implicitly inserted? The Scala2 change doc tells us that "abstract override", when used in a mixin class that is mixed in with "with", shifts super to be the prior definition within the class being mixed into. In my example I have a "FixedHash" mixin that uses abstract override to redefine how hashes are computed. I also have a "SharedObject" that further refines how equality tests are done. If I want to combine them, the most natural thing to write is (possibly): Mixin class FixedShared extends FixedHash with SharedObject But I can't...because the abstract overrides on FixedHash are no longer used. I could do this: Mixin class FixedShared with FixedHash with SharedObject But that compiler won't accept that. I also cannot write: Mixin class FixedShared extends ScalaObject with FixedHash with SharedObject As the compiler tells me ScalaObject is inherited twice. I can write: Mixin class Fake; Mixin class FixedShared extends Fake with FixedHash with SharedObject; That compiles, but when I do a "with FixedShared", the abstract overrides are lost. I'll have to check to see if the latest compiler exhibits this behavior or not. The linearization definitions in the changes document make sense to me, but it appears that with the way things are currently specified there is no way to combine "with" behaviors and abstract overrides -- each must be specified: Class Var extends Term with FixedHash with SharedObject; Mixin classes currently prohibit constructor values. Observe: /** Log prints a message when hashCode or equals is called. */ mixin class Log { abstract override def hashCode() = { Console.println(tag + ".hashCode"); super.hashCode() } abstract override def equals(o: Any) = { Console.println(tag + ".equals"); super.equals(o); } val tag: String = getClass().getName(); } We've got a log mixin here that logs calls to hashCode and equals. Note the "tag" def -- that's how we're labelling. To use this we do something like this: Class Something with Log { override val tag = "Something"; } I am wondering if it makes sense to allow "val" for mixin parameters. mixin class Log(val tag: String) { abstract override def hashCode() = { Console.println(tag + ".hashCode"); super.hashCode() } abstract override def equals(o: Any) = { Console.println(tag + ".equals"); super.equals(o); } } I can then write: class Something with SharedObject(myFactory) with Log("MyLogger"); Right now constructs must be specified like this: private[shared] def duplicate(f: SharedFactory) = new Var(name) with FixedHash with SharedObject with Log { val factory = f; val tag = "MyLogger"; } Perhaps the compiler can do this transformation automatically...

Previous Message by Thread: click to view message preview

Sbaz reference manual

I've posted a reference manual for Scala Bazaars. http://lamp.epfl.ch/~spoon/sbaz/ This is a place to document decisions about the system as they accumulate. Regards, -Lex

Next Message by Thread: click to view message preview

Re: Scala Eclipse Plugin Beta

I'm one more to congratulate the nice work on the plugin. Unless I encounter serious errors, Eclipse will be my Scala development platform from now on. Thank you. -- []s, Andrei Formiga On 2/2/06, Sean McDirmid <sean.mcdirmid@xxxxxxx> wrote: > Hi, > > I'm happy to announce that our Scala Eclipse Plugin (2.1.0) is ready > for public beta testing. >
Loading Comments...
Home | News | Patents | Sitemap | FAQ | advertise

Advertising by