开发者

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

开发者 https://www.devze.com 2023-01-30 18:20 出处:网络
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.

We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.

Closed 7 years ago.

Improve this question

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 wan开发者_如何学运维t to learn it - just for fun. But it seems to be hard to find the right tools and books for this language.


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.


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.


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.)


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/


Gnu smalltalk


I would go by Pharo. Check:

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


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.


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.

0

精彩评论

暂无评论...
验证码 换一张
取 消