Robby Findler
22ce241d4d
no #%plain-app because test is not a function...
2010-10-22 06:45:56 -05:00
Robby Findler
c34bd6c28d
fix the metadata parsing to be more robust so drracket does not crash when opening a corrupt htdp teaching language file
...
closes PR 11332
2010-10-22 06:45:56 -05:00
Robby Findler
ae37e186e7
use #%plain-app to avoid possible problems with code injected into the teaching languages
2010-10-19 07:07:08 -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
Robby Findler
8032705cf9
The call to display-results depends on the value of the current-namespace
...
parameter. Specifically, it is expected to be a namespace that has the GUI
bindings available. Unfortunately, during the dynamic extent of the
uncaught-exception-handler when a syntax error is raised, this may not be
the case because you get a phase 1 namespace, not a phase 0 one.
So, move the call to display-results to the code that runs the student language
programs and out of the uncaught exception handler.
2010-10-13 15:55:16 -05:00
Robby Findler
2de8b978ba
move read-accept-lang parameter setting to the right place
2010-10-13 15:55:16 -05:00
Matthias Felleisen
852aaed2ea
removed signatures for now
2010-10-13 12:49:26 -04: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
Matthew Flatt
6ac33a62be
set `read-accept-lang' to #t by default, plus related adjustments
...
including adding some uses of `with-module-read-parameterization'
so that `read-accept-lang' is set right anyway; still, so many
many places just set `read-accept-reader' to #t that making
`read-accept-lang' #f by default looks like too big of an
incompatibility
2010-10-08 19:01:33 -06: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
9b1188c77a
Re-instate Robby's hack to display test results off REPL errors.
...
... and generalize it so there's an action before (clearing the old
tests out) in addition to after (displaying the test results).
Also, do for DMdA as for HtDP.
2010-10-08 15:25:44 +02:00
Mike Sperber
3e205b6193
Better error message for certain bogus signatures.
2010-10-08 13:55:42 +02:00
Mike Sperber
7572b24870
Unbreak stepper.
...
(It was broken by fed1e3dc3e2d7268c0297a0ce699d3deb2ba75c5.)
2010-10-08 13:41:44 +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
Mike Sperber
b98b83b672
Make uncaught exceptions in teaching languages pop up test-engine display.
...
... so as to catch any test-case failures or signature violations that
may have occurred.
2010-10-08 10:25:37 +02:00
Mike Sperber
6997b08fa2
Remove front-end/interaction hack for test-engine.
...
It's not needed anymore after Robby's fix to namespace handling in the
teaching languages.
2010-10-08 09:28:07 +02:00
Robby Findler
fed1e3dc3e
adjusted the way the teaching languages work so that signature
...
violations in the REPL are tracked.
2010-10-07 14:27:56 -05:00
Eli Barzilay
2189957b6f
Change the errortrace protocol for `initialize-test-coverage-point' and
...
`test-covered' to use just the expression -- looks like there's no
reason to use an additional key.
Also, change its uses to map each syntax to an mcons where its mcar is
used to track coverage. This is done everywhere, since it turns out to
be much faster to insert a `set-mcar!' with a 3d mpair, rather than a
call to a thunk.
Note that it still uses mpairs as a hack. It "works" in the same way
that this simplified example does:
(define-syntax m
(let ([b (mcons 0 0)])
(lambda (stx)
(with-syntax ([b b])
#'(case-lambda [() (mcar b)]
[(x) (set-mcar! b x)])))))
I think that it's fragile, and likely to stop working at some point, but
I don't see anything better for now.
2010-10-04 17:24:22 -04:00
Matthias Felleisen
725da3b2ed
fix string-ith problem, Closes PR 11261
2010-09-28 18:07:10 -04:00
Robby Findler
feddcdaef9
closes PR 11241
2010-09-23 06:25:21 -05: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
Robby Findler
4bbb1f4cd9
Added a second column for the 2htdp teachpacks to the choose-a-teachpack dialog
...
closes PR 11170
2010-09-07 17:34:08 -05:00
Robby Findler
5e04a5c6d9
When opening a new window where the language is one of the htdp languages (via the
...
language dialog, not the #lang htdp/* variants), teachpacks are put into the
initial REPL (instead of just having the language primitives).
closes PR 11160
2010-09-04 19:37:02 -05: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
Robby Findler
7020cb6e4c
adjusted the language dialog so that the output-style and fraction-style radio boxes aren't adjacent
2010-08-29 08:20:53 -05:00
Eli Barzilay
8e0f8dd39c
More "~n" -> "\n" changes
2010-08-26 12:11:00 -04: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