Smalltalk Environment Questions:
What's the deal with all these different versions, and how do I pick the best one?
This section of the FAQ is covered in SmalltalkEnvironmentComparisons
since it is quite broad.
I'd really like to try a good RefactoringBrowser
in Smalltalk. What are my options?
built into PharoSmalltalk
4.x. On the SqueakSmalltalk
does not load after 3.9, so I had to give up on SqueakSmalltalk
for now - RefactoringBrowser
is a necessity.
Is there a RefactoringBrowser
available for SqueakSmalltalk
, or DolphinSmalltalk
The refactoring browser is built into the most recent versions of Dolphin Smalltalk (XP) as well as VisualWorks
7 (See http://www.object-arts.com
) as well as Smalltalk/X (SmalltalkEcks
I went searching for something like this the other day. Apparently, a group of people at CampSmalltalk
started work on a Squeak port of the RefactoringBrowser
, and put up a temporary home page at http://www.bobjectsinc.com/squeakrbalpha/
. I believe the port is incomplete, but I haven't tried it out yet, as I'm only just starting to learn Smalltalk. The page also links to two other porting efforts, though one of the links seems to be dead.
Other Smalltalk Tools
What is ENVY, and why would I need it or want it?
I've only used ENVY briefly, but it is a shared source repository system for Smalltalk.
In short, it's the equivalent of CVS - just a lot more transparent to use. ENVY is not, to my knowledge, free - nor is it cheap. In addition, I think it's not really supported any longer. This may not be true. I know that Cincom is pushing Store for use with VisualWorks
5i.3 and up. Store is nice and it works well. -- JeffPanici
has dropped ENVY support due to their new bloatware, Eclipse: http://eclipse.org
. ENVY is dead.
Um, ENVY is perhaps dying, but not dead, as it is still the source code control system for VisualAge
/Smalltalk. For more than you ever wanted to know about ENVY, see the book "Mastering ENVY/Developer" (disclaimer: I'm one of the people who wrote it). -- Alan Knight
- Ibm is terminating support of VisualAge/Smalltalk. Envy is dead, unless it is somehow revived within Eclipse (there have been occasional rumors of this).
What is GemStone
, and why would I need it or want it? Why not just use a regular database?
is an ObjectOrientedDatabase
. And, to answer your second question:
Well, this is a huge
question. It gets right into the whole OODBMS vs. RDBMS
battle. First, let me say that GemStone
is a fine product, but a little aged in the OODBMS space. While I'm not certain, and someone correct me if I'm wrong, I believe that GemStone
/S isn't actively supported any longer and GemStone
/J is all but dead. However, you can get GemStone
/S for Linux as a limited development download.
You'll have to make a personal determination on whether an OODBMS or RDBMS is best for your particular situation. -- JeffPanici
(at least the one that comes with Squeak) doesn't give very informative failure messages when using "self should: [...]". Observe:
==== SUnit ======== Start ====
*** FAIL ***
24 run, 0 failed, 1 errors (50 ms)
---- SUnit ------- Errors ----
==== SUnit ========== End ====
Did it fail because I passed it a faulty Bar? Was the Quuxume out of whack? How will I know?
The idea with SUnit (and xUnit in general), as I understand it, is not to put in lots of informative error messages. If a test fails, run it in debug mode, you'll get a debugger, and you can see immediately why it fails. It's the simplest thing that could possibly work.
And having done it both ways, I find this much less time-consuming than trying to write tests that generate informative error messages. -- AlanKnight
Does anybody have a copy of David N. Smith's Smalltalk FAQ ? Please send me a copy if you have. -- CostinCozianu