|
RE: Lambda (was: Refactoring in Tunes): msg#00096os.tunes
> From: Jim Little [mailto:jiml@xxxxxxxxxxxxx] > Subject: Re: Lambda (was: Refactoring in Tunes) > btanksley@xxxxxxxx wrote: > > No, I don't know that -- in fact, I disagree stridently > > with it. A computer > > language is nothing BUT a UI. It's an interface between > > the programmer and > > the machine. > I think what Laurent is getting at here is that the syntax of the > language can be separated from the semantics of the language. This statement makes sense from a certain point of view. I have recently come to take a different point of view -- I don't talk so much about the "semantics" versus the "syntax" of the language (unless the language deliberately limits its own semantics, of course); rather, I talk about the syntax of the language and the semantics of the machine it's running on. > I think > Laurent's further point is that type annotations do not affect the > semantics of the language, and thus they shouldn't be a part > of the core > language. However, they are useful, so they should be a "standard" > extension. I'm not overly offended by that :-). It seems like an utter and complete waste of time for everyone involved, but it's not offensive. For whom would it save effort? Whose problem is it solving? > When you think of having multiple syntaxes that are related to but > separate from the semantics of the language, it all starts to make > sense: most syntaxes could support the standard type annotation > extension in whatever way is most useful, but for those > implementations > that are highly constrained, the annotation could be left out. Anyone can write a language for my (nonexistant) VM, so that's true. They can even use the language I provide to hitch a ride, thus resulting in a very similar language. However, at no point would the annotation be left out of a program written in my language -- because those annotations are a part of the language. In an implementation which didn't want to perform typechecking, those annotations would be treated as comments. > At least, that's my take on it. I think separating semantics from > syntax (what Laurent calls "UI") is a very good approach, and I also I agree, but remember that a language is nothing aside from its syntax and its libraries. > think identifying a core set of semantics with optional > semantically-null standard extensions is also a good > approach. Hmm. I prefer a single definition for each language. > (But I'm > biased, because that's the approach I'm enabling with the Prism > metacode. :) ) Right. > Jim > (The Prism metacode is described at > http://www.teleport.com/~sphere/documents/001c/7/index.html.) I've read it. Fun. -Billy |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Lambda (was: Refactoring in Tunes): 00096, Laurent Martelli |
|---|---|
| Next by Date: | Re: Slate for Tunes HLL? (was: Lambda (was: Refactoring in Tunes)): 00096, Massimo Dentico |
| Previous by Thread: | Re: Lambda (was: Refactoring in Tunes)i: 00096, Laurent Martelli |
| Next by Thread: | RE: Lambda (was: Refactoring in Tunes): 00096, btanksley |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |