In article <······················@news.esedona.net>,
Mark Watson <·····@markwatson.com> wrote:
> This may sound odd, but I found myself recently
> using VisualWorks Smalltalk to get something tricky
> working that had to be written ultimately in another
> language (Java).
>
> I used to also do this occasionally in Lisp (e.g.,
> in the 1980s, I prototyped all 12 of the SAIC ANSim
> neural network paradigms in Lisp, then rewrote
> everything in C for Windows 1.0).
>
> Perhaps I just have odd work habits, but I was
> wondering if other people do the same sort of thing?
I used to a lot, until I started using Dylan [1]. Now I can prototype
quickly *and* get fast code in the same language. Even better, you
don't have to make the stages distinct, so as a given thing starts to
get slow enough to be annoying as you prototype you can right away do
whatever is necessary to get it fast, without impacting the rest of the
code.
Often this will be just adding a few sealing and type declarations, but
you can also transparently change things such as data representations
completely, thanks to uniform syntax for all collection types (including
user-defined ones) and slot/field access having the same syntax as a
method call. It's (so far, in my experience) *always* much simpler and
faster to tweak within the language than to reimplement it in C.
-- Bruce
[1] http://www.gwydiondylan.org
http://www.functional-objects.com