Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[announce] Infix 2.0b1, an infix to prefix transformer

47 views
Skip to first unread message

Marco Maggi

unread,
Dec 17, 2012, 9:30:21 AM12/17/12
to
Infix
=====


Overview
--------

This package is a distribution of libraries for R6RS Scheme
implementations; it provides the INFIX macro which converts the
traditional infix notation for expressions to the equivalent Scheme's
prefix notation.

The library has no dependencies; the implementation itself is a
single, definitive, kill'em all DEFINE-SYNTAX form with the addition of
a few auxiliary syntaxes.

The library attempts to support Guile, Larceny, Mosh, Petite Chez,
Racket, Sagittarius, Vicare and Ypsilon. Only Ypsilon fails because of
the known expander problems.

Detailed informations on usage are in the README file.


Download
--------

The last revision of this package can be downloaded from:

<http://github.com/marcomaggi/infix>


License
-------

Copyright (c) 2010, 2012 Marco Maggi <marco.ma...@poste.it>
Copyright (c) 2008 Derick Eddington
Copyright (c) 2005-2008 Dominique Boucher
Copyright (C) 2000 The Free Software Foundation.

This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.


Credits
-------

The library is the work of Marco Maggi, the code is derived from the
Nausicaa/Scheme distribution of libraries. The only way to regenerate
the parser table is to build it in Nausicaa/Scheme and copy it into the
library here.

The parser table and the general concept of the package is a rework of
Guile-Arith by Ian Grant. The parser driver is from the Lalr-scm
package by Dominique Boucher, the parser table is also generated using
Lalr-scm. The implementation of XOR is by Derick Eddington.

Support for Sagittarius was completed by https://github.com/ktakashi.


Release notes for version 2.0b1
-------------------------------

* Added support for Sagittarius Scheme.

* The library now exports the identifiers ? and : used for if-then-else
expressions.

--
Marco Maggi

mrc...@gmail.com

unread,
Dec 17, 2012, 2:21:22 PM12/17/12
to
It fails with Guile, too. I forgot about it.
--
Marco Maggi
0 new messages