Re: [livecode] Katahdin: Modifying your programming language as it runs

From: zuzu <sean.zuzu_at_gmail.com>
Date: Fri, 22 Jun 2007 09:40:42 -0400

On 6/22/07, Julian Rohrhuber <rohrhuber_at_uni-hamburg.de> wrote:
> as you hint toward, the general point is in how far it is required to
> enter into the compiler itself to change the logic of the program in
> a non-trivial way. One shouldn't have to do this in a turing-complete
> language. On the other hand it is interesting to see what happens
> when it happens.

my understanding of "interactive programming" is that the distinction
between "programming language" (and thus applications) and "compiler"
need not exist at all.

http://en.wikipedia.org/wiki/Interactive_programming

> Object orientation in a way tries to abstract from the idea of a
> single compiler altogether (although there is one), and make every
> object a dispatch of a "sentence".

sure... because OOP is also a "shadow" of the Actor Model... (Alan
Kay was a student of Carl Hewitt, IIRC.) so, yes, we get into
asynchronous message-passing concurrency and distributed systems
programming. (of which I'm quite fond.)

http://en.wikipedia.org/wiki/Actor_model

I've tinkered with learning Erlang for a few years, and recently I
started reading the Pragmatic Programmer's book on it. so far I think
it's quite excellent for clarifying alot of murky issues about what's
really going on in Erlang.

http://www.pragmaticprogrammer.com/titles/jaerlang/


> >On 6/21/07, alex <alex_at_slab.org> wrote:
> >>"Katahdin is a programming language where you can define new language
> >>constructs such as expressions and statements as easily as new types or
> >>functions. For example, you could define a new operator, a new type of
> >>loop, implement a syntax from another language that you like.
> >
> >hmm... technically, I'm not sure how this is different from most other
> >programming languages... operators and statements are just "weird"
> >functions, AFAIK. (of course, the fact that languages such as C are
> >implemented to make these very difficult to interchange is another
> >matter. ultimately that's something of a "turing complete" debate,
> >but I think we're concerned with syntactic/human ease here.)
> >
> >>After
> >>defining a new construct you can use it on the next line in the same
> >>file, so there is no need to recompile each time you want to add a new
> >>construct. Katahdin is powerful enough that you can define an entire
> >>existing language, or design a new language from scratch, making
> >>Katahdin a universal language interpreter."
> >
> >ah, now this sounds an awful lot like FORTH and its interactive
> >compiler (or "meta-compiler").
> >
> >http://en.wikipedia.org/wiki/FORTH#Structure_of_the_compiler
> >
> >>http://lambda-the-ultimate.org/node/2303
> >>
> >>Not sure how novel this is though, you could say the same about many
> >>languages I'm sure.
> >>
> >>alex
> >
> >seems so.
>
>
> --
>
>
>
>
>
> .
>
Received on Fri Jun 22 2007 - 13:41:15 BST

This archive was generated by hypermail 2.4.0 : Sun Aug 20 2023 - 16:02:23 BST