Slashdot Mirror


#Smalltalk - Open Source Smalltalk for .NET

David Buck writes "John Brant and Don Roberts have released an Open Source Smalltalk compiler and library for .NET called #Smalltalk. This is the first widely available Smalltalk for the .NET platform. #Smalltalk is ANSI compliant and programs written in it compile to DLL's or Windows executables. The compiler is still early in its development, but it looks interesting." (You may recall this earlier mention as well.)

2 of 27 comments (clear)

  1. First Mention by refactoringdr · · Score: 5, Informative

    Actually, the previous mention was for our competitor's language, S#. Our's is #Smalltalk.

    Don Roberts
    roberts@refactory.com
    The Simplest Consultant That Could Possibly Work

  2. Re:General #Smalltalk Questions; #Smalltalk and Mo by refactoringdr · · Score: 4, Informative

    1. That's up to the Mono or dotGNU people. We use the Reflection API A LOT and the current implementation on those platforms isn't quite up to snuff.

    2. This differs almost none. We love smalltalk tried to recreate the experience as much as possible. It does not currently come with an IDE (that's the next step). We've been using other Smalltalk's to edit the applications that we then export as .sif files and then compile. (Heck...people have been bugging us for years to make the RB more like emacs...they got their wish :) ). You can debug it using the standard CLRDBG program from M$. This gives you single stepping, inspecting, and even code evaluation (as long as you express the code in C#'esque syntax). You can override DNU and it works. I don't think that you can do all the really ugly tricks that ST'ers abuse.

    3. It differs from S# (same thing as SmallScript since Dave took the name) in the following ways. 1) As true as possible to st80 2) Open Source 3) Free (as in beer)

    The beauty of it all is that you can program in real, honest to goodness Smalltalk, and when you decide you need to call other .NET objects, you can still use ST syntax. For example, to use the .NET MessageBox class, in C# you would write System.Windows.Forms.MessageBox.Show("Hello World"); in #Smalltalk you write System.Windows.Forms.MessageBox Show: 'Hello World'.

    Thanks and Enjoy

    don