Commit Graph

334 Commits (c8851d31c5ba3e959221126cfedc560b300c25ed)
 

Author SHA1 Message Date
Jesse A. Tov c8851d31c5 Fixes Check Syntax arrows for lexer generator.
There was a bug in disappeared-use tracking--a missing
syntax-local-introduce. This change uses `with-disappeared-uses` and
`syntax-local-value/record`, instead of the (broken) manual tracking
that was present before.

I believe that non-BR parser-tools also has this bug, but I haven't
ported the fix yet.
5 years ago
Jesse A. Tov f8c3f37646 Fixes bug demonstrated by previous commit.
Now (repetition 1 1 e) is a charset if e is a charset, but other number
of repetitions are not.
5 years ago
Jesse A. Tov 0eecc81e6c Demonstrates bug in char-complement.
This commit adds 3 tests. All 3 should pass, but right now 2 of them
fail because char-complement is considering (repetition n n e) to be
a charset for *any* n, so long as e is a charset.
5 years ago
Matthew Butterick 8752bf5bfb literal string in error msg 6 years ago
Matthew Butterick aa5b074719 update 7 years ago
Matthew Butterick fd446e6013 refactor into racket/base 7 years ago
Matthew Butterick fc1e00bc2a set up travis 7 years ago
Matthew Butterick d2b2db04b9 bolster automatic eof rule (fixes #1) 7 years ago
Matthew Butterick facc385f62 doc edit 7 years ago
Matthew Butterick 4041d75969 clarify docs about re “sequences” 7 years ago
Matthew Butterick 9b8e0f96c8 rebase on fork of parser-tools 7 years ago
Matthew Butterick 3e71cfa350 fix typo in docs
`src-pos-lexers` to `lexer-src-pos`
8 years ago
Matthew Butterick 680bbc0c01 Fix typo in docs: `rad` to `read` 8 years ago
Robby Findler be0b8854cd move from mzlib/contract to racket/contract 9 years ago
Sam Tobin-Hochstadt 8d101fecf6 Merge pull request #1 from PuercoPop/patch-1
(parser-tools.scribl): Typo
10 years ago
Javier Olaechea c8e5cbb13d (parser-tools.scribl): Typo
not be the -> may not be the
10 years ago
Sam Tobin-Hochstadt 96345b1644 Add standard .gitignore file. 10 years ago
Sam Tobin-Hochstadt f9a98ad575 Remove extra directories. 10 years ago
Sam Tobin-Hochstadt 0b6452ee31 Remove stray reference to Racket in LICENSE files.
Related to PR 14842.

original commit: 3bbdd134b1754d51422eeaec1c35e9c62d45144c
10 years ago
Matthew Flatt 10d870644e add `update-implies` to package "info.rkt"s
original commit: eb9cbe20bf7b4ebc1eee63e2ca079ae566ff8c05
10 years ago
Matthew Flatt 65faddf05e LGPL by reference
original commit: 981701d2378179d4ada54b7fd2608df3b89748fd
11 years ago
Eli Barzilay 75592916bb 2013 -> 2014
original commit: c61a549840ee0ba5f2e5da56523fd3b26efeb895
11 years ago
John Clements f59e16a02e rackety
original commit: ed3bf9a3c0f839fd25375439be170d46d5a49e09
11 years ago
Matthew Flatt ab0f7537de include license with each package
original commit: ff9da94cfb852d25cd54bc0d9a904c8ae46fe64c
11 years ago
Matthew Flatt 420a75bbeb auto-fix dependencies for "scheme-lib" and "srfi-lite-lib"
original commit: c709af5bf4d3af8f8c7a5918cf0b521ac1846f78
11 years ago
Matthew Flatt a27314031c add `pkg-desc' and `pkg-authors' to each package
This information will be used to construct a catalog from the
package directories.

original commit: 057bfc2ea1a24e85ece2d5f85da30076643ea598
11 years ago
Matthew Flatt cdb3f86894 auto-fix documentation package dependencies
original commit: d57f26f001701c54bdd4163c60251dab4db55eba
12 years ago
Sam Tobin-Hochstadt 02018fa499 Use `#lang info` instead of `#lang setup/infotab`.
original commit: 5a7ca7ebb56b2215f2d395ed052c03ea740817ea
12 years ago
Matthew Flatt 3cd299edb1 auto-fix dependencies in "pkgs"
Left one dependency broken: "drracket" currently depends on "htdp" for
a test. That needs to be fixed by removing the dependency (moving the
test to "htdp?), instead of changing the declared dependencies.

original commit: 51290fd2a95def6bb3b6d3d735cb62444e157553
12 years ago
Matthew Flatt f11b08e544 fill in some pkg `implies'
original commit: 5c42f46158248130a8179e7a563d16c5fc9d0d35
12 years ago
Matthew Flatt 9e82692a00 a step toward single-collection packages as default
A package's "info.rkt" file should define `collection' as a
string to name a single-collection package's collection, or as
the symbol 'multi to declare the package as multi-collection.
If `collection' is 'same-as-pkg, then the package name is used
as the collection name.

The default for `collection' is 'multi for now, but the intent
is to change the default to 'same-as-pkg after a conversion
period. Also, support for a `single-collection' definition remains
in place, but it wil be removed.

original commit: c738a6aa3eee89a82d577dd35c70eca8ed32f5b4
12 years ago
Matthew Flatt d90f2f4bfe reorganize into core plus packages
The "racket" directory contains a pared-back version of the
repository, roughly.

The "pkgs" directory everything else in the repository, but
organized into packages.

original commit: b2ebb0a28bf8136e75cd98316c22fe54c30eacb2
12 years ago
Matthew Flatt b74f930734 raco pkg create: support "source" and "binary" bundling
Adds `--from-dir' and `--from-install' flags to select the interpretation
of the argument as a directory or as the name of an installed package.
Relevant to PR 13669

Adds `--as-is' (the default), `--source', and `--binary' flags to
select a pruning mode.

The `raco setup' tool recognizes a `rendered-scribblings' specification
in "info.rkt" to trigger moving rendered documentation into place,
registering its tags in the cross-reference database, and fixing up
references to "local-redirect.js"; the presence of a "synced.rktd"
indicates when those fixups have been performed (since, if the package
is installed in a user-specific scope, the documentation doesn't actually
move anywhere). Finally, "out<n>.sxref" needs to report paths relative to
the documentation's directory, and then the relative-directory references
need to be suitably resolved at derserialization; some support for such
relative paths was in place, but it wasn't quite general enough before.

original commit: 198a65a5fc79649ec167d2407c35815768a119ba
12 years ago
John Clements 111de51b65 specified match precedence in lexer... hope I'm right
original commit: 27503c3ae9a1b3958a795f180ed8eb3ddbbfc019
12 years ago
Eli Barzilay 7c115199b5 Fix lots of indentation mistakes.
(Found by my ayatollah script...)

original commit: af6be85ff576e475753a46bd3f1690eb8bf88a28
12 years ago
Danny Yoo 0156d62399 Modify the src-pos error reporting in parser-tools to better show the token context.
Addresses PR 9924.

original commit: 9b86d4452fc4e1be823e12373aac2d5f432006da
12 years ago
Robby Findler f79949dce3 Rackety
original commit: 014abe64c0ab76977bd69693dc8d1e3fb6a9a1c5
12 years ago
Danny Yoo 1acb3c8401 Correct the test case so it executes the error path we want.
original commit: ab3c69ceaaa4c31d2c608a3054bafc400e02e7b8
12 years ago
Danny Yoo c6375182fa PR 13471: Add cycle-detection during lex-abbrev expansion to raise appropriate syntax error.
Also add test cases for lex-abbrev cycle detection.

original commit: 7146289c34c8256e54bda9157fcdc337047ae043
12 years ago
Matthew Flatt ec6cb60c00 paser-tools: doc clarifications
Nothing in the docs said that `parser-tools/yacc' is for LALR grammars
--- although I guess that it implied for most reader by the name "yacc",
but it doesn't hurt to say so explicitly. Meanwhile,
`parser-tools/cfg-parser' is useful for non-ambigious (non-LALR) grammars.

Also, from the style guide:
 * Section Titles Should be In Titlecase, Like This
 * Don't start a setence with an uncapitalized identifier.

original commit: 9e0fce224b9fb48e3b79e10863ca303c21c936c4
12 years ago
Danny Yoo ab6d67eb8b Strip the copy-and-paste for cfg-parser, keeping the delta vs. parser.
original commit: 4dfe4097720f52968a60f37e2bd8de99b969107c
12 years ago
Danny Yoo f79486a694 Remove paragraph about multiple start symbols, since cfg-parser doesn't support it.
original commit: 8d00037372c99891065a15a342291e79bdfb123e
12 years ago
Danny Yoo cafb8a5c62 Add documentation for cfg-parser.
original commit: e9c5c78468e1564bff9ca3966dfddc3cc4adc6e8
12 years ago
Danny Yoo e39cbed86c Modify cfg-parser's treatment of error function so it can consume both arity-3 and arity-5 error functions.
Meant to match the interface provided by parser-tools/yacc's parser.

original commit: 3d1f8b4406a2ae35b0717f757ead805e6bf9d3f4
12 years ago
Danny Yoo 81acb2ae50 Move cfg-parser from the algol60 collection to parser-tools.
Discussed in: http://lists.racket-lang.org/dev/archive/2013-January/011416.html

A stub library in algol60/cfg-parser will re-export the contents of
parser-tools/algol60 for backwards compatibility.

original commit: 7ab7d97f01f54db99fbc856b338ba82935dbe96d
12 years ago
Danny Yoo cdb627642e Gracefully handle the case where the token stream just contains the END token and an error occurs.
original commit: 69ae77a253fadbcb4ad4e87514e18f2a01b97068
12 years ago
Danny Yoo 2fd35df83a Correct location calculations for non-terminals.
The prior code constructed the location of nonterminal maches out of
the the state of the stream after parsing.  This isn't right for a few
reasons:

    1.  It doesn't get starting location correctly.

    2.  It doesn't behave when the non-terminal production did not
        actually consume tokens for its parse.

This patch modifies the parsers to also pass along a
"last-consumed-token"; it, along with a few other changes, provides
the parsers enough information to accurately construct the locations,
even when no tokens have been consumed during the parse.  We
synthesize a sentinel last-consumed-token token to take location from
the head of the stream.

original commit: 6e21e34ec7c7a3e9cf23a3f24bfafd6155e1f14a
12 years ago
Danny Yoo 33ebcd7a78 Modernize cfg-parser from mzscheme to Racket libraries.
original commit: 4ff4c677bd354cb1a26adf0c3e0e4de03a7a3939
12 years ago
Robby Findler d6f9d98289 make the position and position-token structs transparent
(these seem to only not be transparent because that is
the default)

original commit: facea9fe43ef37bd3c2f0f42a35ba12bd1bc88b7
12 years ago
Eli Barzilay 26f857f904 Lots of bad TAB eliminations.
I started from tabs that are not on the beginning of lines, and in
several places I did further cleanings.

If you're worried about knowing who wrote some code, for example, if you
get to this commit in "git blame", then note that you can use the "-w"
flag in many git commands to ignore whitespaces.  For example, to see
per-line authors, use "git blame -w <file>".  Another example: to see
the (*much* smaller) non-whitespace changes in this (or any other)
commit, use "git log -p -w -1 <sha1>".

original commit: 672910f27b856549ad08d38832b6714edf226c8e
12 years ago