From Rosie Keith Languet to ~sircmpwn/hare-dev
Couldn't the less-error-prone aspects of using standard @offset's be replicated with unions + byte arrays? Or is there an alignment rule I'm not thinking of? Though this would make accessing the fields slightly more annoying, of course.
From Rosie K Languet to ~sircmpwn/rc-devel
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 6419498..af75b1f 100644 --- a/README.md +++ b/README.md @@ -18,3 +18,8 @@ PREFIX=/`. [Hare]: https://harelang.org [madeline]: https://git.d2evs.net/~ecs/madeline [scdoc]: https://git.sr.ht/~sircmpwn/scdoc [message trimmed]
From Rosie K Languet to ~sircmpwn/rc-devel
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- ast/command.ha | 5 ++--- parse/command.ha | 10 ++++------ parse/value.ha | 3 ++- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/ast/command.ha b/ast/command.ha index 7061aa2..fb1b582 100644 --- a/ast/command.ha +++ b/ast/command.ha @@ -96,9 +96,8 @@ export type not = struct { }; [message trimmed]
From Rosie K Languet to ~sircmpwn/rc-devel
these tripped me up on my first read-through Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- parse/value.ha | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/parse/value.ha b/parse/value.ha index 33cde98..342b5a0 100644 --- a/parse/value.ha +++ b/parse/value.ha @@ -94,7 +94,7 @@ export fn parse_value( case ltok::STRING => yield strings::dup(tok.1)!: ast::string; [message trimmed]
From Rosie K Languet to ~sircmpwn/rc-devel
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- doc/rc.1.scd | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/doc/rc.1.scd b/doc/rc.1.scd index 25de289..53f9f1c 100644 --- a/doc/rc.1.scd +++ b/doc/rc.1.scd @@ -186,6 +186,28 @@ The following variables are defined by the shell automatically: \* Note that $0 is the command name and $1 is the first argument *CONCATENATION*[message trimmed]
From Rosie K Languet to ~sircmpwn/rc-devel
This implementation was the quickest path I could see to trying out the
idea; it twists the meaning of several functions and has several TODOs
regarding error cases. It is also probably overly permissive in where
it allows the new feature.
Example:
list = (1 2 3)
$list(1) = one
end = $#list
$list($end) = end
echo $list
# one 2 end
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net>
[message trimmed]
From Rosie K Languet to ~sircmpwn/rc-devel
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- interp/error.ha | 2 +- interp/state.ha | 2 +- interp/value.ha | 2 +- lex/errors.ha | 2 +- parse/command.ha | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/interp/error.ha b/interp/error.ha index d5d17ca..5d794ec 100644 --- a/interp/error.ha +++ b/interp/error.ha @@ -40,7 +40,7 @@ export fn strerror(err: error) const str = { [message trimmed]
From Rosie K Languet to ~sircmpwn/hare-dev
This implementation has several TODOs re: error cases, and is probably overly permissive. Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- ast/command.ha | 18 +++++++++++++++--- interp/exec.ha | 34 ++++++++++++++++++++++++++++++++-- parse/command.ha | 19 +++++++++++++++---- parse/value.ha | 42 ++++++++++++++++++++++++++++++++++++++---- 4 files changed, 100 insertions(+), 13 deletions(-) diff --git a/ast/command.ha b/ast/command.ha index b4226c6..7061aa2 100644 --- a/ast/command.ha [message trimmed]
From Rosie K Languet to ~sircmpwn/hare-dev
Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net> --- interp/error.ha | 2 +- interp/state.ha | 2 +- interp/value.ha | 2 +- lex/errors.ha | 2 +- parse/command.ha | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/interp/error.ha b/interp/error.ha index d5d17ca..5d794ec 100644 --- a/interp/error.ha +++ b/interp/error.ha @@ -40,7 +40,7 @@ export fn strerror(err: error) const str = { [message trimmed]
From Rosie K Languet to ~sircmpwn/hare-dev
This implementation has several TODOs re: error cases, and is probably overly permissive. --- ast/command.ha | 18 +++++++++++++++--- interp/exec.ha | 34 ++++++++++++++++++++++++++++++++-- parse/command.ha | 19 +++++++++++++++---- parse/value.ha | 42 ++++++++++++++++++++++++++++++++++++++---- 4 files changed, 100 insertions(+), 13 deletions(-) diff --git a/ast/command.ha b/ast/command.ha index b4226c6..7061aa2 100644 --- a/ast/command.ha +++ b/ast/command.ha @@ -43,7 +43,7 @@ export type compound = struct { [message trimmed]