What is Daisy, you ask?
Daisy has a slightly quirky syntax that is not reminiscent of any mainstream programming language. It's simple and regular, but different. Once you've got a handle on the syntax, Daisy is an easy language to learn. It has a few familiar data types, like numbers and strings, and has lists to glue things together. Perhaps not so familiar, higher-order functions and streams, partially supported or confined to certain areas (e.g. I/O) in other languages, appear frequently in Daisy programs.
Daisy is easily learned, but not easily mastered. Its functional style and demand-driven semantics present a comprehension curve that confronts those from an imperative programming background head-on. You have to read and write a few Daisy programs before an epiphany happens and you figure out how to swim with the stream and not against it (pun intended). For the intrepid few who hang in there, Daisy will eventually delight you with a style of programming that is refreshingly and radically different from mainstream conventional programming.
This manual provides a brief introduction to the Daisy language and includes a through reference to Daisy syntax, primitives and error messages, as well as operation of the interpreter and compiler. Using this manual, an experienced programmer in other languages should be able to write simple Daisy programs fairly quickly.
Daisy is implemented on a virtual machine/embedded-OS combination called DSI. It is not really necessary to know anything about DSI to use Daisy, except for interpreting errons that bubble up from the run-time system. These are summarized in the Errons appendix. It used to be that Daisy and DSI were released under the same version, but this is no longer the case. However, since some Daisy primitives rely on the behavior of DSI subsystems, the version/release numbers of Daisy get bumped whenever modifications to DSI cause version incompatibilities in Daisy. For further reading about either Daisy or DSI please see the abbreviated bibliography on the Daisy/DSI project.
jeschke@hawaii.edu Or by snail mail: Eric Jeschke Assistant Professor of Computer Science The University of Hawaii at Hilo 200 W. Kawili St. Hilo, HI 96720 Eric Jeschke May 17, 1997