CHICKEN User's Manual - the User's Manual CHICKEN User's Manual - the User's Manual Chicken User's Manual 1 the User's Manual

CHICKEN User's Manual - the User's Manual CHICKEN User's Manual - the User's Manual Chicken User's Manual 1 the User's Manual

CHICKEN User's Manual - The User's Manual CHICKEN User's Manual - The User's Manual Chicken User's Manual 1 The User's Manual...........................................................................................................................................1 2 Getting started..................................................................................................................................................2 2.1 Scheme...............................................................................................................................................2 2.2 Chicken..............................................................................................................................................2 2.3 Chicken repositories, websites, and community................................................................................4 2.4 Installing Chicken..............................................................................................................................5 2.5 Development environments...............................................................................................................5 2.6 The Read-Eval-Print loop..................................................................................................................6 2.6.1 Scripts................................................................................................................................7 2.7 The compiler...................................................................................................................................................8 2.8 Installing an egg............................................................................................................................................10 2.9 Accessing C libraries....................................................................................................................................10 3 Basic mode of operation................................................................................................................................12 4 Using the compiler.........................................................................................................................................13 4.1 Compiler command line format.......................................................................................................13 4.2 Runtime options...............................................................................................................................17 4.3 Examples..........................................................................................................................................18 4.3.1 A simple example (with one source file).........................................................................19 4.3.2 An example with multiple files........................................................................................20 4.4 Extending the compiler.................................................................................................................................21 4.5 Distributing compiled C files........................................................................................................................22 5 Using the interpreter......................................................................................................................................24 5.1 Interpreter command line format.....................................................................................................24 5.2 Writing Scheme scripts....................................................................................................................25 5.3 Toplevel commands.........................................................................................................................26 5.4 toplevel-command............................................................................................................................27 5.5 History access..................................................................................................................................27 5.6 set-describer!....................................................................................................................................28 5.7 Auto-completion and edition...........................................................................................................28 5.8 Accessing documentation................................................................................................................28 6 Supported language.......................................................................................................................................30 7 Deviations from the standard.......................................................................................................................31 8 Extensions to the standard............................................................................................................................33 9 Non-standard read syntax.............................................................................................................................37 9.1 Multiline Block Comment...............................................................................................................37 9.2 Expression Comment.......................................................................................................................37 9.3 External Representation...................................................................................................................37 9.4 Syntax Expression............................................................................................................................37 9.5 Location Expression.........................................................................................................................37 9.6 Keyword...........................................................................................................................................38 9.7 Multiline String Constant.................................................................................................................38 9.8 Multiline String Constant with Embedded Expressions..................................................................38 9.9 Foreign Declare................................................................................................................................39 9.10 Sharp Prefixed Symbol..................................................................................................................39 9.11 Bang...............................................................................................................................................39 i CHICKEN User's Manual - The User's Manual Chicken User's Manual 9 Non-standard read syntax 9.11.1 Line Comment...............................................................................................................39 9.11.2 Eof Object......................................................................................................................39 9.11.3 DSSSL Formal Parameter List Annotation...................................................................39 9.11.4 Read Mark Invocation...................................................................................................39 9.12 Case Sensitive Expression..........................................................................................................................40 9.13 Case Insensitive Expression........................................................................................................................40 9.14 Conditional Expansion................................................................................................................................40 10 Non-standard macros and special forms...................................................................................................41 10.1 Making extra libraries and extensions available............................................................................41 10.1.1 require-extension...........................................................................................................41 10.1.2 define-extension.............................................................................................................42 10.2 Binding forms for optional arguments........................................................................................................43 10.2.1 optional.......................................................................................................................................43 10.2.2 case-lambda.................................................................................................................................43 10.2.3 let-optionals................................................................................................................................43 10.2.4 let-optionals*..............................................................................................................................44 10.3 Other binding forms....................................................................................................................................44 10.3.1 and-let*.......................................................................................................................................44 10.3.2 rec................................................................................................................................................44

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    300 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us