[Prev][Next][Index][Thread]

Re: A question



"Stephen J. Guthrie" <steve.guthrie@mantissa.com> writes:
>
> I started out by buying Dylan (this, I assume, is a good thing) and
> I am now curious as to whether I should throw good money after bad.

What sort of things are you planning to write? What type of things do
you work on?

The things I like most about Dylan would probably be:

 - its lisp like nature.
 - everything is an object.
 - multiple dispatch
 - singleton, subclass, one-of dispatch.
 - macro facility.
 - ability to use OO, functional or procedural programming.
 - DUIM, so easy to create GUI's in code rather than requiring a GUI 
   builder.
 - The HD development environments ship with lots of example code.

I do miss the listener style approach you get in Lisp, where you see
the results of what you do straight away - similar type of
functionality in Smalltalk too. HD 1.2 provides this from the IDE
though and HD 2.0 beta makes it even easier so it's not such a loss.

I like the way in the HD versions of Dylan that all libraries are
packaged as DLL's. For me it has encouraged reuse of common
libraries.

The HD c-ffi is good - it is easy to access Windows API and other
external API's. I would like to be able to use this in the listener
though but that is currently not possible unfortunately. I've never
had an external API I couldn't call via Dylan yet.

Overall it is a language that seems to suit the style of programming
that I do. The use of multiple dispatch simplifies many designs I've
had to do and the macro faciltiy helps to simplify things even
further. The ability to pass methods, functions, and classes around as
first class objects also has made things easier for the types of
things I do.

Many of the above things can be done in other languages in a variety
of different ways. But for me Dylan has provided a good trade off
between ease of use, powerfull language features, and easy application
delivery.

I've used HD 1.2 professional for most of my recent personal
programming projects, one commercial program and a couple of small
freeware programs available for download from the internet.

I was a bit dubious that people would download the HD runtime, given
its size, just to run a small freeware thing but I was surprised that
this proved not to be an obstacle. And once I wrote a few more add on
programs there was no need for users to download the large file
again. I guess the HD runtime isn't that much bigger than all the MFC
DLL's or the VB runtime stuff. Over the last two months there were
about 2,000 downloads of the HD runtime and associated utilities from
my web site so it seems that end users didn't mind running Dylan
stuff.

That's my reasons for using Dylan. I'm sure an enthusiast of any
language could come up with similar reasons though. Pick a language
and I hope you have fun using it.

Chris.
-- 
http://www.double.co.nz/dylan




Follow-Ups: References: