Commit Graph

99 Commits

Author SHA1 Message Date
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
Mike Sperber
593f8588fe Implement lazy signature checking for ordinary pairs. 2010-09-22 11:03:01 +02:00
Mike Sperber
716c722bab LaTeX fix for documentation. 2010-09-18 15:09:11 +02:00
Mike Sperber
fcdfefea10 "Vertrag" -> "Signatur" in a few places. 2010-09-17 18:02:34 +02:00
Mike Sperber
333d82e6df Fix some error messages for invalid : signature declarations. 2010-09-17 18:02:33 +02:00
Mike Sperber
11f6ec1b98 Updated DMdA signature docs.
Added `any' and `unspecific', and some minor reorganization.
2010-09-17 10:00:54 +02:00
Mike Sperber
9e94a327b8 Add `any' signature to DMdA languages. 2010-09-16 18:19:32 +02:00
Mike Sperber
9d35548997 Unbreak `list-of'. 2010-09-09 13:17:22 +02:00
Mike Sperber
3f8b2e6ea2 Provide built-in `computer' record type for DMdA.
`chocolate-cookie' has been wildly unpopular, so we'll try this next semester.

Also, clean up the `provide' forms for the chocolate cookies.
2010-09-09 11:56:42 +02:00
Mike Sperber
8611cd8731 Zap `begin' from DMdA-beginner and DMdA-vanilla. 2010-09-09 11:32:37 +02:00
Mike Sperber
c47ad74b1b Move the prim-op-defns of the DMdA-vanilla docs to right place. 2010-09-09 11:28:59 +02:00
Mike Sperber
d874065e26 Zap let, letrec, let* from DMdA-beginner language. 2010-09-09 11:22:57 +02:00
Mike Sperber
050f0a141b Add `list-of' signature to DMdA languages. 2010-09-09 11:12:33 +02:00
Eli Barzilay
7dc4d2e5a6 Change a bunch of "~%" and "~n" in format strings to "\n". 2010-08-25 17:17:01 -04:00
Mike Sperber
00061e6bb9 Make `procedure-to-blame' applicable.
This unbreaks some applications of procedures with signature
violations.
2010-08-25 16:00:47 +02:00
Mike Sperber
a4e7ef3594 Push mixed' contracts down into lazy struct' contracts. 2010-08-23 14:40:21 +02:00
Mike Sperber
225a42b832 Pass back the procedure on certain signature violations.
Closes PR 11117.
2010-08-23 10:08:40 +02:00
Mike Sperber
5f25c239f2 Merge remote branch 'local-plt/master'
Conflicts:
	collects/deinprogramm/define-record-procedures.scm
	collects/test-engine/scheme-tests.rkt
	collects/test-engine/test-display.scm
2010-07-13 17:13:30 +02:00
Mike Sperber
faf8ec358f Rename DMdA/HtDP "contract" to "signature". 2010-06-28 14:58:16 +02:00
Mike Sperber
2c964b91f0 Provide prop:print-converter propery with `define-record-procedures'.
This fixes quasiquote and constructor-style printing to not fall for
the extra lazy-contract-checking field.
2010-06-09 14:37:36 +02:00
Mike Sperber
fc879f1894 Make use of stepper-define-struct-hint' in define-record-procedures'. 2010-06-09 14:33:21 +02:00
Mike Sperber
30f9cd0dab Merge remote branch 'local-plt/master' 2010-06-08 14:22:51 +02:00
Mike Sperber
b0e6e6b55d Merge remote branch 'origin/master' 2010-06-07 17:26:34 +02:00
Mike Sperber
93d7ec9446 Don't recheck DMdA lazy contracts we've already checked.
We avoided re-applying contracts that haven't been checked, but not
those that have.  Do so now.
2010-06-07 17:06:07 +02:00
Mike Sperber
a0d82d07a6 Fix interaction between new DMdA contract representation and stepper.
- add proper hash procedures
- fix prining
2010-06-01 20:10:11 +02:00
Mike Sperber
5f8924b1d2 Fix various interaction breakage between the new DMdA records and the stepper.
Namely, attach the `stepper-ignore-completely' property to each
individual definition, rather than just to the block of definitions as a whole.
2010-06-01 20:10:11 +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
b4f010c6d5 Fix breakage due to lazy contracts.
- fix check for lazy-wrap property
- supply hash procedures for records defined with `define-record-type'
  (needed by the stepper)
2010-05-20 19:55:12 +02:00
Mike Sperber
799d356871 Merge deinprogramm/contract/contract-test-display into test-engine/test-display.scm. 2010-05-20 16:57:46 +02:00
Mike Sperber
3e0d3b84ec String constants for check-property error messages. 2010-05-20 16:15:15 +02:00
Mike Sperber
2f747dfa1f Cosmetic change to new-style require. 2010-05-20 16:12:50 +02:00
Mike Sperber
5f443141f1 String constants for the remaining untranslated test-engine messages 2010-05-20 16:05:15 +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
Eli Barzilay
de0cc7771b A lot of "DrScheme" -> "DrRacket"s. 2010-05-17 01:27:03 -04:00
Sam Tobin-Hochstadt
2c315742d8 fix warning on `define-record-procedures-parametric' 2010-05-05 10:14:53 -04:00
Robby Findler
9b2987d7fb improved the suggest-a-language dialog that you get in the there-is-no-language-picked-yet language 2010-04-29 12:21:10 -05:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Mike Sperber
9d20fd713d Lazy contract checking for DMdA's `define-record-procedures-parametric'.
svn: r18806
2010-04-13 07:57:57 +00:00
Mike Sperber
d64254f49f DMdA Contract bug fix: In yet another place, make sure that the
enforcer calls `contract-violation' in tail position.

svn: r18095
2010-02-16 07:51:02 +00:00
Mike Sperber
30e8c7d039 Zap obsolete comment.
svn: r18094
2010-02-16 07:39:22 +00:00
Mike Sperber
4ea713a87a Typo fix.
svn: r17617
2010-01-12 12:38:42 +00:00
Eli Barzilay
01536ba44e switch to "#lang setup/infotab"
svn: r17598
2010-01-11 02:24:24 +00:00
Mike Sperber
e63e96f07c Typo fix.
svn: r17132
2009-12-01 12:59:26 +00:00
Mike Sperber
65f3695afb DMdA doc fix.
svn: r17107
2009-11-30 13:47:41 +00:00
Mike Sperber
97a41443a9 Add string->symbol to DeinProgramm / DMdA advanced.
Also, exclude symbol-related stuff from everything below.

svn: r17082
2009-11-27 16:40:44 +00:00
Mike Sperber
0257ac515a Make the stepper ignore `check-property'.
svn: r17013
2009-11-23 20:44:47 +00:00
Mike Sperber
ffadf59303 Fix really stupid bug in `convert-explicit'.
svn: r16989
2009-11-23 11:21:30 +00:00
Mike Sperber
b68bb30d70 Handle sharing correctly in the DeinProgramm `write' handler.
svn: r16779
2009-11-15 10:47:27 +00:00
Mike Sperber
a17dc333f6 Only print sharing from "DMdA mit Zuweisungen" upwards.
svn: r16778
2009-11-15 10:18:50 +00:00
Mike Sperber
9d1c9672d9 Add `property' contract for QuickCheck properties to DeinProgramm languages
... and don't export the old property "combinator" to the language levels.

svn: r16770
2009-11-14 14:28:31 +00:00