1. The Interpreter (Porting etc)
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