Commit Graph

22987 Commits

Author SHA1 Message Date
Eli Barzilay
09c8880ea0 Fix reading a 'line argument: always succeeds and returns the line as-is. 2011-07-18 15:39:18 -04:00
Eli Barzilay
261288c394 Add $F for ,sh commands. 2011-07-18 15:34:31 -04:00
Eli Barzilay
3c1e624916 Add an example for extending xrepl, the very stupid way.
For the record, a way to do this permanently is to add something like
this to your ~/.racketrc:

  (eval '(begin
           (saved-values-char #\~)
           (defcommand eli "stuff" "eli says" ["Make eli say stuff"]
             (printf "Eli says: ~a\n" (getarg 'line)))
           (defcommand er #f "alias for errortrace" ["Runs errortrace"]
             (run-command 'errortrace)))
        (module->namespace 'xrepl/xrepl))

But this is too stupid even for a section that has "Hacking" in its title.

There should definitely be an organized way to do this.  This will
require several things:

* A decent API for doing these things for user code.  (So the above
  `eval' turns to a `require' for your file which uses this API.)  This
  goes beyond just documenting what's in there -- there are issues to
  resolve like some argument reading protocol (separating the
  declaration of argument types from the command implementation code),
  so a new command can call another with arguments that it reads.

* There should also be some ,set command for customization
  options (reading and changing) and code to use the preference file for
  doing that.  I almost started to do this, but currently there are only
  three values that this could apply to (`saved-values-char', `-number',
  and `wrap-column' (which might be better to dump and use
  `pretty-print-columns' instead)).

* Also, it might be nice to have some command to do the same for simple
  aliases.  (But this might get into shady parsing issues if it's more
  than just "I want `foo' to be an alias for an existing `bar' command".)
2011-07-18 15:23:09 -04:00
Eli Barzilay
5fb8390609 Hook XREPL into a few places where readline' and enter!' are mentioned. 2011-07-18 14:25:10 -04:00
Eli Barzilay
d7c14cbd3f XREPL documentation. 2011-07-18 14:25:10 -04:00
Eli Barzilay
c57ab7b4fc Lots of improvements:
* Rename `make-command-{reader,evaluator}' ->  `make-xrepl-{reader,evaluator}'

* Move the commented-out ,meta block to a better place

* Protect the prompt computation against errors, to avoid infinite
  exception output if an exception is raised.

* Add ",switch ?" to query namespaces, and ",switch - <name>" to remove
  one.  Forbid resetting the default initial `*' namespace.

* Clarify that multiple arguments can be sent to ,stx and fix it to
  display the current syntax when there are no arguments.

* Various minor typos and improvements.

* Restore the use-last-arguments-by-default functionality of ,rr

* Re-do argument reading to make it easier to have a default
  argument (as in ,enter and ,edit).
2011-07-18 14:25:10 -04:00
Eli Barzilay
50b74c453f Typo in the `errortrace' language description. 2011-07-18 14:25:10 -04:00
Eli Barzilay
45394bb7b6 Use (banner) instead of a fixed "Welcome to Racket" in the More tutorial
and in the guide.

Also, add a tag to the readline "License Issues" to be able to link to
it from the xrepl docs.
2011-07-18 14:25:10 -04:00
Eli Barzilay
3f8bb7a453 Rename prompt-shown' -> zero-column!', and use it only in the
non-readline reader.  Use line reading for ,install!.
2011-07-18 14:25:10 -04:00
Jon Rafkind
3a1dde7f14 parse arguments. provide basic math operations 2011-07-18 11:28:34 -06:00
Stephen Chang
7eedae8f69 fix lazy stepper test - lazy-cond1 2011-07-18 12:34:14 -04:00
Vincent St-Amour
4c5bb1ddaf Change a TR doc example to take two arguments.
Otherwise, the docs don't have any examples for the syntax of
multi-argument functions that doesn't involve polydots.
2011-07-18 11:53:39 -04:00
Ryan Culpepper
7e1627679c unstable/gui/blur: added box blur option 2011-07-18 09:01:26 -06:00
Ryan Culpepper
5cf2767e7a macro-stepper: update tests 2011-07-18 09:01:26 -06:00
Ryan Culpepper
0f0dd65d83 macro-stepper: update for new letrec-syntaxes+values expansion 2011-07-18 09:01:26 -06:00
Ryan Culpepper
61ab93b87e added unstable/future 2011-07-18 09:01:26 -06:00
Ryan Culpepper
bb5bcf2ae1 added unstable/gui/blur 2011-07-18 09:01:26 -06:00
Ryan Culpepper
deb8c222d8 unstable/gui/ppict: add ppict-add* 2011-07-18 09:01:26 -06:00
Robby Findler
c06db14bfd improved opt/c so that it knows about chaperones 2011-07-18 07:55:55 -05:00
Robby Findler
a0e08514b1 fixed up contract test suite 2011-07-18 07:55:54 -05:00
Robby Findler
2b99c86321 fix missing argument to format
please merge to release branch
2011-07-18 07:55:54 -05:00
Matthew Flatt
5efe7001d6 fix "block cache" layer to handle allocation failure 2011-07-17 20:08:26 -06: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
Matthew Flatt
d8d762517f fix `get-module-path' and associated exception
Closes PR 12029
2011-07-17 08:14:33 -06:00
Matthew Flatt
67936b7a66 fix `enter!' to set module source name
Merge to 5.1.2
2011-07-17 08:14:33 -06:00
Robby Findler
2308701476 add a test case for the contract system error (and adjust the fix a little bit) 2011-07-16 22:52:32 -05:00
Matthew Flatt
92671ab3ea fix source name of built-in modules
Closes PR 12051

 Merge to 5.1.2
2011-07-16 21:42:57 -06:00
Matthew Flatt
c4b820e5c5 make `namespace->module' fail on kernel modules for the right reason 2011-07-16 21:36:41 -06:00
Matthew Flatt
67272f114b belated test case for cm ".dep"-read fix
Merge to 5.1.2
2011-07-16 21:25:56 -06:00
Matthew Flatt
701c9666d6 fix printing of namespace with places enabled
This commit goes with 62acb298bd.
2011-07-16 21:17:10 -06:00
Matthew Flatt
ab0e78122c revert unnecessary refactoring
--- intended to avoid creating a dependency that already exists

 Merge 5.1.2
2011-07-16 21:02:41 -06:00
Matthew Flatt
fc914dfac8 restore deinprogramm reader module suffix 2011-07-16 20:15:15 -06:00
Matthew Flatt
bd10ccc1b7 don't compile test file with image constant 2011-07-16 19:29:35 -06:00
Matthew Flatt
7af5d490ad fix cm to configure reader when reading .dep files
Merge to 5.1.2
2011-07-16 19:29:28 -06:00
Casey Klein
a2bc43eabd Fixes error for functions that return wrong number of values 2011-07-16 18:19:22 -05:00
Casey Klein
6ff5dc779b Fixes keyword tests 2011-07-16 18:19:22 -05:00
Matthew Flatt
3f0914080b fix SGC
Merge to 5.1.2
2011-07-16 14:30:09 -06:00
Matthew Flatt
9ca07e7d65 minor code clarification 2011-07-16 14:30:09 -06:00
Matthew Flatt
5edc0c70af change GDK_POINTER_MOTION_HINT_MASK back to GDK_POINTER_MOTION_MASK
because HINT doesn't works as expected, and the problem it
 seemed to solve at one time (slow resize in DrRacket) seems
 to have been fixed some other way. GDK_MOUSE_MOTION_MASK
 isn't needed, since GDK_POINTER_MOTION_MASK covers it.

 Merge to 5.1.2
2011-07-16 14:30:08 -06:00
Matthew Flatt
5e0d6e0dee fix void result to match contract
Merge to 5.1.2 if Robby agrees
2011-07-16 14:30:08 -06:00
Matthias Felleisen
59499b84bd optional limit for number of ticks 2011-07-16 13:59:55 -04:00
Robby Findler
75c1aa5f4d adding teaching language executable creation test case 2011-07-16 09:38:45 -05:00
Matthew Flatt
4307bcace5 fix taint behavior of some syntax operations
`syntax-local-get-shadower' and
 `syntax-make-delta-introducer' both taint their
 results when a given syntax object is tainted
2011-07-16 08:03:54 -06:00
Matthew Flatt
e57b7b9e54 limit build parallelism to 4 on a 32-bit machine
Merge to 5.1.2
2011-07-16 08:03:53 -06:00
Mike Sperber
429c3b0d93 Synch German string constants with latest. 2011-07-16 13:19:00 +02: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
Robby Findler
9e0a866969 typo 2011-07-15 21:25:14 -05:00
Robby Findler
7993d38e35 fix a bug in the arity checking for contracts 2011-07-15 21:25:10 -05: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