[Seaside] Re: What do you think about Ruby on Rails ?

Torsten Bergmann astares at gmx.de
Thu Aug 11 00:06:40 CEST 2005


some notes:

Ruby tries to mimic Smalltalk - but I'm missing the elegance and ease of 
It is true that people like scripting languages - and they are confused it 
they get a system
like Smalltalk where they have to go a different route than writing a file 
in vi and compiling
it on the command line.

>... [Damien Cassou asks why an image is better than file based development] 

There are many reasons why an image is helpfull:

1. http://www.artima.com/forums/flat.jsp?forum=155&thread=63813
2. you can save different images of your program for debugging
3. you can save your image while debugging and continue at the same point in 
the debugger the next day
3. you can save your image at work while debugging and continue on another 
computer at home
4. you can script your image using Smalltalk - for instance you can easily 
remove all test cases by
   evaluating "TestCase allSubclasses do: [:each | each removeFromSystem]." 
In Java you have to search and
   delete files.
5. You can change the program while it is running ... in most file based 
languages you have to recompile using the
    modified files and restart the program
6. Deployment is easier (copy one file) - even if you have to strip the 
7. With Smalltalk and an image you can concentrate on solving your problem 
... in a file based languages you
    spend a lot of time searching in files or making your compiler finding 
the correct files (correct #include in C,
    import and classpath in Java, ...) - thats mostly difficult so people 
build helpers like "autoconfig", "make" or "ant"

> What I would like to have is a smalltalk scripting language. If you
> are interested this is an exciting topic.

Have a look at Smallscript. The .NET part (called S#) is commercial but the 
Smallscript part is free
(it's based on David Simmons AOS VM - a simple DLL).

You can easily write small scripts, even compile Smalltalk into small DLL's 
and executables.
Unfortunately it does not get the attention it would deserve. Most people 
think it is dead since
there are no new releases for the .NET part - but the free Smallscript SDK 
is ready and usable since 2004.

And it is really a step forward for Smalltalk since it supports mixins, 
interfaces, ABIA methods,
namespaces, ...

A short script looks like this:

   [stdout << 'Hello World']

stdout is a global variable as Transcript is in any other Smalltalk.
You can also access the compiler from within the script and advice it to 
compile the HelloWorld
example into a simple 4kb Exe.

    Compiler cmds: '-align:512 /target:exe'.

    Module name: Hello.

    Function [<$entrypoint>
          stdout << 'Hello World'.


More information about the Seaside mailing list