i'm a human i think


Last active 4 months ago


Last active 8 months ago


Last active 10 months ago


Last active 10 months ago
View more

Recent activity

[PATCH hare] hare.1: add note about poor error message quality 9 days ago

From Sebastian to ~sircmpwn/hare-dev

Signed-off-by: Sebastian <sebastian@sebsite.pw>
 docs/hare.1.scd | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/docs/hare.1.scd b/docs/hare.1.scd
index c7a49a57..335e5f75 100644
--- a/docs/hare.1.scd
+++ b/docs/hare.1.scd
@@ -33,12 +33,14 @@ own line indented with a single tab.

*hare-test*(1) compiles and runs tests for Hare code.

[message trimmed]

[PATCH hare] haredoc: fix accidental reuse of static string 9 days ago

From Sebastian to ~sircmpwn/hare-dev


Signed-off-by: Sebastian <sebastian@sebsite.pw>
 cmd/haredoc/main.ha | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/cmd/haredoc/main.ha b/cmd/haredoc/main.ha
index d827dc18..3886e4bb 100644
--- a/cmd/haredoc/main.ha
+++ b/cmd/haredoc/main.ha
@@ -153,7 +153,12 @@ fn doc(name: str, cmd: *getopt::command) (void | error) = {

[message trimmed]

[PATCH hare] encoding::utf8: return done from next/prev 9 days ago

From Sebastian to ~sircmpwn/hare-dev

Breaking-change: 0.24.2
Signed-off-by: Sebastian <sebastian@sebsite.pw>
 bufio/scanner.ha        |  4 ++--
 encoding/utf8/decode.ha | 20 ++++++++++----------
 strings/iter.ha         |  7 +++----
 3 files changed, 15 insertions(+), 16 deletions(-)

diff --git a/bufio/scanner.ha b/bufio/scanner.ha
index 8b8b6b68..199eeb93 100644
--- a/bufio/scanner.ha
@@ -206,7 +206,7 @@ export fn scan_rune(
	match (utf8::next(&dec)?) {
[message trimmed]

Re: [PATCH hare-specification] Allow pointers to not point to valid objects 20 days ago

From Sebastian to ~sircmpwn/hare-dev

On Mon May 27, 2024 at 5:55 AM EDT, Drew DeVault wrote:
> FWIW in freestanding cases it is not unheard of for there to be
> something useful at address 0. We don't currently support real mode
> (16-bit) on x86_64, but, for example, the interrupt vectors are stored
> there in this mode.

Hm, good point. In that case then yeah, we probably should mandate
allowing the null value as an address, at least in the freestanding
environment (probably easiest to just allow it everywhere).

Zig has an `allowzero` keyword for this purpose, so a pointer to address
zero is different from null. I don't think we should bother with that

Re: [PATCH hare-specification] Require pass/fail conditions to reset before each test 20 days ago

From Sebastian to ~sircmpwn/hare-dev

On Mon May 27, 2024 at 6:04 AM EDT, Drew DeVault wrote:
> For example, the "aborting from a test function shall not terminate the
> program"; maybe there's some case where an implementation would want to
> terminate the test suite on certain kinds of failures. I'm thinking
> about test suites for kernels like Bunnix, for instance a machine check
> interrupt is probably grounds to terminate the whole test suite.

My interpretation of the current wording is that it's not forbidden to
provide functions which terminate the entire program; the program just
can't terminate because of an abort. We happen to make os::exit abort
with +test, but rt::exit still works, and I don't think that's an issue.
Likewise, some abnormal conditions can still terminate the program
(like, our implementation catches segfaults and continues with the rest
of the tests, but I think an implementation which crashed in this case

Re: [RFC PATCH hare-specification] Relicense specification with the GNU FDL 20 days ago

From Sebastian to ~sircmpwn/hare-dev

I consent.

On Mon May 27, 2024 at 6:49 AM EDT, Drew DeVault wrote:
> The original intent was to prevent vendor extensions, but I think it's
> probably a moot point to enforce this via licensing the spec; it's
> easily worked around from a legal POV.

Honestly I really wish CC-BY-ND would work lol, since that would imply
that implementors actually specified their extensions, which, for
implementing hare-c, would be really fucking useful. But yeah, given
that they don't, I see no reason to not change the license.

Re: [PATCH hare-specification] Allow parentheses around offset/insert/delete operand 25 days ago

From Sebastian to ~sircmpwn/hare-dev

On Thu May 23, 2024 at 3:15 AM EDT, Lorenz (xha) wrote:
> dumb question: why?

The purpose of the spec patch is to reflect the language as it currently
stands. And as of now parentheses are allowed here by the parser, so
this should be specified in the grammar. We can of course choose to
disallow them here, but I don't think that makes much sense. It's easier
to allow them in the parser than to disallow them, and it's also more
consistent with the grammar for object-selectors (which allow
parentheses for the same reason).

[PATCH hare-specification 3/3] Add check-nonterminals lint script 25 days ago

From Sebastian to ~sircmpwn/hare-dev

This script searches the spec for any undefined \nonterminals. It also
reports duplicate \nonterminaldefs, and reports when \terminal is used
for a nonterminal (which isn't also a keyword).


Ember if you wanna rewrite this in awk go for it lol, I'm just more
familiar with shell

Signed-off-by: Sebastian <sebastian@sebsite.pw>
 .build.yml                             |  3 ++
 Makefile                               |  9 +++--
 scripts/check-nonterminals.sh          | 46 ++++++++++++++++++++++++++
[message trimmed]

[PATCH hare-specification 2/3] Change \terminal{name} to \nonterminal{name} 25 days ago

From Sebastian to ~sircmpwn/hare-dev

Signed-off-by: Sebastian <sebastian@sebsite.pw>
 language/identifier.tex | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/language/identifier.tex b/language/identifier.tex
index 902c6dd..ce53d9b 100644
--- a/language/identifier.tex
+++ b/language/identifier.tex
@@ -34,8 +34,9 @@

An \textit{identifier} is a user-defined sequence of \terminal{name} components
[message trimmed]

[PATCH hare-specification 1/3] Fix undefined nonterminals 25 days ago

From Sebastian to ~sircmpwn/hare-dev

Signed-off-by: Sebastian <sebastian@sebsite.pw>
 language/expressions.tex | 8 +++-----
 language/unit.tex        | 8 ++++----
 2 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/language/expressions.tex b/language/expressions.tex
index a542ece..3381739 100644
--- a/language/expressions.tex
+++ b/language/expressions.tex
@@ -2186,11 +2186,9 @@ result type of an assignment shall be \terminal{void}.
If the \nonterminal{assignment-op} is \terminal{=}, the
\nonterminal{assignment-target} shall be assigned the value given by the second
[message trimmed]