Typed Racket
Go to file
Andrew Kent da30fb6f74 be less eager about bottom propogation
Moving to eager propagating of bottom works for most cases,
but in some cases flattening types such as (Pairof Bottom Any)
to Bottom made things like type inference break for some cases
(since (Listof Nothing) == Null, and (Listof A) did not structurally
like up like it used to). Perhaps w/ a little more effort
inference and any other potential issues could work better
with propagating bottom, but for now we'll be slightly less
aggressive about it.

i.e. this fixes pfds, which commit 8e7f390 broke.
2016-12-19 08:28:49 -05:00
source-syntax Remove extra directories. 2014-12-02 00:53:36 -05:00
typed-racket Add syntax for poly structs in require/typed 2016-07-21 12:00:08 -04:00
typed-racket-compatibility Add syntax for poly structs in require/typed 2016-07-21 12:00:08 -04:00
typed-racket-doc typed racket doc typo 2016-11-03 15:55:22 -04:00
typed-racket-lib be less eager about bottom propogation 2016-12-19 08:28:49 -05:00
typed-racket-more remove interning for most Reps in TR 2016-12-16 15:18:50 -05:00
typed-racket-test be less eager about bottom propogation 2016-12-19 08:28:49 -05:00
.gitignore Add standard .gitignore file. 2014-12-06 17:46:25 -05:00
.travis.yml Revise Travis tests for 43a8cce3f. 2015-12-29 17:58:00 -05:00
issue_template.md Create issue_template.md 2016-02-17 14:51:06 -05:00
README.md Fix Travis image URL in the README 2015-02-25 15:17:13 -05:00

Typed Racket

Build Status

Typed Racket is Racket's gradually-typed sister language which lets you add statically-checked type annotations to your programs. For more information, see the Typed Racket Guide.

Installation

Typed Racket is bundled in the default Racket distribution, which you can download from Racket's download page.

You can also manually install it from the main package catalog with the following command:

raco pkg install typed-racket

Documentation

The documentation is also bundled in your local copy of Typed Racket.


Copyright (c) 2010-2015 PLT Design Inc.

This package is distributed under the GNU Lesser General Public License (LGPL). This means that you can link this package into proprietary applications, provided you follow the rules stated in the LGPL. You can also modify this package; if you distribute a modified version, you must distribute it under the terms of the LGPL, which in particular means that you must release the source code for the modified software. See http://www.gnu.org/copyleft/lesser.html for more information.