Commit Graph

251 Commits

Author SHA1 Message Date
Eli Barzilay
a9b1f993d4 Remove redundant execution bit from some files, convert one CRLF file to LFs. 2011-12-01 03:54:32 -05:00
Robby Findler
a40f288e48 relaxed the restrictions on planet requires in the teaching languages to allow the new forms 2011-10-07 11:48:24 -05:00
Robby Findler
25413a4c05 fix the expansion of beginner-true and beginner-false so
they don't throw away source locations.

related to PR 12253
2011-10-03 17:11:54 -05:00
Matthew Flatt
0197902309 add var-ref->mod-decl-insp' and switch cur-code-insp' uses
Macros and other tools that need syntax privilege used
`(current-code-inspector)' at the module top-level to try to
capture the right code inspector at load time. It's more
consistent to instead use the enclosing module's declaration-time
inspector, and `var-ref->mod-decl-insp' provides that. The
new function works only on references to anonymous variables,
which limits access to the inspector.

The real function name is longer, of course.
2011-09-20 13:50:36 -06:00
Guillaume Marceau
9b49de16e7 Fixed 'reference to an identifier before its definition' error in *SL. 2011-09-17 22:37:45 -04:00
Matthew Flatt
d3c56c9f13 generalized `begin-for-syntax' 2011-09-08 14:06:00 -06:00
John Clements
e781072bf3 eliminate quasiquote-the-cons-application tag 2011-09-06 10:05:42 -07:00
Matthew Flatt
a53f51d92d fix HtDP local' to work better with macros that expand to begin'
In particular, the forms within `begin' need to be partially
expanded before checking whether they're allowed.
2011-09-03 15:15:24 -06:00
Matthew Flatt
001cb75bac syntax-taint repairs
for problems exposed by more agressive arming of `lambda'
and `#%app'
2011-08-09 16:33:17 -06:00
Matthias Felleisen
59f0732fa0 fixed docs for >=; Closes PR 12066 2011-07-20 15:20:22 -04:00
Guillaume Marceau
2ae0376476 Fixes the (cons an image empty) error message 2011-07-19 13:01:07 -04:00
Guillaume Marceau
adf965e92a Undoes the 'produces -> return' part of commit c31d352f, keeping the 'changes -> mutates' change and the assorted bug fixes it contained. 2011-07-17 16:48:12 -04:00
Robby Findler
e4e1792bbe made the htdp lang's executable creation code use the modules that
string->lib-path asks it to use, but for both GUI and non-GUI mode
also refactored that code to move it into a separate file so
  eventually can add a drdr test for it
2011-07-15 21:25:16 -05:00
Guillaume Marceau
c31d352f2b Standartize the vocabulary to "the function returns" and "set! mutates" 2011-07-15 03:27:27 -04:00
Matthias Felleisen
03dc212d61 small edit to doc of atan; Closes PR 12039 2011-07-13 18:00:35 -04:00
Matthew Flatt
0acf9834f7 make ISL local' and letrec' expand more the old way
That is, force expansion to use a single `letrec',
 instead of a mixture of `let' and `letrec' that an
 internal-definition expansion would now use.
2011-07-09 16:57:09 -06:00
Guillaume Marceau
ff1ab35a12 Catches another way images prints. 2011-07-08 18:23:15 -04:00
Matthew Flatt
2840e2367b fix ASL `(begin0)' error message 2011-07-07 10:57:04 -06:00
Matthew Flatt
917d190877 more consistent *SL primitive descriptions 2011-07-07 10:45:43 -06:00
John Clements
77a31dc2af fix a stepper bug related to recent change to handling of module-level defines 2011-07-06 23:22:29 -07:00
Eli Barzilay
0ee3aef9cb Redo some of the ".ss" -> ".rkt" conversion that were undone in the last push. 2011-07-06 06:21:49 -04:00
Guillaume Marceau
9706920055 Updated the error messages of the world and universe teachpacks. 2011-07-06 05:35:27 -04:00
Guillaume Marceau
aa9dbd21f5 Updated the error message of check-expect. Fine tuning of the error messages. 2011-07-06 05:35:25 -04:00
Guillaume Marceau
6fc14b269d The rewriting machanism no longer inserts with-handler everywhere. 2011-07-06 00:28:45 -04:00
Guillaume Marceau
01b9bde7fa The documentation for htdp-lang now uses the new vocabulary. 2011-07-06 00:27:28 -04:00
Guillaume Marceau
6eea5b1793 The new error messages now pass the tests/language-test.rkt suite
(except for contract runtime error messages in levels higher than
 beginner.)
2011-07-06 00:19:26 -04:00
Guillaume Marceau
f858b8bb5c Htdp no longer throws exceptions that have no source information 2011-07-06 00:19:24 -04:00
Guillaume Marceau
79589b9b9f The htdp test suite now checks that the correct error messages are thrown. 2011-07-06 00:19:22 -04:00
Guillaume Marceau
2f3da4c4cd Changed the wording of BSL error messages 2011-07-05 17:57:19 -04:00
Eli Barzilay
3157955d40 ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
John Clements
e367f1d0f2 added missing argument to parameter set 2011-06-29 14:35:47 -07:00
John Clements
d839b9fea6 renamed define-struct-hint to black-box-expr, applied to require as well 2011-06-29 00:28:08 -07:00
Eli Barzilay
40124a0619 A long overdue scan to eliminate files without terminating newlines.
(DrRacket should really do that.)
2011-06-28 02:01:41 -04:00
Matthias Felleisen
e3c552b785 boolean-valued functions in Intermediate and up now check their results; also fixed some error messages; Closes PR 11745 2011-05-25 14:05:45 -04:00
Matthias Felleisen
84cb649b87 removed pair? from language primitives so that HTDP works; Closes PR 10148 2011-05-13 12:55:45 -04:00
Sam Tobin-Hochstadt
f9bf318a90 Fix `ormap' error messages in HTDP languages. 2011-04-12 14:28:33 -04:00
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
Mike Sperber
b0e6e6b55d Merge remote branch 'origin/master' 2010-06-07 17:26:34 +02:00
Robby Findler
c96bbe640d makes image=? work on 2htdp/image images. 2010-05-26 20:55:24 -05:00
Mike Sperber
f899fdf15d Report the correct position for a blamed procedure.
... if the `lambda' of that procedure was the result of expanding a `define':
Attach the `define''s source location to the `lambda' expression.
2010-05-21 19:39:27 +02:00
Mike Sperber
8d39c15b17 Make contracts available in HtDP languages.
Known breakage: when blame is assigned to a procedure defined via
(define (f ...) ...), its source position isn't reported because its
lambda expression is generated.
2010-05-21 19:30:37 +02:00
Mike Sperber
8590e8cadf Merge deinprogramm contract test-engine into the regular one.
This adds support for contracts.
2010-05-20 15:31:45 +02:00
Matthew Flatt
9fc5cbfa2c Fix syntax error in ASL
Closes PR 10914
 Merge to v5.0
2010-05-19 15:11:41 -06:00
Matthew Flatt
043f97df97 fix more test files 2010-05-01 07:23:05 -06:00
Matthew Flatt
32de6647dc fix HtDP language printing 2010-04-28 08:55:16 -06:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Matthew Flatt
616080c7c4 change 'define-struct' to bind the type name as a constructor, add an #:extra-constructor-name option, etc. 2010-04-25 12:10:36 -06:00
Matthias Felleisen
6bc3484ae0 added member? as an alias for member to BSL 2010-04-20 22:48:41 -04:00
Robby Findler
6f4c164793 improved the implementation of error in the teaching languages, added test casees
svn: r17923
2010-02-01 15:39:33 +00:00
Matthew Flatt
1086cefc7a add empty to the list of things that are not structs for HtDP langs
svn: r17563
2010-01-08 13:38:48 +00:00
Matthew Flatt
1e2cb09f39 fix HtDP advanced docs for random
svn: r17470
2010-01-03 18:04:44 +00:00