You are looking at historical revision 21644 of this page. It may differ significantly from its current revision.
A practical introduction to Chicken Scheme
- grab remaining IP ranges from IANA (xml walking demo by Jim's script)
- Sokoban game implementation
- Treeview visualising disk usage (graphviz output)
- mail log parser with irregex (using predefined regular expressions)
- INI file parser
- netcat redirecting tcp ports, with a test framework that uses string ports for test cases
- Link dumping app by html-parser and http-client, page scraping
Topic ideas from the old wiki (alaric's machine)
- The chicken way of writing things (read deviations from the standard)
- lowlevel macros
- the egg system
- naming conventions (*, ->, ?, with-, call-with-, etc.)
- The power of representing hierarchical data/information as s-expressions (mabye as a preface to the SRE and SXML chapters)
- The power of closures. As a case in point, many programmers from other languages will often do things like make a list of tasks to perform, with some kind of record describing the task, with a method of the task class to do the task. As closures begin to sink in, they might make a list of records that contain a 'run me' closure to do the task, and a driver function that performs them. Then eventually, they replace that with a single global reference to a closure that, when called, runs the tasks; and queuing a task is done by making a closure that does the work then calls the old closure from the global ref, etc.
- Talk about call/cc, but emphasise that we use it to create tools like coroutines, threads, and signals; emphasise using such tools rather than putting call/cc into your own code willy-nilly, as call/cc needs a lot of thinking about. It's a powerful tool, but sharp.
- "Shell scripting" tasks
- C binding example. Someone suggest a simple lib to wrap?
- Bitparsing using scheme
- Filter spam with scheme
- openurl-server (simple example for daemonization and a tcp server)
[ What Scheme is. What Chicken is. What eggs are. ]
[ How to install Chicken on popular operating systems (e.g., Gnu systems, BDSs, Windows). Mention required tools, installation steps etc. ]
[ Introduction about the Chicken tools ]
"Hello world" programming in Chicken
A "Hello, world" program
[ How to make an executable program in Chicken, both interpreted and compiled. ]
A "Hello, world" extension
[ How to make a module for a "hello, world" extension ]
Real-world programming in Chicken
[ File manipulation, using Chicken as a replacement for shell scripts, implementing some common shell programs in Chicken etc ]
[ Spiffy, SXML/SSAX, Awful, database access ... ]