@fncts/base 0.0.28 → 0.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (797) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  2. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  3. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  4. package/_cjs/collection/Iterable/definition.cjs.map +1 -1
  5. package/_cjs/collection/Iterable.cjs.map +1 -1
  6. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  7. package/_cjs/collection/compat/Array/definition.cjs.map +1 -1
  8. package/_cjs/collection/compat/Array.cjs.map +1 -1
  9. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  10. package/_cjs/collection/compat/ArrayLike/definition.cjs.map +1 -1
  11. package/_cjs/collection/compat.cjs.map +1 -1
  12. package/_cjs/collection/immutable/Conc/api/empty.cjs.map +1 -1
  13. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  14. package/_cjs/collection/immutable/Conc/api/replicate.cjs.map +1 -1
  15. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  16. package/_cjs/collection/immutable/Conc/constructors.cjs.map +1 -1
  17. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  18. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  19. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  20. package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
  21. package/_cjs/collection/immutable/Dictionary.cjs.map +1 -1
  22. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  23. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  24. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  25. package/_cjs/collection/immutable/HashMap.cjs.map +1 -1
  26. package/_cjs/collection/immutable/HashSet/api.cjs +18 -7
  27. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  28. package/_cjs/collection/immutable/HashSet/definition.cjs +2 -2
  29. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  30. package/_cjs/collection/immutable/HashSet.cjs.map +1 -1
  31. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
  32. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
  33. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
  34. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
  35. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  36. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs.map +1 -1
  37. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
  38. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  39. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  40. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  41. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  42. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  43. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  44. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  45. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +1 -1
  46. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  47. package/_cjs/collection/immutable/List/api/unsafeTail.cjs.map +1 -1
  48. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  49. package/_cjs/collection/immutable/List/constructors.cjs.map +1 -1
  50. package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
  51. package/_cjs/collection/immutable/List.cjs.map +1 -1
  52. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  53. package/_cjs/collection/immutable/Queue/constructors.cjs.map +1 -1
  54. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  55. package/_cjs/collection/immutable/Queue/guards.cjs.map +1 -1
  56. package/_cjs/collection/immutable/Queue.cjs.map +1 -1
  57. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  58. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  59. package/_cjs/collection/immutable/RoseTree.cjs.map +1 -1
  60. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  61. package/_cjs/collection/immutable/SortedMap/definition.cjs.map +1 -1
  62. package/_cjs/collection/immutable/SortedMap/internal.cjs.map +1 -1
  63. package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
  64. package/_cjs/collection/immutable/SortedMap/node.cjs.map +1 -1
  65. package/_cjs/collection/immutable/SortedMap.cjs.map +1 -1
  66. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  67. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  68. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  69. package/_cjs/collection/immutable/Vector.cjs.map +1 -1
  70. package/_cjs/collection/immutable.cjs.map +1 -1
  71. package/_cjs/collection/mutable/HashMap.cjs +15 -0
  72. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  73. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  74. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  75. package/_cjs/collection/mutable/internal.cjs.map +1 -1
  76. package/_cjs/collection/mutable.cjs.map +1 -1
  77. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  78. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  79. package/_cjs/collection/weak.cjs.map +1 -1
  80. package/_cjs/collection.cjs.map +1 -1
  81. package/_cjs/control/CompletablePromise.cjs.map +1 -1
  82. package/_cjs/control/Eval/api/sequenceArray.cjs.map +1 -1
  83. package/_cjs/control/Eval/api.cjs +4 -1
  84. package/_cjs/control/Eval/api.cjs.map +1 -1
  85. package/_cjs/control/Eval/constructors.cjs +9 -2
  86. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  87. package/_cjs/control/Eval/definition.cjs +10 -28
  88. package/_cjs/control/Eval/definition.cjs.map +1 -1
  89. package/_cjs/control/Eval/instance.cjs.map +1 -1
  90. package/_cjs/control/Eval/run.cjs +7 -7
  91. package/_cjs/control/Eval/run.cjs.map +1 -1
  92. package/_cjs/control/Eval.cjs.map +1 -1
  93. package/_cjs/control/LazyValue.cjs.map +1 -1
  94. package/_cjs/control/{Z → Pure}/api.cjs +146 -115
  95. package/_cjs/control/Pure/api.cjs.map +1 -0
  96. package/_cjs/control/Pure/definition.cjs +78 -0
  97. package/_cjs/control/Pure/definition.cjs.map +1 -0
  98. package/_cjs/control/{Z → Pure}/instances.cjs +1 -1
  99. package/_cjs/control/Pure/instances.cjs.map +1 -0
  100. package/_cjs/control/{Z → Pure}/runtime.cjs +67 -66
  101. package/_cjs/control/Pure/runtime.cjs.map +1 -0
  102. package/_cjs/control/{Z.cjs → Pure.cjs} +5 -5
  103. package/_cjs/control/Pure.cjs.map +1 -0
  104. package/_cjs/control.cjs.map +1 -1
  105. package/_cjs/data/Branded/definition.cjs.map +1 -1
  106. package/_cjs/data/Branded.cjs.map +1 -1
  107. package/_cjs/data/Byte.cjs.map +1 -1
  108. package/_cjs/data/CaseClass.cjs.map +1 -1
  109. package/_cjs/data/Cause/api/fold.cjs +2 -2
  110. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  111. package/_cjs/data/Cause/api/isEmpty.cjs +2 -2
  112. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  113. package/_cjs/data/Cause/api/linearize.cjs +1 -1
  114. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  115. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  116. package/_cjs/data/Cause/api/unified.cjs +2 -2
  117. package/_cjs/data/Cause/api/unified.cjs.map +1 -1
  118. package/_cjs/data/Cause/api.cjs +116 -116
  119. package/_cjs/data/Cause/api.cjs.map +1 -1
  120. package/_cjs/data/Cause/definition.cjs +32 -32
  121. package/_cjs/data/Cause/definition.cjs.map +1 -1
  122. package/_cjs/data/Cause.cjs.map +1 -1
  123. package/_cjs/data/Const/api.cjs.map +1 -1
  124. package/_cjs/data/Const/definition.cjs.map +1 -1
  125. package/_cjs/data/Const/instances.cjs.map +1 -1
  126. package/_cjs/data/Const.cjs.map +1 -1
  127. package/_cjs/data/Datum/api.cjs.map +1 -1
  128. package/_cjs/data/Datum/definition.cjs.map +1 -1
  129. package/_cjs/data/Datum/instances.cjs.map +1 -1
  130. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  131. package/_cjs/data/DatumEither/definition.cjs.map +1 -1
  132. package/_cjs/data/DatumEither.cjs.map +1 -1
  133. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  134. package/_cjs/data/DecodeError/instances.cjs.map +1 -1
  135. package/_cjs/data/DecodeError.cjs.map +1 -1
  136. package/_cjs/data/Decoder/api.cjs +1 -1
  137. package/_cjs/data/Decoder/api.cjs.map +1 -1
  138. package/_cjs/data/Decoder/definition.cjs.map +1 -1
  139. package/_cjs/data/Decoder.cjs.map +1 -1
  140. package/_cjs/data/Duration/api.cjs +10 -0
  141. package/_cjs/data/Duration/api.cjs.map +1 -1
  142. package/_cjs/data/Duration/definition.cjs.map +1 -1
  143. package/_cjs/data/Duration.cjs.map +1 -1
  144. package/_cjs/data/Either/api/align.cjs.map +1 -1
  145. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  146. package/_cjs/data/Either/api.cjs.map +1 -1
  147. package/_cjs/data/Either/constructors.cjs.map +1 -1
  148. package/_cjs/data/Either/definition.cjs.map +1 -1
  149. package/_cjs/data/Either/destructors.cjs.map +1 -1
  150. package/_cjs/data/Either/instances.cjs.map +1 -1
  151. package/_cjs/data/Either.cjs.map +1 -1
  152. package/_cjs/data/EitherT/api.cjs.map +1 -1
  153. package/_cjs/data/EitherT/definition.cjs.map +1 -1
  154. package/_cjs/data/Encoder/api.cjs +1 -1
  155. package/_cjs/data/Encoder/api.cjs.map +1 -1
  156. package/_cjs/data/Encoder/definition.cjs.map +1 -1
  157. package/_cjs/data/Encoder.cjs.map +1 -1
  158. package/_cjs/data/Environment/api.cjs.map +1 -1
  159. package/_cjs/data/Environment/definition.cjs.map +1 -1
  160. package/_cjs/data/Environment.cjs.map +1 -1
  161. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  162. package/_cjs/data/Eq/api.cjs.map +1 -1
  163. package/_cjs/data/Eq/definition.cjs.map +1 -1
  164. package/_cjs/data/Eq/derivations.cjs.map +1 -1
  165. package/_cjs/data/Eq.cjs.map +1 -1
  166. package/_cjs/data/Equatable/api.cjs.map +1 -1
  167. package/_cjs/data/Equatable/definition.cjs.map +1 -1
  168. package/_cjs/data/Equatable/fast-equals.cjs.map +1 -1
  169. package/_cjs/data/Equatable.cjs.map +1 -1
  170. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  171. package/_cjs/data/Exit/api.cjs +13 -13
  172. package/_cjs/data/Exit/api.cjs.map +1 -1
  173. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  174. package/_cjs/data/Exit/definition.cjs.map +1 -1
  175. package/_cjs/data/Exit.cjs.map +1 -1
  176. package/_cjs/data/FiberId/api.cjs.map +1 -1
  177. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  178. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  179. package/_cjs/data/FiberId.cjs.map +1 -1
  180. package/_cjs/data/Guard/api.cjs +1 -1
  181. package/_cjs/data/Guard/api.cjs.map +1 -1
  182. package/_cjs/data/Guard/definition.cjs.map +1 -1
  183. package/_cjs/data/Guard.cjs.map +1 -1
  184. package/_cjs/data/Hash.cjs.map +1 -1
  185. package/_cjs/data/HashEq.cjs.map +1 -1
  186. package/_cjs/data/Hashable/definition.cjs.map +1 -1
  187. package/_cjs/data/Hashable/hash.cjs.map +1 -1
  188. package/_cjs/data/Hashable.cjs.map +1 -1
  189. package/_cjs/data/Identity/api.cjs.map +1 -1
  190. package/_cjs/data/Identity/definition.cjs.map +1 -1
  191. package/_cjs/data/Identity/instances.cjs.map +1 -1
  192. package/_cjs/data/Identity.cjs.map +1 -1
  193. package/_cjs/data/Interval.cjs.map +1 -1
  194. package/_cjs/data/Intervals.cjs.map +1 -1
  195. package/_cjs/data/Maybe/api.cjs.map +1 -1
  196. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  197. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  198. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  199. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  200. package/_cjs/data/Maybe.cjs.map +1 -1
  201. package/_cjs/data/Newtype.cjs.map +1 -1
  202. package/_cjs/data/Ord/api/contramap.cjs.map +1 -1
  203. package/_cjs/data/Ord/api/max.cjs.map +1 -1
  204. package/_cjs/data/Ord/api/min.cjs.map +1 -1
  205. package/_cjs/data/Ord/api.cjs.map +1 -1
  206. package/_cjs/data/Ord/definition.cjs.map +1 -1
  207. package/_cjs/data/Ord/instances.cjs.map +1 -1
  208. package/_cjs/data/Ord.cjs.map +1 -1
  209. package/_cjs/data/Ordering.cjs.map +1 -1
  210. package/_cjs/data/Predicate/api.cjs.map +1 -1
  211. package/_cjs/data/Predicate/definition.cjs.map +1 -1
  212. package/_cjs/data/Predicate.cjs.map +1 -1
  213. package/_cjs/data/Refinement/api.cjs.map +1 -1
  214. package/_cjs/data/Refinement/definition.cjs.map +1 -1
  215. package/_cjs/data/Refinement.cjs.map +1 -1
  216. package/_cjs/data/Showable/definition.cjs.map +1 -1
  217. package/_cjs/data/Showable/show.cjs +31 -31
  218. package/_cjs/data/Showable/show.cjs.map +1 -1
  219. package/_cjs/data/Showable/styles.cjs.map +1 -1
  220. package/_cjs/data/Showable/util.cjs.map +1 -1
  221. package/_cjs/data/Showable.cjs.map +1 -1
  222. package/_cjs/data/Struct/api.cjs.map +1 -1
  223. package/_cjs/data/Struct/definition.cjs.map +1 -1
  224. package/_cjs/data/Struct.cjs.map +1 -1
  225. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  226. package/_cjs/data/Tag/definition.cjs.map +1 -1
  227. package/_cjs/data/Tag.cjs.map +1 -1
  228. package/_cjs/data/These/api.cjs.map +1 -1
  229. package/_cjs/data/These/constructors.cjs.map +1 -1
  230. package/_cjs/data/These/definition.cjs.map +1 -1
  231. package/_cjs/data/These/destructors.cjs.map +1 -1
  232. package/_cjs/data/These/instances.cjs.map +1 -1
  233. package/_cjs/data/These.cjs.map +1 -1
  234. package/_cjs/data/Trace/api.cjs.map +1 -1
  235. package/_cjs/data/Trace/constructors.cjs.map +1 -1
  236. package/_cjs/data/Trace/definition.cjs.map +1 -1
  237. package/_cjs/data/Trace.cjs.map +1 -1
  238. package/_cjs/data/TraceElement/definition.cjs.map +1 -1
  239. package/_cjs/data/TraceElement.cjs.map +1 -1
  240. package/_cjs/data/Zipped.cjs.map +1 -1
  241. package/_cjs/data/bigint/definition.cjs.map +1 -1
  242. package/_cjs/data/bigint/instances.cjs.map +1 -1
  243. package/_cjs/data/bigint.cjs.map +1 -1
  244. package/_cjs/data/boolean/definition.cjs.map +1 -1
  245. package/_cjs/data/boolean/instances.cjs.map +1 -1
  246. package/_cjs/data/boolean.cjs.map +1 -1
  247. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
  248. package/_cjs/data/exceptions/IOError.cjs.map +1 -1
  249. package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
  250. package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
  251. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
  252. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  253. package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
  254. package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
  255. package/_cjs/data/exceptions/RuntimeError.cjs.map +1 -1
  256. package/_cjs/data/exceptions.cjs.map +1 -1
  257. package/_cjs/data/function/api.cjs.map +1 -1
  258. package/_cjs/data/function/definition.cjs.map +1 -1
  259. package/_cjs/data/function/pipe.cjs.map +1 -1
  260. package/_cjs/data/function.cjs.map +1 -1
  261. package/_cjs/data/number/api.cjs.map +1 -1
  262. package/_cjs/data/number/definition.cjs.map +1 -1
  263. package/_cjs/data/number/instances.cjs.map +1 -1
  264. package/_cjs/data/number.cjs.map +1 -1
  265. package/_cjs/data/object/definition.cjs.map +1 -1
  266. package/_cjs/data/object/instances.cjs.map +1 -1
  267. package/_cjs/data/object.cjs.map +1 -1
  268. package/_cjs/data/string/api.cjs.map +1 -1
  269. package/_cjs/data/string/definition.cjs.map +1 -1
  270. package/_cjs/data/string/instances.cjs.map +1 -1
  271. package/_cjs/data/string.cjs.map +1 -1
  272. package/_cjs/data.cjs.map +1 -1
  273. package/_cjs/global/api.cjs.map +1 -1
  274. package/_cjs/global.cjs.map +1 -1
  275. package/_cjs/index.cjs.map +1 -1
  276. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  277. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  278. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  279. package/_cjs/internal/Stack.cjs.map +1 -1
  280. package/_cjs/json/EitherJson.cjs.map +1 -1
  281. package/_cjs/json/MaybeJson.cjs.map +1 -1
  282. package/_cjs/json/TheseJson.cjs.map +1 -1
  283. package/_cjs/json.cjs.map +1 -1
  284. package/_cjs/optics/At/api.cjs.map +1 -1
  285. package/_cjs/optics/At/definition.cjs.map +1 -1
  286. package/_cjs/optics/At.cjs.map +1 -1
  287. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  288. package/_cjs/optics/Fold.cjs.map +1 -1
  289. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  290. package/_cjs/optics/Getter.cjs.map +1 -1
  291. package/_cjs/optics/Index/api.cjs.map +1 -1
  292. package/_cjs/optics/Index/definition.cjs.map +1 -1
  293. package/_cjs/optics/Index.cjs.map +1 -1
  294. package/_cjs/optics/Iso/api.cjs.map +1 -1
  295. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  296. package/_cjs/optics/Iso.cjs.map +1 -1
  297. package/_cjs/optics/Lens/api.cjs.map +1 -1
  298. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  299. package/_cjs/optics/Lens.cjs.map +1 -1
  300. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  301. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  302. package/_cjs/optics/Optional.cjs.map +1 -1
  303. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  304. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  305. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  306. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  307. package/_cjs/optics/Prism.cjs.map +1 -1
  308. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  309. package/_cjs/optics/Setter.cjs.map +1 -1
  310. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  311. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  312. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  313. package/_cjs/optics/Traversal.cjs.map +1 -1
  314. package/_cjs/optics.cjs.map +1 -1
  315. package/_cjs/typeclass/Align.cjs.map +1 -1
  316. package/_cjs/typeclass/Alt.cjs.map +1 -1
  317. package/_cjs/typeclass/Alternative.cjs.map +1 -1
  318. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  319. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  320. package/_cjs/typeclass/Apply.cjs.map +1 -1
  321. package/_cjs/typeclass/Chain.cjs.map +1 -1
  322. package/_cjs/typeclass/Closure.cjs.map +1 -1
  323. package/_cjs/typeclass/Fail.cjs.map +1 -1
  324. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  325. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  326. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  327. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  328. package/_cjs/typeclass/Functor.cjs.map +1 -1
  329. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  330. package/_cjs/typeclass/Has.cjs.map +1 -1
  331. package/_cjs/typeclass/Monad.cjs.map +1 -1
  332. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  333. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  334. package/_cjs/typeclass/Nil.cjs.map +1 -1
  335. package/_cjs/typeclass/Pointed.cjs.map +1 -1
  336. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  337. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  338. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  339. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  340. package/_cjs/typeclass/Semigroup.cjs.map +1 -1
  341. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  342. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  343. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  344. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  345. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  346. package/_cjs/typeclass/builtin/Symbol.cjs.map +1 -1
  347. package/_cjs/typeclass/builtin.cjs.map +1 -1
  348. package/_cjs/typeclass.cjs.map +1 -1
  349. package/_cjs/types/extractions.cjs.map +1 -1
  350. package/_cjs/types/utility.cjs.map +1 -1
  351. package/_cjs/types.cjs.map +1 -1
  352. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  353. package/_cjs/util/PCGRandom.cjs.map +1 -1
  354. package/_cjs/util/assert.cjs.map +1 -1
  355. package/_cjs/util/pattern.cjs.map +1 -1
  356. package/_cjs/util/predicates.cjs.map +1 -1
  357. package/_cjs/util/rand/Random.cjs.map +1 -1
  358. package/_cjs/util/rand/distribution/Distribution.cjs.map +1 -1
  359. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  360. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  361. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  362. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  363. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  364. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  365. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  366. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  367. package/_cjs/util/rand.cjs.map +1 -1
  368. package/_cjs/util.cjs.map +1 -1
  369. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  370. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  371. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  372. package/_mjs/collection/Iterable/definition.mjs.map +1 -1
  373. package/_mjs/collection/Iterable.mjs.map +1 -1
  374. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  375. package/_mjs/collection/compat/Array/definition.mjs.map +1 -1
  376. package/_mjs/collection/compat/Array.mjs.map +1 -1
  377. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  378. package/_mjs/collection/compat/ArrayLike/definition.mjs.map +1 -1
  379. package/_mjs/collection/compat.mjs.map +1 -1
  380. package/_mjs/collection/immutable/Conc/api/empty.mjs.map +1 -1
  381. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  382. package/_mjs/collection/immutable/Conc/api/replicate.mjs.map +1 -1
  383. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  384. package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
  385. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  386. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  387. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  388. package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
  389. package/_mjs/collection/immutable/Dictionary.mjs.map +1 -1
  390. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  391. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  392. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  393. package/_mjs/collection/immutable/HashMap.mjs.map +1 -1
  394. package/_mjs/collection/immutable/HashSet/api.mjs +17 -7
  395. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  396. package/_mjs/collection/immutable/HashSet/definition.mjs +2 -2
  397. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  398. package/_mjs/collection/immutable/HashSet.mjs.map +1 -1
  399. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  400. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  401. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  402. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  403. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  404. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +1 -1
  405. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  406. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  407. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  408. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  409. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  410. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  411. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  412. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  413. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
  414. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  415. package/_mjs/collection/immutable/List/api/unsafeTail.mjs.map +1 -1
  416. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  417. package/_mjs/collection/immutable/List/constructors.mjs.map +1 -1
  418. package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
  419. package/_mjs/collection/immutable/List.mjs.map +1 -1
  420. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  421. package/_mjs/collection/immutable/Queue/constructors.mjs.map +1 -1
  422. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  423. package/_mjs/collection/immutable/Queue/guards.mjs.map +1 -1
  424. package/_mjs/collection/immutable/Queue.mjs.map +1 -1
  425. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  426. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  427. package/_mjs/collection/immutable/RoseTree.mjs.map +1 -1
  428. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  429. package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
  430. package/_mjs/collection/immutable/SortedMap/internal.mjs.map +1 -1
  431. package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
  432. package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
  433. package/_mjs/collection/immutable/SortedMap.mjs.map +1 -1
  434. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  435. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  436. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  437. package/_mjs/collection/immutable/Vector.mjs.map +1 -1
  438. package/_mjs/collection/immutable.mjs.map +1 -1
  439. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  440. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  441. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  442. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  443. package/_mjs/collection/mutable.mjs.map +1 -1
  444. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  445. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  446. package/_mjs/collection/weak.mjs.map +1 -1
  447. package/_mjs/collection.mjs.map +1 -1
  448. package/_mjs/control/CompletablePromise.mjs.map +1 -1
  449. package/_mjs/control/Eval/api/sequenceArray.mjs.map +1 -1
  450. package/_mjs/control/Eval/api.mjs +5 -2
  451. package/_mjs/control/Eval/api.mjs.map +1 -1
  452. package/_mjs/control/Eval/constructors.mjs +10 -3
  453. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  454. package/_mjs/control/Eval/definition.mjs +7 -25
  455. package/_mjs/control/Eval/definition.mjs.map +1 -1
  456. package/_mjs/control/Eval/instance.mjs.map +1 -1
  457. package/_mjs/control/Eval/run.mjs +7 -7
  458. package/_mjs/control/Eval/run.mjs.map +1 -1
  459. package/_mjs/control/Eval.mjs.map +1 -1
  460. package/_mjs/control/LazyValue.mjs.map +1 -1
  461. package/_mjs/control/{Z → Pure}/api.mjs +134 -104
  462. package/_mjs/control/Pure/api.mjs.map +1 -0
  463. package/_mjs/control/Pure/definition.mjs +60 -0
  464. package/_mjs/control/Pure/definition.mjs.map +1 -0
  465. package/_mjs/control/{Z → Pure}/instances.mjs +1 -1
  466. package/_mjs/control/Pure/instances.mjs.map +1 -0
  467. package/_mjs/control/{Z → Pure}/runtime.mjs +68 -67
  468. package/_mjs/control/Pure/runtime.mjs.map +1 -0
  469. package/_mjs/control/Pure.mjs +6 -0
  470. package/_mjs/control/Pure.mjs.map +1 -0
  471. package/_mjs/control.mjs.map +1 -1
  472. package/_mjs/data/Branded/definition.mjs.map +1 -1
  473. package/_mjs/data/Branded.mjs.map +1 -1
  474. package/_mjs/data/Byte.mjs.map +1 -1
  475. package/_mjs/data/CaseClass.mjs.map +1 -1
  476. package/_mjs/data/Cause/api/fold.mjs +2 -2
  477. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  478. package/_mjs/data/Cause/api/isEmpty.mjs +2 -2
  479. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  480. package/_mjs/data/Cause/api/linearize.mjs +2 -2
  481. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  482. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  483. package/_mjs/data/Cause/api/unified.mjs +2 -2
  484. package/_mjs/data/Cause/api/unified.mjs.map +1 -1
  485. package/_mjs/data/Cause/api.mjs +112 -112
  486. package/_mjs/data/Cause/api.mjs.map +1 -1
  487. package/_mjs/data/Cause/definition.mjs +29 -29
  488. package/_mjs/data/Cause/definition.mjs.map +1 -1
  489. package/_mjs/data/Cause.mjs.map +1 -1
  490. package/_mjs/data/Const/api.mjs.map +1 -1
  491. package/_mjs/data/Const/definition.mjs.map +1 -1
  492. package/_mjs/data/Const/instances.mjs.map +1 -1
  493. package/_mjs/data/Const.mjs.map +1 -1
  494. package/_mjs/data/Datum/api.mjs.map +1 -1
  495. package/_mjs/data/Datum/definition.mjs.map +1 -1
  496. package/_mjs/data/Datum/instances.mjs.map +1 -1
  497. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  498. package/_mjs/data/DatumEither/definition.mjs.map +1 -1
  499. package/_mjs/data/DatumEither.mjs.map +1 -1
  500. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  501. package/_mjs/data/DecodeError/instances.mjs.map +1 -1
  502. package/_mjs/data/DecodeError.mjs.map +1 -1
  503. package/_mjs/data/Decoder/api.mjs +1 -1
  504. package/_mjs/data/Decoder/api.mjs.map +1 -1
  505. package/_mjs/data/Decoder/definition.mjs.map +1 -1
  506. package/_mjs/data/Decoder.mjs.map +1 -1
  507. package/_mjs/data/Duration/api.mjs +9 -0
  508. package/_mjs/data/Duration/api.mjs.map +1 -1
  509. package/_mjs/data/Duration/definition.mjs.map +1 -1
  510. package/_mjs/data/Duration.mjs.map +1 -1
  511. package/_mjs/data/Either/api/align.mjs.map +1 -1
  512. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  513. package/_mjs/data/Either/api.mjs.map +1 -1
  514. package/_mjs/data/Either/constructors.mjs.map +1 -1
  515. package/_mjs/data/Either/definition.mjs.map +1 -1
  516. package/_mjs/data/Either/destructors.mjs.map +1 -1
  517. package/_mjs/data/Either/instances.mjs.map +1 -1
  518. package/_mjs/data/Either.mjs.map +1 -1
  519. package/_mjs/data/EitherT/api.mjs.map +1 -1
  520. package/_mjs/data/EitherT/definition.mjs.map +1 -1
  521. package/_mjs/data/Encoder/api.mjs +1 -1
  522. package/_mjs/data/Encoder/api.mjs.map +1 -1
  523. package/_mjs/data/Encoder/definition.mjs.map +1 -1
  524. package/_mjs/data/Encoder.mjs.map +1 -1
  525. package/_mjs/data/Environment/api.mjs.map +1 -1
  526. package/_mjs/data/Environment/definition.mjs.map +1 -1
  527. package/_mjs/data/Environment.mjs.map +1 -1
  528. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  529. package/_mjs/data/Eq/api.mjs.map +1 -1
  530. package/_mjs/data/Eq/definition.mjs.map +1 -1
  531. package/_mjs/data/Eq/derivations.mjs.map +1 -1
  532. package/_mjs/data/Eq.mjs.map +1 -1
  533. package/_mjs/data/Equatable/api.mjs.map +1 -1
  534. package/_mjs/data/Equatable/definition.mjs.map +1 -1
  535. package/_mjs/data/Equatable/fast-equals.mjs.map +1 -1
  536. package/_mjs/data/Equatable.mjs.map +1 -1
  537. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  538. package/_mjs/data/Exit/api.mjs +13 -13
  539. package/_mjs/data/Exit/api.mjs.map +1 -1
  540. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  541. package/_mjs/data/Exit/definition.mjs.map +1 -1
  542. package/_mjs/data/Exit.mjs.map +1 -1
  543. package/_mjs/data/FiberId/api.mjs.map +1 -1
  544. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  545. package/_mjs/data/FiberId/definition.mjs.map +1 -1
  546. package/_mjs/data/FiberId.mjs.map +1 -1
  547. package/_mjs/data/Guard/api.mjs +1 -1
  548. package/_mjs/data/Guard/api.mjs.map +1 -1
  549. package/_mjs/data/Guard/definition.mjs.map +1 -1
  550. package/_mjs/data/Guard.mjs.map +1 -1
  551. package/_mjs/data/Hash.mjs.map +1 -1
  552. package/_mjs/data/HashEq.mjs.map +1 -1
  553. package/_mjs/data/Hashable/definition.mjs.map +1 -1
  554. package/_mjs/data/Hashable/hash.mjs.map +1 -1
  555. package/_mjs/data/Hashable.mjs.map +1 -1
  556. package/_mjs/data/Identity/api.mjs.map +1 -1
  557. package/_mjs/data/Identity/definition.mjs.map +1 -1
  558. package/_mjs/data/Identity/instances.mjs.map +1 -1
  559. package/_mjs/data/Identity.mjs.map +1 -1
  560. package/_mjs/data/Interval.mjs.map +1 -1
  561. package/_mjs/data/Intervals.mjs.map +1 -1
  562. package/_mjs/data/Maybe/api.mjs.map +1 -1
  563. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  564. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  565. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  566. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  567. package/_mjs/data/Maybe.mjs.map +1 -1
  568. package/_mjs/data/Newtype.mjs.map +1 -1
  569. package/_mjs/data/Ord/api/contramap.mjs.map +1 -1
  570. package/_mjs/data/Ord/api/max.mjs.map +1 -1
  571. package/_mjs/data/Ord/api/min.mjs.map +1 -1
  572. package/_mjs/data/Ord/api.mjs.map +1 -1
  573. package/_mjs/data/Ord/definition.mjs.map +1 -1
  574. package/_mjs/data/Ord/instances.mjs.map +1 -1
  575. package/_mjs/data/Ord.mjs.map +1 -1
  576. package/_mjs/data/Ordering.mjs.map +1 -1
  577. package/_mjs/data/Predicate/api.mjs.map +1 -1
  578. package/_mjs/data/Predicate/definition.mjs.map +1 -1
  579. package/_mjs/data/Predicate.mjs.map +1 -1
  580. package/_mjs/data/Refinement/api.mjs.map +1 -1
  581. package/_mjs/data/Refinement/definition.mjs.map +1 -1
  582. package/_mjs/data/Refinement.mjs.map +1 -1
  583. package/_mjs/data/Showable/definition.mjs.map +1 -1
  584. package/_mjs/data/Showable/show.mjs +31 -31
  585. package/_mjs/data/Showable/show.mjs.map +1 -1
  586. package/_mjs/data/Showable/styles.mjs.map +1 -1
  587. package/_mjs/data/Showable/util.mjs.map +1 -1
  588. package/_mjs/data/Showable.mjs.map +1 -1
  589. package/_mjs/data/Struct/api.mjs.map +1 -1
  590. package/_mjs/data/Struct/definition.mjs.map +1 -1
  591. package/_mjs/data/Struct.mjs.map +1 -1
  592. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  593. package/_mjs/data/Tag/definition.mjs.map +1 -1
  594. package/_mjs/data/Tag.mjs.map +1 -1
  595. package/_mjs/data/These/api.mjs.map +1 -1
  596. package/_mjs/data/These/constructors.mjs.map +1 -1
  597. package/_mjs/data/These/definition.mjs.map +1 -1
  598. package/_mjs/data/These/destructors.mjs.map +1 -1
  599. package/_mjs/data/These/instances.mjs.map +1 -1
  600. package/_mjs/data/These.mjs.map +1 -1
  601. package/_mjs/data/Trace/api.mjs.map +1 -1
  602. package/_mjs/data/Trace/constructors.mjs.map +1 -1
  603. package/_mjs/data/Trace/definition.mjs.map +1 -1
  604. package/_mjs/data/Trace.mjs.map +1 -1
  605. package/_mjs/data/TraceElement/definition.mjs.map +1 -1
  606. package/_mjs/data/TraceElement.mjs.map +1 -1
  607. package/_mjs/data/Zipped.mjs.map +1 -1
  608. package/_mjs/data/bigint/definition.mjs.map +1 -1
  609. package/_mjs/data/bigint/instances.mjs.map +1 -1
  610. package/_mjs/data/bigint.mjs.map +1 -1
  611. package/_mjs/data/boolean/definition.mjs.map +1 -1
  612. package/_mjs/data/boolean/instances.mjs.map +1 -1
  613. package/_mjs/data/boolean.mjs.map +1 -1
  614. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
  615. package/_mjs/data/exceptions/IOError.mjs.map +1 -1
  616. package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
  617. package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
  618. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
  619. package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
  620. package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
  621. package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
  622. package/_mjs/data/exceptions/RuntimeError.mjs.map +1 -1
  623. package/_mjs/data/exceptions.mjs.map +1 -1
  624. package/_mjs/data/function/api.mjs.map +1 -1
  625. package/_mjs/data/function/definition.mjs.map +1 -1
  626. package/_mjs/data/function/pipe.mjs.map +1 -1
  627. package/_mjs/data/function.mjs.map +1 -1
  628. package/_mjs/data/number/api.mjs.map +1 -1
  629. package/_mjs/data/number/definition.mjs.map +1 -1
  630. package/_mjs/data/number/instances.mjs.map +1 -1
  631. package/_mjs/data/number.mjs.map +1 -1
  632. package/_mjs/data/object/definition.mjs.map +1 -1
  633. package/_mjs/data/object/instances.mjs.map +1 -1
  634. package/_mjs/data/object.mjs.map +1 -1
  635. package/_mjs/data/string/api.mjs.map +1 -1
  636. package/_mjs/data/string/definition.mjs.map +1 -1
  637. package/_mjs/data/string/instances.mjs.map +1 -1
  638. package/_mjs/data/string.mjs.map +1 -1
  639. package/_mjs/data.mjs.map +1 -1
  640. package/_mjs/global/api.mjs.map +1 -1
  641. package/_mjs/global.mjs.map +1 -1
  642. package/_mjs/index.mjs.map +1 -1
  643. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  644. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  645. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  646. package/_mjs/internal/Stack.mjs.map +1 -1
  647. package/_mjs/json/EitherJson.mjs.map +1 -1
  648. package/_mjs/json/MaybeJson.mjs.map +1 -1
  649. package/_mjs/json/TheseJson.mjs.map +1 -1
  650. package/_mjs/json.mjs.map +1 -1
  651. package/_mjs/optics/At/api.mjs.map +1 -1
  652. package/_mjs/optics/At/definition.mjs.map +1 -1
  653. package/_mjs/optics/At.mjs.map +1 -1
  654. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  655. package/_mjs/optics/Fold.mjs.map +1 -1
  656. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  657. package/_mjs/optics/Getter.mjs.map +1 -1
  658. package/_mjs/optics/Index/api.mjs.map +1 -1
  659. package/_mjs/optics/Index/definition.mjs.map +1 -1
  660. package/_mjs/optics/Index.mjs.map +1 -1
  661. package/_mjs/optics/Iso/api.mjs.map +1 -1
  662. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  663. package/_mjs/optics/Iso.mjs.map +1 -1
  664. package/_mjs/optics/Lens/api.mjs.map +1 -1
  665. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  666. package/_mjs/optics/Lens.mjs.map +1 -1
  667. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  668. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  669. package/_mjs/optics/Optional.mjs.map +1 -1
  670. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  671. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  672. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  673. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  674. package/_mjs/optics/Prism.mjs.map +1 -1
  675. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  676. package/_mjs/optics/Setter.mjs.map +1 -1
  677. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  678. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  679. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  680. package/_mjs/optics/Traversal.mjs.map +1 -1
  681. package/_mjs/optics.mjs.map +1 -1
  682. package/_mjs/typeclass/Align.mjs.map +1 -1
  683. package/_mjs/typeclass/Alt.mjs.map +1 -1
  684. package/_mjs/typeclass/Alternative.mjs.map +1 -1
  685. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  686. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  687. package/_mjs/typeclass/Apply.mjs.map +1 -1
  688. package/_mjs/typeclass/Chain.mjs.map +1 -1
  689. package/_mjs/typeclass/Closure.mjs.map +1 -1
  690. package/_mjs/typeclass/Fail.mjs.map +1 -1
  691. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  692. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  693. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  694. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  695. package/_mjs/typeclass/Functor.mjs.map +1 -1
  696. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  697. package/_mjs/typeclass/Has.mjs.map +1 -1
  698. package/_mjs/typeclass/Monad.mjs.map +1 -1
  699. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  700. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  701. package/_mjs/typeclass/Nil.mjs.map +1 -1
  702. package/_mjs/typeclass/Pointed.mjs.map +1 -1
  703. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  704. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  705. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  706. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  707. package/_mjs/typeclass/Semigroup.mjs.map +1 -1
  708. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  709. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  710. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  711. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  712. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  713. package/_mjs/typeclass/builtin/Symbol.mjs.map +1 -1
  714. package/_mjs/typeclass/builtin.mjs.map +1 -1
  715. package/_mjs/typeclass.mjs.map +1 -1
  716. package/_mjs/types/extractions.mjs.map +1 -1
  717. package/_mjs/types/utility.mjs.map +1 -1
  718. package/_mjs/types.mjs.map +1 -1
  719. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  720. package/_mjs/util/PCGRandom.mjs.map +1 -1
  721. package/_mjs/util/assert.mjs.map +1 -1
  722. package/_mjs/util/pattern.mjs.map +1 -1
  723. package/_mjs/util/predicates.mjs.map +1 -1
  724. package/_mjs/util/rand/Random.mjs.map +1 -1
  725. package/_mjs/util/rand/distribution/Distribution.mjs.map +1 -1
  726. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  727. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  728. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  729. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  730. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  731. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  732. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  733. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  734. package/_mjs/util/rand.mjs.map +1 -1
  735. package/_mjs/util.mjs.map +1 -1
  736. package/_src/collection/immutable/HashSet/api.ts +12 -1
  737. package/_src/collection/immutable/HashSet/definition.ts +2 -2
  738. package/_src/control/Eval/api.ts +5 -2
  739. package/_src/control/Eval/constructors.ts +10 -3
  740. package/_src/control/Eval/definition.ts +39 -27
  741. package/_src/control/Eval/run.ts +7 -7
  742. package/_src/control/Pure/api.ts +629 -0
  743. package/_src/control/Pure/definition.ts +222 -0
  744. package/_src/control/{Z → Pure}/instances.ts +3 -3
  745. package/_src/control/{Z → Pure}/runtime.ts +73 -76
  746. package/_src/control/Pure.ts +6 -0
  747. package/_src/control.ts +1 -1
  748. package/_src/data/Cause/api/fold.ts +2 -2
  749. package/_src/data/Cause/api/isEmpty.ts +2 -2
  750. package/_src/data/Cause/api/linearize.ts +2 -2
  751. package/_src/data/Cause/api/unified.ts +2 -2
  752. package/_src/data/Cause/api.ts +66 -55
  753. package/_src/data/Cause/definition.ts +59 -59
  754. package/_src/data/Decoder/api.ts +1 -1
  755. package/_src/data/Duration/api.ts +10 -0
  756. package/_src/data/Encoder/api.ts +1 -1
  757. package/_src/data/Exit/api.ts +12 -8
  758. package/_src/data/Guard/api.ts +1 -1
  759. package/_src/data/Showable/show.ts +55 -53
  760. package/_src/global.ts +1 -1
  761. package/collection/immutable/HashSet/api.d.ts +5 -0
  762. package/collection/immutable/HashSet/definition.d.ts +1 -1
  763. package/control/Eval/constructors.d.ts +4 -0
  764. package/control/Eval/definition.d.ts +25 -28
  765. package/control/Pure/api.d.ts +345 -0
  766. package/control/Pure/definition.d.ts +156 -0
  767. package/control/Pure/instances.d.ts +8 -0
  768. package/control/Pure/runtime.d.ts +56 -0
  769. package/control/Pure.d.ts +4 -0
  770. package/control.d.ts +1 -1
  771. package/data/Cause/api.d.ts +9 -9
  772. package/data/Cause/definition.d.ts +15 -14
  773. package/data/Duration/api.d.ts +6 -0
  774. package/data/Showable/show.d.ts +2 -2
  775. package/global.d.ts +1 -1
  776. package/package.json +1 -1
  777. package/_cjs/control/Z/api.cjs.map +0 -1
  778. package/_cjs/control/Z/definition.cjs +0 -163
  779. package/_cjs/control/Z/definition.cjs.map +0 -1
  780. package/_cjs/control/Z/instances.cjs.map +0 -1
  781. package/_cjs/control/Z/runtime.cjs.map +0 -1
  782. package/_cjs/control/Z.cjs.map +0 -1
  783. package/_mjs/control/Z/api.mjs.map +0 -1
  784. package/_mjs/control/Z/definition.mjs +0 -145
  785. package/_mjs/control/Z/definition.mjs.map +0 -1
  786. package/_mjs/control/Z/instances.mjs.map +0 -1
  787. package/_mjs/control/Z/runtime.mjs.map +0 -1
  788. package/_mjs/control/Z.mjs +0 -6
  789. package/_mjs/control/Z.mjs.map +0 -1
  790. package/_src/control/Z/api.ts +0 -590
  791. package/_src/control/Z/definition.ts +0 -199
  792. package/_src/control/Z.ts +0 -6
  793. package/control/Z/api.d.ts +0 -345
  794. package/control/Z/definition.d.ts +0 -151
  795. package/control/Z/instances.d.ts +0 -8
  796. package/control/Z/runtime.d.ts +0 -56
  797. package/control/Z.d.ts +0 -4
@@ -0,0 +1,222 @@
1
+ export interface PureF extends HKT {
2
+ type: Pure<this["W"], this["S"], this["S"], this["R"], this["E"], this["A"]>;
3
+ variance: {
4
+ W: "+";
5
+ S: "_";
6
+ R: "-";
7
+ E: "+";
8
+ A: "+";
9
+ };
10
+ }
11
+
12
+ export const PureVariance = Symbol.for("fncts.Pure.Variance");
13
+ export type PureVariance = typeof PureVariance;
14
+
15
+ export const PureTypeId = Symbol.for("fncts.Pure");
16
+ export type PureTypeId = typeof PureTypeId;
17
+
18
+ /**
19
+ * `Pure<W, S1, S2, R, E, A>` is a purely functional description of a synchronous computation
20
+ * that requires an environment `R` and an initial state `S1` and may either
21
+ * fail with an `E` or succeed with an updated state `S2` and an `A`. Because
22
+ * of its polymorphism `Z` can be used to model a variety of effects
23
+ * including context, state, failure, and logging.
24
+ *
25
+ * @tsplus type fncts.control.Pure
26
+ * @tsplus companion fncts.control.PureOps
27
+ */
28
+ export abstract class Pure<W, S1, S2, R, E, A> {
29
+ readonly [PureTypeId]: PureTypeId = PureTypeId;
30
+ declare [PureVariance]: {
31
+ readonly _W: (_: never) => W;
32
+ readonly _S1: (_: S1) => void;
33
+ readonly _S2: (_: never) => S2;
34
+ readonly _R: (_: never) => R;
35
+ readonly _E: (_: never) => E;
36
+ readonly _A: (_: never) => A;
37
+ };
38
+ }
39
+
40
+ /**
41
+ * @tsplus unify fncts.control.Pure
42
+ */
43
+ export function unifyPure<X extends Pure<any, any, any, any, any, any>>(
44
+ _: X,
45
+ ): Pure<
46
+ [X] extends [Pure<infer W, any, any, any, any, any>] ? W : never,
47
+ [X] extends [Pure<any, infer S1, any, any, any, any>] ? S1 : never,
48
+ [X] extends [Pure<any, any, infer S2, any, any, any>] ? S2 : never,
49
+ [X] extends [Pure<any, any, any, infer R, any, any>] ? R : never,
50
+ [X] extends [Pure<any, any, any, any, infer E, any>] ? E : never,
51
+ [X] extends [Pure<any, any, any, any, any, infer A>] ? A : never
52
+ > {
53
+ return _;
54
+ }
55
+
56
+ export class PurePrimitive {
57
+ readonly [PureTypeId]: PureTypeId = PureTypeId;
58
+ declare [PureVariance]: {
59
+ readonly _W: (_: never) => never;
60
+ readonly _S1: (_: unknown) => void;
61
+ readonly _S2: (_: never) => never;
62
+ readonly _R: (_: never) => never;
63
+ readonly _E: (_: never) => never;
64
+ readonly _A: (_: never) => never;
65
+ };
66
+ constructor(readonly _tag: unknown) {}
67
+ readonly i0: unknown = undefined;
68
+ readonly i1: unknown = undefined;
69
+ readonly i2: unknown = undefined;
70
+ }
71
+
72
+ /**
73
+ * @tsplus static fncts.control.PureOps isPure
74
+ */
75
+ export function isPure(u: unknown): u is Pure<unknown, unknown, unknown, unknown, unknown, unknown> {
76
+ return isObject(u) && PureTypeId in u;
77
+ }
78
+
79
+ export const enum PureTag {
80
+ SucceedNow,
81
+ Succeed,
82
+ Defer,
83
+ Fail,
84
+ Modify,
85
+ Chain,
86
+ Match,
87
+ Access,
88
+ Provide,
89
+ Tell,
90
+ Listen,
91
+ MapLog,
92
+ }
93
+
94
+ export type PureOp<Tag extends number, Body = {}> = PurePrimitive &
95
+ Body & {
96
+ _tag: Tag;
97
+ };
98
+
99
+ export interface SucceedNow
100
+ extends PureOp<
101
+ PureTag.SucceedNow,
102
+ {
103
+ readonly i0: any;
104
+ }
105
+ > {}
106
+
107
+ export interface Succeed
108
+ extends PureOp<
109
+ PureTag.Succeed,
110
+ {
111
+ readonly i0: () => any;
112
+ }
113
+ > {}
114
+
115
+ export interface Defer
116
+ extends PureOp<
117
+ PureTag.Defer,
118
+ {
119
+ readonly i0: () => Primitive;
120
+ }
121
+ > {}
122
+
123
+ export interface Fail
124
+ extends PureOp<
125
+ PureTag.Fail,
126
+ {
127
+ readonly i0: Cause<unknown>;
128
+ }
129
+ > {}
130
+
131
+ export interface Modify
132
+ extends PureOp<
133
+ PureTag.Modify,
134
+ {
135
+ readonly i0: (s1: any) => readonly [any, any];
136
+ }
137
+ > {}
138
+
139
+ export interface FlatMap
140
+ extends PureOp<
141
+ PureTag.Chain,
142
+ {
143
+ readonly i0: Primitive;
144
+ readonly i1: (a: any) => Primitive;
145
+ }
146
+ > {}
147
+
148
+ export interface Match
149
+ extends PureOp<
150
+ PureTag.Match,
151
+ {
152
+ readonly i0: Primitive;
153
+ readonly i1: (ws: Conc<any>, e: Cause<unknown>) => Primitive;
154
+ readonly i2: (ws: Conc<any>, a: any) => Primitive;
155
+ }
156
+ > {}
157
+
158
+ export interface Access
159
+ extends PureOp<
160
+ PureTag.Access,
161
+ {
162
+ readonly i0: (r: Environment<any>) => Primitive;
163
+ }
164
+ > {}
165
+
166
+ export interface Provide
167
+ extends PureOp<
168
+ PureTag.Provide,
169
+ {
170
+ readonly i0: Primitive;
171
+ readonly i1: Environment<any>;
172
+ }
173
+ > {}
174
+
175
+ export interface Tell
176
+ extends PureOp<
177
+ PureTag.Tell,
178
+ {
179
+ readonly i0: Conc<any>;
180
+ }
181
+ > {}
182
+
183
+ export interface MapLog
184
+ extends PureOp<
185
+ PureTag.MapLog,
186
+ {
187
+ readonly i0: Primitive;
188
+ readonly i1: (ws: Conc<any>) => Conc<any>;
189
+ }
190
+ > {}
191
+
192
+ export type Primitive =
193
+ | SucceedNow
194
+ | Fail
195
+ | Modify
196
+ | FlatMap
197
+ | Match
198
+ | Access
199
+ | Provide
200
+ | Defer
201
+ | Succeed
202
+ | Tell
203
+ | MapLog;
204
+
205
+ /**
206
+ * @tsplus static fncts.control.PureOps concrete
207
+ */
208
+ export function concrete(_: Pure<any, any, any, any, any, any>): asserts _ is Primitive {
209
+ //
210
+ }
211
+
212
+ export const PureErrorTypeId = Symbol.for("fncts.Pure.ZError");
213
+ export type PureErrorTypeId = typeof PureErrorTypeId;
214
+
215
+ export class PureError<E> {
216
+ readonly [PureErrorTypeId]: PureErrorTypeId = PureErrorTypeId;
217
+ constructor(readonly cause: Cause<E>) {}
218
+ }
219
+
220
+ export function isPureError(u: unknown): u is PureError<unknown> {
221
+ return isObject(u) && PureErrorTypeId in u;
222
+ }
@@ -1,12 +1,12 @@
1
1
  import type * as P from "../../typeclass.js";
2
- import type { ZF } from "./definition.js";
2
+ import type { PureF } from "./definition.js";
3
3
 
4
4
  import { map, succeedNow, zip, zipWith } from "./api.js";
5
5
  /**
6
- * @tsplus static fncts.control.ZOps Applicative
6
+ * @tsplus static fncts.control.PureOps Applicative
7
7
  * @tsplus implicit
8
8
  */
9
- export const Applicative = HKT.instance<P.Applicative<ZF>>({
9
+ export const Applicative = HKT.instance<P.Applicative<PureF>>({
10
10
  map,
11
11
  zip,
12
12
  zipWith,
@@ -1,18 +1,18 @@
1
1
  import { identity } from "../../data/function.js";
2
2
  import { Stack } from "../../internal/Stack.js";
3
- import { concrete, isZError, ZTag } from "./definition.js";
3
+ import { concrete, isPureError, PurePrimitive, PureTag } from "./definition.js";
4
4
 
5
5
  class MatchFrame {
6
- readonly _zTag = "MatchFrame";
6
+ readonly _tag = "MatchFrame";
7
7
  constructor(
8
- readonly failure: (e: any) => Z<any, any, any, any, any, any>,
9
- readonly apply: (a: any) => Z<any, any, any, any, any, any>,
8
+ readonly failure: (e: any) => Pure<any, any, any, any, any, any>,
9
+ readonly apply: (a: any) => Pure<any, any, any, any, any, any>,
10
10
  ) {}
11
11
  }
12
12
 
13
13
  class ApplyFrame {
14
- readonly _zTag = "ApplyFrame";
15
- constructor(readonly apply: (e: any) => Z<any, any, any, any, any, any>) {}
14
+ readonly _tag = "ApplyFrame";
15
+ constructor(readonly apply: (e: any) => Pure<any, any, any, any, any, any>) {}
16
16
  }
17
17
 
18
18
  type Frame = MatchFrame | ApplyFrame;
@@ -21,16 +21,16 @@ type Frame = MatchFrame | ApplyFrame;
21
21
  * Runs this computation with the specified initial state, returning either a
22
22
  * failure or the updated state and the result
23
23
  *
24
- * @tsplus pipeable fncts.control.Z unsafeRunAll
24
+ * @tsplus pipeable fncts.control.Pure unsafeRunAll
25
25
  */
26
26
  export function unsafeRunAll<S1>(s: S1) {
27
- return <W, S2, E, A>(ma: Z<W, S1, S2, never, E, A>): readonly [Conc<W>, Exit<E, readonly [S2, A]>] => {
27
+ return <W, S2, E, A>(ma: Pure<W, S1, S2, never, E, A>): readonly [Conc<W>, Exit<E, readonly [S2, A]>] => {
28
28
  const stack: Stack<Frame> = Stack();
29
29
  let s0 = s as any;
30
30
  let result: any = null;
31
31
  const environment = Stack<Environment<unknown>>();
32
32
  let failed = false;
33
- let current = ma as Z<any, any, any, any, any, any> | undefined;
33
+ let current = ma as Pure<any, any, any, any, any, any> | undefined;
34
34
  let log = Conc.empty<W>();
35
35
  function unsafeUnwindStack() {
36
36
  let unwinding = true;
@@ -39,7 +39,7 @@ export function unsafeRunAll<S1>(s: S1) {
39
39
  if (next == null) {
40
40
  unwinding = false;
41
41
  } else {
42
- if (next._zTag === "MatchFrame") {
42
+ if (next._tag === "MatchFrame") {
43
43
  unwinding = false;
44
44
  stack.push(new ApplyFrame(next.failure));
45
45
  }
@@ -49,24 +49,24 @@ export function unsafeRunAll<S1>(s: S1) {
49
49
  while (current != null) {
50
50
  try {
51
51
  while (current != null) {
52
- const currZ: Z<any, any, any, any, any, any> = current;
53
- concrete(currZ);
54
- switch (currZ._tag) {
55
- case ZTag.Chain: {
56
- const nested = currZ.ma;
57
- const continuation = currZ.f;
52
+ const currPure: Pure<any, any, any, any, any, any> = current;
53
+ concrete(currPure);
54
+ switch (currPure._tag) {
55
+ case PureTag.Chain: {
56
+ const nested = currPure.i0;
57
+ const continuation = currPure.i1;
58
58
  concrete(nested);
59
59
  switch (nested._tag) {
60
- case ZTag.SucceedNow: {
61
- current = continuation(nested.value);
60
+ case PureTag.SucceedNow: {
61
+ current = continuation(nested.i0);
62
62
  break;
63
63
  }
64
- case ZTag.Succeed: {
65
- current = continuation(nested.effect());
64
+ case PureTag.Succeed: {
65
+ current = continuation(nested.i0());
66
66
  break;
67
67
  }
68
- case ZTag.Modify: {
69
- const updated = nested.run(s0);
68
+ case PureTag.Modify: {
69
+ const updated = nested.i0(s0);
70
70
  result = updated[0];
71
71
  s0 = updated[1];
72
72
  current = continuation(result);
@@ -80,8 +80,8 @@ export function unsafeRunAll<S1>(s: S1) {
80
80
  }
81
81
  break;
82
82
  }
83
- case ZTag.Succeed: {
84
- result = currZ.effect();
83
+ case PureTag.Succeed: {
84
+ result = currPure.i0();
85
85
  const nextInstruction = stack.pop();
86
86
  if (nextInstruction) {
87
87
  current = nextInstruction.apply(result);
@@ -90,12 +90,12 @@ export function unsafeRunAll<S1>(s: S1) {
90
90
  }
91
91
  break;
92
92
  }
93
- case ZTag.Defer: {
94
- current = currZ.make();
93
+ case PureTag.Defer: {
94
+ current = currPure.i0();
95
95
  break;
96
96
  }
97
- case ZTag.SucceedNow: {
98
- result = currZ.value;
97
+ case PureTag.SucceedNow: {
98
+ result = currPure.i0;
99
99
  const nextInstr = stack.pop();
100
100
  if (nextInstr) {
101
101
  current = nextInstr.apply(result);
@@ -104,30 +104,30 @@ export function unsafeRunAll<S1>(s: S1) {
104
104
  }
105
105
  break;
106
106
  }
107
- case ZTag.Fail: {
107
+ case PureTag.Fail: {
108
108
  unsafeUnwindStack();
109
109
  const nextInst = stack.pop();
110
110
  if (nextInst) {
111
- current = nextInst.apply(currZ.cause);
111
+ current = nextInst.apply(currPure.i0);
112
112
  } else {
113
113
  failed = true;
114
- result = currZ.cause;
114
+ result = currPure.i0;
115
115
  current = undefined;
116
116
  }
117
117
  break;
118
118
  }
119
- case ZTag.Match: {
120
- current = currZ.z;
119
+ case PureTag.Match: {
120
+ current = currPure.i0;
121
121
  const state = s0;
122
122
  stack.push(
123
123
  new MatchFrame(
124
124
  (cause: Cause<any>) => {
125
- const m = Z.put(state).flatMap(() => currZ.onFailure(log, cause));
125
+ const m = Pure.put(state).flatMap(() => currPure.i1(log, cause));
126
126
  log = Conc.empty();
127
127
  return m;
128
128
  },
129
129
  (a) => {
130
- const m = currZ.onSuccess(log, a);
130
+ const m = currPure.i2(log, a);
131
131
  log = Conc.empty();
132
132
  return m;
133
133
  },
@@ -135,20 +135,20 @@ export function unsafeRunAll<S1>(s: S1) {
135
135
  );
136
136
  break;
137
137
  }
138
- case ZTag.Access: {
139
- current = currZ.asks(environment.peek() ?? Environment());
138
+ case PureTag.Access: {
139
+ current = currPure.i0(environment.peek() ?? Environment());
140
140
  break;
141
141
  }
142
- case ZTag.Provide: {
143
- environment.push(currZ.env);
144
- current = currZ.ma.match(
145
- (e) => Z.succeedNow(environment.pop()).flatMap(() => Z.failNow(e)),
146
- (a) => Z.succeedNow(environment.pop()).flatMap(() => Z.succeedNow(a)),
147
- );
142
+ case PureTag.Provide: {
143
+ environment.push(currPure.i1);
144
+ current = new PurePrimitive(PureTag.Match) as any;
145
+ (current as any).i0 = currPure;
146
+ (current as any).i1 = (e: any) => Pure.succeedNow(environment.pop()).flatMap(() => Pure.failNow(e));
147
+ (current as any).i2 = (a: any) => Pure.succeedNow(environment.pop()).flatMap(() => Pure.succeedNow(a));
148
148
  break;
149
149
  }
150
- case ZTag.Modify: {
151
- const updated = currZ.run(s0);
150
+ case PureTag.Modify: {
151
+ const updated = currPure.i0(s0);
152
152
  s0 = updated[1];
153
153
  result = updated[0];
154
154
  const nextInst = stack.pop();
@@ -159,8 +159,8 @@ export function unsafeRunAll<S1>(s: S1) {
159
159
  }
160
160
  break;
161
161
  }
162
- case ZTag.Tell: {
163
- log = currZ.log;
162
+ case PureTag.Tell: {
163
+ log = currPure.i0;
164
164
  const nextInst = stack.pop();
165
165
  if (nextInst) {
166
166
  current = nextInst.apply(result);
@@ -169,17 +169,17 @@ export function unsafeRunAll<S1>(s: S1) {
169
169
  }
170
170
  break;
171
171
  }
172
- case ZTag.MapLog: {
173
- current = currZ.ma;
172
+ case PureTag.MapLog: {
173
+ current = currPure.i0;
174
174
  stack.push(
175
175
  new MatchFrame(
176
176
  (cause: Cause<any>) => {
177
- log = currZ.modifyLog(log);
178
- return Z.failCauseNow(cause);
177
+ log = currPure.i1(log);
178
+ return Pure.failCauseNow(cause);
179
179
  },
180
180
  (a) => {
181
- log = currZ.modifyLog(log);
182
- return Z.succeedNow(a);
181
+ log = currPure.i1(log);
182
+ return Pure.succeedNow(a);
183
183
  },
184
184
  ),
185
185
  );
@@ -187,8 +187,8 @@ export function unsafeRunAll<S1>(s: S1) {
187
187
  }
188
188
  }
189
189
  } catch (e) {
190
- if (isZError(e)) {
191
- current = Z.failCauseNow(e.cause);
190
+ if (isPureError(e)) {
191
+ current = Pure.failCauseNow(e.cause);
192
192
  } else {
193
193
  failed = true;
194
194
  result = Cause.halt(e);
@@ -206,13 +206,12 @@ export function unsafeRunAll<S1>(s: S1) {
206
206
  * Runs this computation with the specified initial state, returning both
207
207
  * the updated state and the result.
208
208
  *
209
- * @tsplus pipeable fncts.control.Z unsafeRun
209
+ * @tsplus pipeable fncts.control.Pure unsafeRun
210
210
  */
211
211
  export function unsafeRun<S1>(s: S1) {
212
- return <W, S2, A>(ma: Z<W, S1, S2, never, never, A>): readonly [S2, A] => {
212
+ return <W, S2, A>(ma: Pure<W, S1, S2, never, never, A>): readonly [S2, A] => {
213
213
  return ma.unsafeRunAll(s)[1].match((cause) => {
214
- // throw cause.squash
215
- throw new Error();
214
+ throw cause.squashWith(Function.identity);
216
215
  }, identity);
217
216
  };
218
217
  }
@@ -220,19 +219,19 @@ export function unsafeRun<S1>(s: S1) {
220
219
  /**
221
220
  * Runs this computation, returning the result.
222
221
  *
223
- * @tsplus getter fncts.control.Z unsafeRunResult
222
+ * @tsplus getter fncts.control.Pure unsafeRunResult
224
223
  */
225
- export function unsafeRunResult<W, A>(ma: Z<W, unknown, unknown, never, never, A>): A {
224
+ export function unsafeRunResult<W, A>(ma: Pure<W, unknown, unknown, never, never, A>): A {
226
225
  return ma.unsafeRun({})[1];
227
226
  }
228
227
 
229
228
  /**
230
229
  * Runs this computation with the given environment, returning the result.
231
230
  *
232
- * @tsplus pipeable fncts.control.Z unsafeRunReader
231
+ * @tsplus pipeable fncts.control.Pure unsafeRunReader
233
232
  */
234
233
  export function unsafeRunReader<R>(r: Environment<R>) {
235
- return <W, A>(ma: Z<W, unknown, never, R, never, A>): A => {
234
+ return <W, A>(ma: Pure<W, unknown, never, R, never, A>): A => {
236
235
  return unsafeRunResult(ma.provideEnvironment(r));
237
236
  };
238
237
  }
@@ -241,10 +240,10 @@ export function unsafeRunReader<R>(r: Environment<R>) {
241
240
  * Runs this computation with the specified initial state, returning the
242
241
  * updated state and discarding the result.
243
242
  *
244
- * @tsplus pipeable fncts.control.Z unsafeRunState
243
+ * @tsplus pipeable fncts.control.Pure unsafeRunState
245
244
  */
246
245
  export function unsafeRunState<S1>(s: S1) {
247
- return <W, S2, A>(ma: Z<W, S1, S2, never, never, A>): S2 => {
246
+ return <W, S2, A>(ma: Pure<W, S1, S2, never, never, A>): S2 => {
248
247
  return ma.unsafeRun(s)[0];
249
248
  };
250
249
  }
@@ -253,14 +252,13 @@ export function unsafeRunState<S1>(s: S1) {
253
252
  * Runs this computation with the specified initial state, returning the
254
253
  * result and discarding the updated state.
255
254
  *
256
- * @tsplus pipeable fncts.control.Z unsafeRunStateResult
255
+ * @tsplus pipeable fncts.control.Pure unsafeRunStateResult
257
256
  */
258
257
  export function unsafeRunStateResult<S1>(s: S1) {
259
- return <W, S2, A>(ma: Z<W, S1, S2, never, never, A>): A => {
258
+ return <W, S2, A>(ma: Pure<W, S1, S2, never, never, A>): A => {
260
259
  return ma.unsafeRunAll(s)[1].match(
261
260
  (cause) => {
262
- // throw cause.squash
263
- throw new Error();
261
+ throw cause.squashWith(Function.identity);
264
262
  },
265
263
  ([_, a]) => a,
266
264
  );
@@ -270,22 +268,21 @@ export function unsafeRunStateResult<S1>(s: S1) {
270
268
  /**
271
269
  * Runs this computation returning either the result or error
272
270
  *
273
- * @tsplus getter fncts.control.Z unsafeRunExit
271
+ * @tsplus getter fncts.control.Pure unsafeRunExit
274
272
  */
275
- export function unsafeRunExit<E, A>(ma: Z<never, unknown, unknown, never, E, A>): Exit<E, A> {
273
+ export function unsafeRunExit<E, A>(ma: Pure<never, unknown, unknown, never, E, A>): Exit<E, A> {
276
274
  return ma.unsafeRunAll({} as never)[1].map(([_, a]) => a);
277
275
  }
278
276
 
279
277
  /**
280
278
  *
281
- * @tsplus getter fncts.control.Z unsafeRunWriter
279
+ * @tsplus getter fncts.control.Pure unsafeRunWriter
282
280
  */
283
- export function unsafeRunWriter<W, A>(ma: Z<W, unknown, unknown, never, never, A>): readonly [Conc<W>, A] {
281
+ export function unsafeRunWriter<W, A>(ma: Pure<W, unknown, unknown, never, never, A>): readonly [Conc<W>, A] {
284
282
  const [w, exit] = ma.unsafeRunAll({});
285
283
  return exit.match(
286
- () => {
287
- // throw cause.squash
288
- throw new Error();
284
+ (cause) => {
285
+ throw cause.squashWith(Function.identity);
289
286
  },
290
287
  ([_, a]) => [w, a],
291
288
  );
@@ -0,0 +1,6 @@
1
+ // codegen:start { preset: barrel, include: ./Pure/*.ts }
2
+ export * from "./Pure/api.js";
3
+ export * from "./Pure/definition.js";
4
+ export * from "./Pure/instances.js";
5
+ export * from "./Pure/runtime.js";
6
+ // codegen:end
package/_src/control.ts CHANGED
@@ -2,5 +2,5 @@
2
2
  export type {} from "./control/CompletablePromise.js";
3
3
  export type {} from "./control/Eval.js";
4
4
  export type {} from "./control/LazyValue.js";
5
- export type {} from "./control/Z.js";
5
+ export type {} from "./control/Pure.js";
6
6
  // codegen:end
@@ -47,9 +47,9 @@ function foldLoop<E, Z>(
47
47
  return foldLoop(cases, causes, out.prepend(Either.right(cases.Halt(head.value, head.trace))));
48
48
  case CauseTag.Interrupt:
49
49
  return foldLoop(cases, causes, out.prepend(Either.right(cases.Interrupt(head.id, head.trace))));
50
- case CauseTag.Both:
50
+ case CauseTag.Parallel:
51
51
  return foldLoop(cases, Cons(head.left, Cons(head.right, causes)), out.prepend(Either.left(_BothCase)));
52
- case CauseTag.Then:
52
+ case CauseTag.Sequential:
53
53
  return foldLoop(cases, Cons(head.left, Cons(head.right, causes)), out.prepend(Either.left(_ThenCase)));
54
54
  case CauseTag.Stackless:
55
55
  return foldLoop(cases, causes.prepend(head.cause), out.prepend(Either.left(new StacklessCase(head.stackless))));
@@ -23,12 +23,12 @@ export function isEmpty<E>(cause: Cause<E>): boolean {
23
23
  case CauseTag.Interrupt: {
24
24
  return false;
25
25
  }
26
- case CauseTag.Then: {
26
+ case CauseTag.Sequential: {
27
27
  causes.push(current.right);
28
28
  current = current.left;
29
29
  break;
30
30
  }
31
- case CauseTag.Both: {
31
+ case CauseTag.Parallel: {
32
32
  causes.push(current.right);
33
33
  current = current.left;
34
34
  break;
@@ -1,4 +1,4 @@
1
- import { Fail, Halt, Interrupt, Stackless, Then } from "../definition.js";
1
+ import { Fail, Halt, Interrupt, Sequential,Stackless } from "../definition.js";
2
2
 
3
3
  /**
4
4
  * @tsplus getter fncts.Cause linearize
@@ -9,7 +9,7 @@ export function linearize<E>(self: Cause<E>): HashSet<Cause<E>> {
9
9
  Fail: (e, trace) => HashSet.empty<Cause<E>>().add(Fail(e, trace)),
10
10
  Halt: (t, trace) => HashSet.empty<Cause<E>>().add(Halt(t, trace)),
11
11
  Interrupt: (fiberId, trace) => HashSet.empty<Cause<E>>().add(Interrupt(fiberId, trace)),
12
- Then: (l, r) => l.flatMap((l) => r.map((r) => Then(l, r))),
12
+ Then: (l, r) => l.flatMap((l) => r.map((r) => Sequential(l, r))),
13
13
  Both: (l, r) => l.union(r),
14
14
  Stackless: (cause, stackless) => cause.map((c) => Stackless(c, stackless)),
15
15
  });
@@ -44,9 +44,9 @@ function unifyLoop<E>(
44
44
  switch (head._tag) {
45
45
  case CauseTag.Empty:
46
46
  return unifyLoop(more, fiberId, stackless, result);
47
- case CauseTag.Both:
47
+ case CauseTag.Parallel:
48
48
  return unifyLoop(Cons(head.left, Cons(head.right, more)), fiberId, stackless, result);
49
- case CauseTag.Then:
49
+ case CauseTag.Sequential:
50
50
  return unifyLoop(Cons(head.left, Cons(head.right, more)), fiberId, stackless, result);
51
51
  case CauseTag.Stackless:
52
52
  return unifyLoop(Cons(head.cause, more), fiberId, head.stackless, result);