Erlang/OTP User Conference (euc'2003) Proceedings
started 12/10/2003; 1:44:30 PM - last post 12/14/2003; 1:35:22 PM
|
|
Ehud Lamm - Erlang/OTP User Conference (euc'2003) Proceedings
12/10/2003; 1:44:30 PM (reads: 11255, responses: 3)
|
|
|
Dominic Fox - Re: Erlang/OTP User Conference (euc'2003) Proceedings
12/11/2003; 2:55:45 PM (reads: 401, responses: 0)
|
|
I like Mike Williams's point that the scary thing about Erlang, from a "mainstream" perspective, is that it changes many "parameters" at once. It isn't a mainstream language with a functional/recursive flavour, or with a concurrent/lightweight-threads flavour, or with a VM/dynamic-code-loading flavour; it's a bit of a sideways-step from almost anywhere else (in the mainstream) you might be starting from. Bold moves like this open up the design space for languages, not so much from a technical perspective (I dare say not so much of Erlang is really new, strictly speaking) as from a social perspective.
I think CTM and Oz lead in some similar directions to Erlang, and I'll be interested to see if a) CTM is widely adopted in undergraduate CS courses, and b) if this leads to a broadening of the collective (graduate, professional, mainstream) mind about programming language design.
|
|
Peter Van Roy - Re: Erlang/OTP User Conference (euc'2003) Proceedings
12/12/2003; 12:51:45 AM (reads: 360, responses: 0)
|
|
I think CTM and Oz lead in some similar directions to Erlang, and I'll be interested to see if a) CTM is widely adopted in undergraduate CS courses, and b) if this leads to a broadening of the collective (graduate, professional, mainstream) mind about programming language design.
It will not be easy to achieve (a). The main reason, it seems, is that undergraduate
programs are driven by short-sighted views of what students need.
Since students pay heavy tuition, they demand
a big say in the curriculum. The result is that they want to learn mainstream tools
very quickly.
Unfortunately the university departments tend to bend to these demands.
Any person wanting to teach concepts in a broader way has an uphill battle.
(The situation is a little better in Europe than in the US,
because the connection between tuition and curriculum is more indirect.)
There is some hope: at SIGCSE 2003 I organized a panel discussion on "The Role of
Language Paradigms in Teaching Programming" (panelists myself, Joe Armstrong,
Matthew Flatt, and Boris Magnusson). The auditorium was full (at least 100 people)
and there was a lot of interest by teachers bored or disillusioned with the
mainstream approaches.
I think to achieve (a) will require a long effort over many years. Every little bit helps.
Lambda the Ultimate members can help in this by being vocal advocates for the
broader and deeper approach embodied in books such as CTM.
One thing to mention is the nontraditional approach that we are using to
teach second-year courses (course material
here).
This approach starts with functional programming, then adds concurrency
(giving declarative concurrency), and ends up with multi-agent systems. All in
a second-year course! We have taught in this way for several years now and it is
a great success. It is a refreshing change from the traditional approach that
brings in state and ends up with object-oriented programming. As Joe Armstrong's
thesis shows, the importance of many OO concepts is highly exaggerated (his
thesis uses first-class modules and higher-order programming, but no inheritance
nor methods nor shared-state concurrency).
I think our nontraditional approach is more
balanced towards concepts that are really useful.
PS: The
math-thinking working group is working towards similar goals.
|
|
Peter Van Roy - Re: Erlang/OTP User Conference (euc'2003) Proceedings
12/14/2003; 1:35:22 PM (reads: 196, responses: 0)
|
|
Every little bit helps. Lambda the Ultimate members can help in this by being vocal advocates for the broader and deeper approach embodied in books such as CTM.
One simple technique takes a wink from 'google bombing': the more sites that
link to the book's
URL, the higher its ranking becomes in Google. The text
used in the link is important too (type 'miserable failure' as keywords in Google
and you'll see what I mean). This is because Google uses a particular algorithm,
called PageRank, to weight the pages. Roughly, the more links that a page has
from other highly ranked pages, the more highly ranked it becomes.
|
|
|
|