summaryrefslogtreecommitdiff
path: root/lang/RScheme/DESCR
diff options
context:
space:
mode:
Diffstat (limited to 'lang/RScheme/DESCR')
-rw-r--r--lang/RScheme/DESCR17
1 files changed, 17 insertions, 0 deletions
diff --git a/lang/RScheme/DESCR b/lang/RScheme/DESCR
new file mode 100644
index 00000000000..befd93a5799
--- /dev/null
+++ b/lang/RScheme/DESCR
@@ -0,0 +1,17 @@
+RScheme is an object-oriented, extended version of the Scheme dialect
+of Lisp. RScheme is freely redistributable, and offers reasonable
+performance despite being extraordinarily portable. RScheme can be
+compiled to C, and the C can then compiled with a normal C compiler to
+generate machine code. This can be done from a running system, and
+the resulting object code can be dynamically linked into RScheme as a
+program executes. By default, however, RScheme compiles to bytecodes
+which are interpreted by a (runtime) virtual machine. This ensures
+that compilation is fast and keeps code size down. In general, we
+recommend using the (default) bytecode code generation system, and
+only compiling your time-critical code to machine code. This allows a
+nice adjustment of space/time tradeoffs.
+
+To the casual user, RScheme appears to be an interpreter. You
+can type RScheme code at a read-eval-print loop, and it executes the
+code and prints the result. In reality, every expression you type to
+the read-eval-print-loop is compiled and the resulting code is executed.