From: Pascal Costanza
Subject: Re: Lisp or Smalltalk: Suicide Mission, Part II
Date:
Message-ID: <csqm52$b9h$1@snic.vub.ac.be>
·······@runbox.com wrote:
> I've refactored my question in an attempt to better focus the
> responses. Specifically, I've made it a first person question to take
> out some of the team and mentor issues and added some more detail about
> project(s), etc:
>
> I'm trying to decide between learning Lisp and Smalltalk.
>
> I'm primarily interested in insights from people who have worked with
> both.
>
> I'm not a programmer, but wish to become one.
>
> I will learn only one of the languages (at this point in time.)
> Philosophically, I'm not interested in becoming a 'language collector,'
> a computer scientist, or developing a 'hobby' - but I am VERY
> interested in getting real work done by writing my own applications.
> Ideally, I therefore want the one language I choose to learn to be able
> to handle anything I intend to do now or in the future.
"If you give someone Fortran, he has Fortran. If you give someone Lisp,
he has any language he pleases." - Guy Steele
> Someone (Avi?) once wrote that Lisp is multi-paradigm while Smalltalk
> is not, but that since the one paradigm Smalltalk uses is so powerful,
> you can get almost all of the benefits without all the attendant
> complexity. That appeals to me. On the other hand, the power of Lisp
> is seductive.
You have to be careful how these statements are worded. Just because a
language is multi-paradigm does'nt mean it's flexible. Just because a
language is object-oriented doesn't mean it's simple. Just because a
language is statically typed doesn't mean it's safe. And so on.
Such technical attributions are just there to give you a very rough
description of the characteristics of a language. But no matter what
characteristics a language has it can still be a shitty language.
This means that the question whether a language is actually _good_ or
not cannot be answered in such terms. The art of language design lies in
the way how to take a number of features and combine them into a usable
whole. Just like in good art you cannot pinpoint why something is
actually well-designed. And just like in the arts it's all _also_ a
matter of taste.
Your question roughly sounds like this: "I will only learn one musical
instrument, and I want to be able to play all kinds of music on it.
Which one will help me to play beautiful music."
All we can say is that a Casio sythesizer for 100$ will probably not cut
it. Whether you will prefer a violin or a piano (or something else?) is
something that you have to decide on your own.
> If I'm trying to look on the bright side, I can note (as Espen does),
> that my systems analysts are not biased or coming in with preconceived
> ideas about language syntax, etc. This makes me wonder which is a
> better first language for them (and myself)...Smalltalk because it is
> simpler, or Lisp because I don't want to 'hardwire their brains'
> with doing everything one certain way...?
Try the piano and see whether you like it or not. ;)
Pascal