File: GOALS

package info (click to toggle)
sisc 1.16.6-1.3
  • links: PTS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 8,492 kB
  • sloc: lisp: 69,834; xml: 19,482; java: 17,841; sh: 125; makefile: 56
file content (47 lines) | stat: -rw-r--r-- 1,215 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
The following lists the main goals pursued by the SISC project, in
decreasing order of priority.

1) Standards Compliance

- full compliance with R5RS
- comprehensive numeric tower
- support for most of the optional elements of the standard
- reporting of errors in all error situations defined by the standard

2) Compact, Clean Code Base

- elegant
- doing the "right thing" philosophy 
- easy to extend
- easy to refactor

3) Good Performance

- be the fastest Java-based Scheme Interpreter
- be one of the fastest Schemes when it comes to capturing and
invoking continuations

4) Small Footprint

- small size of "executable" (jar + heap image)
- small (for a Java-based program) memory footprint

5) Comprehensive Set of Libraries

- access to any Java library from Scheme
- support for most SRFIs
- integration with SLIB

6) Suitability for "Real World" applications

- comprehensive documentation
- thread safety
- embeddable into other Java applications
- good error reporting / debugging capabilities
- module system
- object system


The order of priority is not followed religiously. For instance, small
sacrifices in code elegance and compactness in exchange for
performance speed gains are acceptable.