Are there any good open source smalltalk implementations? [closed]
Asked Answered
K

8

14

Do you know any good smalltalk implementations which meet the following criteria:

  1. are open source (and free)
  2. are enterprise ready - I can do commercial apps into it
  3. works on os x

I'm asking this because I heard a lot about smalltalk, and I want to learn it - just for fun. But it seems to be hard to find the right tools and books for this language.

Kepi answered 14/12, 2010 at 16:19 Comment(0)
P
14

I am happy developing commercial web applications on a Mac in Pharo. Cross-platform development is easy and painless. I work together with a Windows-based developer and we deploy on Ubuntu. There we use the commercial Gemstone system (OODB) in its free version. We use Monticello as a distributed version control system. I've taught a student the basics of smalltallk and Seaside with James Foster's tutorial. A more in-depth explanation is in the Seaside book

When creating domain models, Glamour is a fantastic toolkit to create browsers, allowing the navigation and visualization of the model. It is part of Moose, a software reengineering system, also based on Pharo.

There are of course also weaknesses: Pharo changes a lot. Track the changes that are going on on the issue tracker and the mailing list. Staying about a month behind the bleeding edge is about right for us. Integration with legacy systems is easiest with REST web services or files. Smalltalk tends to use a lot less XML (SOAP) than .NET and java. There is no good 64 bit support. There are 64 bit images, but they have not been tested enough and are known to have problems.

Peltz answered 14/12, 2010 at 21:18 Comment(0)
G
6

Pharo meets all your criteria. It is open source and free, it was forked from Squeak specially to be for professional development and because Squeak was actually born under the Apple umbrella, it supports OS X perfectly.

Gonocyte answered 14/12, 2010 at 16:26 Comment(4)
cool, thanks. Is quite young, maybe that's why it didn't appear into my google searches :).Kepi
I've been using Pharo to develop small business apps for a year and I haven't been disappointed. It has a solid core, vibrant community (better than most commercial support - irc, mailing lists, and conferences give you access to core developers) and the ability to bridge to other languages (most easily C libs) if necessary. And if you're doing web apps, definitely check out Seaside, which runs right in your Pharo (or other Smalltalk) image.Mores
Andrej, also look at world.st for more information about "The World" of Smalltalk :)Kebab
Pharo (and squeak) are an interesting case where the OSX version is probably the best one right now. Some libraries (I'm particularly thinking of Alien FFI) only work on OSX right now, or work better on it.Bebe
P
6

Squeak. As Janko mentioned, Squeak spawned Pharo. Since the fork, Squeak has undergone a number of significant changes and is (in my opinion at least) as enterprise-ready as Pharo.

(There is a large amount of cross-pollination between the Squeak and Pharo communities. They even share the same virtual machine.)

Phenformin answered 15/12, 2010 at 12:14 Comment(0)
S
2

I forgot...fore even more books, check

http://stephane.ducasse.free.fr/FreeBooks.html

and for web development you can check

http://book.seaside.st/

Striker answered 14/12, 2010 at 18:21 Comment(0)
S
1

Gnu smalltalk

Switcheroo answered 14/12, 2010 at 16:30 Comment(0)
S
1

I would go by Pharo. Check:

http://www.pharo-project.org/
http://pharobyexample.org/
http://book.pharo-project.org/

Striker answered 14/12, 2010 at 18:19 Comment(0)
S
0

Pharo if your focus is web development only. Squeak if you want more stuff to play with and don't care if you're a bit behind with the latest web development stuff using Seaside and don't mind if there are libraries that people haven't tested in a while. Cobalt (based on squeak) or OpenQwaq if you want to have a robust 3D mutli-user distributed 3D world available. Scratch if you want to have a kids-ready programming environment out of the box.

All of these are based off squeak.

You have several flavors of VM available with each of the above. Cog and CogMT are designed to be accelerated VMs that use a just in time compiler for extra speed.

There are also experimental GUIs, such as Cuis and there's a standalone VM called "SqueakNOS" to be used in place of a host OS such as Mac OS or Linux.

In a few months, there should be a massively scalable multi-core system available called SiliconSqueak that implements the Squeak VM in hardware.

I've no doubt missed a few things. Squeak is a research tool for many people in the computer world and some implement commercial products using it.

Suzannasuzanne answered 29/9, 2011 at 13:49 Comment(2)
Seaside 3.0 works just fine in Squeak, or did the last I checked.Phenformin
Thanks a lot for your Answer! I really appreciate it! hopefully in the near future I will add some smaltalk projects to my "portfolio".Kepi
A
0

I do use #Pharo for commercial development.

Application space: dashboard and networking equipment.

Very solid tool, executes fast.

Now on Pharo 3.0.

Command line tools created using CommandLineHandlers. Web apps with Seaside and fronted with Apache.

VMs monitored with monit.

CI with Jenkins.

All source Smalltalk code managed in git.

The best thing is the speed of development and ease of debugging. Never had such a good experience. Coming from Java, PHP, and some C.

Abigael answered 27/11, 2014 at 10:21 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.