[exprla-devel] Re: [xpl] "Modular Messageing Dep't."
Status: Pre-Alpha
Brought to you by:
xpl2
From: reid_spencer <ras...@re...> - 2002-01-31 08:09:47
|
--- In xpl-dev@y..., Jonathan Burns <saski@w...> wrote: Robert A Hopkins wrote: > "Very Small Nutshell Dep't.": > > Will the incredible verbosity of xml, and therefore xpl, have any > bearing > on the speed at which an xpl program runs? (I think I can answer this > one > myself (as it relates to compilation) but it might make a good > question > for the FAQ.) > Indeed it will. Answer: XML is made verbose only by the appearance of start and end tags and by extra whitespace for indentations. This adds very little overhead to a parser. > "Compilation Revisited Dep't.": > > I find it curious that compilation seems to be a one-way process, that > > once a program is compiled it is not a trivial task to translate it > back > into its original language. Is it impossible? Or almost so? Does xpl > hold > out the promise of a simpler back-and-forth translation? A somewhat infrequently asked question, but... Answer: Decompilation can be performed reliably in some cases, but the cases in which it becomes highly awkward outnumber them massively. Compilation throws information away, when it transforms a source file to machine instructions. The source file is full of cues and conveniences for human reading. For instance, things have names. Those names don't even appear in the executable machine code form. As a result, decompiled machine code is necessarily full of automatically-generated names. Indentation is automatic, which is good. Grouping of instructions by whitespace and comments can't be regenerated - the decompiler has no clues where to put them. And there aren't any comments anyway. But this is only the start of the awkwardness. Machine instruction sets have only Jump (i.e. GOTO), Call (subroutine), Return (to the calling point), and Jump on Condition, to determine control flow in the program. All high-level languages must have their control flow translated into those four ... including For, Do-While, While-Do, If-Then-Else, and some obscure varieties of Come-From (e.g from Error). A compiler, which knows the pattern of machine instructions into which it translates each high-level idiom, can often recognize those patterns when it sees them in machine code. But one false move in the recognition (such as the original programmer planting a naughty GOTO) and the recognition goes haywire. For the same reason, two different compilers will probably go haywire trying to recognize each other's output. Now. We have not yet got into what it would mean to compile XPL. I told Michael I have a plan, and when we're at a certain stage, I'll write it out. I refuse to muddy the waters with it yet, but the basic thing is, XML contains (heck, almost consists of) cues which make ambiguity impossible. And as far as I can see, this means we can translate XPL source to a condensed tokenized form, throwing no information away. > "Wish List Dep't": > > I think a wish list for the web site would do us some good. That is a > list of ideas, wild or tame, that anyone thinks a good programming > language ought to have, posted on the Wish List. If we look at it from > > time to time for ideas, that might lead to something good, perhaps > only > good discussion. Also, it would be good for us to take a look at the > vast > spread of different conceptions we all have of the task we have chosen > to > undertake. (This ties in nicely with Michael's question "What will XPL > > acomplish?") (I have no idea what xpl will accomplish.) > [xpl-wishlist] ? > Sequence! What is the sequence in which a program executes statements? > > Can we use the curious structure of an xml document to play lovely > games > with sequence? An xml document has 3 structures: > > Beginning to end > Root element to leaves > Interconnected web > Aha. Thank you. > What is the sequence in which a program executes statements? Can we > switch sequence on the fly? Can we build in some sort of > multi-sequencing? (One task executing in the sequence of one > structure, > another in a different sequence?) Fiend! How am I to concentrate on stupid pseudo-professional coverletters to prospective employers, when I could be thinking about mad stuff like this? > "Web Site Name Dep't.": > > How about "xpl-xplicit.org"? (Xml is quite explicit, quite clear.) > > ********************************************* > ***** x p l - x p l i c i t . o r g ***** > ********************************************* > > It has a sort of p'zazz to it. Ain't nuttin' gonna fly witout a li'l > p'zazz. > XPLorers.org ? Till soon. Jonathan They finally realized that the ONE thing they just could not STAND was a smartass commenting decompiler. --- End forwarded message --- |