19 Sandboxed Evaluation

▼ |  | Unstable

1 | Guidelines for developing unstable libraries
2 | Bytes
3 | Classes and Objects
4 | Contracts
5 | Definitions
6 | Dictionaries
7 | Directories
8 | Exceptions
9 | Filesystem
10 | Functions
11 | Lists
12 | Net
13 | Path
14 | PLane T Packages
15 | Ports
16 | Pretty-Printing
17 | Regular Expressions
18 | Requiring Modules
19 | Sandboxed Evaluation
20 | Scribble Documentation
21 | Sets
22 | S-Expression Diff
23 | Source Locations
24 | Strings
25 | Structs
26 | Syntax
27 | Planet Package Macros
28 | Text Representations
29 | Multiple Values
30 | XML and CSS
31 | Polymorphic Contracts
32 | Finding Mutated Variables
33 | Find
34 | Interface-Oriented Programming for Classes
35 | Sequences
36 | Hash Tables
37 | Match
38 | Generics
39 | Mark Parameters
40 | Debugging
41 | Contracts for macro subexpressions
42 | GUI libraries

On this page:

make-trusted-evaluator
make-trusted-module-evaluator
make-scribble-evaluator
make-scribble-module-evaluator
make-sandbox-namespace-specs

Version: 5.0.1.5
top← prev up next →

### 19`` Sandboxed Evaluation

( require unstable/sandbox)

This module provides tools for sandboxed evaluation.

( make-trusted-evaluator |  | language |
|  | input-program ... |
|  | #:requires requires |
|  | #:allow-read allow) |

→ ( any/c . -> . any)

language

:

( or/c module-path?
( list/c 'special symbol?)
( cons/c 'begin list?))

input-program : any/c
requires : ( listof ( or/c module-path? path?))
allow : ( listof or/c module-path? path?)

( make-trusted-module-evaluator |  | module-decl |
|  | #:language lang |
|  | #:allow-read allow) |

→ ( any/c . -> . any)
module-decl : ( or/c syntax? pair?)
lang : ( or/c #f module-path?)
allow : ( listof ( or/c module-path? path?))

These procedures wrap calls to make-evaluator and make-module-evaluator, respectively, with call-with-trusted-sandbox-configuration.

( make-scribble-evaluator |  | language |
|  | input-program ... |
|  | #:requires requires |
|  | #:allow-read allow) |

→ ( any/c . -> . any)

language

:

( or/c module-path?
( list/c 'special symbol?)
( cons/c 'begin list?))

input-program : any/c
requires : ( listof ( or/c module-path? path?))
allow : ( listof or/c module-path? path?)

( make-scribble-module-evaluator |  | module-decl |
|  | #:language lang |
|  | #:allow-read allow) |

→ ( any/c . -> . any)
module-decl : ( or/c syntax? pair?)
lang : ( or/c #f module-path?)
allow : ( listof ( or/c module-path? path?))

These procedures wrap calls to make-trusted-evaluator and make-trusted-module-evaluator, respectively, with parameterizations setting sandbox-output and sandbox-error-output to 'string.

( make-sandbox-namespace-specs |  | make-ns |
|  | path ...) |

→ ( cons/c (-> namespace?) ( listof module-path?))
make-ns : (-> namespace?)
path : module-path?

This function produces a value for the parameter sandbox-namespace-specs such that new sandbox evaluators start with a namespace constructed by make-ns and share a set of instances of the modules referred to by the given paths.
top← prev up next →