1
0
mirror of https://github.com/exaloop/codon.git synced 2025-06-03 15:03:52 +08:00

154 Commits

Author SHA1 Message Date
Ibrahim Numanagić
56cd0711f7 Move std::filesystem to llvm::sys::fs 2022-02-24 11:43:51 -08:00
Ibrahim Numanagić
70e2427c0d Merge branch 'jupyter-fixes' of github.com:exaloop/codon into jupyter-fixes 2022-01-25 13:17:52 -08:00
Ibrahim Numanagić
fd06afaa61 Fix linux build [wip] 2022-01-25 13:17:37 -08:00
A. R. Shajii
f51a53e2fe Inline JIT functions 2022-01-20 11:22:32 -05:00
A. R. Shajii
6f4e24fb00 Update new global detection and processing in JIT 2022-01-19 11:21:40 -05:00
Ibrahim Numanagić
c3c48b9c6d Add Matplotlib plot support 2022-01-18 21:57:38 -08:00
Ibrahim Numanagić
de678930d8 Add Matplotlib plot support 2022-01-18 21:19:52 -08:00
Ibrahim Numanagić
a7a316f178 Merge remote-tracking branch 'origin/develop' into jupyter-fixes 2022-01-18 12:47:20 -08:00
A. R. Shajii
e7851d8983 clang-format 2022-01-17 11:44:14 -05:00
Ibrahim Numanagić
cc634d1940
Improved logic for handling overloaded functions (#10)
* Backport seq-lang/seq@develop fixes

* Backport seq-lang/seq@develop fixes

* Select the last matching overload by default (remove scoring logic); Add dispatch stubs for partial overload support

* Select the last matching overload by default [wip]

* Fix various bugs and update tests

* Add support for partial functions with *args/**kwargs; Fix partial method dispatch

* Update .gitignore

* Fix grammar to allow variable names that have reserved word as a prefix

* Add support for super() call

* Add super() tests; Allow static inheritance to inherit @extend methods

* Support for overloaded functions [wip; base logic done]

* Support for overloaded functions

* Update .gitignore

* Fix partial dots

* Rename function overload 'super' to 'superf'

* Add support for super()

* Add tests for super()

* Add tuple_offsetof

* Add tuple support for super()

* Add isinstance support for inherited classes; Fix review issues

Co-authored-by: A. R. Shajii <ars@ars.me>
2022-01-11 20:39:15 -05:00
A. R. Shajii
f35656e59c Fix LLVM JIT issues 2022-01-07 12:52:17 -05:00
A. R. Shajii
d238ee4656 clang-format 2022-01-07 11:06:09 -05:00
A. R. Shajii
a51a4eb0bd Merge branch 'develop' into jupyter-fixes 2022-01-06 12:48:37 -05:00
Ibrahim Numanagić
0f38fc6473 Jupiter display fixes 2022-01-04 10:13:59 -08:00
A. R. Shajii
240f2947c5 Merge branch 'develop' of https://github.com/exaloop/codon into develop 2021-12-29 20:06:24 -05:00
A. R. Shajii
0cd6d70d6b Fix static str test 2021-12-29 20:06:14 -05:00
Ibrahim Numanagić
18d1d9b51e
Seq backports (#8)
* Backport seq-lang/seq@develop fixes

* Backport seq-lang/seq@develop fixes

* Resolve review issues

* Resolve File.__copy__() issue

* Resolve incorrect partial handling of object methods

* Use ints and floats for __suffix__ methods

* Fix float test

* Update complex tests

* Fix float constructor

* Fix cmath test

Co-authored-by: A. R. Shajii <ars@ars.me>
2021-12-29 19:46:15 -05:00
Ibrahim Numanagić
682b97676d Add mimetype support [wip] 2021-12-29 13:11:56 -08:00
A. R. Shajii
d7f62872cc Fix static strings in names 2021-12-20 14:16:20 -05:00
A. R. Shajii
785b280000 Format newlines 2021-12-20 14:16:02 -05:00
A. R. Shajii
55eedf29be
Datetime (#9)
* Initial datetime module

* More functions

* Remove fold

* Fixes

* Fixes

* Fix radd etc.

* Add unittest

* Add default fillchar

* Add remaining tests
2021-12-20 13:07:07 -05:00
Mark Henderson
fa994600b1
Update primer FFI example [skip ci] 2021-12-14 21:34:49 -06:00
Ibrahim Numanagić
9c8424275e
Fix broken merge 2021-12-12 11:36:30 -08:00
Ibrahim Numanagić
d3f01b541b Merge JIT fixes (#7) 2021-12-10 11:27:08 -08:00
Ibrahim Numanagić
539b3cd124 Restore JIT state on error 2021-12-10 11:08:17 -08:00
Ibrahim Numanagić
5834228f3d Fix pipeline JIT bug 2021-12-10 10:46:48 -08:00
Ibrahim Numanagić
2c72eda249 Revert StmtExpr.ownBlock; Fix JIT printing of void expressions 2021-12-08 09:12:17 -08:00
Ibrahim Numanagić
2cefe4431a Add StmtExpr.ownBlock; Fix JIT printing of void expressions 2021-12-07 13:40:34 -08:00
Ibrahim Numanagić
887be68011 Add Jupyter plugin support 2021-12-06 01:59:32 -08:00
A. R. Shajii
166e1ad455
JIT (#6)
* Add JIT engine

* More engine updates

* Fix takeModule()

* Parser JIT support [wip]

* Fix class definition

* Parser JIT support [wip]

* Parser JIT support [wip]

* Fix LLVM context conflict

* Parser JIT support [wip]

* Fix JIT engine

* Parser JIT support [wip]

* Doc fix

* JIT fix

* Fix JIT exceptions

* Refactor

* Add JIT status codes

* Add compiler class

* Better logging

* Better logging

* Update .gitignore

* Add Jupyter Xeus support

* Update JIT

* Remove print

* Update errors

* Fix assert

* Fix asserts

* Update docgen signature

* Update file system interface

* Update plugin errors

* Use numeric_limits

* JIT refactor [wip]

* Set JIT flag on LLVMVisitor

* Update module opt

* JIT imports

* First Jupyter integration

* Update JIT API to return outputs as string

* Capture runtime exception output

* Fix libbacktrace build

* Initial Jupyter support

* Format

* Fix print

* Support run-mode backtraces

* Fix multithreaded backtrace

* Update backtraces

* Upgrade OpenMP

* Add libunwind

* Fix build

* Fix build

* Fix build

* Fix build

* Fix OpenMP & tests

* Use libbacktrace instead of libunwind

* Add debug listener

* Remove unused include

* Remove unused class

* Fix backtraces

* Update backtrace config

* Fix debug info generation

* Refactor backtraces

* Fix ASAN flag

* Fix JIT

* Fix JIT backtraces

* Fix JIT backtrace

* Fix Jupyter, fix xeus build flags

* Fix JIT output capture

* Fix Jupyter

* Fix Jupyter Python support

* Add __repr_pretty__ support

* Update JIT output capturing

* Better backtrace method names

* Support plugins in JIT mode

Co-authored-by: Ibrahim Numanagić <ibrahimpasa@gmail.com>
2021-11-30 11:50:28 -05:00
A. R. Shajii
fa6c46ab7e Support plugins in JIT mode 2021-11-30 08:44:36 -05:00
A. R. Shajii
c20c5946fe Better backtrace method names 2021-11-23 09:30:50 -05:00
A. R. Shajii
0c897eaaec Update JIT output capturing 2021-11-22 22:23:23 -05:00
Ibrahim Numanagić
1681912b2c Add __repr_pretty__ support 2021-11-22 05:32:49 -08:00
Ibrahim Numanagić
0fd028bc52 Fix Jupyter Python support 2021-11-22 04:52:25 -08:00
Ibrahim Numanagić
dfb516aad9 Fix Jupyter 2021-11-21 06:28:10 -08:00
A. R. Shajii
a6ada78aa6 Fix JIT output capture 2021-11-21 09:21:40 -05:00
Ibrahim Numanagić
71cad478f7 Fix Jupyter, fix xeus build flags 2021-11-21 05:21:05 -08:00
A. R. Shajii
039d604a56 Fix JIT backtrace 2021-11-17 16:47:32 -05:00
A. R. Shajii
f79346f505 Fix JIT backtraces 2021-11-16 17:10:15 -05:00
A. R. Shajii
e768ab6a4b Fix JIT 2021-11-16 15:40:00 -05:00
A. R. Shajii
5149ee4a62 Fix ASAN flag 2021-11-16 14:30:07 -05:00
A. R. Shajii
8dc2c45e88 Refactor backtraces 2021-11-16 11:55:00 -05:00
A. R. Shajii
e76b756226 Fix debug info generation 2021-11-16 10:19:41 -05:00
A. R. Shajii
4018eddeb2 Update backtrace config 2021-11-14 10:21:40 -05:00
A. R. Shajii
2048ef18a2 Fix backtraces 2021-11-13 22:32:15 -05:00
A. R. Shajii
ca414b498a Remove unused class 2021-11-13 22:24:05 -05:00
A. R. Shajii
8edd5bc6e0 Remove unused include 2021-11-13 22:21:58 -05:00
A. R. Shajii
fb04f81d3f Add debug listener 2021-11-13 11:22:11 -05:00
A. R. Shajii
9e1aa03bd5 Use libbacktrace instead of libunwind 2021-11-12 14:34:49 -05:00