From: jim Date: Wed, 4 Feb 2015 02:48:16 +0000 (-0500) Subject: create page X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=ef12bb2d8d79fef2d94422e8875e3d9edff654ba create page --- diff --git a/_extending_racket.mdwn b/_extending_racket.mdwn new file mode 100644 index 00000000..21d81bdc --- /dev/null +++ b/_extending_racket.mdwn @@ -0,0 +1,24 @@ +* Racket [FFI](http://docs.racket-lang.org/foreign/index.html) | +[C API](http://docs.racket-lang.org/inside/index.html) +* [Unsafe operations](http://docs.racket-lang.org/reference/unsafe.html) +* [Initialization etc](http://docs.racket-lang.org/reference/running-sa.html) + +## Teaching Languages ## + +* [DrRacket/How to Design Programs Teaching Languages](http://docs.racket-lang.org/drracket/htdp-langs.html) +* [HtDP Languages](http://docs.racket-lang.org/htdp-langs/index.html) +* [HtDP Teachpacks](http://docs.racket-lang.org/teachpack/index.html) +* [Implementing HtDP & other customized teaching languages](http://docs.racket-lang.org/htdp/index.html) + +## Custom Languages ## + +Racket users can define their own languages, as discussed in [Creating Languages](http://docs.racket-lang.org/guide/languages.html). Typically, a language name maps to its implementation through a module path by adding `/lang/reader`; for example, the language name `scribble/base` is expanded to `scribble/base/lang/reader`, which is the module that implements the surface-syntax parser. + +* [Syntax: Meta-Programming Helpers](http://docs.racket-lang.org/syntax/index.html) +* [(require syntax/module-reader)](http://docs.racket-lang.org/syntax/reader-helpers.html#%28mod-path._syntax%2Fmodule-reader%29) +* [#lang racket/kernel](http://docs.racket-lang.org/reference/Kernel_Forms_and_Functions.html) + +* [Extending DrRacket/Teachpacks](http://docs.racket-lang.org/drracket/extending-drracket.html#%28part._teachpacks%29) +* [Adding Languages to DrRacket](http://docs.racket-lang.org/tools/adding-languages.html) +* [#lang](http://docs.racket-lang.org/drracket/module.html) [more](http://docs.racket-lang.org/guide/Module_Syntax.html#%28part._hash-lang%29) +* [Output Printing Styles](http://docs.racket-lang.org/drracket/output-syntax.html)