elmcraft / elmcraft/core-extra

Add Function.Extra!?

Open
#27 6 comments 2 reactions 0 assignees View on GitHub
new function
Dominant language
Elm
Stars
31
Forks
17
PR merge metrics
No merged PRs in 30d

Description

Not sure if there is much appetite for this, but a Core-ish type is the function type. There are a bunch of helper functions to do with functions:

- `uncurry : (a -> b -> c) -> (a, b) -> c`
- `curry : ((a, b) -> c) -> a -> b -> c`
- all sorts of function combinators: `a -> b -> b`, `(a -> c) -> (b -> c -> d) -> a -> b -> d`, yada yada
- `toFixpoint : (a -> a) -> a -> a` and perhaps `toFixpointWithLimit : Int -> (a -> a) -> a -> Result a a`
- `while : (a -> Bool) -> (a -> a) -> a -> a` and `doWhile : (a -> a) -> (a -> Bool) -> a -> a`
- `nTimes : Int -> (a -> a) -> a -> a`

etc...

Thoughts? Opinions?

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue proposes a new Function.Extra module for Elm with currying, combinators, fixpoint, looping, and repetition helpers, but names no files or tests. First review the existing core-extra modules and Elm core conventions, then narrow the API and define tests that establish the intended behavior before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
elm
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.