Commit Graph

99 Commits

Author SHA1 Message Date
wash 4a087d1000 cmake: update FindFX module 2026-05-31 17:32:44 +01:00
wash da2777717c frontend: add a compiler option for disabling floating-point usage 2026-05-31 17:32:26 +01:00
wash 290caf7aef frontend: disable all fx.term includes when interactive mode is disabled 2026-05-31 17:32:06 +01:00
wash 73ff8ba6aa bshell.runtime: disable all fx.term includes when interactive mode is disabled 2026-05-31 17:31:37 +01:00
wash ee6fdfbc48 bshell.runtime: add a compiler option for disabling floating-point usage 2026-05-31 17:30:53 +01:00
wash 1a311b3796 doc: sample: make the simple sample script actually simple 2026-05-30 21:10:04 +01:00
wash 338c0356ca multi: completely remove fx.term dependency when interactive support is disabled 2026-05-30 21:09:43 +01:00
wash ca33228e0e runtime: scriptblock: fix use of uninitialised memory 2026-05-30 20:18:41 +01:00
wash 09f64aaaba runtime: scope: fix scope_set_block not handling NULL argument properly 2026-05-30 20:18:24 +01:00
wash 74695e8593 cmake: remove debug messages 2026-05-30 20:17:52 +01:00
wash afab5343c4 doc: sample: add simple function example script 2026-05-30 19:54:06 +01:00
wash 0697d889c5 frontend: implement function compilation 2026-05-30 19:53:49 +01:00
wash 28abb4d2d3 frontend: implement debug printing for functions 2026-05-30 19:53:39 +01:00
wash 531191ab52 core: update pipeline api usage 2026-05-30 19:53:15 +01:00
wash 1710f705e9 command: implement callable bytecode functions 2026-05-30 19:52:50 +01:00
wash 96bf76aabc runtime: fix memory leaks 2026-05-30 19:52:36 +01:00
wash 26b368a512 compile: fix memory leaks 2026-05-30 19:52:24 +01:00
wash a30e76e525 scriptblock: fix memory leaks 2026-05-30 19:51:52 +01:00
wash 3b39f794f9 verb: fix memory leaks 2026-05-30 19:51:29 +01:00
wash 5d6f2a5ce8 parse: lex: fix memory leaks 2026-05-30 19:50:38 +01:00
wash fec3be2140 ast: implement cleanup callbacks 2026-05-30 19:50:13 +01:00
wash f2e1d89313 runtime: update iterator usage 2026-05-25 19:14:52 +01:00
wash 6bfe3f0a6e core: update iterator usage 2026-05-25 19:14:45 +01:00
wash edfb3e24a3 bshell: re-organise build into three separate components
bshell: the front-end binary
bshell.runtime: contains the parser, compiler, and classes needed to run bshell scripts
bshell.core: contains the builtin commandlets and aliases
2026-05-25 10:33:29 +01:00
wash 58c76a1f57 meta: update clang-format config 2026-05-25 10:33:10 +01:00
wash d333497a03 meta: add clang-format config 2026-05-24 20:26:49 +01:00
wash 28f8c8f71c doc: sample: add/update sample source files 2026-05-24 20:26:40 +01:00
wash bb09e8b8d1 vim: add operator symbols and keywords 2026-05-24 20:26:29 +01:00
wash 446ee99306 build: add new sub-directories 2026-05-24 20:25:51 +01:00
wash 070a2be969 bshell: initialise verbs and table formatter on start 2026-05-24 20:25:36 +01:00
wash 862028f5a8 debug: update runtime opcode printing 2026-05-24 20:24:44 +01:00
wash d7443d7810 bshell: add an assembly instance to register builtin commands 2026-05-24 20:22:48 +01:00
wash f772f4ba20 alias: implement a set of builtin aliases 2026-05-24 20:22:30 +01:00
wash 0ee1a3575d cmdlet: implement a set of builtin cmdlets 2026-05-24 20:22:19 +01:00
wash 92e58ec7c6 runtime: implement opcodes to run commands and load/store variables and properties 2026-05-24 20:22:05 +01:00
wash 8f7a0b9fb8 runtime: add a class to represent variables and a data structure to store them 2026-05-24 20:21:39 +01:00
wash b6aeb8d4bf runtime: implement pipelines and an interface for calling commands 2026-05-24 20:21:06 +01:00
wash d8c694a43e command: add a hierarchy of classes to represent different types of commands 2026-05-24 20:20:06 +01:00
wash 4f65e3b9f2 format: implement tabular output of fx objects 2026-05-24 20:19:32 +01:00
wash c9cf6b229e bshell: add a class to manage cmdlet verbs 2026-05-24 20:18:12 +01:00
wash c3bf6dcee6 compile: implement compilation of doubles and arrays 2026-05-24 20:17:35 +01:00
wash e679c41725 compile: fstring: fix string elements being loaded at the wrong time 2026-05-24 20:17:13 +01:00
wash 30bfce5701 script-block: implement storing double values in constpool 2026-05-24 20:15:30 +01:00
wash e829c77297 file: update fx_array usage 2026-05-24 20:14:51 +01:00
wash ca8533334b ast: implement to_string for int and double nodes 2026-05-24 20:14:32 +01:00
wash fad13b5476 parse: lots of improvements 2026-05-24 20:13:55 +01:00
wash 82a035f5cc line-ed: update fx_array usage 2026-05-24 20:11:51 +01:00
wash 5a23da4cfe line-ed: add unicode support 2026-05-17 16:50:48 +01:00
wash 2f200e8d1b bshell: generate and evaluate bytecode for shell input 2026-05-17 15:35:22 +01:00
wash f629b05672 debug: implement printers for bytecode instructions and runtime values 2026-05-17 15:34:53 +01:00