On Tue, 28 Sep 1999 13:03:37 -0400, [EMAIL PROTECTED] wrote:
...
> The Natural Programming project is designing new languages for
> specialized applications, like for kids and multimedia authoring,
> where competition from C/C++/Java isn't a big issue. So any
> knowledge we gain about usability will be relevant and important.
>
> Anyway, the language which is popular seems to have about a 7
> year window (Pascal, C, C++, Visual Basic, Java, ...) and so new
> languages are always popping up. Certainly Java at least was
> influenced by the conventional wisdom about what was problematic
> about C++. Maybe we can insert some usability considerations
> into whatever language becomes popular next? We certainly won't
> if we don't try, or if we don't know what to say!
As I write the CMU CS Dept website appears to be unreachable so I can't see
what's currently been eval'ed, but Dylan might be an example of what comes
next -- and since Dylan has some roots at CMU I guess you ought to have look
at it.
Some of great things about Dylan from an educational point of view are:
(+) It is a dynamic language and so can start off very script-like without
getting anxious about types:
define method double (x)
x + x
end;
(+) It is interactive. At a Dylan prompt you can evaluate the definition and
then test it straightaway:
? double(2);
> 4
(+) It scales up to very large natively compiled programs and more advanced
topics like combining object-oriented and functional programming:
define method double (x :: <function>) => (y :: <function>)
compose(x, x);
end method double;
(+) It lets you define domain specific linguistic extensions, e.g.
with-open-midi-device here for multimedia:
with-open-midi-device (device)
send-midi-message(device, status, channel, data1, data2);
end;
Harlequin's Dylan can be found at:
http://www.harlequin.com/products/ads/dylan
And Gwydion Dylan, developed originally at CMU, can be found at:
http://www.randomhacks.com/dylan/
I would be interesting to see a critique of Dylan's design since it was a
meant to be a synthesis of the best ideas from other programming languages
when it was conceived at Apple.
__Jason