Re: Embeddable and Extensible Languages

George Neuner <gneuner2@comcast.net>
24 Jan 2005 11:28:19 -0500

          From comp.compilers

Related articles
[6 earlier articles]
Re: Embeddable and Extensible Languages hombre@gmail.com (Tom Verbeure) (2005-01-15)
Re: Embeddable and Extensible Languages petela@gocougs.wsu.edu (PlayDough) (2005-01-15)
Re: Embeddable and Extensible Languages kenrose@tfb.com (Ken Rose) (2005-01-15)
Re: Embeddable and Extensible Languages petela@gocougs.wsu.edu (PlayDough) (2005-01-15)
Re: Embeddable and Extensible Languages thant@acm.org (Thant Tessman) (2005-01-22)
Re: Embeddable and Extensible Languages jc.lelann@wanadoo.fr (Jean-Christophe Le Lann) (2005-01-22)
Re: Embeddable and Extensible Languages gneuner2@comcast.net (George Neuner) (2005-01-24)
Re: Embeddable and Extensible Languages petela@gocougs.wsu.edu (PlayDough) (2005-01-25)
Re: Embeddable and Extensible Languages petela@gocougs.wsu.edu (PlayDough) (2005-01-25)
Re: Embeddable and Extensible Languages lex@cc.gatech.edu (Lex Spoon) (2005-01-25)
Re: Embeddable and Extensible Languages gneuner2@comcast.net (George Neuner) (2005-01-30)
| List of all articles for this month |
From: George Neuner <gneuner2@comcast.net>
Newsgroups: comp.compilers
Date: 24 Jan 2005 11:28:19 -0500
Organization: Compilers Central
References: 05-01-040 05-01-060
Keywords: interpreter
Posted-Date: 24 Jan 2005 11:28:19 EST

On 15 Jan 2005 20:57:49 -0500, "PlayDough" <petela@gocougs.wsu.edu>
wrote:


>PlayDough wrote:
>
>... is there a language that guarantees that x1's interpreter
>and x2's interpreter will not collide in threads?


What you want is a sandbox.


I second Thant Tessman 's recommendation for a Scheme based solution.
Using syntax macros or input parsers you can give your users just
about any input syntax you wish. Scheme limits code to interaction
with a particular execution environment and R5RS implementations have
built-in support for multiple environments. By controlling the input
syntax, you can also restrict the ways in which users are allowed to
extend their environment.


There are several embeddable Schemes. Not all are based on the R5RS
spec (necessary if you wanted to roll your own sandboxing), but every
implementation I have seen has some kind of extension for multiple
environments even if it isn't based on R5RS.


George


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.