Commit Graph

9 Commits

Author SHA1 Message Date
Georges Dupéron
a4af75f594 Cleanup, separated the list-of-indices-to-tree generation code, so that it can be re-used in other macros. 2017-05-22 04:44:24 +02:00
Georges Dupéron
bf9d5b2328 Cleaned up flexible structures implementation. The problem is that compiling the definitions is rather slow (~4 minutes for 10/128 fields), although those can be pre-compiled in advance, and using the functions is rather slow to typecheck (about 0.4s to use a 10/32 constructor), which is more of a problem. 2017-05-18 15:10:33 +02:00
Georges Dupéron
8f13786bf0 Implemented builder-f, cleanup. 2017-05-17 16:31:08 +02:00
Georges Dupéron
e3074a37e4 Writeup 2017-05-17 01:48:25 +02:00
Georges Dupéron
6221a5db83 Implementation for a version of the poly constructor 2017-05-14 03:50:35 +02:00
Georges Dupéron
5cc510ebf6 WIP 2017-05-14 02:24:45 +02:00
Georges Dupéron
36d6630906 Managed to force TR to propagate Nothing types (by intersecting with a (∀) type which has the same shape as the desired one, deep enough to cause the containers of Nothing types to be re-examined 2017-05-12 22:05:20 +02:00
Georges Dupéron
fc7e1552ee Fixed flexible-with-generalized-ctor.hl.rkt, but TR does not refine the intersections after an (inst f τ …), or after applying a ∀ type. 2017-05-12 18:40:44 +02:00
Georges Dupéron
8ff2a1d267 TR Bug in flexible-with-generalized-ctor.hl.rkt: typed-racket-lib/typed-racket/types/overlap.rkt:40:0: mask-accessor: contract violation expected: mask? given: #f 2017-05-12 01:08:02 +02:00