Commit Graph

93 Commits

Author SHA1 Message Date
93867e40c6 Finally figured out how I want atoms to work 2024-06-14 19:41:08 +02:00
b1ab483d92 Merge remote-tracking branch 'origin/ipc-refactor' into ipc-refactor 2024-05-12 13:31:13 +02:00
7ad4fe96d1 Progress mostly on atom repr 2024-05-12 13:30:00 +02:00
ee823ca3c2 perftest more idiomatic 2024-05-03 12:29:57 +02:00
bc3b10674b Separated orchid-host and orchid-extension
This is an architectural change that allows me to implment specifics first and generalize along observed symmetries in orchid-base
2024-05-01 21:20:17 +02:00
aa3f7e99ab in midst of refactor 2024-04-29 22:16:35 +02:00
ed0d64d52e Almost Alpha
Massive improvements across the board.

One day I'll adopt incremental commits.
2024-02-24 00:31:00 +00:00
c279301583 Massive feature drop
- pattern matching seems to be correct
- dynamic dispatch works with the to_string example
- template strings as a last-minute addition
- interpreter revamp, virtual stack for abort safety
2024-01-29 18:26:56 +00:00
a8887227e5 Backup commit
My backspace key started ghosting. Nothing works atm.
2024-01-27 14:50:33 +00:00
f77e4fd90a October commit
- custom parser support and infra
- type-tagging and traits (untested)
- match expressions
2023-10-24 22:17:37 +01:00
c961506a3a Extended examples 2023-10-12 18:53:31 +01:00
ce34777555 Improved timer example
Also pushed other half of system::fs rename
2023-10-12 17:41:27 +01:00
ff486a5f74 FIxed the timer and the example 2023-10-12 15:01:19 +01:00
cb395da894 Fixed a tricky type erasure bug in the scheduler 2023-10-12 14:47:12 +01:00
af3e9f67fa Fixed float parsing and improved printing 2023-10-11 20:32:04 +01:00
86e520e8b8 September-october commit
- manual parser
- stl refinements
- all language constructs are now Send
2023-10-11 18:27:50 +01:00
56679dcc01 added rust-analyzer to recommendations 2023-09-24 13:00:34 +01:00
ba0b155ebd Removed foreign macros
Converted the function integration to use template
metaprogramming instead of macros.
2023-09-22 23:25:26 +01:00
7396078304 Added directfs
Added a very rudimentary file I/O system suitable for experimenting
with the language further. A better one will be designed when we have
sensible error management.
2023-09-17 16:37:39 +01:00
1078835e8b opportunistic move
should be way faster now
2023-09-16 12:57:50 +01:00
0bcf10659b Cut down on macro nonsense
- InertAtomic replaced atomic_inert! for improved tooling support
- atomic_defaults! is easier to type out than to explain in a docstring
- Changed rustfmt config to better support tiny functions such as as_any
2023-09-15 12:37:10 +01:00
3c0056c2db Generic mutation scheduling system
IO adapted to use it
Also, Atoms can now dispatch type-erased requests
2023-09-14 22:54:42 +01:00
8c866967a9 The pipeline is finally reasonably clean 2023-09-12 01:26:46 +01:00
6693d93944 Interning Orchid string literals 2023-08-19 14:35:24 +01:00
0b887ced70 Converted Interner to work with Rc-s
- Interner no longer contains unsafe code
- Tokens now hold a reference to the value they represent directly

This will enable many future improvements
2023-08-19 14:03:05 +01:00
ab0b57b1b8 Added line:col display to errors 2023-08-18 22:53:38 +01:00
c9cb1b205f Temporarily disable borked workflow 2023-08-18 21:54:24 +01:00
7e2975115f Toolchain patch 2023-08-18 21:51:56 +01:00
9186bce956 Import and export improved
- Import paths are now vname and not sym
- Imports and exports accept multiple space-delimited operators in []

as a result, we can now reliably import and export the operator *

- error reporting ergonomics
2023-08-18 21:10:29 +01:00
3fdabc29da Most files suffered major changes
- Less ambiguous syntax
- Better parser (Chumsky only does tokenization now)
- Tidy(|ier) error handling
- Facade for simplified embedding
- External code grouped in (fairly) self-contained Systems
- Dynamic action dispatch
- Many STL additions
2023-08-18 12:57:41 +01:00
751a02a1ec Basic string and binary processing
- strings are now made of graphemes
- char is no longer a literal type
- preliminary binary support
- added implicit extraction methods for primitives
- added explicit extraction method for atoms

Nothing has been tested yet
2023-07-02 23:56:54 +01:00
cce4b8f11c Various Improvements
- removed many panics from the pipeline
- extracted project and const tree to representations
- extended STL list support
- improved loops
2023-06-28 22:29:58 +01:00
79e28883db Removed a copious amount of premature Rc-s 2023-06-18 04:22:20 +01:00
aebbf51228 STL rework
- fixed lots of bugs
- overlay libraries work correctly and reliably
- the STL is an overlay library
- examples updated
2023-06-17 21:12:29 +01:00
5bb8a12fc2 Added define_fn
- updated write_fn_step to support attributes, bind names and
  explicit argument types
- added define_fn to generate write_fn_step sequences
- updated concatenate to define_fn as an example
2023-06-02 18:41:00 +01:00
01aa37b27d write_fn_step convenience macro 2023-06-01 19:10:07 +01:00
6e545be8a7 docs reference 2023-05-29 22:17:34 +01:00
c40c731138 bruh 2023-05-29 21:35:49 +01:00
5a18f14d3b More adjustments 2023-05-29 21:34:54 +01:00
12112ff063 Fixed doctest 2023-05-29 21:20:38 +01:00
f28c922f66 Fixed doctest 2023-05-29 20:59:47 +01:00
0ec4233044 Created workflow 2023-05-29 00:47:54 +01:00
0cc8094823 Touchups
- Added logo and social preview
- added icon to docs
2023-05-28 23:19:13 +01:00
8d0ba2a471 Tweaked logo 2023-05-28 17:30:16 +01:00
f912438f26 Merge remote-tracking branch 'origin/master' 2023-05-28 17:26:17 +01:00
6f5a9d05dd Completed docs, added icon 2023-05-28 17:24:56 +01:00
3e6d8fc4fc Create LICENSE 2023-05-26 18:01:59 +01:00
6b71164aca Prepare for push
- last-minute rename
- extended manifest
- updated readme
2023-05-26 15:53:34 +01:00
fdf18e6ff8 Public API and docs 2023-05-26 15:23:15 +01:00
3c1a6e2be2 Create FUNDING.yml 2023-05-25 19:36:28 +01:00