Escape via unhygienic macros
Phil Hofer
(03 Jul 2019 23:31 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(04 Jul 2019 03:59 UTC)
|
||
Re: Escape via unhygienic macros
Marc Nieper-Wißkirchen
(04 Jul 2019 05:57 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(04 Jul 2019 17:03 UTC)
|
||
Re: Escape via unhygienic macros
Phil Hofer
(04 Jul 2019 19:02 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(04 Jul 2019 18:55 UTC)
|
||
(missing)
|
||
Fwd: Escape via unhygienic macros
Marc Nieper-Wißkirchen
(08 Jul 2019 12:21 UTC)
|
||
Re: Escape via unhygienic macros
Marc Nieper-Wißkirchen
(08 Jul 2019 12:38 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(08 Jul 2019 16:28 UTC)
|
||
Re: Escape via unhygienic macros
Lassi Kortela
(04 Jul 2019 19:45 UTC)
|
||
Re: Escape via unhygienic macros
Lassi Kortela
(04 Jul 2019 19:56 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(08 Jul 2019 04:57 UTC)
|
||
Re: Escape via unhygienic macros
Marc Nieper-Wißkirchen
(04 Jul 2019 20:27 UTC)
|
||
Re: Escape via unhygienic macros Lassi Kortela (14 Jul 2019 15:41 UTC)
|
||
Re: Escape via unhygienic macros
John Cowan
(14 Jul 2019 17:59 UTC)
|
> But what is the purpose of this SRFI? If the purpose is to be able to > eval untrusted code in a sandbox, then it is just dangerous to offer an > implementation that is, most likely, not safe on most Schemes. Possibly of interest, the new work-in-progess SICL implementation of Common Lisp is designed to support multiple global environments. From the FAQ (https://github.com/robert-strandh/SICL/blob/master/FAQ.text): ================================================== First-class global environments Question: What are first-class global environments? Answer: First class global environments represent a feature whereby the system may contain several global environments, allowing the programmer to switch between them, for various reasons. Question: Why can't first-class global environments be added to an existing Common Lisp system? Answer: Most existing systems access global functions using an indirection through the symbol naming them. This technique makes it impossible to have different definitions of a function with a particular name in different environments. In SICL the "function slot" is detached from the symbol and attached to the global environment instead. Question: Sandboxing is notoriously difficult in existing Common Lisp systems. Will it be easier in SICL? Answer: Yes, first-class global environments allow the creation of restricted environments so that one may, for example, disallow the evaluation of arbitrary forms. Question: Will SICL be safer than existing Common Lisp systems? Answer: Yes, with existing systems, the entire code is always available. Nothing prevents an external system from modifying the compiler to install a virus, or from forking a process in the name of the unsuspecting user. With first-class global environments, it is possible to isolate sensitive code so that some additional action (password maybe) on the part of the programmer is required in order to access or modify it. ==================================================