User loginNavigation |
Syntax Solicited for Imperative-flavored Concurrent Language with Keywords
Who would be willing to suggest a syntax to go with the semantics I allude to
here?
Since the language I am hinting at here (thinking to flesh a definition out, once someone else has drafted a syntax) does not try for referential transparency, and therefore retains sort of an imperative flavor, I assign the langauge the working title, Imperatrix Mundi. If someone wants to suggest another name, maybe I'd favor adopting such suggested name instead. I think it could be interesting (for me with help and suggestions from you readers) to flesh out a language of this sort, even though for some years I have been thinking a referentially transparent (RT) language would be the ultimate way to go. I suggest Imperatrix Mundi as an intermediate step in a possible evolution toward an eventual RT language for general computer programming purposes that don't require blindingly fast performance nor specialization to an unusual application area. For talking about the message passing in this language, I borrow the terms "bird" and "nest" from ToonTalk, but with some semantic differences, chief among them being that whereas in ToonTalk, bird/nest channels guarantee that the messages read off the nest come in the same order as they were handed to the bird, in this language I say that the order of the messages is not guaranteed to be preserved. This language does not try for referential transparency. However, it must meet a weaker requirement, that the values (or references or meanings) denoted by the occurrences of a given identifier in a given context could be exchanged with each other without changing the semantics of the segment of code occupying the context. This should happen because of don't-care nondeterminism. For example, suppose a <- b is a command meaning to send a message denoted by b via a bird denoted by a, and the code says a <- b; a <- c. What this would mean is that the message stream sent along 'a' is some random merge of a1 with a2; a1 <- b; a2 <- c. The bird, 'a', would get the messages b and c, and whoever is reading the nest at the other end could get b before c or c before b. A segment of code consists of a bag of commands (or statements if you prefer to think of them that way); the order of the commands cannot affect the meaning of the segment. List of semantic constructs that need syntactic expression:
By Jack Waugh at 2007-03-15 20:12 | LtU Forum | previous forum topic | next forum topic | other blogs | 6454 reads
|
Browse archives
Active forum topics |
Recent comments
22 weeks 6 days ago
22 weeks 6 days ago
22 weeks 6 days ago
45 weeks 18 hours ago
49 weeks 2 days ago
50 weeks 6 days ago
50 weeks 6 days ago
1 year 1 week ago
1 year 6 weeks ago
1 year 6 weeks ago