runtimeverification / runtimeverification/haskell-backend
kore-repl mostly ignores pipes in aliases.
Nobody has claimed this yet.
- Dominant language
- Haskell
- Stars
- 224
- Forks
- 43
- PR merge metrics
- No merged PRs in 30d
Description
To reproduce:
test.k:
module TEST
syntax KItem ::= "a" | "b"
rule a => b
endmodule
proof.k:
module PROOF
import TEST
claim a => b
endmodule
kast.kscript:
alias konfig = config | sed 's/^.*$/hello/'
alias kfg = konfig | sed 's/^.*$/hello/'
command line:
kompile test.k --backend haskell && kprove proof.k --debugger --debug-script kast.kscript
Repl:
kfg
Note that:
kfgworks in the repl, but would print an error without the--debug-scriptflagkfgprints a normal configuration, not 'hello' lines, as it would be expected.- changing the last line in
kast.kscripttoalias kfg = konfig | aksdjf 's/^.*$/hello/'makeskfgprint an error:
Kore (0)> kfg
Cannot find aksdjf executable.
That line is missing a 'the' before aksdjf, but, more importantly, it shows that the repl does not fully ignore the pipe, which makes this entire issue very confusing.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the behavior with test.k, proof.k, and kast.kscript using the shown kompile and kprove command, then inspect the kore-repl alias handling entry point. Verify nested aliases preserve pipe commands, execute the sed stages, and report missing executables consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 40/100