Commit Graph

88 Commits

Author SHA1 Message Date
Matthew Flatt
9e7548de61 new error message convention
Add `raise-argument-error', `raise-result-error', `raise-arguments-error',
and `raise-range-error'.

The old convention was designed for reporting on a single (sometimes very
long line). The new convention is

 <name>: <short message>
   <field>: <detail>
   ...

If <detail> is long or itself spans multiple lines, then it may
also use the form

   <field>:
    <detail>

where each line of <detail> is indented by 3 spaces.

Backtrace information is shown as a multi-line "context" field.
2012-05-25 15:08:05 -06:00
Matthew Flatt
99639c1999 errortrace repair
Closes PR 12629
2012-03-13 14:35:49 -06:00
Matthew Flatt
3a1e8803ff fix errortrace for submodules 2012-03-09 10:34:56 -07:00
Matthew Flatt
3d69dfab86 first cut at submodules 2012-03-09 10:34:56 -07:00
Matthew Flatt
284ba01db6 errortrace: skip annotation in namespace with wrong base phase
Closes PR 12551
2012-02-09 17:58:28 -07:00
Matthew Flatt
6f528c7a17 fix and generalize errortrace detection of always-ok functions 2012-01-15 17:05:11 -07:00
Matthew Flatt
7d607fdd93 fix errortrace for phase N outside of module 2011-11-07 13:16:17 -07:00
Ryan Culpepper
c7f86d276c removed useless requires 2011-09-27 19:28:44 -06: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
Matthew Flatt
4d9c7e5332 fix interactive errortrace on modules 2011-09-14 20:51:56 -06:00
Matthew Flatt
a233697f08 fix errortrace (required API changes), add `syntax-shift-phase-level'
Also fix a bug in the `module' expander and streamline lazy
visits.
2011-09-13 21:04:10 -06:00
Matthew Flatt
d3c56c9f13 generalized `begin-for-syntax' 2011-09-08 14:06:00 -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
Eli Barzilay
50b74c453f Typo in the `errortrace' language description. 2011-07-18 14:25:10 -04:00
Matthew Flatt
072003f2f4 fix `#lang errortrace'
Since `#lang errortrace' annotates the result of `local-expand',
 it needs to handle `letrec-syntaxes+values', as well as allowing
 `#%expression' in more places.

 This change relies on a change to `kernel-syntax-case'. This
 isn't a new bug, and it's ok to not include it in 5.1.2
 (especially since the `kernel-syntax-case' change should not be
 merged).
2011-07-15 20:17:44 -06:00
Matthew Flatt
0f61d62ea1 fix errortrace
The `eq?'ness of syntax objects used to reconstruct the result
 was broken by disarming. The solution is to reconstruct based
 on the disarmed syntax object instead of the original.

 Merge to 5.1.2.
2011-07-15 20:17:44 -06:00
Ryan Culpepper
1b702a2ae3 docs reorganization
added tutorial, racket categories
  relabeled some other categories
  normalized manual names: de-bolded, changed some names
2011-07-01 17:16:53 -06:00
Robby Findler
69b5daa9e6 remove docs tests that no one was interested in 2011-07-01 11:38:09 +08:00
Matthew Flatt
1160d3df62 remove syntax certificates; add syntax taints 2011-06-29 19:15:48 -06:00
Eli Barzilay
ac26fe7554 A ton of @scheme*' -> @racket*' and related updates.
Also, updates some of the mzlib files to point at `racket/*' libraries
rather than to `scheme/*' ones.
2011-06-25 04:08:47 -04:00
Eli Barzilay
debd1f9f1e Recketizing much in `net/*', mass ".ss" -> ".rkt" conversion in .scrbl files.
(Some other minor things here and there.)
2011-06-20 04:27:14 -04:00
Robby Findler
507b1cd8fd moved the docs-complete library into rackunit
to avoid having a separate, new manual for the
  one library
2011-05-05 16:10:42 -05:00
Robby Findler
e7d0029aea added lots of new tests that our documentation is complete 2011-04-25 13:24:43 -05:00
Eli Barzilay
ad3ee86863 Switch to racket/base, and other racketizations. 2010-10-05 09:18:46 -04:00
Eli Barzilay
bbe0ef860a Some small fixes, and some reformatting 2010-10-05 09:18:46 -04:00
Eli Barzilay
2f56b23b21 Some minor cleanup 2010-10-04 17:24:22 -04: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
Eli Barzilay
7dc4d2e5a6 Change a bunch of "~%" and "~n" in format strings to "\n". 2010-08-25 17:17:01 -04:00
Eli Barzilay
606b7f60dc Lots of "~e" to "~.s" changes. 2010-08-25 17:17:01 -04:00
Matthew Flatt
eb15dceb34 rackety misc docs 2010-05-07 09:13:51 -06:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Matthew Flatt
ce2d286586 add current-module-declare-source, variable-reference->module-source, convert soe sues of module paths to module sources
svn: r18804
2010-04-13 02:48:40 +00:00
Matthew Flatt
8fbd16261f adjust DrScheme to run #lang-specified runtime configuration
svn: r18762
2010-04-08 15:32:02 +00:00
Matthew Flatt
417be5d8e2 move definedness check for imported variable to link time instead of access time; add errortrace meta-language; tweak errortrace to avoid an unnecessary and loop-obscuring annotation; improve slightly bytecode optimizer's handling of w-c-m; improve JIT handling of w-c-m
svn: r18678
2010-03-30 20:21:28 +00:00
Robby Findler
b5b32d1d8e added automatic compilation to the module language, plus various other tweaks (contract library enhancement, bug fixes here and there)
svn: r15635
2009-07-30 05:17:40 +00:00
Matthew Flatt
7833ab2c02 improve errortrace docs; can merge to 4.1.2
svn: r15586
2009-07-27 17:19:13 +00:00
Robby Findler
6551dbfaa0 PR 10237
svn: r14822
2009-05-14 20:23:31 +00:00
Eli Barzilay
c0a8a01222 Changed @itemize{...} to @itemize[...] (done after comparing the doc
tree and verifying that there are no changes).
(Also fixed a few bugs that were in the code)

svn: r14427
2009-04-05 17:46:20 +00:00
Robby Findler
2c85b7a795 improved performance of the teaching languages
svn: r14394
2009-04-01 00:15:20 +00:00
Eli Barzilay
7563016cf8 fix probable bug
svn: r12445
2008-11-14 08:02:21 +00:00
Eli Barzilay
984e6d7e2a undo the previous hack, and now avoid putting coverage points around all non-phase-0 expressions
svn: r12444
2008-11-14 08:01:43 +00:00
Eli Barzilay
8e1dc82973 always mark coverage points around quote-syntax as covered (this is a hack, see HACK in the source)
svn: r12443
2008-11-14 08:00:27 +00:00
Matthew Flatt
37aae202c5 speed up doc build a little; fix bugs related to getting continuation marks from a thread and using the errortrace profiler
svn: r12237
2008-11-04 23:32:44 +00:00
Matthew Flatt
e67b138830 fix problems with errortrace and namespace phases
svn: r11541
2008-09-04 22:03:06 +00:00
Matthew Flatt
d0419345d8 clean up extended in-vector, in-string, and in-bytes
svn: r11124
2008-08-07 12:13:21 +00:00
Eli Barzilay
7d50e61c7f * Newlines at EOFs
* Another big chunk of v4-require-isms
* Allow `#lang framework/keybinding-lang' for keybinding files
* Move hierlist sources into "mrlib/hierlist", leave stub behind

svn: r10689
2008-07-09 07:18:06 +00:00
Matthew Flatt
0de2c454f3 fix errortrace on set! expressions (incorrectly incremented phase in recur)
svn: r10557
2008-07-02 12:53:01 +00:00
Matthew Flatt
3900f3b714 another errortrace doc correction
svn: r10507
2008-06-29 20:24:22 +00:00
Matthew Flatt
f08063e7b2 errortrace doc corrections
svn: r10506
2008-06-29 20:18:30 +00:00
Matthew Flatt
44c5a75739 fix some phase problems in program-processing programs
svn: r10503
2008-06-29 15:11:20 +00:00