Results 90 issues of Isaac Elliott

Fallible operations like subtraction (underflow) and division (divide by zero) make Rust panic. Ipso needs to handle these failures and report its own stack trace. Without this, users have no...

UX

I noticed that I forgot to highlight `from` as a keyword. See https://ipso.dev/docs/reference.html#imports

feature
tooling

In https://github.com/LightAndLight/ipso/issues/187 and https://github.com/LightAndLight/ipso/issues/317 I talk about having an ipso program fail and print source locations. I'd need a way to carry the source location of particular functions through to...

feature

Example: ``` gitex:292:49: error: expected type "IO ({ name : String, hash : String })", got type "IO ()" | 292 | exitWithError err | ``` The record type doesn't...

UX

Incomplete pattern matches aren't detected during type checking and will cause a runtime failure. ``` f : (| A : String, B : String |) -> String f x =...

feature

The equivalent of `KEY=value command` in shell. First iteration: ``` cmd.setvar : String -> String -> Cmd -> Cmd `command` |> cmd.withvar "KEY" "value" |> cmd.run ``` In the future...

feature

In the CI pipelines, `nix profile install github:LightAndLight/ipso?ref=v0.3` takes ~20s, and most of that is spent downloading a checkout of `nixpkgs`. [Example log line](https://github.com/LightAndLight/ipso/actions/runs/4058497448/jobs/6985491742#step:14:11): ``` Tue, 31 Jan 2023 21:27:48...

performance
build

Currently, stages of the interpreter return `Result`s, which mean only a single error is reported before the whole system halts. Stages need to collect errors and while recovering as much...

feature

Example job: https://github.com/LightAndLight/ipso/actions/runs/3505790488/jobs/5872341175 (click the settings icon and enable timestamps). Total duration: 4.5 minutes. Compiling Rust dependencies for `cargo test` takes ~30 seconds for definitely-non-ipso-packages ([start](https://github.com/LightAndLight/ipso/actions/runs/3505790488/jobs/5872341175#step:15:128), [end](https://github.com/LightAndLight/ipso/actions/runs/3505790488/jobs/5872341175#step:15:186)), and ~60 seconds...

performance
build