-
Notifications
You must be signed in to change notification settings - Fork 27
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Jeremie Dimino
committed
Jan 28, 2013
0 parents
commit 987abdc
Showing
48 changed files
with
14,640 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
Most of this library was written by: | ||
|
||
Markus Mottl <[email protected]> | ||
|
||
This work is derived from the library "Tywith", version 0.45. The library | ||
"Tywith" was written and is distributed by: | ||
|
||
Martin Sandin <[email protected]> | ||
|
||
The original license of "Tywith" can be found in the file | ||
"LICENSE.Tywith". Files that were derived from "Tywith" contain a | ||
reference to the original author. | ||
|
||
The following company has sponsored and has copyright in part of this work: | ||
|
||
Jane Street Holding, LLC | ||
1 New York Plaza, 33rd Floor | ||
New York, NY 10004 | ||
USA |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,251 @@ | ||
2011-09-18: Improved documentation. | ||
|
||
2011-09-15: Fixes to improve package dependency resolution. | ||
|
||
2011-07-05: Fixed a parser position bug. Parser positions passed by the user | ||
were not updated correctly. | ||
|
||
Internal code beautification. | ||
|
||
2011-07-04: Internal updates to sync with Jane Street. | ||
|
||
2011-01-30: Fixed a code generation bug with toplevel entries. | ||
|
||
Thanks to Yong Lu <[email protected]> for the report! | ||
|
||
2010-12-27: Added support for MoreLabels.Hashtbl and improved reporting of | ||
error locations with preprocessor. | ||
|
||
2010-12-26: Worked around a compiler bug that is expected to be fixed in | ||
OCaml 3.12.1. This workaround temporarily removes the interface | ||
for module Conv (conv.mli), thus exposing the internals. | ||
This should not cause any problems for end users as long as | ||
they do not depend on the exported internal representations. | ||
The interface will become constrained again as soon as the | ||
fixed compiler is out. | ||
|
||
2010-12-22: Major release. | ||
|
||
Merged with Jane Street version. This has caused an API-change | ||
that requires "open Sexplib.Conv" at the top of files that use the | ||
syntax extension. | ||
|
||
Renamed functions: | ||
|
||
* sexp_of_lazy -> sexp_of_lazy_t | ||
* lazy_of_sexp -> lazy_t_of_sexp | ||
|
||
Some standard library modules are now re-exported with predefined | ||
S-expression converters in module Conv. | ||
|
||
2010-09-25: Fixed inferred types of generated functions when dealing with arrow | ||
types. | ||
|
||
2010-08-26: Fixed a lexer bug when parsing comments. | ||
|
||
2010-05-21: Added support for sexp_bool record field annotations. | ||
|
||
2010-05-18: Improved performance of converting S-expressions to strings. | ||
|
||
2010-04-12: Changed API of Of_sexp_error exception. | ||
|
||
2010-04-07: Added of_(big)string_conv_exn functions. | ||
|
||
2010-04-01: Merged with Jane Street version. | ||
|
||
Major new features (various functions): | ||
|
||
* Type-annotated parsing for better error messages | ||
* Greatly improved performance of exception converters | ||
|
||
2009-12-21: Improved saving of files. | ||
|
||
2009-10-12: Added sexp_array record field extension. | ||
|
||
2009-09-19: Added missing variant type cases. | ||
|
||
Fixed handling of variance annotations. | ||
|
||
2009-09-15: Internal cleanups. | ||
|
||
2009-07-28: Added better support for conversion of exception types. | ||
|
||
2009-06-23: Fixed build problem. | ||
|
||
Thanks to Sylvain Le Gall <[email protected]> for | ||
the patch! | ||
|
||
2009-05-08: Fixed build problems on Windows and OCamlMakefile issues. | ||
|
||
Thanks to Sylvain Le Gall <[email protected]> for | ||
the patch! | ||
|
||
2009-04-22: Added macro support for all types of vectors, matrices, | ||
and for bigstrings. | ||
|
||
2009-04-21: Merged with Jane Street version, no user-relevant changes. | ||
|
||
2009-03-09: Merged with Jane Street version, no user-relevant changes. | ||
|
||
2009-03-01: Fixed build problem on Mac OS X by updating OCamlMakefile. | ||
|
||
2009-01-20: Automatically add S-expression pretty-printers to toplevels. | ||
|
||
2008-09-30: Added a new feature: sexp_opaque. It prevents the need for / | ||
use of type converters for a given type in a particular | ||
type context. | ||
|
||
Removed abstract types to unify them with this new concept. | ||
|
||
2008-09-29: Added a new feature: sexp_list. This is similar to | ||
the handling of sexp_option. By default an empty list is | ||
assumed for unspecified records using sexp_list as qualifier. | ||
Such record fields bound to empty lists will also not be | ||
printed anymore for better readability. | ||
|
||
2008-09-23: Added missing Not_found-exception to standard exception | ||
converters. | ||
|
||
2008-08-20: Removed dependency on threads. Fixed build problems. | ||
|
||
2008-08-08: Nifty new feature: exceptions can now be converted to | ||
S-expressions, too! The "with sexp" syntax extension can be | ||
used with exceptions, thus registering a conversion function. | ||
A global exception conversion function can then be called | ||
to convert an arbitrary exception into an S-expression, | ||
which can then be printed out. This should greatly | ||
improve readability of uncaught exceptions while making | ||
life extremely easy for the developer. | ||
|
||
Renamed the ParseError exception to Parse_error to be more | ||
compliant with Jane Street naming conventions. | ||
|
||
2008-07-25: Added utilities for conversion error handling. Minor fixes. | ||
|
||
2008-04-24: Made Sexp-interface manifest. | ||
|
||
2008-03-20: Fixed META-file (missing num dependency). | ||
|
||
2008-03-17: Improved META-file. | ||
|
||
2008-03-13: Fully allow function types in converters. Raise runtime | ||
exceptions on converting from S-expressions instead when | ||
function type encountered. | ||
|
||
2008-02-11: Fixed code generation problems with variance annotations | ||
in signatures, and empty types. | ||
|
||
2007-12-17: Added support for generating signature entries for | ||
S-expression converters. Thanks to Till Varoquaux | ||
<[email protected]> for the patch! | ||
|
||
2007-11-29: Added support for converting big_int, nat, num, and ratio. | ||
|
||
2007-11-26: Added support for parsing from bigstrings (char bigarrays). | ||
|
||
2007-11-02: Added syntax support for option types to use the ordinary | ||
sum type syntax. This should improve readability. | ||
The old syntax will be accepted, too, if | ||
Conv.read_old_option_format is set to true (this is | ||
currently the default). The old format will be used for | ||
writing if Conv.write_old_option_format is true (currently | ||
the default). The old syntax is deprecated and will | ||
probably not be supported by default in the near future. | ||
Reading new-style option values will always succeed. | ||
|
||
2007-09-14: Fixed bug in S-expression preprocessor concerning record | ||
field names. | ||
|
||
2007-08-06: Added support for converting functions to S-expressions. | ||
|
||
2007-07-20: Fixed position information and improved speed of S-expression | ||
parser. Fixed S-expression macro bug concerning contained | ||
polymorphic variants. | ||
|
||
2007-06-28: Improved Sexplib code generation. | ||
|
||
2007-06-22: Fixed escaping bug in S-expression parser. | ||
|
||
2007-06-01: Added correct handling of recursive types + test case. | ||
|
||
2007-04-18: Added missing conversion functions from S-expressions to | ||
pairs and triples. | ||
|
||
2007-03-21: Updated OCamlMakefile. | ||
|
||
2007-03-02: Improved error messages when parsing illegal type definitions. | ||
|
||
2007-01-30: Added triple conversions. | ||
|
||
2006-11-22: Updated OCamlMakefile. | ||
|
||
2006-10-13: Improved checking of records for extra or duplicate fields. | ||
|
||
2006-09-06: Added support for polymorphic record fields. | ||
|
||
2006-09-05: Added support for manifest types. | ||
|
||
2006-08-16: Improved error messages. | ||
|
||
2006-07-28: Added a new, hand-written S-expression parser that supports | ||
partial parsing and should be approx. 10x faster than the | ||
previous one. | ||
|
||
2006-06-20: Fixed a code generation problem leading to compilation | ||
errors concerning the use of type aliases within polymorphic | ||
variant type definitions. | ||
|
||
This fix also solves potential erroneous appearances of | ||
backtracking exceptions in user code. | ||
|
||
2006-03-21: Added -for-pack option to Makefile and cleaned up | ||
distribution for a new public release. | ||
|
||
2006-03-13: Sexplib now accepts capitalized booleans. | ||
|
||
2006-03-03: Added customizable indentation levels. | ||
Improved documentation. | ||
Fixed API-problem concerning backward compatibility. | ||
|
||
2006-03-03: Added customizable indentation levels. | ||
Improved documentation. | ||
|
||
2006-03-01: Added a missing flush for string conversions with a buffer. | ||
|
||
2006-02-08: Eliminated unused variable warnings in Sexplib-generated code. | ||
|
||
2006-01-11: Added functions for pretty-printing to buffers. Improved | ||
performance of outputting S-expressions to channels. | ||
|
||
2006-01-09: Added functions load_sexp and load_sexps. | ||
|
||
2006-01-04: Changed float conversion from %E to %G (more readable). | ||
|
||
2005-12-28: Made machine representation for S-expressions more compact | ||
|
||
2005-12-15: Fixed a problem appearing with OCaml-release 3.08.4: CamlP4 | ||
obviously performs more strict checking on some constructs | ||
now and crashed with an exception when generating | ||
S-expression code for records containing only one field | ||
("singleton tuple problem"). This problem is fixed now. | ||
|
||
2005-11-25: Fixed problem with type variables that could not be generalized. | ||
|
||
2005-11-23: Added a missing case in type definitions (path alias) | ||
|
||
2005-11-17: Major release: 2.0 | ||
|
||
Fixed a major design problem. The user now has to pass lex | ||
buffers instead of channels to input-functions. Reason: | ||
trailing characters in channels were lost due to ocamllex | ||
buffering them in the non-exposed lex buffer. This lex | ||
buffer is now exposed. The functions have been renamed | ||
("input_X" -> "scan_X") to reflect this change. | ||
|
||
2005-11-16: Added label to conversion function "input_cnv_sexps". | ||
|
||
2005-11-11: Fixed a bug in the pretty-printer: strings in atoms were | ||
not escaped in the function "to_string_mach" (and therefore | ||
also "to_string"). | ||
|
||
2005-11-07: Initial release. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
THIS SOFTWARE IS PROVIDED BY INRIA AND CONTRIBUTORS "AS IS" AND ANY | ||
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INRIA OR ITS CONTRIBUTORS BE | ||
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
(* OASIS_START *) | ||
(* DO NOT EDIT (digest: c7cb8fb2e8cd104e136ca9ca528f3ead) *) | ||
This is the INSTALL file for the sexplib distribution. | ||
|
||
This package uses OASIS to generate its build system. See section OASIS for | ||
full information. | ||
|
||
Dependencies | ||
============ | ||
|
||
In order to compile this package, you will need: | ||
* ocaml (>= 3.12.1) for all, test conv, test sexp, doc sexplib | ||
* findlib | ||
* type_conv (>= 3.0.5) for library pa_sexp_conv | ||
|
||
Installing | ||
========== | ||
|
||
1. Uncompress the source archive and go to the root of the package | ||
2. Run 'ocaml setup.ml -configure' | ||
3. Run 'ocaml setup.ml -build' | ||
4. Run 'ocaml setup.ml -install' | ||
|
||
Uninstalling | ||
============ | ||
|
||
1. Go to the root of the package | ||
2. Run 'ocaml setup.ml -uninstall' | ||
|
||
OASIS | ||
===== | ||
|
||
OASIS is a program that generates a setup.ml file using a simple '_oasis' | ||
configuration file. The generated setup only depends on the standard OCaml | ||
installation: no additional library is required. | ||
|
||
(* OASIS_STOP *) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--------------------------------------------------------------------------- | ||
Copyright (c) 2004 Martin Sandin | ||
All rights reserved. | ||
|
||
Redistribution and use in source and binary forms, with or without | ||
modification, are permitted provided that the following conditions | ||
are met: | ||
1. Redistributions of source code must retain the above copyright | ||
notice, this list of conditions and the following disclaimer. | ||
2. Redistributions in binary form must reproduce the above copyright | ||
notice, this list of conditions and the following disclaimer in the | ||
documentation and/or other materials provided with the distribution. | ||
3. The name of the author may not be used to endorse or promote products | ||
derived from this software without specific prior written permission. | ||
|
||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | ||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
--------------------------------------------------------------------------- |
Oops, something went wrong.