pca006132
|
3c930ae9ab
|
fixed #12
|
2021-09-20 15:51:42 +08:00 |
ychenfo
|
35a94a8fc0
|
nac3core: fix broken test
|
2021-09-20 01:58:07 +08:00 |
pca006132
|
4939ff4dbd
|
simple implementation of classes
|
2021-09-19 22:54:06 +08:00 |
ychenfo
|
2b74895b71
|
nac3standalone, nac3core: can use top level composer to compile and run mandelbrot
|
2021-09-19 16:19:49 +08:00 |
ychenfo
|
1b0f3d07cc
|
nac3core: top level fix field of funinstance
|
2021-09-17 22:32:13 +08:00 |
ychenfo
|
ed5dfd4100
|
nac3core: top level inferencer call with type var more test
|
2021-09-17 16:31:33 +08:00 |
ychenfo
|
41e63f24d0
|
nac3core: top level add test utility to print stringfied type
|
2021-09-17 16:31:21 +08:00 |
ychenfo
|
d0df705c5a
|
nac3core: toplevel type var test
|
2021-09-17 00:39:42 +08:00 |
ychenfo
|
a0662c58e6
|
nac3core: fix recursive top level function call
|
2021-09-17 00:39:42 +08:00 |
ychenfo
|
526c18bda0
|
nac3core: top level inferencer without type var should be ok
|
2021-09-17 00:39:42 +08:00 |
ychenfo
|
a10ab81ee7
|
toplevel composer: add ast to class methods, suppress warning
|
2021-09-17 00:39:42 +08:00 |
pca006132
|
f5353419ac
|
codegen: minimized lock holding time
The previous way of holding the lock would prohibit multithread code
generation for llvm
|
2021-09-16 21:36:42 +08:00 |
pca006132
|
180392e2ab
|
typecheck: fixed recursive substitution
|
2021-09-12 21:33:21 +08:00 |
ychenfo
|
471547855e
|
nac3core: toplevel change class method name handling, cleanup comments
|
2021-09-12 13:14:46 +08:00 |
ychenfo
|
2ac3f9a176
|
nac3core: separate top level compoer to a new file
|
2021-09-12 05:10:10 +08:00 |
ychenfo
|
cb310965b8
|
nac3core: toplevel register consider module path
|
2021-09-12 05:00:26 +08:00 |
ychenfo
|
118f19762a
|
nac3core: toplevel format
|
2021-09-12 04:40:40 +08:00 |
ychenfo
|
b419634f8a
|
nac3core: top level fields inheritance check, more tests
|
2021-09-12 04:34:30 +08:00 |
ychenfo
|
147298ff40
|
nac3core: top level fix class fields as nac3 spec
|
2021-09-12 03:49:21 +08:00 |
ychenfo
|
c7cb02b0f3
|
nac3core: toplevel fix parse type annotation dead lock
|
2021-09-12 03:01:56 +08:00 |
ychenfo
|
4eacd1aa9e
|
nac3core: top level err test
|
2021-09-10 21:26:39 +08:00 |
ychenfo
|
9eef51f29f
|
nac3core: top level class method self parameter fixed
|
2021-09-10 16:14:08 +08:00 |
ychenfo
|
917d447605
|
nac3core: clean up, fix broken test
|
2021-09-09 02:09:35 +08:00 |
ychenfo
|
f1013d9a17
|
nac3core: top level fix type var within list tuple, test of type var application compatibility
|
2021-09-09 02:03:44 +08:00 |
ychenfo
|
2ce507964c
|
nac3core: fix broken top level test due to hashmap order
|
2021-09-09 00:44:56 +08:00 |
ychenfo
|
5a1a8ecee3
|
nac3core: self is not not allowed to explicitly appear in method type annotations
|
2021-09-08 21:53:54 +08:00 |
ychenfo
|
1300b5ebdd
|
nac3core: clean up and format
|
2021-09-08 19:45:36 +08:00 |
ychenfo
|
87f25e1c5d
|
nac3core: remove mutex on dyn symbol resolve
|
2021-09-08 19:27:32 +08:00 |
ychenfo
|
55335fc05d
|
nac3core: top level simple type var handled
|
2021-09-08 02:27:12 +08:00 |
ychenfo
|
247b364191
|
nac3core: top level fix cyclic ancestor analysis, add tests
|
2021-09-07 17:30:15 +08:00 |
ychenfo
|
bbcec6ae6f
|
nac3core: toplevel fix bug in make self annotation and return type check
|
2021-09-07 10:03:31 +08:00 |
ychenfo
|
235b6e34d1
|
nac3core: top level derive fmt::Debug, fix dead lock
|
2021-09-07 00:20:40 +08:00 |
ychenfo
|
54b4572c5f
|
nac3core: allow interior mutability to dyn symbolresolver, add add_id_def to symbolresolver trait, remove primitive from top level def list
|
2021-09-06 19:23:04 +08:00 |
ychenfo
|
dc7c014b10
|
nac3core: top level more test
|
2021-08-31 17:40:38 +08:00 |
ychenfo
|
1ae6acc061
|
nac3core: top level fix function/methods none return type
|
2021-08-31 15:41:48 +08:00 |
ychenfo
|
98d032b72a
|
nac3core: top level fix duplicate def, start adding tests
|
2021-08-31 15:23:57 +08:00 |
ychenfo
|
7bbd608492
|
nac3core: top level cleanup, rewrite ancestors handling, __init__ occruence check
|
2021-08-31 13:54:16 +08:00 |
ychenfo
|
4a9593efa3
|
nac3core: top level clean up and fix ancestors analysis
|
2021-08-30 22:47:55 +08:00 |
ychenfo
|
098bd1e6e6
|
nac3core: top level check inheritance method overload
|
2021-08-30 17:39:29 +08:00 |
ychenfo
|
82c2edcf8d
|
nac3core: toplevel cleanup and add list and tuple support
|
2021-08-30 14:16:11 +08:00 |
ychenfo
|
40e58d02ed
|
nac3core: toplevel all ancestors are put into the def list, disallow generic base class for now
|
2021-08-30 14:15:57 +08:00 |
ychenfo
|
e2a9bdd8bc
|
nac3core: toplevel no duplicate type var too early
|
2021-08-30 14:15:36 +08:00 |
ychenfo
|
236989defc
|
nac3core: remove unnecessary inline and function parameters
|
2021-08-27 16:52:31 +08:00 |
pca006132
|
22a728833d
|
nac3core: fixed broken test
|
2021-08-27 16:50:53 +08:00 |
pca006132
|
2223c86d9b
|
nac3standalone: compile multiple functions
|
2021-08-27 16:25:59 +08:00 |
pca006132
|
72aebed559
|
nac3core: unification table optimization
avoid cloning values that we no longer need.
|
2021-08-27 13:05:06 +08:00 |
pca006132
|
8c1c7fcfc3
|
nac3core: fixed broken tests
|
2021-08-27 13:04:51 +08:00 |
pca006132
|
6633eabb89
|
nac3core: optimized by using HashSet
|
2021-08-27 12:36:51 +08:00 |
pca006132
|
bf4e0009c0
|
codegen: do not generate cont_bb if unreachable
|
2021-08-27 11:46:12 +08:00 |
pca006132
|
a24e204824
|
type_inferencer: check defined identifiers during inference
|
2021-08-27 11:13:43 +08:00 |