Skip to content

Commit 3b8af06

Browse files
Rename to Rescript (rescript-lang#98)
1 parent 3bc0b30 commit 3b8af06

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+624
-428
lines changed

syntax/.depend

Lines changed: 79 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -1,83 +1,79 @@
1-
src/napkin_ast_conversion.cmx : src/napkin_ast_conversion.cmi
2-
src/napkin_ast_conversion.cmi :
3-
src/napkin_ast_debugger.cmx : src/napkin_driver.cmx src/napkin_doc.cmx \
4-
src/napkin_ast_debugger.cmi
5-
src/napkin_ast_debugger.cmi : src/napkin_driver.cmi
6-
src/napkin_character_codes.cmx :
7-
src/napkin_cli.cmx : src/napkin_driver_reason_binary.cmx \
8-
src/napkin_driver_ml_parser.cmx src/napkin_driver_binary.cmx \
9-
src/napkin_driver.cmx src/napkin_ast_debugger.cmx
10-
src/napkin_comment.cmx : src/napkin_comment.cmi
11-
src/napkin_comment.cmi :
12-
src/napkin_comments_table.cmx : src/napkin_parsetree_viewer.cmx \
13-
src/napkin_doc.cmx src/napkin_comment.cmx
14-
src/napkin_core.cmx : src/napkin_token.cmx src/napkin_scanner.cmx \
15-
src/napkin_printer.cmx src/napkin_parser.cmx src/napkin_js_ffi.cmx \
16-
src/napkin_grammar.cmx src/napkin_doc.cmx src/napkin_diagnostics.cmx \
17-
src/napkin_comments_table.cmx src/napkin_core.cmi
18-
src/napkin_core.cmi : src/napkin_parser.cmi
19-
src/napkin_diagnostics.cmx : src/napkin_token.cmx src/napkin_grammar.cmx \
20-
src/napkin_diagnostics_printing_utils.cmx src/napkin_diagnostics.cmi
21-
src/napkin_diagnostics.cmi : src/napkin_token.cmx src/napkin_grammar.cmx
22-
src/napkin_diagnostics_printing_utils.cmx :
23-
src/napkin_doc.cmx : src/napkin_minibuffer.cmx src/napkin_doc.cmi
24-
src/napkin_doc.cmi :
25-
src/napkin_driver.cmx : src/napkin_printer.cmx src/napkin_parser.cmx \
26-
src/napkin_io.cmx src/napkin_diagnostics.cmx src/napkin_core.cmx \
27-
src/napkin_comment.cmx src/napkin_driver.cmi
28-
src/napkin_driver.cmi : src/napkin_diagnostics.cmi src/napkin_comment.cmi
29-
src/napkin_driver_binary.cmx : src/napkin_driver.cmx \
30-
src/napkin_driver_binary.cmi
31-
src/napkin_driver_binary.cmi : src/napkin_driver.cmi
32-
src/napkin_driver_ml_parser.cmx : src/napkin_io.cmx src/napkin_driver.cmx \
33-
src/napkin_comment.cmx src/napkin_ast_conversion.cmx \
34-
src/napkin_driver_ml_parser.cmi
35-
src/napkin_driver_ml_parser.cmi : src/napkin_driver.cmi \
36-
src/napkin_comment.cmi
37-
src/napkin_driver_reason_binary.cmx : src/napkin_scanner.cmx \
38-
src/napkin_io.cmx src/napkin_driver.cmx src/napkin_comment.cmx \
39-
src/napkin_ast_conversion.cmx src/napkin_driver_reason_binary.cmi
40-
src/napkin_driver_reason_binary.cmi : src/napkin_token.cmx \
41-
src/napkin_driver.cmi
42-
src/napkin_grammar.cmx : src/napkin_token.cmx
43-
src/napkin_io.cmx : src/napkin_io.cmi
44-
src/napkin_io.cmi :
45-
src/napkin_js_ffi.cmx :
46-
src/napkin_minibuffer.cmx : src/napkin_minibuffer.cmi
47-
src/napkin_minibuffer.cmi :
48-
src/napkin_multi_printer.cmx : src/napkin_printer.cmx src/napkin_io.cmx \
49-
src/napkin_driver_reason_binary.cmx src/napkin_driver_ml_parser.cmx \
50-
src/napkin_driver.cmx src/napkin_diagnostics.cmx \
51-
src/napkin_ast_conversion.cmx src/napkin_multi_printer.cmi
52-
src/napkin_multi_printer.cmi :
53-
src/napkin_outcome_printer.cmx : src/napkin_token.cmx src/napkin_doc.cmx \
54-
src/napkin_outcome_printer.cmi
55-
src/napkin_outcome_printer.cmi :
56-
src/napkin_parens.cmx : src/napkin_parsetree_viewer.cmx \
57-
src/napkin_parens.cmi
58-
src/napkin_parens.cmi :
59-
src/napkin_parser.cmx : src/napkin_token.cmx src/napkin_scanner.cmx \
60-
src/napkin_reporting.cmx src/napkin_grammar.cmx \
61-
src/napkin_diagnostics.cmx src/napkin_comment.cmx src/napkin_parser.cmi
62-
src/napkin_parser.cmi : src/napkin_token.cmx src/napkin_scanner.cmi \
63-
src/napkin_reporting.cmx src/napkin_grammar.cmx \
64-
src/napkin_diagnostics.cmi src/napkin_comment.cmi
65-
src/napkin_parsetree_viewer.cmx : src/napkin_parsetree_viewer.cmi
66-
src/napkin_parsetree_viewer.cmi :
67-
src/napkin_printer.cmx : src/napkin_token.cmx \
68-
src/napkin_parsetree_viewer.cmx src/napkin_parens.cmx src/napkin_doc.cmx \
69-
src/napkin_comments_table.cmx src/napkin_comment.cmx \
70-
src/napkin_printer.cmi
71-
src/napkin_printer.cmi : src/napkin_doc.cmi src/napkin_comments_table.cmx \
72-
src/napkin_comment.cmi
73-
src/napkin_reporting.cmx : src/napkin_token.cmx src/napkin_grammar.cmx
74-
src/napkin_scanner.cmx : src/napkin_token.cmx src/napkin_diagnostics.cmx \
75-
src/napkin_comment.cmx src/napkin_character_codes.cmx \
76-
src/napkin_scanner.cmi
77-
src/napkin_scanner.cmi : src/napkin_token.cmx src/napkin_diagnostics.cmi
78-
src/napkin_token.cmx : src/napkin_comment.cmx src/napkin_character_codes.cmx
79-
tests/napkin_diff.cmx : tests/napkin_diff.cmi
80-
tests/napkin_diff.cmi :
81-
tests/napkin_test.cmx : src/napkin_token.cmx src/napkin_parser.cmx \
82-
src/napkin_outcome_printer.cmx src/napkin_multi_printer.cmx \
83-
src/napkin_io.cmx src/napkin_driver.cmx tests/napkin_diff.cmx
1+
src/res_ast_conversion.cmx : src/res_ast_conversion.cmi
2+
src/res_ast_conversion.cmi :
3+
src/res_ast_debugger.cmx : src/res_driver.cmx src/res_doc.cmx \
4+
src/res_ast_debugger.cmi
5+
src/res_ast_debugger.cmi : src/res_driver.cmi
6+
src/res_character_codes.cmx :
7+
src/res_cli.cmx : src/res_driver_reason_binary.cmx \
8+
src/res_driver_ml_parser.cmx src/res_driver_binary.cmx src/res_driver.cmx \
9+
src/res_ast_debugger.cmx
10+
src/res_comment.cmx : src/res_comment.cmi
11+
src/res_comment.cmi :
12+
src/res_comments_table.cmx : src/res_parsetree_viewer.cmx src/res_doc.cmx \
13+
src/res_comment.cmx
14+
src/res_core.cmx : src/res_token.cmx src/res_scanner.cmx src/res_printer.cmx \
15+
src/res_parser.cmx src/res_js_ffi.cmx src/res_grammar.cmx src/res_doc.cmx \
16+
src/res_diagnostics.cmx src/res_comments_table.cmx src/res_core.cmi
17+
src/res_core.cmi : src/res_parser.cmi
18+
src/res_diagnostics.cmx : src/res_token.cmx src/res_grammar.cmx \
19+
src/res_diagnostics_printing_utils.cmx src/res_diagnostics.cmi
20+
src/res_diagnostics.cmi : src/res_token.cmx src/res_grammar.cmx
21+
src/res_diagnostics_printing_utils.cmx :
22+
src/res_doc.cmx : src/res_minibuffer.cmx src/res_doc.cmi
23+
src/res_doc.cmi :
24+
src/res_driver.cmx : src/res_printer.cmx src/res_parser.cmx src/res_io.cmx \
25+
src/res_diagnostics.cmx src/res_core.cmx src/res_comment.cmx \
26+
src/res_driver.cmi
27+
src/res_driver.cmi : src/res_diagnostics.cmi src/res_comment.cmi
28+
src/res_driver_binary.cmx : src/res_driver.cmx src/res_driver_binary.cmi
29+
src/res_driver_binary.cmi : src/res_driver.cmi
30+
src/res_driver_ml_parser.cmx : src/res_io.cmx src/res_driver.cmx \
31+
src/res_comment.cmx src/res_ast_conversion.cmx \
32+
src/res_driver_ml_parser.cmi
33+
src/res_driver_ml_parser.cmi : src/res_driver.cmi src/res_comment.cmi
34+
src/res_driver_reason_binary.cmx : src/res_scanner.cmx src/res_io.cmx \
35+
src/res_driver.cmx src/res_comment.cmx src/res_ast_conversion.cmx \
36+
src/res_driver_reason_binary.cmi
37+
src/res_driver_reason_binary.cmi : src/res_token.cmx src/res_driver.cmi
38+
src/res_grammar.cmx : src/res_token.cmx
39+
src/res_io.cmx : src/res_io.cmi
40+
src/res_io.cmi :
41+
src/res_js_ffi.cmx :
42+
src/res_minibuffer.cmx : src/res_minibuffer.cmi
43+
src/res_minibuffer.cmi :
44+
src/res_multi_printer.cmx : src/res_printer.cmx src/res_io.cmx \
45+
src/res_driver_reason_binary.cmx src/res_driver_ml_parser.cmx \
46+
src/res_driver.cmx src/res_diagnostics.cmx src/res_ast_conversion.cmx \
47+
src/res_multi_printer.cmi
48+
src/res_multi_printer.cmi :
49+
src/res_outcome_printer.cmx : src/res_token.cmx src/res_doc.cmx \
50+
src/res_outcome_printer.cmi
51+
src/res_outcome_printer.cmi :
52+
src/res_parens.cmx : src/res_parsetree_viewer.cmx src/res_parens.cmi
53+
src/res_parens.cmi :
54+
src/res_parser.cmx : src/res_token.cmx src/res_scanner.cmx \
55+
src/res_reporting.cmx src/res_grammar.cmx src/res_diagnostics.cmx \
56+
src/res_comment.cmx src/res_parser.cmi
57+
src/res_parser.cmi : src/res_token.cmx src/res_scanner.cmi \
58+
src/res_reporting.cmx src/res_grammar.cmx src/res_diagnostics.cmi \
59+
src/res_comment.cmi
60+
src/res_parsetree_viewer.cmx : src/res_parsetree_viewer.cmi
61+
src/res_parsetree_viewer.cmi :
62+
src/res_printer.cmx : src/res_token.cmx src/res_parsetree_viewer.cmx \
63+
src/res_parens.cmx src/res_doc.cmx src/res_comments_table.cmx \
64+
src/res_comment.cmx src/res_printer.cmi
65+
src/res_printer.cmi : src/res_doc.cmi src/res_comments_table.cmx \
66+
src/res_comment.cmi
67+
src/res_reporting.cmx : src/res_token.cmx src/res_grammar.cmx
68+
src/res_scanner.cmx : src/res_token.cmx src/res_diagnostics.cmx \
69+
src/res_comment.cmx src/res_character_codes.cmx src/res_scanner.cmi
70+
src/res_scanner.cmi : src/res_token.cmx src/res_diagnostics.cmi
71+
src/res_token.cmx : src/res_comment.cmx src/res_character_codes.cmx
72+
tests/napkin_test.cmx : src/res_token.cmx src/res_parser.cmx \
73+
src/res_outcome_printer.cmx src/res_multi_printer.cmx src/res_io.cmx \
74+
src/res_driver.cmx tests/res_diff.cmx
75+
tests/res_diff.cmx : tests/res_diff.cmi
76+
tests/res_diff.cmi :
77+
tests/res_test.cmx : src/res_token.cmx src/res_parser.cmx \
78+
src/res_outcome_printer.cmx src/res_multi_printer.cmx src/res_io.cmx \
79+
src/res_driver.cmx tests/res_diff.cmx

syntax/.gitignore

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,12 @@ node_modules
66
*.cm*
77
*.o
88
lib/bs
9-
lib/napkinscript.exe
9+
lib/rescript.exe
1010
lib/refmt.exe
1111
lib/test.exe
1212
lib/bench.exe
13-
Napkinscript2.ml
14-
./lib/napkinscript2.exe
15-
./lib/Napkinscript.ml
16-
lib/napkinscript.ml
13+
Rescript2.ml
14+
./lib/rescript2.exe
15+
lib/Rescript.ml
1716
.vscode/settings.json
1817
# each person has its own preferences

syntax/Makefile

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -11,49 +11,49 @@ depend:
1111
$(OCAMLDEP) -native -I tests -I src src/*.ml src/*.mli tests/*.ml tests/*.mli > .depend
1212

1313
API_FILES = \
14-
src/napkin_io.cmx\
15-
src/napkin_minibuffer.cmx\
16-
src/napkin_doc.cmx\
17-
src/napkin_character_codes.cmx\
18-
src/napkin_comment.cmx\
19-
src/napkin_token.cmx\
20-
src/napkin_grammar.cmx\
21-
src/napkin_reporting.cmx\
22-
src/napkin_diagnostics_printing_utils.cmx \
23-
src/napkin_diagnostics.cmx\
24-
src/napkin_parsetree_viewer.cmx\
25-
src/napkin_parens.cmx\
26-
src/napkin_comments_table.cmx\
27-
src/napkin_printer.cmx\
28-
src/napkin_scanner.cmx\
29-
src/napkin_js_ffi.cmx\
30-
src/napkin_parser.cmx\
31-
src/napkin_core.cmx\
32-
src/napkin_driver.cmx \
33-
src/napkin_ast_conversion.cmx \
34-
src/napkin_driver_ml_parser.cmx \
35-
src/napkin_driver_reason_binary.cmx \
36-
src/napkin_driver_binary.cmx \
37-
src/napkin_ast_debugger.cmx \
38-
src/napkin_outcome_printer.cmx \
39-
src/napkin_multi_printer.cmx
40-
41-
CLI_FILES = $(API_FILES) src/napkin_cli.cmx
42-
43-
TEST_FILES = $(API_FILES) tests/napkin_diff.cmx tests/napkin_test.cmx
14+
src/res_io.cmx\
15+
src/res_minibuffer.cmx\
16+
src/res_doc.cmx\
17+
src/res_character_codes.cmx\
18+
src/res_comment.cmx\
19+
src/res_token.cmx\
20+
src/res_grammar.cmx\
21+
src/res_reporting.cmx\
22+
src/res_diagnostics_printing_utils.cmx \
23+
src/res_diagnostics.cmx\
24+
src/res_parsetree_viewer.cmx\
25+
src/res_parens.cmx\
26+
src/res_comments_table.cmx\
27+
src/res_printer.cmx\
28+
src/res_scanner.cmx\
29+
src/res_js_ffi.cmx\
30+
src/res_parser.cmx\
31+
src/res_core.cmx\
32+
src/res_driver.cmx \
33+
src/res_ast_conversion.cmx \
34+
src/res_driver_ml_parser.cmx \
35+
src/res_driver_reason_binary.cmx \
36+
src/res_driver_binary.cmx \
37+
src/res_ast_debugger.cmx \
38+
src/res_outcome_printer.cmx \
39+
src/res_multi_printer.cmx
40+
41+
CLI_FILES = $(API_FILES) src/res_cli.cmx
42+
43+
TEST_FILES = $(API_FILES) tests/res_diff.cmx tests/res_test.cmx
4444

4545
.DEFAULT_GOAL := build-native
4646

47-
lib/napkinscript.exe: $(CLI_FILES)
48-
$(OCAMLOPT) $(OCAMLFLAGS) -O2 -o ./lib/napkinscript.exe -I +compiler-libs ocamlcommon.cmxa -I src $(CLI_FILES)
47+
lib/rescript.exe: $(CLI_FILES)
48+
$(OCAMLOPT) $(OCAMLFLAGS) -O2 -o ./lib/rescript.exe -I +compiler-libs ocamlcommon.cmxa -I src $(CLI_FILES)
4949

50-
build-native: lib/refmt.exe lib/napkinscript.exe depend
50+
build-native: lib/refmt.exe lib/rescript.exe depend
5151

5252
bootstrap: build-native
53-
ocaml unix.cma ./scripts/bspack.ml -bs-main Napkin_cli -I src -o ./lib/napkinscript.ml
54-
./lib/napkinscript.exe -parse ml -print ns ./lib/Napkinscript.ml > ./lib/Napkinscript2.ml
55-
$(OCAMLOPT) -w a -pp "./lib/napkinscript.exe -print binary" -O2 -o ./lib/napkinscript2.exe -I +compiler-libs ocamlcommon.cmxa -I lib ./lib/Napkinscript2.ml
56-
mv ./lib/napkinscript2.exe ./lib/napkinscript.exe
53+
ocaml unix.cma ./scripts/bspack.ml -bs-main Res_cli -I src -o ./lib/rescript.ml
54+
./lib/rescript.exe -parse ml -print ns ./lib/Rescript.ml > ./lib/Rescript2.ml
55+
$(OCAMLOPT) -w a -pp "./lib/rescript.exe -print binary" -O2 -o ./lib/rescript2.exe -I +compiler-libs ocamlcommon.cmxa -I lib ./lib/Rescript2.ml
56+
mv ./lib/rescript2.exe ./lib/rescript.exe
5757

5858
lib/refmt.exe: vendor/refmt_main3.ml
5959
$(OCAMLOPT) -w a -O2 -I vendor -I +compiler-libs ocamlcommon.cmxa -o lib/refmt.exe vendor/refmt_main3.ml
@@ -91,7 +91,7 @@ clean:
9191
rm -rf benchmarks/*.cm*
9292
rm -rf benchmarks/*.o
9393
rm -rf lib/bench.exe
94-
rm -rf lib/napkinscript.exe
94+
rm -rf lib/rescript.exe
9595
rm -rf lib/test.exe
9696
git clean -dfx src
9797
.PHONY: clean test roundtrip-test termination dce exception reanalyze bootstrap build-native

syntax/README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
# BuckleScript New Syntax ![Tests](https://github.com/BuckleScript/syntax/workflows/CI/badge.svg)
1+
# ReScript New Syntax ![Tests](https://github.com/BuckleScript/syntax/workflows/CI/badge.svg)
22

33
Blog post: https://reasonml.org/blog/bucklescript-8-1-new-syntax
44

55
Documentation: https://reasonml.org/docs/reason-compiler/latest/new-bucklescript-syntax
66

7-
This repo is the source of truth for the new BuckleScript parser & printer. Issues go here.
7+
This repo is the source of truth for the new ReScript parser & printer. Issues go here.
88

99
**You don't need this repo to use the new syntax**. This comes with BuckleScript 8.1. This repo is for syntax contributors.
1010

@@ -38,7 +38,7 @@ npm install
3838
make # or: make -j9 for faster build
3939
```
4040

41-
This will produce the final binary `lib/napkinscript.exe`. "NapkinScript" is the placeholder name for the syntax. We'll change this later to avoid confusion.
41+
This will produce the final binary `lib/rescript.exe` used for testing
4242

4343
First build is super slow because we're also building our vendored `refmt` (only used for the conversion tool). Subsequent builds should be <2s. If not, please file an issue (build speed is a priority).
4444

@@ -67,10 +67,10 @@ Update jest snapshots:
6767
Debug a file:
6868
```sh
6969
# write code in test.js
70-
./lib/napkinscript.exe -print ns test.js # test printer
71-
./lib/napkinscript.exe -print ast test.js # print ast
72-
./lib/napkinscript.exe -print ml test.js # show ocaml code
73-
./lib/napkinscript.exe -print ns -width 80 test.js # test printer and change default print width
70+
./lib/rescript.exe test.js # test printer
71+
./lib/rescript.exe -print ast test.js # print ast
72+
./lib/rescript.exe -print ml test.js # show ocaml code
73+
./lib/rescript.exe -print res -width 80 test.js # test printer and change default print width
7474
```
7575

7676
Benchmark:
@@ -87,16 +87,16 @@ make bench
8787
In a random project of yours:
8888

8989
```sh
90-
node_modules/.bin/bsrefmt --print=binary myFile.re | your/path/to/napkinscript.exe -parse reasonBinary -print ns > myFile.res
91-
node_modules/.bin/bsrefmt --print=binary --interface=true myFile.rei | your/path/to/napkinscript.exe -parse reasonBinary -print ns -interface > myFile.resi
90+
node_modules/.bin/bsrefmt --print=binary myFile.re | your/path/to/rescript.exe -parse reasonBinary -print ns > myFile.res
91+
node_modules/.bin/bsrefmt --print=binary --interface=true myFile.rei | your/path/to/rescript.exe -parse reasonBinary -print ns -interface > myFile.resi
9292
mv myFile.re myFile.re.backup # random backup name. Could be anything
9393
```
9494

9595
### Example API usage
9696

9797
```
98-
module Parser = NapkinscriptCore.Parser
99-
module Diagnostics = NapkinscriptCore.Diagnostics
98+
module Parser = ResCore.Parser
99+
module Diagnostics = ResCore.Diagnostics
100100
101101
let filename = "foo.res"
102102
let src = FS.readFile filename
@@ -107,8 +107,8 @@ let p =
107107
(* if you want to target the printer use: let mode = Parser.Default in*)
108108
Parser.make ~mode src filename
109109
110-
let structure = NapkinscriptParser.parseImplementation p
111-
let signature = NapkinscriptParser.parseInterface p
110+
let structure = ResParser.parseImplementation p
111+
let signature = ResParser.parseInterface p
112112
113113
let () = match p.Parser.diagnostics with
114114
| [] -> () (* no problems *)

0 commit comments

Comments
 (0)