Commit Graph

165 Commits

Author SHA1 Message Date
Kathy Gray
7758f508c5 Addition of define-wish to the teaching languages and corresponding addition of support for wishes in test reports and check-expects 2011-02-21 12:46:39 +00:00
Matthew Flatt
655f6045a2 fix shared' for #:auto' fields and constructors without `make-'
Closes PR 11588
 Closes PR 11591
2011-01-05 13:52:11 -07:00
Mike Sperber
d5c58d9f82 Extends =~ to complex numbers
This is a (variation of a) fix from David van Horn.

Closes PR 11547.
2010-12-26 09:03:10 +01:00
Mike Sperber
fa854f62fc Add vector signatures, and `vector-of' to the HtDP signature syntax. 2010-12-19 11:20:51 +01:00
Mike Sperber
dbd1cfaf10 Don't use teach-equal?' for one-of' signature.
I did this under the mistaken assumption `equal?' would not work for
cycles, I think.
2010-11-26 11:10:29 +01:00
Mike Sperber
99e66e0dea Fix cycle detection in `tequal?'.
... and thus in `check-within', by using an eq? hash table.  Also,
while we're at it, add cycle detection to `tech-equal?'.

Fixes PR #11423.
2010-11-17 17:15:31 +01:00
Vincent St-Amour
c7d67f9bab *SL: first and rest should not report errors in terms of car and cdr. 2010-11-09 21:16:17 -05:00
Matthew Flatt
9f959f247e fix quotability annotation on HtDP-language structs
Merge to 5.0.2
2010-10-17 19:32:17 -07:00
Mike Sperber
39541c51b5 Add `tech-equal?'.
This refuses to work on inexact numbers and procedures.  Use it in
`check-expect' & friends.
2010-10-15 15:26:24 +02:00
Matthias Felleisen
df62ca47e9 added 'function', Closes PR 11283 2010-10-13 10:31:00 -04:00
Mike Sperber
f3191ff4d6 Define `any' signature differently.
... to actually enable the subtyping check.  Also, make named
signatures work for signature variables.
2010-10-13 09:41:10 +02:00
Mike Sperber
eebe5b2e2b 2nd attempt at generators for records/structs.
This time, with feeling.
2010-10-11 13:34:16 +02:00
Mike Sperber
f706b0d7a7 Revert "Create arbitraties off parametric struct/record signature constructors."
This reverts commit 7df9a22a67.

It was broken in several ways.  New attempt later.
2010-10-09 17:48:58 +02:00
Mike Sperber
4ec7cb1d88 Unbreak coverage for *SL `define-struct'. 2010-10-08 19:56:51 +02:00
Mike Sperber
7df9a22a67 Create arbitraties off parametric struct/record signature constructors.
This enables QuickCheck value generations for structs/records.
2010-10-08 17:21:07 +02:00
Mike Sperber
219c91d8e7 Check parametric struct/record signatures eagerly. 2010-10-08 17:01:47 +02:00
Mike Sperber
3e205b6193 Better error message for certain bogus signatures. 2010-10-08 13:55:42 +02:00
Mike Sperber
38cf78e213 Allow specifying arbitary expressions in a signature declaration.
Fixes PR 11282
2010-10-08 13:12:18 +02:00
Mike Sperber
1e44fc8e43 More "contract" -> "signature" identifier renaming. 2010-10-08 11:51:33 +02:00
Mike Sperber
91590040dc Ignore duplicate signature declarations. 2010-10-08 11:50:17 +02:00
Mike Sperber
87da2f35b9 Provide English and German versions of deinprogramm/signature/signature. 2010-10-08 11:19:38 +02:00
Matthias Felleisen
725da3b2ed fix string-ith problem, Closes PR 11261 2010-09-28 18:07:10 -04:00
Mike Sperber
65bd667be2 Make parametric signatures work in BSL. 2010-09-22 11:35:00 +02:00
Mike Sperber
7304c061e3 Add `cons-of' signature constructor to HtDP languages. 2010-09-22 11:31:24 +02:00
Mike Sperber
593f8588fe Implement lazy signature checking for ordinary pairs. 2010-09-22 11:03:01 +02:00
Mike Sperber
98c9ad4d22 Add `Any' contract to HtDP languages. 2010-09-21 16:23:58 +02:00
Mike Sperber
333d82e6df Fix some error messages for invalid : signature declarations. 2010-09-17 18:02:33 +02:00
Mike Sperber
8bc95ace01 Unbreak signatures for BSL. 2010-09-17 18:02:33 +02:00
Matthew Flatt
036ed57000 fix *SL `define-struct' expand-time info: omit non-existent struct type 2010-08-30 16:11:08 -06:00
Robby Findler
b1550d6c9b changed the expansion of the ... macro in the teaching languages so that
it cooperates with the test coverage annotations in drracket.
closes PR 11138
2010-08-30 09:23:34 -05:00
Jay McCarthy
45a8854398 Adding immutable hash operations to ASL 2010-08-25 10:36:36 -06:00
Jay McCarthy
368d711ae2 Optional arguments to hash table constructors in ASL 2010-08-25 10:36:34 -06:00
Matthew Flatt
0955ed6e8b fix custom printer attached to *SL structure types 2010-08-24 06:23:22 -06:00
Robby Findler
611e04abda adjusted the expansion so that the references to "foo" in this ISL program:
(define-struct foo (x))

(: make-foo (Number -> foo))
(: foo-x (foo -> Number))

(define x (make-foo 5))
(foo-x x)

don't get colored the "not yet executed" color.
2010-08-23 10:23:34 -05:00
Matthew Flatt
a7bc964c69 fix problem with binding of *SL struct-type name and application 2010-08-19 07:38:25 -06:00
Robby Findler
ee3a837ee2 fixes the other aspect of PR 11062 2010-07-31 09:15:11 -05:00
Matthew Flatt
0e8af6bc5d fix acc/mut error msgs from `define-struct' in teaching languages
Merge to 5.0.1
 Closes PR 11062
2010-07-30 11:16:32 -06:00
Jay McCarthy
407dcee206 Adding match to ASL 2010-07-22 15:39:53 -06:00
Jay McCarthy
eeada45868 Fixing error string 2010-07-22 15:12:07 -06:00
Jay McCarthy
9eb053d4db Adding define-datatype to ASL 2010-07-22 11:36:04 -06:00
Jay McCarthy
c9ccf6d48b Adding all hash prims per SK 2010-07-16 09:43:03 -06:00
Jay McCarthy
d17deb5fef Adding hash table functions to ASL 2010-07-15 15:45:54 -06:00
Mike Sperber
faf8ec358f Rename DMdA/HtDP "contract" to "signature". 2010-06-28 14:58:16 +02:00
Mike Sperber
3319fa41d0 Add properties to the HtDP teaching languages. 2010-06-09 14:16:34 +02:00
Mike Sperber
f29b6483f9 Export `posn' contract to the HtDP teaching languages. 2010-06-09 13:46:51 +02:00
Mike Sperber
744b45f470 Rename HtDP list' contract to list-of'. 2010-06-09 12:07:47 +02:00
Mike Sperber
5b4d25295d Make `define-struct' define contracts.
In particular, in

(define-struct foo (a b))

... foo is a contract, and a contract combinator `foo-of' is defined.
2010-06-09 11:07:22 +02:00
Mike Sperber
da88f22b0e Change do-define-struct' to use make-struct-type' explicitly.
This is to enable the contracts work that is to come.
2010-06-08 14:20:07 +02:00
Mike Sperber
97a04e9f9d Fix error message to match the test suite's check for it. 2010-06-08 11:22:35 +02:00
Mike Sperber
dee21e9e73 Add what's needed, delete what's in the way.
Stuff I had forgotten earlier.
2010-06-08 09:26:07 +02:00