Slashdot Log In
Smalltalk Solutions 2001 Trip Report
Posted by
timothy
on Wed Apr 18, 2001 07:04 AM
from the gayle-force-winds? dept.
from the gayle-force-winds? dept.
John Squeaker writes: "Last week while the rest of the world was worrying about corporations warning, and dot coms failing, 300 smalltalkers got together in Chicago to plan for the future. Given the fact corporations like Dell have canceled their user conference this year we were very pleased with the attendence figures. The conference hosted a key note by Alan Kay, a *must* read, and the mood and general feeling of the show was captured in this excellent trip report. More information on the conference plus links to the papers/tutorials presented there can be found at the conference site. Do you want to know where OO languages like Java, Ruby, Squeak, and SmallScript come from? Then come visit us for the real story, and see what you can expect to hear in the next five years." The whole thing is interesting, but I particularly liked Tuesday. Smalltalkers seem to have a secret from everyone else sometimes ...
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Re:Dead wrong! (Score:2)
1) the oopsla 99 BOF on Squeak had a fun presentation on the new Jitter for squeak -- written in a weird self interpreting style, IIRC. It seemed pretty cool. (also one of the best stories on what to use C++ for. "C++ is a great language for implementing langauges to solve your problem". Interestingly, this is the same story many of the functional programming people sing, only they use bigger words like monads and combinators) How is this jitter coming along?
2) I also seem to remember a product that compiled smalltalk to JVM bytecode. They were very cagey about how they would get around the dispatch issues without resorting to reflection. Any word on this?
Re:How about some Bigtalk (Score:3)
Re:After 14 years of working with it ... (Score:2)
which languages implement this, outside of the DB world (where you could argue it is explict as well, being stored in a table) or UML (which so far has resisted all attempts at being executable)?
Smalltalk is on the cutting edge in several areas (Score:4)
Extreme Programming. The extreme programming [extremeprogramming.org] (XP) methodology grew out of a Smalltalk project 3-4 years ago. The founder of extreme programming, Kent Beck [c2.com], advocates Smalltalk as the most productive language for XP, as does Ron Jeffries, the author of the Extreme Programming Installed book.
Refactoring. The term "refactoring" has become popular in the last few years, due in large part to the work done on the Refactoring Browser [uiuc.edu] for Smalltalk by John Brant and Don Roberts. (Martin Fowler's book on Refactoring includes a section on the Refactoring Browser.) The Refactoring Browser lets you perform automated behavior-preserving code refactorings, such as abstracting references to an instance variable, pushing a method up into its superclass, etc. (There have also been some refactoring tools written for Java, but the nature of the Java language will make it difficult to create a tool as powerful as the Refactoring Browser for Smalltalk.)
IDE's (Integrated Development Environments). Smalltalk has generally been considered a leader in this area, with its integrated code browsers, the ability to reliably look up all senders or implementors of a method, etc. (There is the occasional effort in other languages to catch up in this area, such as VisualAge Java with its integrated browsers, but VA/Java was also written in Smalltalk.) Also, to shamelessy toot my own horn for a minute, I've created an object-oriented "stacking" code browser for Squeak/Smalltalk called Whisker [mindspring.com]. I used Smalltalk to create this because the IDE supports this sort of experimentation well.
So, to claim that Smalltalk is somehow dead or obsolete is obviously false. True, it doesn't have the marketing hype (and market penetration) that Java does, but then, what else does? :-)
(Also, I still consider the language features of Smalltalk to be more technically "advanced" than those of Java. My personal hunch is that if you conducted a random poll of developers with *significant* experience with both languages (say, a minimum of 1 year full-time experience with each), probably 90-98% would agree with this. Of course, the same is probably true of Scheme vs. Java, or CLOS vs. Java, etc.)
Anyway, Smalltalk is obviously not the answer to all programming problems. (I wouldn't use it to write a device driver, for example.) But it is still one of the best (if not *the* best) options for many larger programming problems.
Re:After 14 years of working with it ... (Score:2)
Re:TIBET example code or docs? (Score:2)
typeHTML=TPMutableString.create();t ion(elem){typeHTML.concat('<tr><td>',' <input
type=button name="',elem,'" value="',elem,'" onClick="',elem,'.getMenu()">','</ td></tr>')});
typeHTML.concat('<form><table>');
TPObject.getTypeMethodNames().sort().perform(func
typeHTML.concat('</table></form>');
newwin=window.open();
newwin.document.open();
newwin.document.write(typeHTML);
newwin.document.close();
Then I clicked the EXECUTE button on the workspace and, as expected, a browser window opened up with a column of buttons named for the various TIBET types. I didn't define the "getMenu" method so it didn't actually work, but it wasn't bad for just sitting down and messing around for 10-15 minutes.
Correction (Score:2)
Not exactly first top notch factored design, I know.
Such is the fate of a first-time workspace doodle.
Re:After 14 years of working with it ... (Score:2)
Yes, these things can be done (well, I still don't know about developing Smalltalk code and uploading it), but they can't be done easily. This is the sort of thing that comes almost for free when you use C or Python. But just getting started can be a royal pain in the butt with something like Smalltalk, or heck, even Java.
I spend an inordinate amount of time dealing with the environment already. (inordinate being anything more than zero -- but in practical terms it can be quite high)
I can learn new things -- any decent programmer should enjoy learning all sorts of new things -- and when I learn them I know them. I'm always moving forward (even though expectations always increase). But with the environment stuff I always feel like I'm wasting time, and that the time I spend I'll just have to spend again when I move, or set up something new. I guess it's time spent that would be considered accidental, rather than essential -- and it's totally unsatisfying.
It's petty, I know, which is probably why I sound really annoyed in this post. It annoys me that petty things create serious blocks to being able to use something cool. I wish it weren't so.
Re:why the hell (Score:2)
How about some Bigtalk (Score:2)
Some of us use it (Score:5)
I have to do some of my development in Windows, and boy was finding Dolphin Smalltalk [object-arts.com] a nice thing for me. And no, I'm not some holdover from the 80s - when I started to do programming in the past couple of years (my training is really in mathematics; I wound up here via a winding path), I looked into various languages, tried them out for some of the things that I need to do, and found that two "old-timers" languages (Common Lisp and Smalltalk) fit many of my needs (which, incidentally, are not at all exotic - I do programming for a small trading firm).
It's a shame that so many people have preconceptions about various languages (often formed on the basis of where they were twenty years ago rather than where they've advanced to today) and therefore avoid checking them out to see what good things they can do.
Where Java came from. (Score:4)
Do you want to know where OO languages like Java, Ruby, Squeak, and SmallScript come from?
Although it is true that Java is heavily influenced by Smalltalk, there are also distinctive parts of Java that are based on Modula [compaq.com]. Most prominent of which are the Exception handling mechanism [cs.sfu.ca] and threading model [uni-siegen.de] based on Monitors.
--
Not so, Joe! (Score:3)
Smalltalk has its place in the cannon, just as does Perl and other languages. It has aged quite well, in fact, among those who have taken the time to learn something about it.
The bigots are free to their own views. I commend to the rest of us, however, a second look. Consider Squeak, an excellent, modern and free Smalltalk implementation. Play with it a bit, and see if you don't begin, at least, to "get it."
After 14 years of working with it ... (Score:4)
It consists of a few fundamental rules, ruthlessly applied and a huge library of functional objects.
I have done things in Smalltalk that are years ahead of what I accomplished in previous languages (C, COBOL, PL/I, APL, BASIC etc.) because the environment is reflexive and additions are interactive.
Its not that I couldn't have done all this, even in assembler, but that I'd still be scratching out code and waiting on compile-links. With the Smalltalk IDE it was there waiting for me to use it and to build on it.
The closer other languages and IDEs get to where Smalltalk was (because its a moving target,) the better Smalltalk looks.
In what ways? (Score:2)
Have you anything to offer us but a conclusion?
Re:Useful things in Squeak? (Score:2)
And don't ask them to try and learn the language either, because there's no documented API, and the purportedly self-commented code really isn't.
Learning Smalltalk is probably the easiest thing in the world, if you know the conceptual OO stuff, which is the same as for Java,C++,CLOS,... There are only 5 reserved words (true, false,nil,self,super). It literally takes you half an hour to learn Smalltalk syntax.
Since Squeak is mostly a research platform, the code might not be documented so well in some places. However, you have superior code browsing in every Smalltalk IDE and the entire code of your library is open source. So you do not only have the comments to the code, but also the code itself, if you care. BTW, the Smalltalk frameworks have been refined for over twenty years now. Talk about clean frameworks.
Also (and yes, I realize I'm reaching here), but the syntax is all backwards. It's not sufficiently like natural laugnage to be easy for beginners to use, and it just frustrates experienced programmers used to nearly every other language (i.e., based on C).
I came from C++ to Smalltalk and I cringe whenever I have to go back. Smalltalk code is readable as almost normal text, whereas you often do not see the forest for all the parenthesis in C++ or Java. For example:
In Java:
synchronized (this) {
while (aNumber > 0) {
try() {
wait();
} catch (InterruptedException) {
}
TheCriticalCode
}
The equivalent in Smalltalk:
self synchronized:
[ self waitWhile: [aNumber > 0].
TheCriticalCode ]
Squeak might not be what you want for normal product development (checkout VisualWorks [cincom.com] or one of the other 8 commercial Smalltalk implementations), but within the Squeak world, certainly the most exciting stuff is happening.
Re:Smalltalk is on the cutting edge in several are (Score:2)
Like so many things that recently have made a splash (extreme programming, refactoring, patterns, etc.), this is really just giving a name to programming practices and ideas that have been around for two decades. Smalltalk was one of the languages where such ideas originated (Lisp was another major one), they just didn't originate recently.
(There have also been some refactoring tools written for Java, but the nature of the Java language will make it difficult to create a tool as powerful as the Refactoring Browser for Smalltalk.)
Quite to the contrary. While Java isn't as convenient to program in as Smalltalk, the additional type information that Java source code contains lets you do more kinds of refactoring safely. In fact, one of the reasons refactoring has not been such a big deal in the C++/Java world is because static type checking in those languages already helps you with a lot of refactorings. For example, in Java, if you change an interface or move instance variables around, the type checker will point out every single place that you need to change. If you use a good IDE, you can breeze through those places and a refactoring only takes a single edit, compile, edit cycle. You still need to make the changes by hand, but that's pretty quick, actually faster than any of the refactoring browsers I have used in many cases.
Re:Smalltalk trip report. (Score:2)
Job web site not everything! (Score:2)
I do architecture & design work, and some of the projects I've worked on have been implemented in Smalltalk. It's used especially in situations where the requirements are very complex. Most business programming is brain dead - some basic accounting, workflow/groupware/document management, and the rest is just tailoring to individual requirements.
But in some areas of things like financial services, where the requirements can get truly complex and require math PhD's to develop the specs, languages like Smalltalk (and Scheme et al) can come into their own. In these systems, the problem domain is such that the last thing you want to have to worry about is the sort of infrastructure detail that lower-level languages like C++, Java, or PERL force you to deal with in developing large, complex systems.
Anyway, the real reason to learn Smalltalk is to learn what object-oriented programming is supposed to be like. C++ and Java, which I'm intimately familiar with, are pale imitations that make significant compromises which dilute OO in a pervasive way, limiting the degree to which pure OO concepts can be applied. Perl isn't worth a mention when it comes to OO - sure it can do it, but not in a way that you'd want to use in large, complex systems. Python is a bit better, and Ruby seems even better, but they still don't quite achieve the level that Smalltalk does.
Even though I don't develop in Smalltalk day-to-day, it's an important language to have gotten your head around, if you're interested in expanding your skill as a developer.
As a NeXT/OSX developer: Why should i use this? (Score:2)
Seriously. I don't know why i should use this language. Convince me.
I recently started developing with Objective C and the Cocoa/Yellow Box/NextStep API in Mac OS X. I think Objective C is fantastic, and have no terrible problem with living without exceptions or garbage collection. How would you argue that Smalltalk is better?
What is significantly better about one language as compared to the other? Has one features or elegance the other does not? Has anyone used both? How does smalltalk provide the things that protocols and categories give you in ObjC and multiple inherhitance gives you in C++? Is there way to do the nifty things that you can do with the ObjC forwardInvocation method?
Also: is there any reason that the smalltalk language could not interface with the Cocoa/Yellow Box/NextStep APIs? Would doing so be clumsy, or in some way degrade the concepts of the language? If you messed with the compiler, could Smalltalk objects and ObjC objects communicate transparently with each other through the objective c messaging system?
P.S. If i could somehow touch off a flamewar here that involved in ANY way the subjects of CLOS and Objective CAML, i would be completely overjoyed.
TIBET example code or docs? (Score:2)
If it were more public (Score:2)
DanH
Cav Pilot's Reference Page [cavalrypilot.com]
Smalltalk trip report. (Score:5)
Re:Smalltalk is obsolete (Score:2)
And it reminds me that I have an assignment due in about 4 hours. Waaaaaaa......
2nd OOP language? (Score:2)
Smalltalk dead? (Score:2)
Various links for Smalltalk (Score:5)
I believe EZBoard [ezboard.com] is written in Smalltalk
Volkswagen Beetles [cnn.com] with code in Smalltalk
Extreme Programming [slashdot.org] was invented while Kent Beck was consulting on Smalltalk projects
I think that's enough for a start :)
Dead wrong! (Score:5)
No, that isn't the case. The free Disney R&D implementation of Smalltalk, Squeak [squeak.org] addresses these issues, in some cases profoundly better than does Java.
Indeed, Java hardly offers "perfect portability," the "write-once, run anywhere" claim is marketing hype at its best. It is, in practice, quite difficult to get identical results from any but the most trivial Java programs.
In comparison, a multimedia GUI-based application in Squeak runs pixel-for-pixel IDENTICALLY across a vast array of platforms. I wrote a video game for my wife's birthday in Squeak, complete with animation sound and graphics, from the machine at my Office, a Dell PC Laptop. I sent the image by e-mail to my home, flipped it on her iMac while she slept, fired it up, and it just worked. Identically.
On the other counts, Squeak has a JIT (plus many other nice internal features including object send caching, a sweet and super-fast generational garbage collector), and there is, in fact, an ANSI standard.
Indeed, Smalltalk's source code is virtually identical across implementations. (The syntax, which --in this sense only-- is super-elegant, can be trivially described in a handful of rules). Except for one religious issue (closures for code blocks). Differences in and interoperability problems between implementations derive primarily from the underlying framework libraries provided with those codes -- a problem hardly unique to Smalltalk.
Re:How about some Bigtalk (Score:2)
Viva SmallTalk (Score:2)
Secondly, Smalltalk has the portability of java explained in the following post. Moderate it up!
Go to computerjobs.com or whatever and do a search for smalltalk you will see that smalltalk is still used as a programming language.
Refactoring is a large part of the (deservedly) hyped Extreme Programming. Squeak(smalltalk) comes in with a built in refactoring browser. It can *automatically* refactor code. I believe it finds dupblicated code, and makes large methods smaller. Incredible.
Go to www.squeak.org [squeak.org] and download smalltalk today.
Now to go offtopic a bit...
Finally, I'm a bit sick of the omnipresence of Java. ( flamearmor.setON() ) I know and have enjoyed the benefits of java. But I'm a little bit tired of people convincing me how great jsp pages are, javabeans, ejb etc... without knowing much about any of the alternatives. It seems like there are some great platforms out there zope/php, open-acs/tcl which allow people to build powerful flexible websites much cheaper then the java solution. Unfortunately those other ones get no coverage as Java's marketing is incredible.
Smalltalk In JavaScript (Score:3)
Apparently, page 144 of Flanagan's otherwise Definitive Guide to JavaScript [oreilly.com] concerning inheritance in that language misled many to believe that multi-level inheritance would not be possible in JavaScript. As it turns out, not only is multi-level inheritance possible, but so are class methods/attributes, meta-classes and even multiple inheritance and fun stuff like instance level programming ala Self [sun.com]. Apparently JavaScript is a lot more capable than most people, even some of the better experts in it, give it credit for being.
It would be great if TIBET got released at the WWW10 conference, but I think registration deadlines for vendors has passed.
Re:Where Java came from. (Score:2)
Re:After 14 years of working with it ... (Score:2)
1) performance is usually a lot less than C (and subject to garbage collection slowdowns; although modern GCs are better); [however Self showed that slowdowns of only 50% over optimised C are possible.]
2) one image fits all (and the image tends to be big, that's one thing that Java has cleaned up some; although Java admittedly has done some other things less well)
3) 4 metalevels? What were the designers smoking? Self had this right. Smalltalk should have had 1 or 2 at the most.
4) proprietary... (has been and remains to some extent)
5) typing IS useful sometimes (although its not as necessary as you'd expect from using C)
6) multiple inheritance is useful sometimes and most Smalltalk... doesn't (actually MI is not as necessary in run time typed languages but it's still handy sometimes)
Re:Smalltalk is obsolete (Score:2)
Java lacks:
- templates
- operator overloading
- multiple inheritance
- anal worrying about performance...
- performance (historically, although it's getting better)
;-)
Re:After 14 years of working with it ... (Score:2)
No, that's not a feature, or if it is it isn't a feature that fits with Smalltalk.
I think Smalltalk's biggest problem by far is that it's too insular. It's hard to talk with the rest of the world, or interact with what other programs are doing in other environments. That's the price of elegance, I suppose -- purity only comes when you won't sully yourself. But it's hard to work with. The image is a big part of the problem (as much as I think the orthogonal persistence that it implies is cool).
I really love Smalltalk, but I don't actually use it for anything real (even though I often have my choice of languages). The runtime environment is just too limiting (Smalltalk over FTP?)
Re:Useful things in Squeak? (Re:Dead wrong!) (Score:2)
Squeak itself didn't have an MP3 driver (we call them plugins) until just a few months ago, and it did take some time to sort it out cross-platform (there were also some licensing issues). I thought that they had this sorted by now, but I'm not sure one way or the other to where John Macintosh's excellent work has been ported.
It is most certainly true that C-language plugin code is not automatically cross-platform portable, even when plugged into Squeak.
God, someone just had to bring up Squeak. Ugh.
Wow, someone who uses Squeak in the real world! I hope you're getting paid a very large sum of money to do so, since I can't imagine anyone doing it out of personal preference.
As stated above I'm currently in a OOP class using Squeak, and maybe 75% of the people I know in there would agree with me when I say Squeak has been the worst programming language I've ever had to deal with (out of the seven or eight I've learned).
Interesting, my personal preferences were exactly the reverse, but I suspect this may be the difference between "learning seven or eight programming languages" and building real commercial code in one. Smalltalk is an excellent tool for prototyping and building OO systems, and then for extending the prototype to a solid commercial result, at least in my experience. Perhaps this may not be apparent when writing toy programs for a class in school, but in time, you may come to understand the virtues of a programming language that makes programming easier and more efficient.
The Squeak IDE is one of the most frustrating pieces of software I've ever had to use. Slow, ugly as sin (both the original MVC and the newer Morphic GUI), and bloated as all hell. You must have superhuman patience to be able to create a game for your wife using it.
De gustibus non disputandum est. My experience is much to the contrary. While I am regarded by some as an excellent hacker, capable of generating high quality code with breakneck speed. I have never been as efficient as I was since I started hacking in Squeak, or as happy while coding and debugging.
I met Squeak in early November a year or so ago after it was demonstrated by Ted Kaehler at Hackers. I went home, downloaded it, spent a little time with the old Smalltalk books, and had the product running in production form in time for her December 26 birthday, and still attend all the holiday parties.
Since that experience, in which I was a rank newbie to Smalltalk (and now, I realize to OOP -- though I had been writing in OOPLs for years), it has only gotten better.
I suppose we will have to take our respective positions as reasonable people, and agree to disagree.
It's *really* hard to believe that Squeak was supposed to become the language used on the Dynabook, If a bunch of college students can't get the hang of it, I don't see how elementary-school kids could either.
I'm trying to be polite here. MMy experience is to the contrary. For example, my 9-year old son codes in Squeak, having picked it up, indeed with some decent coaching, in just a week or so. His code is awkward at times and unpolished, but hey, he's actually writing code and thinking its fun.
Re:Where Java came from. (Score:2)
Re:2nd OOP language? (Score:2)
This was something akin to the tape as an object, where you could ask it to do something (by running the programs at the known locations), but it was free to perform your queries as it saw fit.
Odd that we can see it so differently . . . (Score:3)
Squeak itself didn't have an MP3 driver (we call them plugins) until just a few months ago, and it did take some time to sort it out cross-platform (there were also some licensing issues). I thought that they had this sorted by now, but I'm not sure one way or the other to where John Macintosh's excellent work has been ported.
It is most certainly true that C-language plugin code is not automatically cross-platform portable, even when plugged into Squeak.
God, someone just had to bring up Squeak. Ugh.
Wow, someone who uses Squeak in the real world! I hope you're getting paid a very large sum of money to do so, since I can't imagine anyone doing it out of personal preference.
As stated above I'm currently in a OOP class using Squeak, and maybe 75% of the people I know in there would agree with me when I say Squeak has been the worst programming language I've ever had to deal with (out of the seven or eight I've learned).
Interesting, my personal preferences were exactly the reverse, but I suspect this may be the difference between "learning seven or eight programming languages" and building real commercial code in one. Smalltalk is an excellent tool for prototyping and building OO systems, and then for extending the prototype to a solid commercial result, at least in my experience. Perhaps this may not be apparent when writing toy programs for a class in school, but in time, you may come to understand the virtues of a programming language that makes programming easier and more efficient.
The Squeak IDE is one of the most frustrating pieces of software I've ever had to use. Slow, ugly as sin (both the original MVC and the newer Morphic GUI), and bloated as all hell. You must have superhuman patience to be able to create a game for your wife using it.
De gustibus non disputandum est. My experience is much to the contrary. While I am regarded by some as an excellent hacker, capable of generating high quality code with breakneck speed. I have never been as efficient as I was since I started hacking in Squeak, or as happy while coding and debugging.
I met Squeak in early November a year or so ago after it was demonstrated by Ted Kaehler at Hackers. I went home, downloaded it, spent a little time with the old Smalltalk books, and had the product running in production form in time for her December 26 birthday, and still attend all the holiday parties.
Since that experience, in which I was a rank newbie to Smalltalk (and now, I realize to OOP -- though I had been writing in OOPLs for years), it has only gotten better.
I suppose we will have to take our respective positions as reasonable people, and agree to disagree.
It's *really* hard to believe that Squeak was supposed to become the language used on the Dynabook, If a bunch of college students can't get the hang of it, I don't see how elementary-school kids could either.
I'm trying to be polite here. MMy experience is to the contrary. For example, my 9-year old son codes in Squeak, having picked it up, indeed with some decent coaching, in just a week or so. His code is awkward at times and unpolished, but hey, he's actually writing code and thinking its fun.
Re:How about some Bigtalk (Score:2)
Re:Various links for Smalltalk (Score:2)
Now wait for the language Nazis... (Score:3)
Today : Smalltalk is crap because its too old, and we have other languages that do the same...
Morale of this? : 90% of Slashdot has the mindset "The way I do it is best. Anyone else doing it a different way is an ignorant asshole."
Pax,
White Rabbit +++ Divide by Cucumber Error ++
Useful things in Squeak? (Re:Dead wrong!) (Score:3)
It most certainly does not. I've just spent a semester here at Georgia Tech [gatech.edu] taking a course on OO-design and -programming, with Squeak being the language of (instructor, definitely not student) choice. Our ongoing semester project was to build an MP3 player (seems cool, right?). However, nobody seemed to notice that people who ran Squeak under Windows (a majority of the class, I believe) had no MP3 support. Oops. They were delayed at least two weeks while someone scrambled to find (or write, I dunno) the appropriate library. Even then, the Windows users had to use a specially-modified Squeak binary.
God, someone just had to bring up Squeak. Ugh.
<rant>
Wow, someone who uses Squeak in the real world! I hope you're getting paid a very large sum of money to do so, since I can't imagine anyone doing it out of personal preference.
As stated above I'm currently in a OOP class using Squeak, and maybe 75% of the people I know in there would agree with me when I say Squeak has been the worst programming language I've ever had to deal with (out of the seven or eight I've learned).
The Squeak IDE is one of the most frustrating pieces of software I've ever had to use. Slow, ugly as sin (both the original MVC and the newer Morphic GUI), and bloated as all hell. You must have superhuman patience to be able to create a game for your wife using it.
But good luck trying to turn it into a binary to distribute to your friends, because you can't! And don't ask them to try and learn the language either, because there's no documented API, and the purportedly self-commented code really isn't. Did I mention that that same code sometimes breaks on you, fresh from an install? Yep, believe it.
Also (and yes, I realize I'm reaching here), but the syntax is all backwards. It's not sufficiently like natural laugnage to be easy for beginners to use, and it just frustrates experienced programmers used to nearly every other language (i.e., based on C). It's going the way of Hypercard, Apple's old natural language-based multimedia programming environment.
It's *really* hard to believe that Squeak was supposed to become the language used on the Dynabook, [utexas.edu] If a bunch of college students can't get the hang of it, I don't see how elementary-school kids could either.
</rant>
Sssshhh (Score:2)
Re:Smalltalk trip report. (Score:2)
Re:Smalltalk is obsolete (Score:2)
/Brian
Re:Obsolete (Score:2)
/Brian
Re:How about some Bigtalk (Score:2)
Progressive Insurance: Smalltalk is behind a *huge* amount of their operation. I interned there. VisualAge for Smalltalk as client as well as GemStone/Smalltalk (OODBMS in Smalltalk) and IBM DB2 on the backend. Mission critical, enterprise wide, blah blah blah.
Medtronic: You ever heard of Pacemakers? Smalltalk is used to prototype the GUI for the "programmers" (devices which speak with the Pacemakers and other in-your-chest devices to, well, prorgam them). Prototyping in a very complex way- there are medical doctors, psychologists, and human-computer interface experts all over it. The department decided that Smalltalk was the best tool, being dynamic and fluid enough (where as most languages and IDEs are not).
And I get to use it for "real world" (?) plant population and hydrological data analysis and visualization at the NRRI [umn.edu] this summer.
Re:As a NeXT/OSX developer: Why should i use this? (Score:2)
I know that Marcel Weither (sp?) wrote a simple hack for a Squeak -> Objective-C bridge for the Mac OS X (+ Server) version of Squeak. I think it was only one way, as a proof of concept.
Re:Smalltalk is obsolete (Score:3)