The Interpreter (Porting etc)

new topic     » topic index » view thread      » older message » newer message

Discussion So Far:
Rob would like to port Euphoria, he's not sure about the details. He
        thought
 about
releasing Interpreter source code for free. Replies agreed with port, disagreed
 with
releasing source code.

My Two-Cents Worth:
        Porting Is _Good_. Releasing Source Code Is _Bad_.
        If you release the source code there are a few things bound to happen:
Differnet flavours of the language, these always leave a putrid taste in my
 mouth;
It will be knoked off (stolen) guaranteed, that is RDS will lose the revenue it
 deserves;
Bad implentations are made creating a bad reputation; Basically things wont go
 as
hoped.
        So here is are a few ideas on porting.
As previously suggested strip it back to the standard C cross platform
 implementations,
know here is the tricky part either a) develop plug-ins for the interpreter, or
 b)
develop cross platform implementation of platform dependent necessities and
 place
them in include files, make sure they have a standard interface.
        Plug-Ins are the nice theoretical way to go put may be impossible.
Cross Platform Standards may be easier. First develop a list of whats
        needed,
 STDIO
and File control, etc, is of course always in the interpreter. You would need I
 think
graphics routines (eg pixel, line, ellipse), printer control(bold,lf,ff),
 sound(beep)
etc. These things are then built into the interpreter with a different inside
 for
each platform but the same interface.
Remove the DOS bits, that aren't on your must have list, translate then
        into
 euphoria,
get the members of the list server to produce the equivilant for other
 platforms,
write a wrapper. Increases execution time of some routines but makes it platform
idependent.
Basically stick to the original idea. If it's necessary build it into
        the
 interpreter,
else write it in euphoria. What you don't know ask the list to help you, you'll
 get
help. This solves the problem, if the mac needs something done different change
 it
in the module for the mac version. Just keep the interface the same eg
 pixel(x,s)
remains pixel(x,s). The fine details can be worked out as they are needed.
 Top-Down
and Bottom-Up Design, the Harbour Bridge was built form both sides of the river.


---
Sincerely,
Mathew Hounsell
Mat.Hounsell at mailexcite.com




Free web-based email, Forever, From anywhere!
http://www.mailexcite.com

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu