Commit Graph

25 Commits

Author SHA1 Message Date
Mark
a78367f27c add support for custom theming in mers errors
this also includes support for the NoTheme,
a theme which doesn't add any color to mers'
output.
If you compile mers with --no-default-features,
the `colored` dependency will disappear and
mers_lib will fall back to NoTheme.
2024-06-26 01:02:19 +02:00
Mark
94111a5eaa add configs/bundle_pure 2024-06-23 22:14:29 +02:00
Mark
f59c0941f5 add more graceful errors (w/ stacktrace) to stdlib 2024-06-20 15:52:57 +02:00
Mark
cd21c2171e improve panic function, add stacktrace 2024-06-19 12:35:23 +02:00
Mark
945e19e10a fix list cloning not cloning inner values
this would allow mutating values
through a list passed by value,
but now it doesn't, which is
how it always should have been.
2024-04-30 13:58:40 +02:00
Mark
2742112b09 Type no longer implements MersType 2024-04-16 13:38:50 +02:00
Mark
8690263b1c V7: Make .try a language feature, this makes try_allow_unused unnecessary. remove try and try_... functions. 2024-03-22 15:38:09 +01:00
Mark
f3f2c13702 add loop syntax, remove loop function, change CLI 2024-02-22 13:34:02 +01:00
Mark
6d6853cc9f add function type annotation (Input1 -> Output1, Input2 -> Output2) 2024-02-15 10:55:13 +01:00
Mark
c08e08f8a9 add try_allow_unused function 2023-12-18 12:07:08 +01:00
Mark
49d13d92cc improve error messages
- fix bug where `thread` function wouldn't error when being called on a non-function
- add compile error when a function in `try` is never used, because this is almost certainly a mistake and will cause mers to unexpectedly go down the "wrong" code path.
- some small changes so mers_lib can be used in another project
2023-12-14 19:24:43 +01:00
Mark
0759b769e0 early prototype of a language server
currently only provides hover info (but that's already quite useful for debugging)
2023-12-05 23:04:17 +01:00
Mark
12925fed67 improved error messages
- some small bugs are now fixed
- include comments in error messages (if this causes issues, use --hide-comments)
- colors should make more sense now
- error-related things moved to mers_lib/src/errors/
2023-11-16 14:50:09 +01:00
Mark
8bdd6e00e8 Add lock_update function for safer multithreading
&v = (v, 1).sum might fail if two threads do it at the same time or something, so you can now lock the reference to ensure no other thread messes with your data while you update its value
2023-11-10 13:18:34 +01:00
Mark
39fca08541 change loop function so you can write ().loop(() -> do_smth) 2023-11-08 15:11:28 +01:00
Mark
59e36d1535 added sleep function 2023-10-28 14:00:03 +02:00
Mark
1384222b59 len function now works on lists because it works on all iterators 2023-10-27 14:22:14 +02:00
Mark
fd2a3382fc fixed tuple reversing type order when initializing
and try's error message now starts counting at Function #1 instead of #0.
2023-10-24 20:04:14 +02:00
Mark
5e20f92849 Added the concept of subtypes ...
... which `try` now uses to avoid some problems with inner types
2023-10-24 09:31:49 +02:00
Mark
ea95a16c30 added better error messages inspired by rustc/cargo
but not as good
2023-10-23 21:48:15 +02:00
Mark
42288494f0 fix product function and add examples 2023-10-19 19:38:13 +02:00
Mark
b39a768099 . 2023-10-19 18:46:15 +02:00
Mark
2d79e75ba2 added len function 2023-08-19 23:35:29 +02:00
Mark
ae0e163595 assigning to tuples should work properly now 2023-08-15 19:18:52 +02:00
Mark
2a7cb08596 mers rewrite is starting to be usable 2023-08-14 17:17:08 +02:00