Is Smalltalk a viable development language for Mac OS X?
Asked Answered
M

6

14

Every time I see a discussion on software development, always someone suggests or exalts the qualities of Smalltalk, be it the beautiful language constructs or the better implementation of basically everything.

So I was curious, is anybody developing in Smalltalk? can Smalltalk actually be used to develop software on the Mac? Or what is the target platform for Smalltalk? What is the poster child for this apparently fantastic but unpopular language?

Mantua answered 16/7, 2009 at 18:22 Comment(0)
W
18

Smalltalk isn't really used for GUI application development on the Mac in any major way. The only distribution that could produce native apps was Ambrai Smalltalk, and that died in beta AFAIK. Squeak is the most popular Smalltalk variant nowadays, but you will be torn limb from limb if you release a Mac OS X app that looks like Squeak. It's worth checking out if you're interested in learning the language (which is still unique in a lot of ways), but you're probably not going to be developing OS X apps with it.

If you would like something similar, check out MacRuby. Ruby is as close as you can get to Smalltalk without actually being Smalltalk — total object orientation, dynamic, 100% message-based, heavy use of blocks, etc. MacRuby is an implementation being developed by Apple specifically for making OS X applications.

Mac OS X's native Objective-C is also heavily Smalltalk-inspired (it's basically a big chunk of Smalltalk's object system and syntax bolted onto C), but owing to its extreme C compatibility, it falls a little further from the tree.

Warship answered 16/7, 2009 at 18:40 Comment(2)
++ MacRuby looks really exciting. I hope the abstraction layer is really as thin as they claim though. Glue projects like this have a nifty habit of getting abandoned and then dying slow deaths as the platform marches on. If it's not thin, and hence maintainable, it really won't be worth investing too much time into.Saltcellar
There is an Objective-C binding for Squeak/Pharo, which is being rejuvenated as part of the iPhone port of Squeak (isqueak.org).Disjuncture
S
7

Take a look at fscript, which is essentially a smalltalk-like language for Objective C.

Steffie answered 19/7, 2009 at 4:54 Comment(0)
L
4

Luis: do you want to do desktop application for Mac ? or you want to program in Mac? If you want to do a web application for example, you can perfectly use Squeak or Pharo. If you want to do native mac applications, you should see the Mars project for Squeak:

http://smallworks.com.ar/productos/Mars

As an example, most of the Pharo users and developers are under Mac.

http://www.pharo-project.org/home

download and try it at least for a couple of hours!

Loreenlorelei answered 17/7, 2009 at 17:36 Comment(1)
/productos/Mars not foundFite
J
3

I still believe that Squeak is well worth investigating, if only to broaden your mind a little. As for the poster child for Smalltalk, it's probably Seaside.

Joselynjoseph answered 16/7, 2009 at 19:48 Comment(1)
Seaside is now hosted at Github: github.com/seasidest/seasideMillstream
I
2

Squeak isn't its UI. You can configure Morphic heavily (look at how similar Pharo's is to OSX, for instance). Or you can just use native widgets with wxSqueak.

Iodometry answered 22/7, 2009 at 11:13 Comment(6)
Sorry but is like a 3 dollar bill. I've seen people's reactions on first impressions on that. Trying to compare a customised Morphic to native OS X controls is embarrassing.Fite
You're right: sometimes the native OS controls are simply disgusting!Iodometry
I think you misunderstood me. The native OS X with all its imperfections are among the best the industry can provide. Morphic is the 3 dollar bill (not because of the concept but the experience Morphic provides). Morphic is even okay for playing around but bulletproof industry products? nono. My point is, if we could use Smalltalk to develop OS X apps with native controls we'll open fantastic opportunitiesFite
No, I deliberately misinterpreted you :) Morphic is not Squeak, just as it is not Pharo. "Develop on Mac" does not necessarily imply writing a UI, hence my comment. If you don't like Morphic, throw it out and use a different UI. Like wxSqueak provided I don't even remember how many years ago.Iodometry
Ok. BTW, do you know in which state wxSqueak is? what about Pharo? do you know if it's usable? (if so it might be an appealing path if this moves forward github.com/sebastianconcept/Creativity)Fite
No idea, I'm afraid. I tried it out a few years ago, but I don't usually work with UIs.Iodometry
F
2

This deserves some attention:

"Objective-Smalltalk was created specifically to solve practical problems that have been encountered in 25 years of Objective-C and Smalltalk use, but with a theoretical framework that solves many of these problems elegantly and minimally, rather than by bolting on special feature after special feature."

http://objective.st/

Fite answered 8/3, 2014 at 14:24 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.