CakeML / CakeML/cakeml

Remove accumulator-based functions from the semantics

Open
#662 2 comments 1 reaction 0 assignees View on GitHub
refactoring
Dominant language
Standard ML
Stars
1.2k
Forks
104
Avg merge
2d 21h
Merged PRs (30d)
16

Description

Ideally, auxiliary functions used in the semantics should have the simplest possible presentation, and not use accumulators.

E.g. `pat_bindings` currently has type `pat -> list varN -> list varN` but it should be `pat > list varN`.
There might be a few other occurrences.

Contributor guide

No contributing guide indexed for this repository

Research direction

No file or test is named. Search the semantics for accumulator-based auxiliary functions, starting with pat_bindings and its current pat -> list varN -> list varN type, then trace affected definitions and uses. Done means the identified auxiliary functions no longer require accumulator arguments and their semantics remain consistent.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.