How useful would be a Smalltalk source code browser for other programming languages?
Question: I'm working on an IDE for python, ruby and php.

Never having used Smallltalk myself (even it was very popular when I was at
university) I wonder if the classic Smalltalk Browser which displays only one
method is really an improvment or to classical file editing or not.

I myself like to have the overview of as much as possible in a class. Now i
use a 24" 1280x1920 display in a two column mode which can display **a lot**
of lines at ones.

I personally have to wonder what is the benefit if you for example also have
good code folding editor where a user can fold for example all def's
(functions code bodies) with one keystroke.

But I see the request to make xxx more smalltalkish from time to time in
newsgroups. I know some might want an image based version but the browser was
the second most different Smalltalk invention.


Answer: The Smalltalk browser has two parts: the top one shows the packages, classes,
protocols and methods/messages, the bottom one shows the content of one
method. This is very usefull if you design/code your program thinking more on
signatures and names, rather than as a web of lines of codes.

If you concentrate on signature, this could lead to a more "object oriented"
style, where the system is designed as a collaboration of objects sending
messages to each other. In this paradigm, the methods names are somehow more
important than how they are implemented.

If you have a very large screen (I got one myself :-)) you would open several
smalltalk browsers allowing you to browse (and code) in several different
packages and classes. Moreover, you would probably also have a worspace and a
xUnit to test and play with your objects.

I suggest you look at the Whisker editor created for Squeak. It proposes a
quite nice balance between names and signatures navigation, and lines of code
exploration. You would need to try it, as the screenshot does not show the
dynamic of it, and how you navigate thru the "boxes" of codes.

<http://www.mindspring.com/~dway/smalltalk/whisker.html>

