Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite #122

Draft
wants to merge 30 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
376c686
Rewrite
samestep Dec 26, 2023
c7676b3
Bring back VS Code extension from before #85
samestep Dec 29, 2023
28eed89
Rename `packages/core` dir to `packages/rose`
samestep Dec 29, 2023
08c379d
Add a `rose` binary
samestep Dec 29, 2023
31c7b97
Revise the syntax
samestep Dec 30, 2023
7d18dbb
Implement initial `rose build` command
samestep Dec 30, 2023
e5fbe09
Auto-close double quotes
samestep Jan 2, 2024
2949941
Sketch out autodiff types
samestep Jan 2, 2024
c7f6e58
Flesh out stdlib a bit more
samestep Jan 2, 2024
547f843
Correct `Neg` instances
samestep Jan 2, 2024
1ab9911
Lex variable names with leading underscores
samestep Jan 2, 2024
cc3f966
Lex numbers before identifiers
samestep Jan 2, 2024
a7cc043
Define some array functions
samestep Jan 2, 2024
1447fa6
Fix typos
samestep Jan 2, 2024
37e756e
Define custom transpose for `new` and `map`
samestep Jan 2, 2024
e3662b5
Lex via Moo
samestep Jan 2, 2024
b159aa4
Remove unnecessary parens
samestep Jan 2, 2024
97e29c9
Replace assignment syntax with `set` function
samestep Jan 2, 2024
e141be8
Parse `use` and transform into `import`
samestep Jan 3, 2024
6f82b50
Use `*.js` prefix
samestep Jan 3, 2024
8464ab8
Throw error on extra closing bracket
samestep Jan 3, 2024
26b2053
Correctly lex multiline string literals
samestep Jan 3, 2024
aabdde2
Parse infix declarations
samestep Jan 3, 2024
289d668
Backtickify source instead of `JSON.stringify`
samestep Jan 3, 2024
2d3be12
Define types for syntax tree
samestep Jan 4, 2024
fbfb8cf
Tweak the language
samestep Jan 10, 2024
e8c5193
Use Prettier for JS
samestep Jan 29, 2024
46e7eb9
Improve autodiff type theory
samestep Jan 30, 2024
2df0bc0
Merge branch 'main' into rewrite
samestep Jan 30, 2024
81e3189
Parse basic functions
samestep Jan 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
.DS_Store
*.tgz
/.cargo/
/packages/core/README.md
/packages/wasm/wbg/
/target/
bindings/
*.vsix
/packages/rose/README.md
/packages/vscode/*.png
dist/
node_modules/
9 changes: 1 addition & 8 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,8 +1 @@
{
"recommendations": [
"esbenp.prettier-vscode",
"rust-lang.rust-analyzer",
"tamasfe.even-better-toml",
"timonwong.shellcheck"
]
}
{ "recommendations": ["esbenp.prettier-vscode", "timonwong.shellcheck"] }
5 changes: 1 addition & 4 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,7 @@
"[jsonc]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[markdown]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[typescriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[yaml]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },

"editor.formatOnSave": true,
"evenBetterToml.formatter.alignComments": false,
"rust-analyzer.check.command": "clippy"
"editor.formatOnSave": true
}
19 changes: 14 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ Make sure to have these tools installed:
- [Git][]
- [Make][]
- [Node][]
- [Rust][]

## Setup

Expand Down Expand Up @@ -61,9 +60,8 @@ Sometimes old build artifacts can hide errors. To clean your build:
make clean
```

This doesn't clean everything; it keeps around downloaded files and Rust's
`target` directory. You should be able to run `make all` right after it without
an Internet connection.
This doesn't clean everything; it keeps around downloaded files. You should be
able to run `make all` right after it without an Internet connection.

## Site

Expand All @@ -79,7 +77,18 @@ Or, if you want to host on your local network, e.g. to test on your phone:
make site-deps && npm run --workspace=@rose-lang/site dev -- --host
```

## VS Code

The VS Code extension is built as part of `make` or `make all`, but you can also
just build it by itself:

```sh
make vscode
```

Then `packages/vscode` will contain a `*.vsix` file that you can install in VS
Code by right-clicking it and clicking the **Install Extension VSIX** button.

[git]: https://git-scm.com/downloads
[make]: https://en.wikipedia.org/wiki/Make_(software)
[node]: https://nodejs.org/en/download
[rust]: https://www.rust-lang.org/tools/install
Loading
Loading