On Wed, May 14, 2008 at 8:12 PM, James Foster Smalltalk@jgfoster.net wrote:
On May 14, 2008, at 6:47 PM, Jason Johnson wrote:
I don't think that Dolphin or GemStone/S have ways of modifying the parser.
You misunderstand me. You have the parser code in your image and you can modify it. I meant that there is probably a "standard" way to do it in many of the Smalltalks. Though in Dolphin it isn't needed since they already have macros (the ## syntax).
I thought that with Smalltalk we claim that the more verbose code was helpful for maintenance. I'd much rather have keyword selectors than comma-separated arguments.
Well, you are applying the "verbose" label to something different then I am. Personally I prefer the keyword arguments and actually find it concise and self documenting. By verbose I meant "how many lines of code to do something" and "how much of this code is just silly boiler-plate that I just don't have a way to avoid".
I used to have a link of a study comparing Java, C++ and Smalltalk. At that time Java was 3 times more productive then C++ and Smalltalk 3 times more productive then Java, based on how much code the developer had to write.
Also, I don't care much for syntactic shortcuts like dynamic constructors. Although people describe Lisp as simple, I keep getting lost on the meaning of a single forward quote, a single backward quote, a double quote, a comma, etc. One of the early languages I learned was M (aka, MUMPS), where the semicolon had four different meanings, depending on the context. Of course, we weren't conserving characters for the programmers or for the maintainers, but for the machine--each user had 2 KB for code and data.
James Foster