Commit graph

52 commits

Author SHA1 Message Date
Shunsuke Shibayama
3f66981c5c refactor: py_compatible -> py_compat 2023-03-30 00:43:30 +09:00
Shunsuke Shibayama
d039e21628 feat: fix bugs 2023-03-29 21:03:07 +09:00
Shunsuke Shibayama
37ef01c89a feat: comparison narrowing 2023-03-29 15:35:45 +09:00
Shunsuke Shibayama
5876c24830 feat: isinstance narrowing 2023-03-29 11:24:53 +09:00
Shunsuke Shibayama
ccf02405d8 feat: add ==/!= narrowing 2023-03-29 01:32:29 +09:00
Shunsuke Shibayama
fc3fe5de0c feat: implement type-narrowing
* `in` narrowing
2023-03-28 02:00:42 +09:00
Shunsuke Shibayama
bf8cf61c7e refactor: use if let instead of option_enum_unwrap 2023-03-25 10:23:58 +09:00
Shunsuke Shibayama
0079aed860 fix: sub-unification bugs 2023-03-22 15:38:47 +09:00
Shunsuke Shibayama
b318395a32 fix: avoid infinite recursion bugs 2023-03-22 01:28:22 +09:00
Shunsuke Shibayama
40762bf8cf fix: union/intersection types bugs 2023-03-20 14:48:34 +09:00
Shunsuke Shibayama
98a1a0292e fix: structural types bugs 2023-03-20 13:43:25 +09:00
Shunsuke Shibayama
bda30ecbe2 build: update version (nightly) 2023-03-17 10:33:32 +09:00
Shunsuke Shibayama
2afd47a24a fix: change ParamTy structure 2023-03-17 00:11:30 +09:00
Shunsuke Shibayama
29b725423d fix: internal representation of user-defined types 2023-03-16 01:00:13 +09:00
Shunsuke Shibayama
5d8506b548 fix: eliminate unwrap(), todo!() 2023-03-08 09:20:06 +09:00
Shunsuke Shibayama
1293fa58c8 refactor: Reorderer -> ASTLinker, Linker -> HIRLinker 2023-03-07 20:18:30 +09:00
Shunsuke Shibayama
a73a6b8022 fix: get_singular_ctx_* -> get_singular_ctxs_* 2023-03-07 19:06:21 +09:00
Shunsuke Shibayama
fa2919e824 fix: bugs with enumeration of vars 2023-03-06 19:44:49 +09:00
Shunsuke Shibayama
d92f5284c8 feat: add restricted visibility syntax 2023-03-05 02:19:18 +09:00
Shunsuke Shibayama
309bb06db8 fix: a minor bug 2023-03-03 16:14:20 +09:00
Shunsuke Shibayama
3d310714f1 feat: support var-args lambda function 2023-03-03 16:01:20 +09:00
Shunsuke Shibayama
5c6ea316f5 chore: remove unnecessary params 2023-03-03 10:01:05 +09:00
Shunsuke Shibayama
dd36942256 feat: implement some typevar-related syntax sugar
* add `TypeBoundSpec::Omitted`
* add `TypeAppArgsKind`
2023-03-01 23:35:19 +09:00
Shunsuke Shibayama
af575aba6c Update lower.rs 2023-02-27 12:43:34 +09:00
Shunsuke Shibayama
536872b735 refactor: remove unnecessary fields (commas) in structs 2023-02-27 12:18:34 +09:00
Shunsuke Shibayama
1aa83f140a chore(els): improve signature help 2023-02-27 12:01:09 +09:00
Shunsuke Shibayama
d459151cd0 chore: improve error messages 2023-02-26 12:01:17 +09:00
Shunsuke Shibayama
0ff47efeb3 chore: improve trait impl error messages 2023-02-26 01:57:45 +09:00
Shunsuke Shibayama
78e3ac4f26 fix: trait impl checking bug 2023-02-26 01:47:50 +09:00
Shunsuke Shibayama
0f0d042020 fix: remove unnecessary type checkings 2023-02-25 17:14:38 +09:00
Shunsuke Shibayama
c9dda183ab feat: implement Structural types 2023-02-23 01:37:54 +09:00
Shunsuke Shibayama
aa2cea60dd fix: quantified subroutine subtyping bugs 2023-02-22 02:40:51 +09:00
Shunsuke Shibayama
4dcca2b06d fix(typechecker): type generalization & dereference bugs
* `Context::subtype_of` now has `allow_cast` param. If this is `false`, cast-aware comparisons are not performed.
2023-02-21 17:04:52 +09:00
Shunsuke Shibayama
6a607870f3 fix: type quantification bugs 2023-02-20 20:38:36 +09:00
Shunsuke Shibayama
51d84fff9e fix: heterogenous array specifying 2023-02-20 00:08:35 +09:00
Shunsuke Shibayama
7103c9f3bb feat(els): display type bounds as inlay hints 2023-02-19 02:39:03 +09:00
Shunsuke Shibayama
b4b02fd0f6 feat: implement methods declaration syntax 2023-02-17 01:26:04 +09:00
Shunsuke Shibayama
5f6c8a3b2b perf: reduce performing of .loc() 2023-02-15 03:27:08 +09:00
Shunsuke Shibayama
5d90029f09 perf: delaying execution of .loc() 2023-02-15 01:08:49 +09:00
Shunsuke Shibayama
2574de3a68 fix: some bugs
Fixed:

* argument `_` of anonymous function disappears
* els crashes
* incomplete `.update!` codegen
2023-02-13 15:06:50 +09:00
Shunsuke Shibayama
af0fff8226 fix(compiler): runtime type matching system 2023-02-12 01:34:12 +09:00
Shunsuke Shibayama
06b4df6568 fix(REPL): suppress unused vars warn in REPL 2023-02-08 00:12:52 +09:00
Shunsuke Shibayama
f5a3d32728 WIP 2023-02-06 17:04:12 +09:00
Shunsuke Shibayama
d8f4d14abd feat(parser): add type_spec_to_expr 2023-02-06 12:04:15 +09:00
Shunsuke Shibayama
d4d239bd4a fix: #386 2023-02-06 03:34:26 +09:00
Shunsuke Shibayama
c7096b17f1 Merge branch 'main' into feature-var-params-fn 2023-02-01 02:05:09 +09:00
Shunsuke Shibayama
0019147007 Fix: doc comments cannot be used in method defs 2023-01-27 09:46:59 +09:00
Shunsuke Shibayama
23a7e2caf3 Add user-defined var-params function 2023-01-26 01:20:35 +09:00
Shunsuke Shibayama
afeec08d6c Improve inlay hint 2023-01-19 00:06:13 +09:00
Shunsuke Shibayama
46c6bd8a86 Update lower.rs 2023-01-18 03:47:57 +09:00