circuit handles load commands better

Signed-off-by: Ava Hahn <ava@sunnypup.io>
This commit is contained in:
Ava Apples Affine 2023-03-27 14:34:07 -07:00
parent 921deb9e5e
commit ab14ba4b5e
Signed by: affine
GPG key ID: 3A4645B8CF806069
7 changed files with 43 additions and 14 deletions

View file

@ -320,7 +320,7 @@ It also contains considerably subpar implementations of Relish's internals that
*** Userlib
The *Userlib* was added as a script containing many valuable functions such as ~set~ and ~prepend~.
You can use it by loading it in your shell config (See file:snippets/basic_minimal_configuration.rls for more info).
You can use it by calling it in your shell config (See file:snippets/basic_minimal_configuration.rls for more info).
** Easy patterns
This section contains examples of common composites of control flow that can be used to build more complex or effective applications
@ -407,7 +407,7 @@ Further configuration can be done by loading scripts that contain more functions
Variables and functions defined in an external script loaded by your interpreter will persist in the symbol table.
#+BEGIN_SRC lisp
(load "my-extra-library-functions.rls")
(call "my-extra-library-functions.rls")
#+END_SRC
** Compilation
@ -482,10 +482,9 @@ Note: this section only tracks the state of incomplete TODO items. Having everyt
** TODO Pre-alpha tasks
- Shell module
- circuit casts int to bool automatically
- call-with (let style fd redirection)
- load-to-string function (userlib extension of call-with)
- pipe control flow construct
- l and load functions for binaries, call for scripts
- load-to-string function
- ignore job control signals (if needed)
- background processes
- be able to list all background processes with j function
@ -493,8 +492,9 @@ Note: this section only tracks the state of incomplete TODO items. Having everyt
- be able to bg and fg process (ctrl z?)
- changedir/cd
- pwd
- call-with (let style fd redirection)
- Documentation!
- Do I need some linemode management stuff?
- Escape sequences in strings
- logging library
- make const all the error messages
- make presentation on relish
@ -514,12 +514,21 @@ Note: this section only tracks the state of incomplete TODO items. Having everyt
- help
- beyond lisp
- POSIX
- how to make a shell
- process groups
- tcgetpgrp/tcsetpgrp
- linemode
- getting things off of the path
- calls to exec system call
- signal management
- job control (and process groups)
- ergonomics of control flow as shell command
- circuit -> pipe
- let -> call-with
- putting it all together
- job control in shell
- shell scripts
- fancy prompts
- To infinity and beyond
- NGINX modules
- bootable?
@ -527,11 +536,11 @@ Note: this section only tracks the state of incomplete TODO items. Having everyt
- store in repo after giving presentation
** TODO alpha tasks
- Write next_has member function for &Seg and simplify stdlib and probably also eval/sym
- Can pass args to relish scripts (via interpreter)
- Can pass args to relish scripts (via command line)
- History length configurable
- Search delim configurable
- Escape sequences in strings
- Rename to Flesh
- master branch -> main branch
- Create a dedicated community channel on matrix.sunnypup.io
@ -547,6 +556,7 @@ Note: this section only tracks the state of incomplete TODO items. Having everyt
- File operations
- read-to-string
- write-to-file
- file exists
- color control library
- emacs syntax highlighting and/or LSP implementation
- GNU Guix package