Commit graph

173 commits

Author SHA1 Message Date
JRI98
a332acd7bf
Remove unused malformed related variants 2024-11-14 10:23:06 +00:00
Agus Zubiaga
bc0cfef128
Restore UNNCESSARY DEFINITION errors for top-level defs
Non-top-level defs are already covered
2024-11-07 18:54:25 -03:00
Agus Zubiaga
46e808dc3a
Refactor if-let to let-else-continue 2024-11-07 18:54:24 -03:00
Agus Zubiaga
c9f001b041
Allow ignored defs with an effectful RHS 2024-11-07 18:54:22 -03:00
Agus Zubiaga
6e6382ab23
Canonicalize and constrain statement expr in purity inference mode 2024-11-07 18:54:15 -03:00
Agus Zubiaga
2cce5ad023
Allow unsuffixed statements in parser
Moves the "STATEMENT AFTER EXPRESSION" error from the parser to canonicalization.
We'll later use this to allow this case in effectful functions.
2024-11-07 18:54:14 -03:00
Agus Zubiaga
3cef756559
Add fx var to Type::Function et al 2024-11-07 18:54:12 -03:00
Agus Zubiaga
75177c9c98
Rename effect_type to fx_type and add to FunctionDef 2024-11-07 18:54:12 -03:00
Agus Zubiaga
386a5055ee
Add effect_type to can ClosureData 2024-11-07 18:54:11 -03:00
Sam Mohr
66cc96edbb
Address PR comments from @ayazhafiz 2024-10-29 15:58:35 -07:00
Sam Mohr
346a2d9467
Simplify tail-call checks 2024-10-26 16:29:14 -07:00
Sam Mohr
a9cd6ac5fa
Fix tailcalling 2024-10-26 06:48:01 -07:00
Sam Mohr
6a2ffb2f5a
Implement most of the recent round of PR feedback 2024-10-26 04:17:50 -07:00
Sam Mohr
ca762127e5
Fix formatting and clippy errors 2024-10-24 23:11:20 -07:00
Sam Mohr
7518a2c5ab
Address PR comments, add syntax tests 2024-10-21 03:06:43 -07:00
Sam Mohr
b3e60f9d3a
Implement return keyword 2024-10-20 08:58:59 -07:00
Anton-4
3c679f6338
Merge branch 'main' into lower-module-params 2024-08-30 16:29:46 +02:00
Agus Zubiaga
80770fae11
Handle aliases at call instead 2024-08-27 02:51:23 -03:00
Agus Zubiaga
36df43fadc
Handle simple aliased fn in params value def 2024-08-27 01:27:54 -03:00
Agus Zubiaga
b667753a32
Capture import params def 2024-08-26 23:31:42 -03:00
Sam Mohr
12df3a04de
Merge attempt 2024-08-19 23:34:05 -07:00
Agus Zubiaga
e80e3e5b2d
Convert top-level value def to fn taking params 2024-08-17 11:21:21 -03:00
Agus Zubiaga
7a8b9f7d6d
Add variable to ParamsVar 2024-08-16 20:54:16 -03:00
Sam Mohr
7e72541a79 Merge branch 'main' into builtin-task 2024-08-12 23:12:38 -07:00
Agus Zubiaga
762799052e
Merge branch 'main' into typecheck-module-params 2024-08-07 18:55:33 -03:00
Sam Mohr
cb8040f629
Ignore underscore-prefixed fields in record builders 2024-08-06 22:49:35 -07:00
Sam Mohr
8288af3156
Merge branch 'main' into builtin-task 2024-07-31 13:36:32 -07:00
Aidan
ddb58a2cd5 spaces_middle -> lines_between 2024-07-29 13:06:48 -04:00
Aidan
91fdd903e7 comment -> spaces_middle 2024-07-29 10:04:32 -04:00
Luke Boswell
b489c44b19
Merge remote-tracking branch 'remote/main' into builtin-task 2024-07-19 19:51:50 +10:00
Agus Zubiaga
0cbb352a89
Move unexpected params warning to solve 2024-07-06 21:36:26 -03:00
Agus Zubiaga
63e722f61d
Rename symbol and module lookup struts 2024-07-06 11:42:53 -03:00
Agus Zubiaga
922b1c44ef
Report missing params 2024-07-02 11:10:00 -03:00
Agus Zubiaga
bc6a84a215
Report unexpected params 2024-07-02 11:09:59 -03:00
Agus Zubiaga
db76ab4015
Replace params in abilities TODOs with unimplemented! 2024-07-02 11:09:59 -03:00
Agus Zubiaga
90c7745989
Capture import params location for better errors 2024-07-02 11:09:56 -03:00
Agus Zubiaga
5ec4b042bb
Constrain and solve import params
No reporting yet
2024-07-02 04:10:46 -03:00
Agus Zubiaga
c541dd5747
Do not report import params symbol as unused 2024-07-02 04:10:46 -03:00
Agus Zubiaga
8604bb23b2
Include param's record references 2024-07-02 04:10:46 -03:00
Agus Zubiaga
674adf1fad
Wrap import params expr so we can constrain later 2024-07-02 04:10:46 -03:00
Agus Zubiaga
5aebb7b570
Unqualified lookups return params 2024-07-02 04:10:44 -03:00
Agus Zubiaga
9d26adb228
Qualified lookups return params 2024-07-02 04:10:44 -03:00
Agus Zubiaga
96e2d32fa6
Canonicalize import params record 2024-07-02 04:10:44 -03:00
Agus Zubiaga
5e2ccdbfd5
Import params pending def 2024-07-02 04:10:44 -03:00
Sam Mohr
700c7ae9aa
Add Task as a built-in module/type 2024-06-25 00:03:56 -07:00
Anton-4
05a61e2210
clippy + fmt 2024-06-19 12:34:10 +02:00
Richard Feldman
8357bd8c91
Revise errors for undeclared type vars in aliases 2024-05-12 21:20:11 -04:00
Agus Zubiaga
8a25e4aac4
Handle optional annotation in ingested files when canonicalizing 2024-05-05 16:57:56 -03:00
Anton-4
f7011c8e33
Merge pull request #6644 from roc-lang/rust-1-76-0-upgrade
Rust 1.76.0 upgrade
2024-05-03 07:25:19 +02:00
Agus Zubiaga
057a18573a
New module header
Implements the new `module` header syntax as described in "module and package changes" [1]:

```
module [Request, Response, req]
```

The old syntax should still work fine, and is automatically upgraded to the new one
when running `roc format`.

[1] https://docs.google.com/document/d/1E_77fO-44BtoBtXoVeWyGh1xN2KRTWTu8q6i25RNNx0/edit
2024-05-01 10:39:12 -03:00