[Tfug] Language choices

Bexley Hall bexley401 at yahoo.com
Sat Oct 28 10:48:18 MST 2006


Hi, Rob,

--- Robert Hunter <hunter at tfug.org> wrote:

> > I'm looking for ideas for a lightweight scripting
> > language to build into a couple of things.  But,
> > I am unsure of the exact criteria I want to
> > impose on my selection  :<
> 
> Don, I haven't used or developed any embedded
> scripting languages, but  for what it's worth...
> 
> There are quite a few embeddable scripting languages
> listed at Wikipedia.
>
http://en.wikipedia.org/wiki/Scripting_language#Extension.2Fembeddable_languages

Yes.  The problem is figuring out each's *real*
strengths and weaknesses (hence the reason to ask
folks for their first-hand experience) since these
sorts of things only manifest themselves after
a fair bit of concientious use...
 
> Given my penchant for Scheme, I am interested at
> some point in using libguile in a project.  Guile
> is the "official" GNU extension language.
>
http://en.wikipedia.org/wiki/Guile_programming_language
>
http://www.gnu.org/software/guile/guile.html#whatisit
 
Yes, but LISP-ish languages really pound on the heap.
And, can lead to lots of fragmentation thereof.
Which, in turn, causes the aplication to "need"
more heap to work (even if you run the GC often).

Now, if all of your applications are doing that
concurrently (even if they are operating in their
own protected address spaces), it makes a notable
impact on your total resource requirements
(remember, I can't swap VM to disk when I run out!)

> On the other hand, if I were going to implement my
> own, I would probably want to stick with a simple
> language.

I prefer simple mainly because it is usually
"cleaner" than more complex languages.  Not just
the syntax issues but, also, being able to sort
out what *exactly* is happening "under the hood"
when you write a given line of code.  For that
reason, I write most things in C (since I can
visualize the assembly language code associated
with each construct) and avoid things like C++
(because there are too many things that the
"language" does *for* me that I would have to be
wary of... automatically calling constructors,
virtual functions, etc. ... and each of those
has some cost associated with it)

> It seems to me that writing an ML interpreter 
> would be fairly challenging.

I think SML/NJ is open sourced.  As are most other
languages, nowadays.  Ideally (assuming a language
didn't fit my needs exactly) I could just hack
the sources to disable features that I don't want,
change syntax to things more favorable (e.g., ML's
use of ~ for unary minus is annoying, REXX's
implicit insertion of a SPACE between concatenated
strings *unless* you deliberately invoke the
operator without whitespace between it and it's
second operand, etc.)

I suspect ML's biggest liabilities are a largish
footprint at run time (since it saves ALL bindings
on a stack -- even rebindings to existing names)
*and* it's unusual orientation as a "functional"
language instead of "procedural".  (I'm just
too accustomed to side-effects being a deliberate
*goal* in code writing  :> )

(sigh)  It sure would be nice to corner some of my
professors and hammer away at them regarding all
these little issues...  :<

--don


 
____________________________________________________________________________________
Everyone is raving about the all-new Yahoo! Mail 
(http://advision.webevents.yahoo.com/mailbeta/)





More information about the tfug mailing list