Commit Graph

  • f189643cf4 build: add support for disabling native command support main wash 2026-07-19 13:34:09 +01:00
  • 422416e99b frontend: replace builtin line-ed with bshell-line-editor wash 2026-06-20 15:18:51 +01:00
  • 9e6c3bb431 core: foreach-object: update variable definition api usage wash 2026-06-20 15:17:15 +01:00
  • ad8b284869 runtime: implement an extensible line editor wash 2026-06-20 15:13:34 +01:00
  • f622c2eba3 runtime: adjust formatting wash 2026-06-20 15:13:17 +01:00
  • f62713872f runtime: cmdcall: resolve() can now re-resolve an already-resolved cmdcall wash 2026-06-20 15:13:03 +01:00
  • 8b18421f63 runtime: parse: fix parsing of linefeed after last statement in block wash 2026-06-20 15:11:02 +01:00
  • 4a567a1bb9 runtime: format: add truncation and single-line support to value_writer wash 2026-06-20 15:10:15 +01:00
  • c262b53eab runtime: move variable definition from runtime to individual scopes wash 2026-06-20 15:09:10 +01:00
  • c2d3e05430 runtime: command: handle commants that don't have a source assembly wash 2026-06-20 15:07:20 +01:00
  • 4e6493da58 runtime: lex: fix incorrect state-transition when scanning func keyword wash 2026-06-20 15:06:04 +01:00
  • 907e0c1832 frontend: evaluate <config>/profile.bshell on startup wash 2026-06-15 17:41:41 +01:00
  • b8a5bd7338 frontend: update fx api usage wash 2026-06-15 17:41:26 +01:00
  • c68b1d2b26 runtime: update fx api usage wash 2026-06-15 17:41:08 +01:00
  • 0140f768cf frontend: re-organise frontend functionality; add feature and logging switches wash 2026-06-14 20:28:50 +01:00
  • 6f71b85522 cmake: find fx.cmdline assembly wash 2026-06-14 20:28:27 +01:00
  • 21c7092752 runtime: initialise global data when the first bshell_runtime is created wash 2026-06-14 20:28:07 +01:00
  • 3ace32a95b runtime: native-command: remove logging from record processing wash 2026-06-14 20:27:46 +01:00
  • de2a747e36 runtime: format: only add trailing newline to string if one isn't already present wash 2026-06-14 19:40:27 +01:00
  • b3440fe231 runtime: cmdcall: implement resolution of native commands wash 2026-06-14 19:39:49 +01:00
  • e8ddb0b75f cmake: find fx.io and fx.diagnostics wash 2026-06-13 13:50:14 +01:00
  • 97a83addc8 core: write-output now writes args and input values to the pipeline rather than stdout wash 2026-06-13 13:49:00 +01:00
  • 8c926acd9d core: update begin_processing() cmdlet signature wash 2026-06-13 13:48:19 +01:00
  • fba7987d78 runtime: implement a bshell_command sub-class for calling native commands wash 2026-06-13 13:47:34 +01:00
  • 2332d48b0c runtime: adjust formatting wash 2026-06-13 13:47:16 +01:00
  • 73519eb7aa runtime: move value formatting functionality to a dedicated api wash 2026-06-13 13:46:29 +01:00
  • 4c04ca6de8 runtime: command: add an arg to begin_processing() to indicate pipeline position wash 2026-06-13 13:40:20 +01:00
  • de5058e045 cmake: link to fx.diagnostics and fx.io wash 2026-06-13 13:36:20 +01:00
  • 8843f2d2a9 frontend: print an error message when the specified script file cannot be opened wash 2026-05-31 17:34:28 +01:00
  • 187296ca62 runtime: status: add descriptive messages for status codes wash 2026-05-31 17:34:12 +01:00
  • b9a3caf033 runtime: lex: formatting cleanup wash 2026-05-31 17:33:43 +01:00
  • 8e2eec973a core: add a compiler option for disabling floating-point usage wash 2026-05-31 17:33:20 +01:00
  • 6548c3283b cmake: build-id: specify current working directory wash 2026-05-31 17:33:02 +01:00
  • 4a087d1000 cmake: update FindFX module wash 2026-05-31 17:32:44 +01:00
  • da2777717c frontend: add a compiler option for disabling floating-point usage wash 2026-05-31 17:32:26 +01:00
  • 290caf7aef frontend: disable all fx.term includes when interactive mode is disabled wash 2026-05-31 17:32:06 +01:00
  • 73ff8ba6aa bshell.runtime: disable all fx.term includes when interactive mode is disabled wash 2026-05-31 17:31:37 +01:00
  • ee6fdfbc48 bshell.runtime: add a compiler option for disabling floating-point usage wash 2026-05-31 17:30:53 +01:00
  • 1a311b3796 doc: sample: make the simple sample script actually simple wash 2026-05-30 21:10:04 +01:00
  • 338c0356ca multi: completely remove fx.term dependency when interactive support is disabled wash 2026-05-30 21:08:39 +01:00
  • ca33228e0e runtime: scriptblock: fix use of uninitialised memory wash 2026-05-30 20:18:41 +01:00
  • 09f64aaaba runtime: scope: fix scope_set_block not handling NULL argument properly wash 2026-05-30 20:18:24 +01:00
  • 74695e8593 cmake: remove debug messages wash 2026-05-30 20:17:52 +01:00
  • afab5343c4 doc: sample: add simple function example script wash 2026-05-30 19:54:06 +01:00
  • 0697d889c5 frontend: implement function compilation wash 2026-05-30 19:53:49 +01:00
  • 28abb4d2d3 frontend: implement debug printing for functions wash 2026-05-30 19:53:39 +01:00
  • 531191ab52 core: update pipeline api usage wash 2026-05-30 19:53:15 +01:00
  • 1710f705e9 command: implement callable bytecode functions wash 2026-05-30 19:52:50 +01:00
  • 96bf76aabc runtime: fix memory leaks wash 2026-05-30 19:52:36 +01:00
  • 26b368a512 compile: fix memory leaks wash 2026-05-30 19:52:24 +01:00
  • a30e76e525 scriptblock: fix memory leaks wash 2026-05-30 19:51:52 +01:00
  • 3b39f794f9 verb: fix memory leaks wash 2026-05-30 19:51:29 +01:00
  • 5d6f2a5ce8 parse: lex: fix memory leaks wash 2026-05-30 19:50:38 +01:00
  • fec3be2140 ast: implement cleanup callbacks wash 2026-05-30 19:50:13 +01:00
  • f2e1d89313 runtime: update iterator usage wash 2026-05-25 19:14:52 +01:00
  • 6bfe3f0a6e core: update iterator usage wash 2026-05-25 19:14:45 +01:00
  • edfb3e24a3 bshell: re-organise build into three separate components wash 2026-05-25 10:33:29 +01:00
  • 58c76a1f57 meta: update clang-format config wash 2026-05-25 10:33:10 +01:00
  • d333497a03 meta: add clang-format config wash 2026-05-24 20:26:49 +01:00
  • 28f8c8f71c doc: sample: add/update sample source files wash 2026-05-24 20:26:40 +01:00
  • bb09e8b8d1 vim: add operator symbols and keywords wash 2026-05-24 20:26:29 +01:00
  • 446ee99306 build: add new sub-directories wash 2026-05-24 20:25:51 +01:00
  • 070a2be969 bshell: initialise verbs and table formatter on start wash 2026-05-24 20:25:36 +01:00
  • 862028f5a8 debug: update runtime opcode printing wash 2026-05-24 20:24:44 +01:00
  • d7443d7810 bshell: add an assembly instance to register builtin commands wash 2026-05-24 20:22:48 +01:00
  • f772f4ba20 alias: implement a set of builtin aliases wash 2026-05-24 20:22:30 +01:00
  • 0ee1a3575d cmdlet: implement a set of builtin cmdlets wash 2026-05-24 20:22:19 +01:00
  • 92e58ec7c6 runtime: implement opcodes to run commands and load/store variables and properties wash 2026-05-24 20:22:05 +01:00
  • 8f7a0b9fb8 runtime: add a class to represent variables and a data structure to store them wash 2026-05-24 20:21:39 +01:00
  • b6aeb8d4bf runtime: implement pipelines and an interface for calling commands wash 2026-05-24 20:21:06 +01:00
  • d8c694a43e command: add a hierarchy of classes to represent different types of commands wash 2026-05-24 20:20:06 +01:00
  • 4f65e3b9f2 format: implement tabular output of fx objects wash 2026-05-24 20:19:32 +01:00
  • c9cf6b229e bshell: add a class to manage cmdlet verbs wash 2026-05-24 20:18:12 +01:00
  • c3bf6dcee6 compile: implement compilation of doubles and arrays wash 2026-05-24 20:17:35 +01:00
  • e679c41725 compile: fstring: fix string elements being loaded at the wrong time wash 2026-05-24 20:17:13 +01:00
  • 30bfce5701 script-block: implement storing double values in constpool wash 2026-05-24 20:15:30 +01:00
  • e829c77297 file: update fx_array usage wash 2026-05-24 20:14:51 +01:00
  • ca8533334b ast: implement to_string for int and double nodes wash 2026-05-24 20:14:32 +01:00
  • fad13b5476 parse: lots of improvements wash 2026-05-24 20:13:55 +01:00
  • 82a035f5cc line-ed: update fx_array usage wash 2026-05-24 20:11:51 +01:00
  • 5a23da4cfe line-ed: add unicode support wash 2026-05-17 16:44:54 +01:00
  • 2f200e8d1b bshell: generate and evaluate bytecode for shell input wash 2026-05-17 15:35:22 +01:00
  • f629b05672 debug: implement printers for bytecode instructions and runtime values wash 2026-05-17 15:34:53 +01:00
  • 58b4bb2c51 runtime: temporary implementation of arithmetic bytecode evaluation wash 2026-05-17 15:34:24 +01:00
  • 0e8dc9cb6f bshell: implement bytecode generation for arithmetic expressions and if-statements wash 2026-05-17 15:33:44 +01:00
  • 2cee984092 runtime: add definitions for bshell vm bytecode wash 2026-05-17 15:33:20 +01:00
  • 1f8b9ff0d3 ast: implement post-order ast traversal wash 2026-05-17 15:32:19 +01:00
  • e490754625 bshell: add script-block class wash 2026-05-17 15:30:20 +01:00
  • 405686f6ec parse: make multi-line structure parsing more robust wash 2026-05-17 15:29:59 +01:00
  • d78f80a121 parse: lex: fix some state transition edge cases wash 2026-05-17 15:29:14 +01:00
  • 05dcf1f8b6 operator: add script-block pseudo-operator wash 2026-05-17 15:28:29 +01:00
  • 34114ca451 debug: add print support for new ast node types wash 2026-05-12 23:00:03 +01:00
  • 750e3df7d5 lang: add arithmetic operator definitions wash 2026-05-12 22:59:50 +01:00
  • 83189d4d9b ast: add lots of ast node definitions wash 2026-05-12 22:59:29 +01:00
  • 1ea3471f0d parse: implement parsing of complex command arguments wash 2026-05-12 22:58:59 +01:00
  • c4529d474a parse: implement parsing of arithmetic expressions and data structures wash 2026-05-12 22:58:48 +01:00
  • 227e73853c parse: implement parsing of function definitions wash 2026-05-12 22:57:42 +01:00
  • 7d2e45edcb parse: implement parsing of if-statements wash 2026-05-12 22:57:31 +01:00
  • 26e2a63200 parse: implement parsing of {...} statement blocks wash 2026-05-12 22:57:16 +01:00
  • 0cd7ca2dde parse: add a basic function to report parse errors wash 2026-05-12 22:56:32 +01:00