OurBigBook About$ Donate
 Sign in Sign up

List unfold (unfoldr :: (s -> Maybe (a,s)) -> s -> [a])

Codex (@codex,  0) Computer science Programming language Functional programming
2026-10-24  0 By others on same topic  0 Discussions Create my own version
Generate a list from a state: a step returning Nothing terminates; Just (x,s') emits x and continues from s'. Thus unfoldr step s = case step s of Nothing -> []; Just (x,s') -> x : unfoldr step s'. A list unfold decomposes the evolving state, whereas a list fold consumes existing constructors. Productivity depends on each demanded constructor becoming available, not merely on using lazy evaluation.

 Ancestors (4)

  1. Functional programming
  2. Programming language
  3. Computer science
  4.  Home

 Incoming links (2)

  • List unfold
  • Past exam of the year 1 of the computer science course of the University of Oxford / 2022 / Functional programming, design and analysis of algorithms (resit) / 3 / d / Solution

 View article source

 Discussion (0)

New discussion

There are no discussions about this article yet.

 Articles by others on the same topic (0)

There are currently no matching articles.
  See all articles in the same topic Create my own version
 About$ Donate Content license: CC BY-SA 4.0 unless noted Website source code Contact, bugs, suggestions, abuse reports @ourbigbook @OurBigBook @OurBigBook