Skip to content

Make foldMap stack safe #22

@safareli

Description

@safareli

Running this snippet results in RangeError: Maximum call stack size exceeded:

const Identity = require('fantasy-identities')
const Free = require('@safareli/free')
const runTimes = (n) => (v) => {
  console.log(v);
  const res = Free.liftF(n)
  if (n == 0){
    return res
  }
  return res.chain(runTimes(n-1))
}
console.log(runTimes(1000000)().foldMap(Identity,Identity))

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions