View Single Post
Alice3 and Jython, JRuby, C#, Scheme, ML, ...
Dennis Cosgrove
Alice Developer
Dennis Cosgrove's Avatar
Status: Offline
Posts: 33
Join Date: Jul 2005
Default Alice3 and Jython, JRuby, C#, Scheme, ML, ... - 06-11-2009, 04:22 PM

i recently made a post on the current complexity of Alice3beta which will hopefully address some of your concerns.

as far as other language support:

We have tried to not paint ourselves into a corner on the programming language the community wants to transition too. When you are dragging and dropping in Alice3 you are dragging and dropping an abstract syntax tree. Now, as you might imagine, the Alice AST happens to look a great deal like the Java AST. However, it would be relatively easy to take that AST and convert it into Jython code, for example. As a bonus, Jython has immediate access to all libraries written in Java so there would be no road blocks there. C# obviously has a lot in common w/ Java so converting the code wouldn't be a problem there. Getting the library to work would obviously require a bridge but it is not like we'd be the first system to require a C# to Java bridge.

In the dream category you will find the development of a Pascal2 of sorts... a new programming language optimized for learning computer science. There are some rough plans on this front but they are all deeply buried beneath undo on the todo list. Still, it is nice to dream.

For now, we are simply trying to focus on getting one path up to snuff and that path is to Java.

Originally Posted by ttkrakus View Post
I recently downloaded the 3.0 Beta version of Alice and, although the new interface is welcome (modulo all the bugs), I am very concerned about the appropriateness of this version for introducing non-CS majors to computer programming. I know Alice is targeted to CS majors, but until version 2.2 I have been able to teach programming to non-CS majors without making any references to Java or any other programming language.

Never mind all the features in 2.2 currently not available in 3.0 (poses, billboards, camera controls, quad view, etc), in this version, Java is everywhere! So much so that, for me, it gets in the way. Again, I know that Alice is supposed to help CS students to transition to Java, but until this version it was not that obvious...and I liked that.

On the other hand, I know Sun is backing the Alice project now, but why stop at Java? I wish I could have the interface of version of 2.2 and the ability of "selecting" or "configuring" which OOP language you want Alice to help you transition to. If you think about it, most structured and OOP languages share the same set of core control structures: so whether is "for i in range(5):" (Python) or "for(i=0;i<5;i++)" (C/C++/C#/Java/...), they repeat their loop bodies 5 times. It would be great if Alice had a module to "add" a new programming language and, in it, map each one of the Alice tiles to the corresponding statements in this new language.

I appreciate the new interface in Alice in 3.0, but if you could just add the EA models (plus a couple more controls for manipulating objects) to version 2.2 , call it 2.6, it would be an excellent version to introduce anyone to computer programming.

Any thoughts, advise?
Reply With Quote