[PLT announcement] PLT Scheme v201 available
PLT Scheme v201 is now available from
http://download.plt-scheme.org/
This release improves upon v200 by fixing several bugs and
removed some inconsistencies. Those who are using v200
are encouraged to download this new release.
The new features and changes in v201 include:
- The "Beginning Student" and "Beginning Student with List
Abbreviations" languges have changed. In those languages, it
is now a synactic error to use the names of primitives or
defined functions except in the function position of an
application or in the function position of a teachpack
interface.
- Help Desk uses a native HTML browser instead of PLT's
browser. The PLT web server serves Help Desk content.
- DrScheme has improved support for creating web servlets.
In addition to an integrated server-browser development tool,
DrScheme now provides a "Create servlet" functionality.
Programmers can develop servlets interactively and
later plug them into the PLT web server automatically.
DrScheme v201 is available for
+ Windows (95/98/Me/NT/2000/XP)
+ Mac OS X
+ Mac Classic OS *new*
+ Linux (tar.gz and RPM formats)
+ Sparc Solaris 8
* Other Unix (source code)
Source code is easily compilable on most Unix platforms.
For those who did not see the announcement of the v200
release, the following information may be helpful.
The v200 release was a dramatic improvement over previous releases
in many ways. Those improvements are also found in v201 and include:
- The PLT Scheme language includes a module system that properly
integrates macros and modules. The macro module system enables
programmers to write different modules of a product in different
languages, yet preserves the ability to compile modules separately.
For details, see
Matthew Flatt. Composable and Compilable Macros: You want it when?
ICFP 2002. To appear. See http://www.cs.utah.edu/plt/publications/
The implementation of PLT Scheme is based on the new module system.
The framework also provides constructs for attaching assertions to the
exported values of a module. See "contracts" in Help Desk. For details
on the underlying concepts, see
Findler, Felleisen. Contracts for Higher-Order Functions.
ICFP 2002. To appear. See http://www.ccs.neu.edu/scheme/pubs/
- DrScheme now provides a fully-compliant R5RS language, including
hygienic macros.
- DrScheme includes a graphical module browser.
- New languages can be added to DrScheme easily. See the Tools manual for
details. An example, Algol 60, is available from our contributions Web
site: http://www.cs.utah.edu/plt/develop/.
- The teachpack implementation interface has changed because teachpacks can
now add new syntax to a language level. The user interface of the
existing "How to Design Programs" (HtDP) teachpacks remains the same.
- A new collection, parser-tools, supports the generation of lexers and
parsers for LALR(1) grammars. Unlike conventional lex and yacc
implementations, the PLT variants support the specification of grammars
and related code in a single file. The embedding of Algol 60
demonstrates this point and also shows how source information is
propagated through the elaboration and interpretation process.
- Programmers can now mix XML syntax and Scheme syntax in the Definitions
window via embedded editors (see the "Special" menu).
- PLT Scheme now includes a Web server that offers special support for
interactive servlets. DrScheme supports the development of such servlets
in the conventional incremental manner; use the servlet.ss teachpack for
the HtDP teachpack.
- DrScheme supports a tool for profiling code.
- DrScheme's Definitions and Interactions windows are re-sizable.
- In addition to English, DrScheme's GUI interface supports Danish,
French, and Spanish. A partial version of German is also available.
Improvements and additional languages are welcome contributions.
- The documentation includes the on-line book:
Dorai Sitaram. "Teach Youself Scheme in Fixnum Days". 2000-2002.
http://www.ccs.neu.edu/home/dorai/t-y-scheme/t-y-scheme.html
- The distribution includes the tex2page TeX-to-HTML converter. It was used
to produce the on-line versions of SICP and HtDP and our own
documentation.
- An online version checker makes sure the installed versions
of DrScheme and other packages are up-to-date.
Enjoy!
-- Paul