Skip to content

feat: add array helpers#131

Draft
knoal wants to merge 2 commits into
aiken-lang:mainfrom
knoal:feat/1256-array-module
Draft

feat: add array helpers#131
knoal wants to merge 2 commits into
aiken-lang:mainfrom
knoal:feat/1256-array-module

Conversation

@knoal

@knoal knoal commented Jun 9, 2026

Copy link
Copy Markdown

Summary

  • add a minimal aiken/array module
  • expose safe construction and indexing helpers
  • add a bounded read-only traversal layer on top of CIP-138 arrays

Current API

from_list : List<a> -> Array<a>
length : Array<a> -> Int
is_empty : Array<a> -> Bool
at : Array<a> -> Int -> Option<a>
foldl : Array<a> -> b -> fn(a, b) -> b
foldr : Array<a> -> b -> fn(a, b) -> b
to_list : Array<a> -> List<a>
map : Array<a> -> fn(a) -> result -> Array<result>
all : Array<a> -> fn(a) -> Bool -> Bool
any : Array<a> -> fn(a) -> Bool -> Bool

Slice-4 scope

This extends the initial wrapper layer into a read-only array ergonomics core:

  • traversal/composition helpers only
  • no broader pull-array collection redesign yet
  • no syntax/literal work
  • no mutating semantics

Notes

Validation

  • module-focused check:
    • /home/alex/.openclaw/workspace/tmp/wt-1256/target/release/aiken check /home/alex/.openclaw/workspace/tmp/stdlib-1256 -m aiken/array
  • full stdlib check:
    • /home/alex/.openclaw/workspace/tmp/wt-1256/target/release/aiken check -S /home/alex/.openclaw/workspace/tmp/stdlib-1256

Commit progression

  • e6c4b0dfeat: add array helpers
  • 4cd08cffeat: add array traversal helpers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant