Code Comments

Programming Forum and web based access to our favorite programming groups.
For Programmers: Free Programming Magazines | New: Database administration forum
Registration is free! Edit your profileCalendarFind other membersFrequently Asked QuestionsSearch -> 
Post New Thread











Thread
Author

Embedding Scheme: what implementation?
I'm new to Scheme and I would embed it into a commercial application as
scripting language. I've searched on Internet and I've seen that exists
*a lot* of implementations (of course this is a good thing).

Because I've not the right knowledge to choose the "best" implementation
for my needs, I would appreciate a lot some help. What I need should
meet the following requirements:
*) Embeddable in C/C++ applications
*) Actively maintained
*) Opensource and free for commercial use (e.g. LGPL)
*) Lightweight (e.g.: a single DLL of 500K)
*) Efficient on numerical computations


Regards,
Daniele Benegiamo.

Report this thread to moderator Post Follow-up to this message
Old Post
DB
08-27-05 12:00 AM


Re: Embedding Scheme: what implementation?
I would have written you directly, but you have no discernible email.

http://ecls.sf.net

Cheers
--
Marco



DB wrote:
> I'm new to Scheme and I would embed it into a commercial application as
> scripting language. I've searched on Internet and I've seen that exists
> *a lot* of implementations (of course this is a good thing).
>
> Because I've not the right knowledge to choose the "best" implementation
> for my needs, I would appreciate a lot some help. What I need should
> meet the following requirements:
> *) Embeddable in C/C++ applications
> *) Actively maintained
> *) Opensource and free for commercial use (e.g. LGPL)
> *) Lightweight (e.g.: a single DLL of 500K)
> *) Efficient on numerical computations
>
>
> Regards,
>     Daniele Benegiamo.

Report this thread to moderator Post Follow-up to this message
Old Post
Marco Antoniotti
08-27-05 12:00 AM


Re: Embedding Scheme: what implementation?
Marco Antoniotti wrote:
> I would have written you directly, but you have no discernible email.
>
> http://ecls.sf.net
>

OP did not say he wanted to embed common lisp; he said he
wanted to embed scheme.

http://www.freebsd.org/cgi/cvsweb.cgi/ports/lang/siod/

is perhaps more on point, although its maintenance seems to
be limited to the maintenance of packages and installers for
the last few years.

Bear


Report this thread to moderator Post Follow-up to this message
Old Post
Ray Dillinger
08-27-05 12:00 AM


Re: Embedding Scheme: what implementation?
Ray Dillinger wrote:
> http://www.freebsd.org/cgi/cvsweb.cgi/ports/lang/siod/
>
> is perhaps more on point, although its maintenance seems to
> be limited to the maintenance of packages and installers for
> the last few years.

Unfortunately...

Comments about Guile? It seems a lot used.

Report this thread to moderator Post Follow-up to this message
Old Post
DB
08-27-05 02:56 AM


Re: Embedding Scheme: what implementation?
On Sat, 27 Aug 2005 02:18:56 +0200, DB wrote:

> Ray Dillinger wrote: 
>
> Unfortunately...
>
> Comments about Guile? It seems a lot used.

Guile is decent and is for the most part designed for what you want, but
it seems you are using a bit of a broad definition of "embeddable."  You
can certainly link to Guile and use it as a library, like Tcl.  If you
want something that you can mold yourself and get better access to things
like the GC then you might want to look at SIOD again.  From what I
recall, it's an older R3RS based Scheme.  The Gimp has used SIOD for a
number of years and it seemed up to the task.  You won't get the niceties
of R5RS such as continuations, however.

Depending on what your needs are, there are a few benefits to having the
entire system under your control.  You can pretty much eliminate the
numeric tower down to just machine integers and floats if needed.  A
"trick" that was used in the game Abuse was to completely eliminate the GC
and simply allocate from a single preallocated area.  At certain points in
the game the entire memory heap could be discarded and/or reused.

Again about Guile...
642568 Jun  2 03:56 /usr/lib/libguile.so.12.3.0

size >500K, but still fairly lightweight.
It's currently maintained, and it seems progress has been fairly steady
the last year or so.


Tim


Report this thread to moderator Post Follow-up to this message
Old Post
Tim Wilson
08-27-05 02:56 AM


Re: Embedding Scheme: what implementation?
> .... Scheme .... embed it into a commercial application as scripting language.
> .... should  meet the following requirements:
>*) Embeddable in C/C++ applications
>*) Actively maintained
>*) Opensource and free for commercial use (e.g. LGPL)
>*) Lightweight (e.g.: a single DLL of 500K)
>*) Efficient on numerical computations

Not sure about this last requirement, but scheme 48 seems to meet the
others.  ( www.s48.org )



Roberto Waltman.

[ Please reply to the group,
return address is invalid ]

Report this thread to moderator Post Follow-up to this message
Old Post
Roberto Waltman
08-27-05 08:56 AM


Re: Embedding Scheme: what implementation?
Marco Antoniotti schrieb:

> I would have written you directly, but you have no discernible email.
>
> http://ecls.sf.net
>

It should be added here that ECLS's support for Standard Scheme
is absolutely catastrophic.


cheers,
felix


Report this thread to moderator Post Follow-up to this message
Old Post
bunny351@yoho-gmail.com
08-27-05 12:56 PM


Re: Embedding Scheme: what implementation?
Tim Wilson wrote:
> If you want something that you can mold yourself and get better access to 
things
> like the GC then you might want to look at SIOD again.  From what I
> recall, it's an older R3RS based Scheme.  The Gimp has used SIOD for a
> number of years and it seemed up to the task.  You won't get the niceties
> of R5RS such as continuations, however.

Have been suggested also by Ray Dillinger, but it seems abandoned (last
release 1997):

http://people.delphiforums.com/gjc/siod.html

Another implementation similar to SIOD (i.e. very little footprint)
seems to be TinyScheme:

http://tinyscheme.sourceforge.net/

with last release in 2004. Comments about it?



> Depending on what your needs are, there are a few benefits to having the
> entire system under your control.  You can pretty much eliminate the
> numeric tower down to just machine integers and floats if needed.

This would be a very welcomed option. The task for wich I would use an
embedded Scheme implementation is only for numeric calculations.


Googling I've found another project that seems activelly maintained,
MzScheme:

http://www.plt-scheme.org/software/mzscheme/

It sounds to be a complete system (with many libraries, that for my
needs can be too "big") with the option to be embedded into client
applications. Someone have used it?

Report this thread to moderator Post Follow-up to this message
Old Post
DB
08-27-05 11:59 PM


Re: Embedding Scheme: what implementation?
Roberto Waltman wrote: 
>
>
> Not sure about this last requirement, but scheme 48 seems to meet the
> others.  ( www.s48.org )

It is interesting but from the official site seems that porting to
Windows is still in experimental (and not supporting Win98/ME, I
know...but are not still disappeared). But it surely maintained.

Thanks,
Daniele.

Report this thread to moderator Post Follow-up to this message
Old Post
DB
08-27-05 11:59 PM


Re: Embedding Scheme: what implementation?

Ray Dillinger wrote:
> Marco Antoniotti wrote:
> 
>
> OP did not say he wanted to embed common lisp; he said he
> wanted to embed scheme.
>
> http://www.freebsd.org/cgi/cvsweb.cgi/ports/lang/siod/
>
> is perhaps more on point, although its maintenance seems to
> be limited to the maintenance of packages and installers for
> the last few years.

Yep. I should have apologized beforehand for trolling. :)
I would have really responded in private, but there was no discernible
email address to reply to.

Cheers
--
Marco

Report this thread to moderator Post Follow-up to this message
Old Post
Marco Antoniotti
08-30-05 12:02 AM


Sponsored Links




Last Thread Next Thread Next
Search this forum -> 
Post New Thread

Scheme archive

Show a Printable Version Send to friend Email This Page to Someone! subscribe to this thread Receive updates to this thread
Computer Consultants
Programming Jobs
Visual Basic Controls
SQL Server Programming
Webservices
Java Security
Visual Studio
C# Programming
Visual J++
Software engineering
Open source Software
Perl Programming
PHP Programming
ASP Programming
ASP .NET Programming
Visual Basic Programming
Windows Scripting Host
Java Programming
Java Help
Java Beans
VBScript
Cobol
MAC Applications
Unix Programming
Forum Jump:
All times are GMT. The time now is 06:48 AM.

 
Free MCSE Braindumps | Real Estate Topics

Programming forum archive

Copyrights CodeComments.com 2004 - 2006

Powered by vBulletin Copyright 2000-2006 Jelsoft Enterprises Limited.