[Haskell-cafe] Message

Claus Reinke claus.reinke at talk21.com
Sat Oct 22 19:06:40 CEST 2011


> The world needs programmers to accept and take seriously Greg 
> Wilson's extensible programming, and stop laughing it off as "lolwut 
> wysiwyg msword for programming", and start implementing it.
> http://third-bit.com/blog/archives/4302.html

Who is "the world"? For starters, I don't think it is Greg Wilson's
idea, and if you look for alternate sources, often under other titles, 
you'll find parts of it implemented, with varying degrees of success
and often little acceptance. The idea is much older than one might 
think - conferences on extensible languages were held around 1970. 

Early implementation approximations didn't have the disposable 
computing power of today's PCs, nor did early implementers find
an audience ready for their ideas (to feed their students or 
themselves, some of those who were such ahead of the curve 
had to switch to working on more conventional, funded, topics).

Useful search keys:

- extensible languages (as in AI, the meaning of "extensible" tends
    to be redefined whenever a problem gets solved, so many features
    that used to mark an extensible language in the past have now
    become standard)

- structure editors (in that they were forerunners of projectional
    IDEs, and exhibited some of their advantages and disadvantages;
    there have been many efforts to generate structure editors from 
    language descriptions)

- projectional language workbenches (instead of parsing source
    to AST, the IDE/workbench operates on an AST-like abstract
    model, and source code views are just projections of that; 
    makes it easier to embed sublanguages);

    Smalltalkers will probably claim their image-based IDEs have
    been doing that all along.

- hyper-programming (where persistent runtime data can be 
    embedded in code via linking, similar to hypertext, with
    generic editors instead of generic Read/Show)

- Banana Algebra: Syntactic Language Extension via an Algebra 
    of Languages and Transformations (one example of research
    on language composition)

IDE generators, IDE tooling for domain-specific languages, 
language-oriented programming, language workbenches, ... 
they all contribute to the now broader interest in the topic.

In the context of Haskell, there once was Keith Hanna's
document-centered programming:

http://www.cs.kent.ac.uk/projects/vital/
http://www.cs.kent.ac.uk/projects/pivotal/

Perhaps Keith's projects can serve as an inspiration to just 
start hacking?-) The subject is an instance of these quotes:

"The future is already here - it's just not very evenly distributed."
William Gibson

"The best way to predict the future is to invent it."
Alan Kay

Claus
http://clausreinke.github.com/

 



More information about the Haskell-Cafe mailing list