@explorable-viz/fluid 0.8.0 → 0.8.1

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.
@@ -326,15 +326,6 @@ var applyEither = {
326
326
  Functor0: () => functorEither
327
327
  };
328
328
  var applicativeEither = { pure: Right, Apply0: () => applyEither };
329
- var altEither = {
330
- alt: (v) => (v1) => {
331
- if (v.tag === "Left") {
332
- return v1;
333
- }
334
- return v;
335
- },
336
- Functor0: () => functorEither
337
- };
338
329
 
339
330
  // output-es/Effect/foreign.js
340
331
  var pureE = function(a) {
@@ -800,6 +791,12 @@ var foldrDefault = (dictFoldable) => {
800
791
  const foldMap22 = dictFoldable.foldMap(monoidEndo);
801
792
  return (c) => (u) => (xs) => foldMap22((x2) => c(x2))(xs)(u);
802
793
  };
794
+ var find = (dictFoldable) => (p) => dictFoldable.foldl((v) => (v1) => {
795
+ if (v.tag === "Nothing" && p(v1)) {
796
+ return $Maybe("Just", v1);
797
+ }
798
+ return v;
799
+ })(Nothing);
803
800
 
804
801
  // output-es/Unsafe.Coerce/foreign.js
805
802
  var unsafeCoerce = function(x2) {
@@ -1167,6 +1164,7 @@ var nubBy = (comp) => (xs) => {
1167
1164
  }
1168
1165
  fail();
1169
1166
  };
1167
+ var foldM = (dictMonad) => (f) => (b) => unconsImpl((v) => dictMonad.Applicative0().pure(b))((a) => (as) => dictMonad.Bind1().bind(f(b)(a))((b$p) => foldM(dictMonad)(f)(b$p)(as)));
1170
1168
  var findIndex = /* @__PURE__ */ findIndexImpl(Just)(Nothing);
1171
1169
  var notElem = (dictEq) => (a) => (arr) => {
1172
1170
  const $0 = findIndex((v) => dictEq.eq(v)(a))(arr);
@@ -1375,20 +1373,20 @@ var insert = (k) => (v) => mutate(($0) => () => {
1375
1373
  var functorObject = { map: (f) => (m) => _fmapObject(m, f) };
1376
1374
  var functorWithIndexObject = { mapWithIndex: mapWithKey, Functor0: () => functorObject };
1377
1375
  var fromFoldable = (dictFoldable) => {
1378
- const fromFoldable114 = fromFoldableImpl(dictFoldable.foldr);
1376
+ const fromFoldable113 = fromFoldableImpl(dictFoldable.foldr);
1379
1377
  return (l) => {
1380
1378
  const s = {};
1381
- for (const v of fromFoldable114(l)) {
1379
+ for (const v of fromFoldable113(l)) {
1382
1380
  s[v._1] = v._2;
1383
1381
  }
1384
1382
  return s;
1385
1383
  };
1386
1384
  };
1387
- var foldM = (dictMonad) => {
1385
+ var foldM2 = (dictMonad) => {
1388
1386
  const bind1 = dictMonad.Bind1().bind;
1389
1387
  return (f) => (z) => _foldM(bind1)(f)(dictMonad.Applicative0().pure(z));
1390
1388
  };
1391
- var foldM1 = /* @__PURE__ */ foldM(monadST);
1389
+ var foldM1 = /* @__PURE__ */ foldM2(monadST);
1392
1390
  var union = (m) => mutate((s) => foldM1((s$p) => (k) => (v) => () => {
1393
1391
  s$p[k] = v;
1394
1392
  return s$p;
@@ -1487,7 +1485,6 @@ function _caseJson(isNull2, isBool, isNum, isStr, isArr, isObj, j) {
1487
1485
  // output-es/Data.Argonaut.Core/index.js
1488
1486
  var jsonEmptyObject = /* @__PURE__ */ id(empty);
1489
1487
  var caseJsonString = (d) => (f) => (j) => _caseJson((v) => d, (v) => d, (v) => d, f, (v) => d, (v) => d, j);
1490
- var caseJson = (a) => (b) => (c) => (d) => (e) => (f) => (json) => _caseJson(a, b, c, d, e, f, json);
1491
1488
 
1492
1489
  // output-es/Data.Argonaut.Parser/foreign.js
1493
1490
  function _jsonParser(fail3, succ, s) {
@@ -1852,7 +1849,7 @@ var foldableNonEmptyList = {
1852
1849
  };
1853
1850
  var semigroupNonEmptyList = { append: (v) => (as$p) => $NonEmpty(v._1, foldableList.foldr(Cons)($List("Cons", as$p._1, as$p._2))(v._2)) };
1854
1851
  var showList = (dictShow) => {
1855
- const show4 = dictShow.show;
1852
+ const show5 = dictShow.show;
1856
1853
  return {
1857
1854
  show: (v) => {
1858
1855
  if (v.tag === "Nil") {
@@ -1876,7 +1873,7 @@ var showList = (dictShow) => {
1876
1873
  }
1877
1874
  return go$r;
1878
1875
  };
1879
- return "(" + go({ init: true, acc: "" })(listMap(show4)(v)).acc + " : Nil)";
1876
+ return "(" + go({ init: true, acc: "" })(listMap(show5)(v)).acc + " : Nil)";
1880
1877
  }
1881
1878
  };
1882
1879
  };
@@ -4207,10 +4204,10 @@ function childMatcher(selector) {
4207
4204
  }
4208
4205
 
4209
4206
  // node_modules/d3-selection/src/selection/selectChild.js
4210
- var find = Array.prototype.find;
4207
+ var find2 = Array.prototype.find;
4211
4208
  function childFind(match4) {
4212
4209
  return function() {
4213
- return find.call(this.children, match4);
4210
+ return find2.call(this.children, match4);
4214
4211
  };
4215
4212
  }
4216
4213
  function childFirst() {
@@ -14832,7 +14829,7 @@ var ViewState = class {
14832
14829
  return;
14833
14830
  }
14834
14831
  }
14835
- let gap = find2(current, (gap2) => gap2.from >= line2.from && gap2.to <= line2.to && Math.abs(gap2.from - from) < halfMargin && Math.abs(gap2.to - to) < halfMargin && !avoid.some((pos) => gap2.from < pos && gap2.to > pos));
14832
+ let gap = find3(current, (gap2) => gap2.from >= line2.from && gap2.to <= line2.to && Math.abs(gap2.from - from) < halfMargin && Math.abs(gap2.to - to) < halfMargin && !avoid.some((pos) => gap2.from < pos && gap2.to > pos));
14836
14833
  if (!gap) {
14837
14834
  if (to < line2.to && mayMeasure && wrapping && mayMeasure.visibleRanges.some((r) => r.from <= to && r.to >= to)) {
14838
14835
  let lineStart = mayMeasure.moveToLineBoundary(EditorSelection.cursor(to), false, true).head;
@@ -14983,7 +14980,7 @@ function findFraction(structure, pos) {
14983
14980
  }
14984
14981
  return counted / structure.total;
14985
14982
  }
14986
- function find2(array2, f) {
14983
+ function find3(array2, f) {
14987
14984
  for (let val of array2)
14988
14985
  if (f(val))
14989
14986
  return val;
@@ -18251,10 +18248,10 @@ function tagHighlighter(tags2, options) {
18251
18248
  for (let tag of style.tag)
18252
18249
  map3[tag.id] = style.class;
18253
18250
  }
18254
- let { scope, all: all3 = null } = options || {};
18251
+ let { scope, all: all4 = null } = options || {};
18255
18252
  return {
18256
18253
  style: (tags3) => {
18257
- let cls = all3;
18254
+ let cls = all4;
18258
18255
  for (let tag of tags3) {
18259
18256
  for (let sub of tag.set) {
18260
18257
  let tagClass = map3[sub.id];
@@ -19009,14 +19006,14 @@ var HighlightStyle = class {
19009
19006
  (modSpec || (modSpec = /* @__PURE__ */ Object.create(null)))["." + cls] = spec;
19010
19007
  return cls;
19011
19008
  }
19012
- const all3 = typeof options.all == "string" ? options.all : options.all ? def(options.all) : void 0;
19009
+ const all4 = typeof options.all == "string" ? options.all : options.all ? def(options.all) : void 0;
19013
19010
  const scopeOpt = options.scope;
19014
19011
  this.scope = scopeOpt instanceof Language ? (type2) => type2.prop(languageDataProp) == scopeOpt.data : scopeOpt ? (type2) => type2 == scopeOpt : void 0;
19015
19012
  this.style = tagHighlighter(specs.map((style) => ({
19016
19013
  tag: style.tag,
19017
19014
  class: style.class || def(Object.assign({}, style, { tag: null }))
19018
19015
  })), {
19019
- all: all3
19016
+ all: all4
19020
19017
  }).style;
19021
19018
  this.module = modSpec ? new StyleModule(modSpec) : null;
19022
19019
  this.themeType = options.themeType;
@@ -20633,6 +20630,16 @@ var groupBy = (v) => (v1) => {
20633
20630
  }
20634
20631
  fail();
20635
20632
  };
20633
+ var foldM3 = (dictMonad) => (v) => (v1) => (v2) => {
20634
+ if (v2.tag === "Nil") {
20635
+ return dictMonad.Applicative0().pure(v1);
20636
+ }
20637
+ if (v2.tag === "Cons") {
20638
+ const $0 = v2._2;
20639
+ return dictMonad.Bind1().bind(v(v1)(v2._1))((b$p) => foldM3(dictMonad)(v)(b$p)($0));
20640
+ }
20641
+ fail();
20642
+ };
20636
20643
  var drop2 = (drop$a0$copy) => (drop$a1$copy) => {
20637
20644
  let drop$a0 = drop$a0$copy, drop$a1 = drop$a1$copy, drop$c = true, drop$r;
20638
20645
  while (drop$c) {
@@ -20806,7 +20813,10 @@ var filter3 = (p) => {
20806
20813
  var $KickUp = (_1, _2, _3, _4) => ({ tag: "KickUp", _1, _2, _3, _4 });
20807
20814
  var $$$Map = (tag, _1, _2, _3, _4, _5, _6, _7) => ({ tag, _1, _2, _3, _4, _5, _6, _7 });
20808
20815
  var $TreeContext = (tag, _1, _2, _3, _4, _5, _6) => ({ tag, _1, _2, _3, _4, _5, _6 });
20816
+ var identity15 = (x2) => x2;
20809
20817
  var Leaf2 = /* @__PURE__ */ $$$Map("Leaf");
20818
+ var Two = (value0) => (value1) => (value2) => (value3) => $$$Map("Two", value0, value1, value2, value3);
20819
+ var Three = (value0) => (value1) => (value2) => (value3) => (value4) => (value5) => (value6) => $$$Map("Three", value0, value1, value2, value3, value4, value5, value6);
20810
20820
  var size2 = (v) => {
20811
20821
  if (v.tag === "Leaf") {
20812
20822
  return 0;
@@ -20925,6 +20935,20 @@ var lookup2 = (dictOrd) => (k) => {
20925
20935
  };
20926
20936
  return go;
20927
20937
  };
20938
+ var functorMap = {
20939
+ map: (v) => (v1) => {
20940
+ if (v1.tag === "Leaf") {
20941
+ return Leaf2;
20942
+ }
20943
+ if (v1.tag === "Two") {
20944
+ return $$$Map("Two", functorMap.map(v)(v1._1), v1._2, v(v1._3), functorMap.map(v)(v1._4));
20945
+ }
20946
+ if (v1.tag === "Three") {
20947
+ return $$$Map("Three", functorMap.map(v)(v1._1), v1._2, v(v1._3), functorMap.map(v)(v1._4), v1._5, v(v1._6), functorMap.map(v)(v1._7));
20948
+ }
20949
+ fail();
20950
+ }
20951
+ };
20928
20952
  var fromZipper = (fromZipper$a0$copy) => (fromZipper$a1$copy) => (fromZipper$a2$copy) => {
20929
20953
  let fromZipper$a0 = fromZipper$a0$copy, fromZipper$a1 = fromZipper$a1$copy, fromZipper$a2 = fromZipper$a2$copy, fromZipper$c = true, fromZipper$r;
20930
20954
  while (fromZipper$c) {
@@ -21711,6 +21735,27 @@ var foldableWithIndexMap = {
21711
21735
  },
21712
21736
  Foldable0: () => foldableMap
21713
21737
  };
21738
+ var traversableMap = {
21739
+ traverse: (dictApplicative) => {
21740
+ const Apply0 = dictApplicative.Apply0();
21741
+ const $0 = Apply0.Functor0();
21742
+ return (v) => (v1) => {
21743
+ if (v1.tag === "Leaf") {
21744
+ return dictApplicative.pure(Leaf2);
21745
+ }
21746
+ if (v1.tag === "Two") {
21747
+ return Apply0.apply(Apply0.apply(Apply0.apply($0.map(Two)(traversableMap.traverse(dictApplicative)(v)(v1._1)))(dictApplicative.pure(v1._2)))(v(v1._3)))(traversableMap.traverse(dictApplicative)(v)(v1._4));
21748
+ }
21749
+ if (v1.tag === "Three") {
21750
+ return Apply0.apply(Apply0.apply(Apply0.apply(Apply0.apply(Apply0.apply(Apply0.apply($0.map(Three)(traversableMap.traverse(dictApplicative)(v)(v1._1)))(dictApplicative.pure(v1._2)))(v(v1._3)))(traversableMap.traverse(dictApplicative)(v)(v1._4)))(dictApplicative.pure(v1._5)))(v(v1._6)))(traversableMap.traverse(dictApplicative)(v)(v1._7));
21751
+ }
21752
+ fail();
21753
+ };
21754
+ },
21755
+ sequence: (dictApplicative) => traversableMap.traverse(dictApplicative)(identity15),
21756
+ Functor0: () => functorMap,
21757
+ Foldable1: () => foldableMap
21758
+ };
21714
21759
  var findMin = /* @__PURE__ */ (() => {
21715
21760
  const go = (go$a0$copy) => (go$a1$copy) => {
21716
21761
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
@@ -21743,10 +21788,10 @@ var eqMap = (dictEq) => (dictEq1) => {
21743
21788
  };
21744
21789
  var fromFoldable2 = (dictOrd) => (dictFoldable) => dictFoldable.foldl((m) => (v) => insert3(dictOrd)(v._1)(v._2)(m))(Leaf2);
21745
21790
  var filterWithKey2 = (dictOrd) => {
21746
- const fromFoldable114 = fromFoldable2(dictOrd)(foldableList2);
21791
+ const fromFoldable113 = fromFoldable2(dictOrd)(foldableList2);
21747
21792
  return (predicate) => {
21748
21793
  const $0 = filter3((v) => predicate(v._1)(v._2));
21749
- return (x2) => fromFoldable114($0(toUnfoldable3(unfoldableList2)(x2)));
21794
+ return (x2) => fromFoldable113($0(toUnfoldable3(unfoldableList2)(x2)));
21750
21795
  };
21751
21796
  };
21752
21797
  var $$delete3 = (dictOrd) => (k) => (m) => {
@@ -22153,7 +22198,7 @@ var intercalate3 = (sep) => (xs) => {
22153
22198
  };
22154
22199
  return go({ init: true, acc: Nil })(xs).acc;
22155
22200
  };
22156
- var identity17 = (x2) => x2;
22201
+ var identity18 = (x2) => x2;
22157
22202
  var isEmptySet = { isEmpty: isEmpty2 };
22158
22203
  var isEmptyObject = { isEmpty };
22159
22204
  var $$throw = (dictMonadThrow) => (x2) => dictMonadThrow.throwError(error(x2));
@@ -22253,13 +22298,13 @@ var bind2Flipped = (dictMonad) => {
22253
22298
  };
22254
22299
  var assertWith = (v) => (v1) => {
22255
22300
  if (v1) {
22256
- return identity17;
22301
+ return identity18;
22257
22302
  }
22258
22303
  return (v2) => throwException(error("Assertion failure: " + v))();
22259
22304
  };
22260
22305
  var assertWhen = (v) => (v1) => {
22261
22306
  if (!v) {
22262
- return (v$1) => identity17;
22307
+ return (v$1) => identity18;
22263
22308
  }
22264
22309
  if (v) {
22265
22310
  return (x2) => assertWith(v1)(x2());
@@ -22306,7 +22351,7 @@ function intersectionWith_Object(f) {
22306
22351
  }
22307
22352
 
22308
22353
  // output-es/Util.Map/index.js
22309
- var identity18 = (x2) => x2;
22354
+ var identity19 = (x2) => x2;
22310
22355
  var mapObjectString = {
22311
22356
  maplet: singleton,
22312
22357
  keys: /* @__PURE__ */ (() => {
@@ -22341,9 +22386,9 @@ var mapFObjectString = {
22341
22386
  mapWithKey
22342
22387
  };
22343
22388
  var asMaplet = (dictMap) => {
22344
- const toUnfoldable17 = dictMap.toUnfoldable(unfoldableList);
22389
+ const toUnfoldable16 = dictMap.toUnfoldable(unfoldableList);
22345
22390
  return (m) => assertWith("")(dictMap.Set0().size(m) === 1)(definitely("singleton map")((() => {
22346
- const $0 = toUnfoldable17(m);
22391
+ const $0 = toUnfoldable16(m);
22347
22392
  if ($0.tag === "Nil") {
22348
22393
  return Nothing;
22349
22394
  }
@@ -22359,7 +22404,7 @@ var update2 = (dictShow) => (dictMap) => (f) => (k) => {
22359
22404
  };
22360
22405
 
22361
22406
  // output-es/Dict/index.js
22362
- var identity19 = (x2) => x2;
22407
+ var identity20 = (x2) => x2;
22363
22408
  var isEmptyDict = { isEmpty: (v) => isEmpty(v) };
22364
22409
  var setDictString = {
22365
22410
  empty,
@@ -22412,7 +22457,7 @@ var traversableDict = {
22412
22457
  const $0 = traversableWithIndexObject.traverseWithIndex(dictApplicative);
22413
22458
  return (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)($0((v) => f)(m));
22414
22459
  },
22415
- sequence: (dictApplicative) => (v) => traversableDict.traverse(dictApplicative)(identity19)(v),
22460
+ sequence: (dictApplicative) => (v) => traversableDict.traverse(dictApplicative)(identity20)(v),
22416
22461
  Functor0: () => functorDict,
22417
22462
  Foldable1: () => foldableDict
22418
22463
  };
@@ -22489,16 +22534,16 @@ var toTuple = (v) => $Tuple(v._1, v._2);
22489
22534
  var unzip3 = (xys) => unzip(listMap(toTuple)(xys));
22490
22535
 
22491
22536
  // output-es/Lattice/index.js
22492
- var identity20 = (x2) => x2;
22493
- var meetSemilatticeUnit = { meet: (v) => identity20 };
22537
+ var identity21 = (x2) => x2;
22538
+ var meetSemilatticeUnit = { meet: (v) => identity21 };
22494
22539
  var meetSemilatticeBoolean = { meet: boolConj };
22495
- var joinSemilatticeUnit = { join: (v) => identity20 };
22540
+ var joinSemilatticeUnit = { join: (v) => identity21 };
22496
22541
  var boundedMeetSemilatticeUni = { top: void 0, MeetSemilattice0: () => meetSemilatticeUnit };
22497
22542
  var boundedMeetSemilatticeBoo = { top: true, MeetSemilattice0: () => meetSemilatticeBoolean };
22498
22543
  var boundedJoinSemilatticeUni = { bot: void 0, JoinSemilattice0: () => joinSemilatticeUnit };
22499
22544
 
22500
22545
  // output-es/Data.Profunctor.Choice/index.js
22501
- var identity21 = (x2) => x2;
22546
+ var identity22 = (x2) => x2;
22502
22547
  var fanin = (dictCategory) => {
22503
22548
  const identity1 = dictCategory.identity;
22504
22549
  const $0 = dictCategory.Semigroupoid0();
@@ -22511,7 +22556,7 @@ var fanin = (dictCategory) => {
22511
22556
  return v2._1;
22512
22557
  }
22513
22558
  fail();
22514
- })(identity21)(identity1))($1.compose(dictChoice.right(r))(dictChoice.left(l)));
22559
+ })(identity22)(identity1))($1.compose(dictChoice.right(r))(dictChoice.left(l)));
22515
22560
  };
22516
22561
  var choiceFn = /* @__PURE__ */ (() => ({
22517
22562
  left: (v) => (v1) => {
@@ -28803,7 +28848,7 @@ var between = (open) => (close) => (p) => (state1, more, lift12, $$throw2, done)
28803
28848
  var $Assoc = (tag) => tag;
28804
28849
  var $Operator = (tag, _1, _2) => ({ tag, _1, _2 });
28805
28850
  var choice2 = /* @__PURE__ */ choice(foldableList);
28806
- var identity22 = (x2) => x2;
28851
+ var identity23 = (x2) => x2;
28807
28852
  var AssocNone = /* @__PURE__ */ $Assoc("AssocNone");
28808
28853
  var AssocLeft = /* @__PURE__ */ $Assoc("AssocLeft");
28809
28854
  var AssocRight = /* @__PURE__ */ $Assoc("AssocRight");
@@ -28984,7 +29029,7 @@ var makeParser = (term) => (ops) => {
28984
29029
  if ($7) {
28985
29030
  return $22(v4, $6);
28986
29031
  }
28987
- return $32(v2$1, identity22);
29032
+ return $32(v2$1, identity23);
28988
29033
  });
28989
29034
  },
28990
29035
  $32
@@ -29002,7 +29047,7 @@ var makeParser = (term) => (ops) => {
29002
29047
  if ($7) {
29003
29048
  return $22(v4, $6);
29004
29049
  }
29005
- return $32(v2$1, identity22);
29050
+ return $32(v2$1, identity23);
29006
29051
  });
29007
29052
  },
29008
29053
  $32
@@ -29021,7 +29066,7 @@ var makeParser = (term) => (ops) => {
29021
29066
  if ($8) {
29022
29067
  return $32(v4, $7);
29023
29068
  }
29024
- return $42(v2$1, identity22);
29069
+ return $42(v2$1, identity23);
29025
29070
  });
29026
29071
  },
29027
29072
  $42
@@ -29039,7 +29084,7 @@ var makeParser = (term) => (ops) => {
29039
29084
  if ($8) {
29040
29085
  return $32(v4, $7);
29041
29086
  }
29042
- return $42(v2$1, identity22);
29087
+ return $42(v2$1, identity23);
29043
29088
  });
29044
29089
  },
29045
29090
  $42
@@ -29058,7 +29103,7 @@ var makeParser = (term) => (ops) => {
29058
29103
  if ($9) {
29059
29104
  return $42(v4, $8);
29060
29105
  }
29061
- return $52(v2$1, identity22);
29106
+ return $52(v2$1, identity23);
29062
29107
  });
29063
29108
  },
29064
29109
  $52
@@ -29076,7 +29121,7 @@ var makeParser = (term) => (ops) => {
29076
29121
  if ($9) {
29077
29122
  return $42(v4, $8);
29078
29123
  }
29079
- return $52(v2$1, identity22);
29124
+ return $52(v2$1, identity23);
29080
29125
  });
29081
29126
  },
29082
29127
  $52
@@ -29171,7 +29216,7 @@ var makeParser = (term) => (ops) => {
29171
29216
  if ($5) {
29172
29217
  return $$throw2(v4, $4);
29173
29218
  }
29174
- return $1(state1, identity22);
29219
+ return $1(state1, identity23);
29175
29220
  });
29176
29221
  },
29177
29222
  $1
@@ -29263,7 +29308,7 @@ var unions = /* @__PURE__ */ (() => {
29263
29308
  };
29264
29309
  return go(Leaf2);
29265
29310
  })();
29266
- var identity25 = (x2) => x2;
29311
+ var identity26 = (x2) => x2;
29267
29312
  var Unquote = (value0) => $DocCommentElem("Unquote", value0);
29268
29313
  var None = /* @__PURE__ */ $DocOpt("None");
29269
29314
  var Doc = (value0) => $DocOpt("Doc", value0);
@@ -29470,18 +29515,18 @@ var traversableDocCommentElem = (dictTraversable) => {
29470
29515
  };
29471
29516
  return {
29472
29517
  traverse: (dictApplicative) => {
29473
- const traverse2 = dictTraversable.traverse(dictApplicative);
29518
+ const traverse22 = dictTraversable.traverse(dictApplicative);
29474
29519
  return (f) => (m) => {
29475
29520
  if (m.tag === "Token") {
29476
29521
  return dictApplicative.pure($DocCommentElem("Token", m._1));
29477
29522
  }
29478
29523
  if (m.tag === "Unquote") {
29479
- return dictApplicative.Apply0().Functor0().map((v1) => $DocCommentElem("Unquote", v1))(traverse2(f)(m._1));
29524
+ return dictApplicative.Apply0().Functor0().map((v1) => $DocCommentElem("Unquote", v1))(traverse22(f)(m._1));
29480
29525
  }
29481
29526
  fail();
29482
29527
  };
29483
29528
  },
29484
- sequence: (dictApplicative) => (v) => traversableDocCommentElem(dictTraversable).traverse(dictApplicative)(identity25)(v),
29529
+ sequence: (dictApplicative) => (v) => traversableDocCommentElem(dictTraversable).traverse(dictApplicative)(identity26)(v),
29485
29530
  Functor0: () => functorDocCommentElem1,
29486
29531
  Foldable1: () => foldableDocCommentElem1
29487
29532
  };
@@ -29491,19 +29536,19 @@ var traversableDocOpt = (dictTraversable) => {
29491
29536
  const foldableDocOpt1 = foldableDocOpt(dictTraversable.Foldable1());
29492
29537
  return {
29493
29538
  traverse: (dictApplicative) => {
29494
- const traverse2 = traversableList.traverse(dictApplicative);
29539
+ const traverse22 = traversableList.traverse(dictApplicative);
29495
29540
  const traverse3 = traversableDocCommentElem(dictTraversable).traverse(dictApplicative);
29496
29541
  return (f) => (m) => {
29497
29542
  if (m.tag === "None") {
29498
29543
  return dictApplicative.pure(None);
29499
29544
  }
29500
29545
  if (m.tag === "Doc") {
29501
- return dictApplicative.Apply0().Functor0().map((v1) => $DocOpt("Doc", v1))(traverse2(traverse3(f))(m._1));
29546
+ return dictApplicative.Apply0().Functor0().map((v1) => $DocOpt("Doc", v1))(traverse22(traverse3(f))(m._1));
29502
29547
  }
29503
29548
  fail();
29504
29549
  };
29505
29550
  },
29506
- sequence: (dictApplicative) => (v) => traversableDocOpt(dictTraversable).traverse(dictApplicative)(identity25)(v),
29551
+ sequence: (dictApplicative) => (v) => traversableDocOpt(dictTraversable).traverse(dictApplicative)(identity26)(v),
29507
29552
  Functor0: () => functorDocOpt1,
29508
29553
  Foldable1: () => foldableDocOpt1
29509
29554
  };
@@ -29656,7 +29701,7 @@ var unions12 = /* @__PURE__ */ (() => {
29656
29701
  };
29657
29702
  return go(Leaf2);
29658
29703
  })();
29659
- var identity26 = (x2) => x2;
29704
+ var identity27 = (x2) => x2;
29660
29705
  var compare3 = /* @__PURE__ */ (() => ordTuple(ordString)(ordString).compare)();
29661
29706
  var compare4 = /* @__PURE__ */ (() => ordSet(ordString).compare)();
29662
29707
  var setSet2 = /* @__PURE__ */ setSet(ordString);
@@ -30169,7 +30214,7 @@ var traversableVarDef = {
30169
30214
  const Apply0 = dictApplicative.Apply0();
30170
30215
  return (f) => (m) => Apply0.apply(Apply0.Functor0().map((v2) => (v3) => $VarDef(v2, v3))(traversableElim.traverse(dictApplicative)(f)(m._1)))(traversableExpr.traverse(dictApplicative)(f)(m._2));
30171
30216
  },
30172
- sequence: (dictApplicative) => (v) => traversableVarDef.traverse(dictApplicative)(identity26)(v),
30217
+ sequence: (dictApplicative) => (v) => traversableVarDef.traverse(dictApplicative)(identity27)(v),
30173
30218
  Functor0: () => functorVarDef,
30174
30219
  Foldable1: () => foldableVarDef
30175
30220
  };
@@ -30179,7 +30224,7 @@ var traversableRecDefs = {
30179
30224
  const traverse5 = traversableDict.traverse(dictApplicative);
30180
30225
  return (f) => (m) => Apply0.apply(Apply0.Functor0().map((v2) => (v3) => $RecDefs(v2, v3))(f(m._1)))(traverse5(traversableElim.traverse(dictApplicative)(f))(m._2));
30181
30226
  },
30182
- sequence: (dictApplicative) => (v) => traversableRecDefs.traverse(dictApplicative)(identity26)(v),
30227
+ sequence: (dictApplicative) => (v) => traversableRecDefs.traverse(dictApplicative)(identity27)(v),
30183
30228
  Functor0: () => functorRecDefs,
30184
30229
  Foldable1: () => foldableRecDefs
30185
30230
  };
@@ -30241,7 +30286,7 @@ var traversableExpr = {
30241
30286
  fail();
30242
30287
  };
30243
30288
  },
30244
- sequence: (dictApplicative) => (v) => traversableExpr.traverse(dictApplicative)(identity26)(v),
30289
+ sequence: (dictApplicative) => (v) => traversableExpr.traverse(dictApplicative)(identity27)(v),
30245
30290
  Functor0: () => functorExpr,
30246
30291
  Foldable1: () => foldableExpr
30247
30292
  };
@@ -30264,7 +30309,7 @@ var traversableElim = {
30264
30309
  fail();
30265
30310
  };
30266
30311
  },
30267
- sequence: (dictApplicative) => (v) => traversableElim.traverse(dictApplicative)(identity26)(v),
30312
+ sequence: (dictApplicative) => (v) => traversableElim.traverse(dictApplicative)(identity27)(v),
30268
30313
  Functor0: () => functorElim,
30269
30314
  Foldable1: () => foldableElim
30270
30315
  };
@@ -30281,7 +30326,7 @@ var traversableCont = {
30281
30326
  fail();
30282
30327
  };
30283
30328
  },
30284
- sequence: (dictApplicative) => (v) => traversableCont.traverse(dictApplicative)(identity26)(v),
30329
+ sequence: (dictApplicative) => (v) => traversableCont.traverse(dictApplicative)(identity27)(v),
30285
30330
  Functor0: () => functorCont,
30286
30331
  Foldable1: () => foldableCont
30287
30332
  };
@@ -33644,13 +33689,13 @@ var varDefFwd = (dictMonadError) => {
33644
33689
  };
33645
33690
  var recDefsFwd = (dictMonadError) => {
33646
33691
  const Monad0 = dictMonadError.MonadThrow0().Monad0();
33647
- const traverse2 = traversableNonEmptyList.traverse(Monad0.Applicative0());
33692
+ const traverse22 = traversableNonEmptyList.traverse(Monad0.Applicative0());
33648
33693
  return (dictBoundedLattice) => {
33649
33694
  const top3 = dictBoundedLattice.BoundedMeetSemilattice1().top;
33650
33695
  return (xcs) => Monad0.Bind1().Apply0().Functor0().map((() => {
33651
33696
  const $0 = RecDefs(top3);
33652
33697
  return (x2) => $0(fromFoldable16(x2));
33653
- })())(traverse2(recDefFwd(dictMonadError)(dictBoundedLattice))((() => {
33698
+ })())(traverse22(recDefFwd(dictMonadError)(dictBoundedLattice))((() => {
33654
33699
  const $0 = wrappedOperation("groupBy")(groupBy((x2) => (y2) => x2._1 === y2._1))(xcs);
33655
33700
  return $NonEmpty($0._1, listMap(RecDef)($0._2));
33656
33701
  })()));
@@ -33852,7 +33897,7 @@ var exprFwd = (dictBoundedLattice) => {
33852
33897
  const Bind1 = Monad0.Bind1();
33853
33898
  const Apply0 = Bind1.Apply0();
33854
33899
  const Functor0 = Apply0.Functor0();
33855
- const traverse2 = traversableList.traverse(Applicative0);
33900
+ const traverse22 = traversableList.traverse(Applicative0);
33856
33901
  return (dictJoinSemilattice) => (v) => {
33857
33902
  if (v.tag === "Var") {
33858
33903
  return Applicative0.pure($Expr("Var", v._1));
@@ -33879,14 +33924,14 @@ var exprFwd = (dictBoundedLattice) => {
33879
33924
  const $0 = v._3;
33880
33925
  const $1 = v._4;
33881
33926
  const $2 = v._1;
33882
- return Bind1.bind(desugComment(dictBoundedLattice)(dictMonadError)(v._2))((edoc) => Functor0.map(Constr($2)(edoc)($0))(traverse2(exprFwd(dictBoundedLattice)(dictMonadError)(dictBoundedLattice.BoundedJoinSemilattice0().JoinSemilattice0()))($1)));
33927
+ return Bind1.bind(desugComment(dictBoundedLattice)(dictMonadError)(v._2))((edoc) => Functor0.map(Constr($2)(edoc)($0))(traverse22(exprFwd(dictBoundedLattice)(dictMonadError)(dictBoundedLattice.BoundedJoinSemilattice0().JoinSemilattice0()))($1)));
33883
33928
  }
33884
33929
  if (v.tag === "Dictionary") {
33885
33930
  const $0 = v._2;
33886
33931
  const $1 = v._1;
33887
33932
  const v1 = unzip(v._3);
33888
33933
  const $2 = v1._2;
33889
- return Bind1.bind(traverse2(desugarableDictEntryExpr.desug(dictMonadError)(dictBoundedLattice))(v1._1))((ks$p) => Bind1.bind(traverse2(exprFwd(dictBoundedLattice)(dictMonadError)(dictBoundedLattice.BoundedJoinSemilattice0().JoinSemilattice0()))($2))((es) => Bind1.bind(desugComment(dictBoundedLattice)(dictMonadError)($0))((edoc) => Functor0.map(Dictionary($1)(edoc))(Applicative0.pure(zipWith2((k) => (v2) => $Pair(
33934
+ return Bind1.bind(traverse22(desugarableDictEntryExpr.desug(dictMonadError)(dictBoundedLattice))(v1._1))((ks$p) => Bind1.bind(traverse22(exprFwd(dictBoundedLattice)(dictMonadError)(dictBoundedLattice.BoundedJoinSemilattice0().JoinSemilattice0()))($2))((es) => Bind1.bind(desugComment(dictBoundedLattice)(dictMonadError)($0))((edoc) => Functor0.map(Dictionary($1)(edoc))(Applicative0.pure(zipWith2((k) => (v2) => $Pair(
33890
33935
  k,
33891
33936
  v2
33892
33937
  ))(ks$p)(es))))));
@@ -34421,11 +34466,11 @@ var moduleFwd = (dictMonadError) => {
34421
34466
  const $0 = Monad0.Bind1().Apply0().Functor0();
34422
34467
  const varDefFwd1 = varDefFwd(dictMonadError);
34423
34468
  const recDefsFwd1 = recDefsFwd(dictMonadError);
34424
- const traverse2 = traversableList.traverse(Monad0.Applicative0());
34469
+ const traverse22 = traversableList.traverse(Monad0.Applicative0());
34425
34470
  return (dictBoundedLattice) => {
34426
34471
  const varDefFwd2 = varDefFwd1(dictBoundedLattice);
34427
34472
  const recDefsFwd2 = recDefsFwd1(dictBoundedLattice);
34428
- return (v) => $0.map(Module)(traverse2((v1) => {
34473
+ return (v) => $0.map(Module)(traverse22((v1) => {
34429
34474
  if (v1.tag === "Left") {
34430
34475
  return $0.map(Left)(varDefFwd2(v1._1));
34431
34476
  }
@@ -35267,7 +35312,7 @@ var unions13 = /* @__PURE__ */ (() => {
35267
35312
  return go(Leaf2);
35268
35313
  })();
35269
35314
  var foldMap2 = /* @__PURE__ */ foldMap({ mempty: Leaf2, Semigroup0: () => ({ append: union3(ordDVertex$p) }) });
35270
- var identity27 = (x2) => x2;
35315
+ var identity28 = (x2) => x2;
35271
35316
  var ordTuple3 = /* @__PURE__ */ ordTuple(ordInt);
35272
35317
  var boundedLattice = { BoundedJoinSemilattice0: () => boundedJoinSemilatticeUni, BoundedMeetSemilattice1: () => boundedMeetSemilatticeUni };
35273
35318
  var show3 = /* @__PURE__ */ (() => showSet(showString).show)();
@@ -35395,7 +35440,7 @@ var mapEnvStringVal = {
35395
35440
  var highlightableVertex = {
35396
35441
  highlightIf: (v) => (doc2) => beside(beside(doc2)(checkOneLine(split("\n")(" _"))))(checkOneLine(split("\n")(" \u27E8" + v + "\u27E9")))
35397
35442
  };
35398
- var highlightableUnit = { highlightIf: (v) => identity27 };
35443
+ var highlightableUnit = { highlightIf: (v) => identity28 };
35399
35444
  var functorMatrixDim = { map: (f) => (m) => $Tuple(m._1, f(m._2)) };
35400
35445
  var functorVal = { map: (f) => (m) => $Val(f(m._1), functorDocOpt(functorVal).map(f)(m._2), functorBaseVal.map(f)(m._3)) };
35401
35446
  var functorMatrixRep = {
@@ -35450,7 +35495,7 @@ var functorEnvExpr = { map: (f) => (m) => $EnvExpr(_fmapObject(m._1, functorVal.
35450
35495
  var foldableMatrixDim = { foldl: (f) => (z) => (m) => f(z)(m._2), foldr: (f) => (z) => (m) => f(m._2)(z), foldMap: (dictMonoid) => (f) => (m) => f(m._2) };
35451
35496
  var traversableMatrixDim = {
35452
35497
  traverse: (dictApplicative) => (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)(traversableTuple.traverse(dictApplicative)(f)(m)),
35453
- sequence: (dictApplicative) => (v) => traversableMatrixDim.traverse(dictApplicative)(identity27)(v),
35498
+ sequence: (dictApplicative) => (v) => traversableMatrixDim.traverse(dictApplicative)(identity28)(v),
35454
35499
  Functor0: () => functorMatrixDim,
35455
35500
  Foldable1: () => foldableMatrixDim
35456
35501
  };
@@ -35676,7 +35721,7 @@ var traversableVal = {
35676
35721
  const Apply0 = dictApplicative.Apply0();
35677
35722
  return (f) => (m) => Apply0.apply(Apply0.apply(Apply0.Functor0().map((v3) => (v4) => (v5) => $Val(v3, v4, v5))(f(m._1)))(traversableDocOpt(traversableVal).traverse(dictApplicative)(f)(m._2)))(traversableBaseVal.traverse(dictApplicative)(f)(m._3));
35678
35723
  },
35679
- sequence: (dictApplicative) => (v) => traversableVal.traverse(dictApplicative)(identity27)(v),
35724
+ sequence: (dictApplicative) => (v) => traversableVal.traverse(dictApplicative)(identity28)(v),
35680
35725
  Functor0: () => functorVal,
35681
35726
  Foldable1: () => foldableVal
35682
35727
  };
@@ -35712,7 +35757,7 @@ var traversableFun = {
35712
35757
  fail();
35713
35758
  };
35714
35759
  },
35715
- sequence: (dictApplicative) => (v) => traversableFun.traverse(dictApplicative)(identity27)(v),
35760
+ sequence: (dictApplicative) => (v) => traversableFun.traverse(dictApplicative)(identity28)(v),
35716
35761
  Functor0: () => functorFun,
35717
35762
  Foldable1: () => foldableFun
35718
35763
  };
@@ -35721,7 +35766,7 @@ var traversableEnv = {
35721
35766
  const traverse8 = traversableDict.traverse(dictApplicative);
35722
35767
  return (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)(traverse8(traversableVal.traverse(dictApplicative)(f))(m));
35723
35768
  },
35724
- sequence: (dictApplicative) => (v) => traversableEnv.traverse(dictApplicative)(identity27)(v),
35769
+ sequence: (dictApplicative) => (v) => traversableEnv.traverse(dictApplicative)(identity28)(v),
35725
35770
  Functor0: () => functorEnv,
35726
35771
  Foldable1: () => foldableEnv
35727
35772
  };
@@ -35765,7 +35810,7 @@ var traversableBaseVal = {
35765
35810
  fail();
35766
35811
  };
35767
35812
  },
35768
- sequence: (dictApplicative) => (v) => traversableBaseVal.traverse(dictApplicative)(identity27)(v),
35813
+ sequence: (dictApplicative) => (v) => traversableBaseVal.traverse(dictApplicative)(identity28)(v),
35769
35814
  Functor0: () => functorBaseVal,
35770
35815
  Foldable1: () => foldableBaseVal
35771
35816
  };
@@ -36217,7 +36262,7 @@ var unary = (dictBoundedJoinSemilattice) => {
36217
36262
  arity: 1,
36218
36263
  op: (dictMonadWithGraphAlloc) => {
36219
36264
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
36220
- return (dictMonadError) => (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
36265
+ return (dictMonadError) => (dictMonadReader) => (dictLoadFile) => (v) => {
36221
36266
  if (v.tag === "Cons" && v._2.tag === "Nil") {
36222
36267
  const $0 = v._1._2;
36223
36268
  return $$new((a) => Val(a)($0))($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))(f.o.pack(f.fwd(f.i.unpack(v._1._3))));
@@ -36366,7 +36411,7 @@ var binaryZero = (dictBoundedJoinSemilattice) => {
36366
36411
  arity: 2,
36367
36412
  op: (dictMonadWithGraphAlloc) => {
36368
36413
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
36369
- return (dictMonadError) => (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
36414
+ return (dictMonadError) => (dictMonadReader) => (dictLoadFile) => (v) => {
36370
36415
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Nil") {
36371
36416
  const $0 = f.i.unpack(v._1._3);
36372
36417
  const $1 = f.i.unpack(v._2._1._3);
@@ -36414,7 +36459,7 @@ var binary = (dictBoundedJoinSemilattice) => {
36414
36459
  arity: 2,
36415
36460
  op: (dictMonadWithGraphAlloc) => {
36416
36461
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
36417
- return (dictMonadError) => (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
36462
+ return (dictMonadError) => (dictMonadReader) => (dictLoadFile) => (v) => {
36418
36463
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Nil") {
36419
36464
  return $$new((a) => Val(a)(None))(insert3(ordVertex)(v._2._1._1)()($$$Map(
36420
36465
  "Two",
@@ -38295,7 +38340,7 @@ var viewDocViewUnit = {
38295
38340
  };
38296
38341
 
38297
38342
  // output-es/App.View.LineChart/index.js
38298
- var identity28 = (x2) => x2;
38343
+ var identity29 = (x2) => x2;
38299
38344
  var join = (v) => (v1) => {
38300
38345
  if (v1.tag === "Inert") {
38301
38346
  return v;
@@ -38349,7 +38394,7 @@ var viewLineChartUnit = {
38349
38394
  const $3 = attrs(point2)(fromFoldable9((() => {
38350
38395
  const $32 = definitely("index within bounds")(index(v3.points)(point$p.j));
38351
38396
  const sel = join($32.x._2)($32.y._2);
38352
- const fill$p = (isPersistent(sel) ? (a) => colorShade(a)(-30) : identity28)(nameCol(definitely("absurd")((() => {
38397
+ const fill$p = (isPersistent(sel) ? (a) => colorShade(a)(-30) : identity29)(nameCol(definitely("absurd")((() => {
38353
38398
  const $4 = v3.name._1;
38354
38399
  return findIndex((v$1) => v$1 === $4)(arrayMap((x2) => x2.name._1)($0));
38355
38400
  })())));
@@ -38390,7 +38435,7 @@ var viewLineChartUnit = {
38390
38435
  return [
38391
38436
  $Tuple(
38392
38437
  "stroke",
38393
- (isTransient(sel) ? (a) => colorShade(a)(-30) : identity28)((isPersistent(sel) ? (a) => colorShade(a)(-30) : identity28)(nameCol(definitely("absurd")((() => {
38438
+ (isTransient(sel) ? (a) => colorShade(a)(-30) : identity29)((isPersistent(sel) ? (a) => colorShade(a)(-30) : identity29)(nameCol(definitely("absurd")((() => {
38394
38439
  const $3 = v3.name._1;
38395
38440
  return findIndex((v$1) => v$1 === $3)(arrayMap((x2) => x2.name._1)($0));
38396
38441
  })()))))
@@ -38894,8 +38939,8 @@ var toStringWith = (v) => {
38894
38939
  var $Filter = (tag) => tag;
38895
38940
  var toUnfoldable10 = /* @__PURE__ */ toUnfoldable4(unfoldableArray);
38896
38941
  var $$for = /* @__PURE__ */ (() => {
38897
- const traverse2 = traversableArray.traverse(applicativeEffect);
38898
- return (x2) => (f) => traverse2(f)(x2);
38942
+ const traverse22 = traversableArray.traverse(applicativeEffect);
38943
+ return (x2) => (f) => traverse22(f)(x2);
38899
38944
  })();
38900
38945
  var for_5 = /* @__PURE__ */ for_(applicativeEffect)(foldableArray);
38901
38946
  var forWithIndex_4 = /* @__PURE__ */ forWithIndex_(applicativeEffect)(foldableWithIndexArray);
@@ -39168,9 +39213,9 @@ var viewTextUnit = {
39168
39213
  const $0 = v1._1;
39169
39214
  const $1 = select(":nth-child(1)")(rootElement);
39170
39215
  return () => {
39171
- const elem2 = $1();
39216
+ const elem3 = $1();
39172
39217
  const listener = eventListener((x2) => redraw(selectionEventData$p(x2)._2))();
39173
- const $2 = styles(elem2)(fromFoldable9(textAttrs(textualString)($0)))();
39218
+ const $2 = styles(elem3)(fromFoldable9(textAttrs(textualString)($0)))();
39174
39219
  return for_2(["mousedown", "mouseenter", "mouseleave"])((ev) => on(ev)(listener)($2))();
39175
39220
  };
39176
39221
  }
@@ -39264,7 +39309,7 @@ var pack32 = (x2) => (v) => v(viewScatterPlotUnit)(x2);
39264
39309
  var pack4 = (x2) => (v) => v(viewMultiViewUnit)(x2);
39265
39310
  var pack5 = (x2) => (v) => v(viewParagraphUnit)(x2);
39266
39311
  var pack6 = (x2) => (v) => v(viewLinkUnit)(x2);
39267
- var identity29 = (x2) => x2;
39312
+ var identity30 = (x2) => x2;
39268
39313
  var pack7 = (x2) => (v) => v(viewTableViewUnit)(x2);
39269
39314
  var pack8 = (x2) => (v) => v(viewMatrixViewUnit)(x2);
39270
39315
  var fromFoldable11 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
@@ -39456,7 +39501,7 @@ var view = () => (v) => (v1) => (v2) => {
39456
39501
  return pack5($Paragraph(false, arrayApply(vws)(arrayMap((v$1) => Nothing)(vws))));
39457
39502
  }
39458
39503
  if (v1._3._1 === "Nil" || v1._3._1 === ":") {
39459
- const records = arrayMap(dict(identity29))(reflectValSelStates\u{1D54A}Array.from()(v1));
39504
+ const records = arrayMap(dict(identity30))(reflectValSelStates\u{1D54A}Array.from()(v1));
39460
39505
  const colNames = headers(records);
39461
39506
  return pack7({
39462
39507
  title: v,
@@ -39472,7 +39517,7 @@ var view = () => (v) => (v1) => (v2) => {
39472
39517
  }
39473
39518
  }
39474
39519
  if (v1._3._1 === "Nil" || v1._3._1 === ":") {
39475
- const records = arrayMap(dict(identity29))(reflectValSelStates\u{1D54A}Array.from()(v1));
39520
+ const records = arrayMap(dict(identity30))(reflectValSelStates\u{1D54A}Array.from()(v1));
39476
39521
  const colNames = headers(records);
39477
39522
  return pack7({
39478
39523
  title: v,
@@ -39921,6 +39966,7 @@ var greaterThanOrEq = /* @__PURE__ */ (() => {
39921
39966
  return (a1) => (a2) => $0.compare(a1)(a2) !== "LT";
39922
39967
  })();
39923
39968
  var show32 = (v) => "(Tuple " + showIntImpl(v._1) + " " + showIntImpl(v._2) + ")";
39969
+ var traverse2 = /* @__PURE__ */ (() => traversableList.traverse(applicativeMaybe))();
39924
39970
  var concatM = (dictMonad) => foldableList.foldr((() => {
39925
39971
  const $0 = dictMonad.Bind1();
39926
39972
  return (f) => (g) => (a) => $0.bind(f(a))(g);
@@ -40064,9 +40110,9 @@ var graphGC = (dictGraph) => {
40064
40110
  };
40065
40111
  var closeDefs = (dictMonadWithGraphAlloc) => {
40066
40112
  const Monad0 = dictMonadWithGraphAlloc.MonadWithGraph2().Monad0();
40067
- const traverse2 = traversableDict.traverse(Monad0.Applicative0());
40113
+ const traverse2$1 = traversableDict.traverse(Monad0.Applicative0());
40068
40114
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
40069
- return (\u03B3) => (\u03C1) => (\u03B1s) => Monad0.Bind1().Apply0().Functor0().map(Env)(traverse2((\u03C3) => {
40115
+ return (\u03B3) => (\u03C1) => (\u03B1s) => Monad0.Bind1().Apply0().Functor0().map(Env)(traverse2$1((\u03C3) => {
40070
40116
  const \u03C1$p = forDefs(\u03C1)(\u03C3);
40071
40117
  return $$new((a) => Val(a)(None))(\u03B1s)($BaseVal(
40072
40118
  "Fun",
@@ -40088,14 +40134,14 @@ var closeDefs = (dictMonadWithGraphAlloc) => {
40088
40134
  var new$p = (dictMonadWithGraphAlloc) => {
40089
40135
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
40090
40136
  const fresh = dictMonadWithGraphAlloc.MonadAlloc0().fresh;
40091
- return (dictMonadReader) => (dictMonadAff) => {
40092
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40137
+ return (dictMonadReader) => {
40138
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40093
40139
  const Bind1 = Monad0.Bind1();
40094
40140
  return (dictLoadFile) => (v) => (v1) => (v2) => (v3) => {
40095
40141
  if (v2.tag === "None") {
40096
40142
  return $$new((\u03B1s$p) => (u$p) => $Val(\u03B1s$p, None, u$p))(v1)(v3);
40097
40143
  }
40098
- return Bind1.bind(fresh)((\u03B1) => Bind1.bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(v)((() => {
40144
+ return Bind1.bind(fresh)((\u03B1) => Bind1.bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(v)((() => {
40099
40145
  const $0 = {};
40100
40146
  $0.this = $Val(\u03B1, None, v3);
40101
40147
  return $0;
@@ -40107,8 +40153,8 @@ var new$p = (dictMonadWithGraphAlloc) => {
40107
40153
  };
40108
40154
  };
40109
40155
  };
40110
- var evalDocOpt = (dictMonadWithGraphAlloc) => (dictMonadReader) => (dictMonadAff) => {
40111
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40156
+ var evalDocOpt = (dictMonadWithGraphAlloc) => (dictMonadReader) => {
40157
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40112
40158
  const Applicative0 = Monad0.Applicative0();
40113
40159
  const $0 = Monad0.Bind1().Apply0().Functor0();
40114
40160
  const sequence2 = traversableList.traverse(Applicative0)(identity7);
@@ -40122,7 +40168,7 @@ var evalDocOpt = (dictMonadWithGraphAlloc) => (dictMonadReader) => (dictMonadAff
40122
40168
  return Applicative0.pure($DocCommentElem("Token", v2._1));
40123
40169
  }
40124
40170
  if (v2.tag === "Unquote") {
40125
- return $0.map(Unquote)($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v2._1)(setSet4.empty));
40171
+ return $0.map(Unquote)($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v2._1)(setSet4.empty));
40126
40172
  }
40127
40173
  fail();
40128
40174
  })(v1._1)));
@@ -40138,13 +40184,13 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40138
40184
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
40139
40185
  const match1 = match(dictMonadWithGraphAlloc);
40140
40186
  const closeDefs1 = closeDefs(dictMonadWithGraphAlloc);
40141
- return (dictMonadReader) => (dictMonadAff) => {
40142
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40187
+ return (dictMonadReader) => {
40188
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40143
40189
  const Bind1 = Monad0.Bind1();
40144
40190
  const $0 = Bind1.Apply0().Functor0();
40145
40191
  const Applicative0 = Monad0.Applicative0();
40146
- const traverse2 = traversableList.traverse(Applicative0);
40147
- const traverse3 = traversablePair.traverse(Applicative0);
40192
+ const traverse3 = traversableList.traverse(Applicative0);
40193
+ const traverse4 = traversablePair.traverse(Applicative0);
40148
40194
  const sequence2 = traversableArray.traverse(Applicative0)(identity5);
40149
40195
  return (dictLoadFile) => (v) => (v1) => (v2) => {
40150
40196
  if (v1.tag === "Var") {
@@ -40154,32 +40200,23 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40154
40200
  return withMsg2("Variable lookup")(lookup$p(MonadThrow0)(showString)(mapEnvStringVal)(v1._1)(v));
40155
40201
  }
40156
40202
  if (v1.tag === "Int") {
40157
- return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal(
40158
- "Int",
40159
- v1._3
40160
- ));
40203
+ return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal("Int", v1._3));
40161
40204
  }
40162
40205
  if (v1.tag === "Float") {
40163
- return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal(
40164
- "Float",
40165
- v1._3
40166
- ));
40206
+ return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal("Float", v1._3));
40167
40207
  }
40168
40208
  if (v1.tag === "Str") {
40169
- return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal(
40170
- "Str",
40171
- v1._3
40172
- ));
40209
+ return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)(v1._1)()(v2))(v1._2)($BaseVal("Str", v1._3));
40173
40210
  }
40174
40211
  if (v1.tag === "Dictionary") {
40175
40212
  const $1 = v1._2;
40176
40213
  const $2 = v1._1;
40177
- return Bind1.bind($0.map(unzip3)(traverse2(traverse3((() => {
40178
- const $3 = $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v);
40214
+ return Bind1.bind($0.map(unzip3)(traverse3(traverse4((() => {
40215
+ const $3 = $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v);
40179
40216
  return (a) => $3(a)(v2);
40180
40217
  })()))(v1._3)))((v3) => {
40181
40218
  const v4 = unzip(listMap((v$1) => $Tuple(v$1._3.tag === "Str" ? v$1._3._1 : typeError(v$1._3)("Str"), v$1._1))(v3._1));
40182
- return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)($2)()(v2))($1)($BaseVal(
40219
+ return new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)($2)()(v2))($1)($BaseVal(
40183
40220
  "Dictionary",
40184
40221
  fromFoldable110(zipWith2(Tuple)(v4._1)(zipWith2(Tuple)(v4._2)(v3._2)))
40185
40222
  ));
@@ -40210,14 +40247,10 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40210
40247
  return go$r;
40211
40248
  };
40212
40249
  return go(0)($3);
40213
- })()))(() => Bind1.bind(traverse2((() => {
40214
- const $5 = $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v);
40250
+ })()))(() => Bind1.bind(traverse3((() => {
40251
+ const $5 = $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v);
40215
40252
  return (a) => $5(a)(v2);
40216
- })())($3))((vs) => new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)($4)()(v2))($2)($BaseVal(
40217
- "Constr",
40218
- $1,
40219
- vs
40220
- ))));
40253
+ })())($3))((vs) => new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)($4)()(v2))($2)($BaseVal("Constr", $1, vs))));
40221
40254
  }
40222
40255
  if (v1.tag === "Matrix") {
40223
40256
  const $1 = v1._2;
@@ -40225,7 +40258,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40225
40258
  const $3 = v1._4._1;
40226
40259
  const $4 = v1._4._2;
40227
40260
  const $5 = v1._1;
40228
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v1._5)(v2))((v3) => {
40261
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v1._5)(v2))((v3) => {
40229
40262
  const v5 = intPair.unpack(v3._3);
40230
40263
  const $6 = v5._1._1;
40231
40264
  const $7 = v5._2._1;
@@ -40236,7 +40269,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40236
40269
  1
40237
40270
  )) + "); got (" + show32($Tuple($6, $7)) + ")"))(() => Bind1.bind(sequence2(arrayBind(range(1)($6))((i) => [
40238
40271
  sequence2(arrayBind(range(1)($7))((j) => [
40239
- $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(v)(disjointUnion2((() => {
40272
+ $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(v)(disjointUnion2((() => {
40240
40273
  const $10 = {};
40241
40274
  $10[$3] = $Val($8, None, $BaseVal("Int", i));
40242
40275
  return $10;
@@ -40246,7 +40279,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40246
40279
  return $10;
40247
40280
  })())))($2)(v2)
40248
40281
  ]))
40249
- ])))((vss) => new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(insert3(ordVertex)($5)()(v2))($1)($BaseVal(
40282
+ ])))((vss) => new$p(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(insert3(ordVertex)($5)()(v2))($1)($BaseVal(
40250
40283
  "Matrix",
40251
40284
  $Tuple(vss, $Tuple($Tuple($6, $8), $Tuple($7, $9)))
40252
40285
  ))));
@@ -40272,7 +40305,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40272
40305
  if (v1.tag === "Project") {
40273
40306
  const $1 = v1._1;
40274
40307
  const $2 = v1._3;
40275
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v1._2)(v2))((v3) => {
40308
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v1._2)(v2))((v3) => {
40276
40309
  if (v3._3.tag === "Dictionary") {
40277
40310
  return Bind1.bind(withMsg2("Dict lookup")(orElse(MonadThrow0)('Key "' + $2 + '" not found')((() => {
40278
40311
  const $3 = _lookup(Nothing, Just, $2, v3._3._1);
@@ -40280,7 +40313,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40280
40313
  return $Maybe("Just", $3._1._2);
40281
40314
  }
40282
40315
  return Nothing;
40283
- })())))((v$p) => concatDocs(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v$p)($1));
40316
+ })())))((v$p) => concatDocs(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v$p)($1));
40284
40317
  }
40285
40318
  return MonadThrow0.throwError(error("Found " + intercalate4("\n")(removeDocWS(prettyVal(highlightableVertex).pretty(v3)).lines) + ", expected dictionary"));
40286
40319
  });
@@ -40288,7 +40321,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40288
40321
  if (v1.tag === "DProject") {
40289
40322
  const $1 = v1._1;
40290
40323
  const $2 = v1._3;
40291
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v1._2)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)($2)(v2))((v$p) => {
40324
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v1._2)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)($2)(v2))((v$p) => {
40292
40325
  if (v3._3.tag === "Dictionary") {
40293
40326
  if (v$p._3.tag === "Str") {
40294
40327
  return Bind1.bind(withMsg2("Dict lookup")(orElse(MonadThrow0)('Key "' + v$p._3._1 + '" not found')((() => {
@@ -40297,7 +40330,7 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40297
40330
  return $Maybe("Just", $3._1._2);
40298
40331
  }
40299
40332
  return Nothing;
40300
- })())))((v$p$p) => concatDocs(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v$p$p)($1));
40333
+ })())))((v$p$p) => concatDocs(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v$p$p)($1));
40301
40334
  }
40302
40335
  return MonadThrow0.throwError(error("Found " + intercalate4("\n")(removeDocWS(prettyVal(highlightableVertex).pretty(v$p)).lines) + ", expected string"));
40303
40336
  }
@@ -40307,10 +40340,10 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40307
40340
  if (v1.tag === "App") {
40308
40341
  const $1 = v1._1;
40309
40342
  const $2 = v1._3;
40310
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v1._2)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)($2)(v2))((v$p) => Bind1.bind(apply2(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v3)(v$p))((v4) => {
40343
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v1._2)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)($2)(v2))((v$p) => Bind1.bind(apply2(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v3)(v$p))((v4) => {
40311
40344
  const $3 = v4._3;
40312
40345
  const $4 = v4._1;
40313
- return Bind1.bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(v)((() => {
40346
+ return Bind1.bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(v)((() => {
40314
40347
  const $5 = {};
40315
40348
  $5.this = v4;
40316
40349
  return $5;
@@ -40320,24 +40353,24 @@ var $$eval = (dictMonadWithGraphAlloc) => {
40320
40353
  if (v1.tag === "Let") {
40321
40354
  const $1 = v1._2;
40322
40355
  const $2 = v1._1._1;
40323
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(v)(v1._1._2)(v2))((v3) => Bind1.bind(match1(v3)($2))((v4) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(v)(v4._1))($1)(v4._2._2)));
40356
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(v)(v1._1._2)(v2))((v3) => Bind1.bind(match1(v3)($2))((v4) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(v)(v4._1))($1)(v4._2._2)));
40324
40357
  }
40325
40358
  if (v1.tag === "LetRec") {
40326
40359
  const $1 = v1._2;
40327
40360
  const $2 = v1._1._1;
40328
- return Bind1.bind(closeDefs1(v)(v1._1._2)(insert3(ordVertex)($2)()(v2)))((\u03B3$p) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(v)(\u03B3$p))($1)(insert3(ordVertex)($2)()(v2)));
40361
+ return Bind1.bind(closeDefs1(v)(v1._1._2)(insert3(ordVertex)($2)()(v2)))((\u03B3$p) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(v)(\u03B3$p))($1)(insert3(ordVertex)($2)()(v2)));
40329
40362
  }
40330
40363
  fail();
40331
40364
  };
40332
40365
  };
40333
40366
  };
40334
- var concatDocs = (dictMonadWithGraphAlloc) => (dictMonadReader) => (dictMonadAff) => {
40335
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40367
+ var concatDocs = (dictMonadWithGraphAlloc) => (dictMonadReader) => {
40368
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40336
40369
  return (dictLoadFile) => (\u03B3) => (v) => (doc2) => {
40337
40370
  const $0 = v._3;
40338
40371
  const $1 = v._2;
40339
40372
  const $2 = v._1;
40340
- return Monad0.Bind1().bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(\u03B3)((() => {
40373
+ return Monad0.Bind1().bind(evalDocOpt(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(\u03B3)((() => {
40341
40374
  const $3 = {};
40342
40375
  $3.this = $Val($2, None, $0);
40343
40376
  return $3;
@@ -40350,8 +40383,8 @@ var apply2 = (dictMonadWithGraphAlloc) => {
40350
40383
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
40351
40384
  const MonadError1 = dictMonadWithGraphAlloc.MonadError1();
40352
40385
  const MonadThrow0 = MonadError1.MonadThrow0();
40353
- return (dictMonadReader) => (dictMonadAff) => {
40354
- const Bind1 = dictMonadAff.MonadEffect0().Monad0().Bind1();
40386
+ return (dictMonadReader) => {
40387
+ const Bind1 = dictMonadReader.MonadAsk0().Monad0().Bind1();
40355
40388
  return (dictLoadFile) => (v) => (v1) => {
40356
40389
  const $0 = (v2) => MonadThrow0.throwError(error("Found " + intercalate4("\n")(removeDocWS(prettyVal(highlightableVertex).pretty(v2)).lines) + ", expected function"));
40357
40390
  if (v._3.tag === "Fun") {
@@ -40359,7 +40392,7 @@ var apply2 = (dictMonadWithGraphAlloc) => {
40359
40392
  const $1 = v._1;
40360
40393
  const $2 = v._3._1._1;
40361
40394
  const $3 = v._3._1._3;
40362
- return Bind1.bind(closeDefs1($2)(v._3._1._2)($$$Map("Two", Leaf2, $1, void 0, Leaf2)))((\u03B32) => Bind1.bind(match1(v1)($3))((v3) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictMonadAff)(dictLoadFile)(unionWith((v$1) => identity18)(unionWith((v$1) => identity18)($2)(\u03B32))(v3._1))(v3._2._1.tag === "ContExpr" ? v3._2._1._1 : throwException(error("Expression expected"))())(insert3(ordVertex)($1)()(v3._2._2))));
40395
+ return Bind1.bind(closeDefs1($2)(v._3._1._2)($$$Map("Two", Leaf2, $1, void 0, Leaf2)))((\u03B32) => Bind1.bind(match1(v1)($3))((v3) => $$eval(dictMonadWithGraphAlloc)(dictMonadReader)(dictLoadFile)(unionWith((v$1) => identity19)(unionWith((v$1) => identity19)($2)(\u03B32))(v3._1))(v3._2._1.tag === "ContExpr" ? v3._2._1._1 : throwException(error("Expression expected"))())(insert3(ordVertex)($1)()(v3._2._2))));
40363
40396
  }
40364
40397
  if (v._3._1.tag === "Foreign") {
40365
40398
  const $1 = v._3._1._1._2;
@@ -40390,7 +40423,7 @@ var apply2 = (dictMonadWithGraphAlloc) => {
40390
40423
  $Fun("Foreign", $Tuple(v._3._1._1._1, $1), vs$p)
40391
40424
  ));
40392
40425
  }
40393
- return $1._1.op(dictMonadWithGraphAlloc)(MonadError1)(dictMonadAff)(dictMonadReader)(dictLoadFile)(vs$p);
40426
+ return $1._1.op(dictMonadWithGraphAlloc)(MonadError1)(dictMonadReader)(dictLoadFile)(vs$p);
40394
40427
  }
40395
40428
  if (v._3._1.tag === "PartialConstr") {
40396
40429
  const $1 = v._1;
@@ -40465,33 +40498,30 @@ var eval_module = (dictMonadWithGraphAlloc) => {
40465
40498
  const match1 = match(dictMonadWithGraphAlloc);
40466
40499
  const closeDefs1 = closeDefs(dictMonadWithGraphAlloc);
40467
40500
  return (dictMonadReader) => {
40501
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40502
+ const $0 = Monad0.Bind1();
40468
40503
  const eval2 = eval1(dictMonadReader);
40469
- return (dictMonadAff) => {
40470
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40471
- const $0 = Monad0.Bind1();
40472
- const eval3 = eval2(dictMonadAff);
40473
- return (dictLoadFile) => {
40474
- const eval4 = eval3(dictLoadFile);
40475
- return (\u03B3) => {
40476
- const go = (v) => (v1) => (v2) => {
40477
- if (v1.tag === "Nil") {
40478
- return Monad0.Applicative0().pure(v);
40504
+ return (dictLoadFile) => {
40505
+ const eval3 = eval2(dictLoadFile);
40506
+ return (\u03B3) => {
40507
+ const go = (v) => (v1) => (v2) => {
40508
+ if (v1.tag === "Nil") {
40509
+ return Monad0.Applicative0().pure(v);
40510
+ }
40511
+ if (v1.tag === "Cons") {
40512
+ if (v1._1.tag === "Left") {
40513
+ const $1 = v1._2;
40514
+ const $2 = v1._1._1._1;
40515
+ return $0.bind(eval3(unionWith((v$1) => identity19)(\u03B3)(v))(v1._1._1._2)(v2))((v3) => $0.bind(match1(v3)($2))((v4) => go(unionWith((v$1) => identity19)(v)(v4._1))($1)(v4._2._2)));
40479
40516
  }
40480
- if (v1.tag === "Cons") {
40481
- if (v1._1.tag === "Left") {
40482
- const $1 = v1._2;
40483
- const $2 = v1._1._1._1;
40484
- return $0.bind(eval4(unionWith((v$1) => identity18)(\u03B3)(v))(v1._1._1._2)(v2))((v3) => $0.bind(match1(v3)($2))((v4) => go(unionWith((v$1) => identity18)(v)(v4._1))($1)(v4._2._2)));
40485
- }
40486
- if (v1._1.tag === "Right") {
40487
- const $1 = v1._2;
40488
- return $0.bind(closeDefs1(unionWith((v$1) => identity18)(\u03B3)(v))(v1._1._1._2)(insert3(ordVertex)(v1._1._1._1)()(v2)))((\u03B3$p$p) => go(unionWith((v$1) => identity18)(v)(\u03B3$p$p))($1)(v2));
40489
- }
40517
+ if (v1._1.tag === "Right") {
40518
+ const $1 = v1._2;
40519
+ return $0.bind(closeDefs1(unionWith((v$1) => identity19)(\u03B3)(v))(v1._1._1._2)(insert3(ordVertex)(v1._1._1._1)()(v2)))((\u03B3$p$p) => go(unionWith((v$1) => identity19)(v)(\u03B3$p$p))($1)(v2));
40490
40520
  }
40491
- fail();
40492
- };
40493
- return go(empty);
40521
+ }
40522
+ fail();
40494
40523
  };
40524
+ return go(empty);
40495
40525
  };
40496
40526
  };
40497
40527
  };
@@ -40500,26 +40530,95 @@ var eval_progCxt = (dictMonadWithGraphAlloc) => {
40500
40530
  const eval_module1 = eval_module(dictMonadWithGraphAlloc);
40501
40531
  const eval1 = $$eval(dictMonadWithGraphAlloc);
40502
40532
  return (dictMonadReader) => {
40533
+ const Monad0 = dictMonadReader.MonadAsk0().Monad0();
40534
+ const $0 = Monad0.Bind1();
40503
40535
  const eval_module2 = eval_module1(dictMonadReader);
40536
+ const $1 = Monad0.Applicative0();
40504
40537
  const eval2 = eval1(dictMonadReader);
40505
- return (dictMonadAff) => {
40506
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
40507
- const $0 = Monad0.Bind1();
40508
- const eval_module3 = eval_module2(dictMonadAff);
40509
- const $1 = Monad0.Applicative0();
40510
- const eval3 = eval2(dictMonadAff);
40511
- const concatM1 = concatM(Monad0);
40512
- return (dictLoadFile) => {
40513
- const eval_module4 = eval_module3(dictLoadFile);
40514
- const eval4 = eval3(dictLoadFile);
40515
- return (v) => concatM1(foldableList.foldr(Cons)(listMap((v1) => (\u03B3) => {
40516
- const $2 = v1._1;
40517
- return $0.bind(eval4(\u03B3)(v1._2)(setSet4.empty))((v2) => $1.pure(unionWith((v$1) => identity18)(\u03B3)((() => {
40518
- const $3 = {};
40519
- $3[$2] = v2;
40520
- return $3;
40521
- })())));
40522
- })(reverse2(v.datasets)))(listMap((mod) => (\u03B3) => $0.bind(eval_module4(\u03B3)(mod)(setSet4.empty))((\u03B3$p) => $1.pure(unionWith((v$1) => identity18)(\u03B3)(\u03B3$p))))(reverse2(v.mods))))(v.primitives);
40538
+ const concatM1 = concatM(Monad0);
40539
+ return (dictLoadFile) => {
40540
+ const eval_module3 = eval_module2(dictLoadFile);
40541
+ const eval3 = eval2(dictLoadFile);
40542
+ return (v) => (v1) => {
40543
+ const $2 = v.datasets;
40544
+ const $3 = v1.graph;
40545
+ const $4 = v1.modules;
40546
+ const $5 = v.primitives;
40547
+ const $6 = v1.roots;
40548
+ return $0.bind(foldM3(Monad0)((\u03B3s) => (name3) => {
40549
+ const v2 = definitely("deps evaluated")((() => {
40550
+ const $7 = lookup2(ordString)(name3)($3);
40551
+ if ($7.tag === "Just") {
40552
+ const $8 = traverse2((dep) => lookup2(ordString)(dep)(\u03B3s))($7._1);
40553
+ if ($8.tag === "Just") {
40554
+ const $9 = lookup2(ordString)(name3)($4);
40555
+ if ($9.tag === "Just") {
40556
+ return $Maybe("Just", $Tuple($9._1, $8._1));
40557
+ }
40558
+ if ($9.tag === "Nothing") {
40559
+ return Nothing;
40560
+ }
40561
+ fail();
40562
+ }
40563
+ if ($8.tag === "Nothing") {
40564
+ return Nothing;
40565
+ }
40566
+ fail();
40567
+ }
40568
+ if ($7.tag === "Nothing") {
40569
+ return Nothing;
40570
+ }
40571
+ fail();
40572
+ })());
40573
+ return $0.bind(eval_module3((() => {
40574
+ const go = (go$a0$copy) => (go$a1$copy) => {
40575
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
40576
+ while (go$c) {
40577
+ const b = go$a0, v$1 = go$a1;
40578
+ if (v$1.tag === "Nil") {
40579
+ go$c = false;
40580
+ go$r = b;
40581
+ continue;
40582
+ }
40583
+ if (v$1.tag === "Cons") {
40584
+ go$a0 = unionWith((v$2) => identity19)(b)(v$1._1);
40585
+ go$a1 = v$1._2;
40586
+ continue;
40587
+ }
40588
+ fail();
40589
+ }
40590
+ return go$r;
40591
+ };
40592
+ return go($5)(v2._2);
40593
+ })())(v2._1)(setSet4.empty))((\u03B3$p) => $1.pure(insert3(ordString)(name3)(\u03B3$p)(\u03B3s)));
40594
+ })(Leaf2)(v1.topsorted))((\u03B3s) => {
40595
+ const go = (go$a0$copy) => (go$a1$copy) => {
40596
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
40597
+ while (go$c) {
40598
+ const b = go$a0, v$1 = go$a1;
40599
+ if (v$1.tag === "Nil") {
40600
+ go$c = false;
40601
+ go$r = b;
40602
+ continue;
40603
+ }
40604
+ if (v$1.tag === "Cons") {
40605
+ go$a0 = unionWith((v$2) => identity19)(b)(v$1._1);
40606
+ go$a1 = v$1._2;
40607
+ continue;
40608
+ }
40609
+ fail();
40610
+ }
40611
+ return go$r;
40612
+ };
40613
+ return concatM1(listMap((v2) => (\u03B3) => {
40614
+ const $7 = v2._1;
40615
+ return $0.bind(eval3(\u03B3)(v2._2)(setSet4.empty))((v3) => $1.pure(unionWith((v$1) => identity19)(\u03B3)((() => {
40616
+ const $8 = {};
40617
+ $8[$7] = v3;
40618
+ return $8;
40619
+ })())));
40620
+ })(reverse2($2)))(go($5)(listMap((dep) => definitely("has env")(lookup2(ordString)(dep)(\u03B3s)))($6)));
40621
+ });
40523
40622
  };
40524
40623
  };
40525
40624
  };
@@ -40534,25 +40633,20 @@ var graphEval = (dictMonadAff) => {
40534
40633
  Applicative0: () => applicativeStateT(Monad0),
40535
40634
  Bind1: () => bindStateT(Monad0)
40536
40635
  })(graphGraphImpl);
40537
- const monadAffState2 = monadAffState(dictMonadAff);
40538
- const monadAffState1 = monadAffState(monadAffState2);
40539
- const $1 = monadAffState2.MonadEffect0().Monad0();
40636
+ const $1 = monadAffState(dictMonadAff).MonadEffect0().Monad0();
40540
40637
  const $2 = dictMonadAff.MonadEffect0().Monad0();
40541
40638
  return (dictMonadReader) => {
40542
40639
  const monadReaderStateT2 = monadReaderStateT(monadReaderStateT(dictMonadReader));
40543
40640
  return (dictLoadFile) => (dictMonadError) => {
40544
- const eval1 = $$eval(monadWithGraphAllocWithGr(dictMonadError))(monadReaderStateT2)(monadAffState1)((() => {
40545
- const loadFile1 = dictLoadFile.loadFile(dictMonadError)(dictMonadAff);
40641
+ const eval1 = $$eval(monadWithGraphAllocWithGr(dictMonadError))(monadReaderStateT2)((() => {
40642
+ const loadFileFromPath1 = dictLoadFile.loadFileFromPath(dictMonadError)(dictMonadAff);
40546
40643
  return {
40547
- loadFile: (dictMonadError1) => (dictMonadAff1) => (folders) => {
40548
- const $3 = loadFile1(folders);
40549
- return (x2) => {
40550
- const $4 = $3(x2);
40551
- return (s) => $1.Bind1().bind((s$1) => $2.Bind1().bind($4)((x$1) => $2.Applicative0().pure($Tuple(x$1, s$1))))((x$1) => $1.Applicative0().pure($Tuple(
40552
- x$1,
40553
- s
40554
- )));
40555
- };
40644
+ loadFileFromPath: (dictMonadError1) => (dictMonadAff1) => (x2) => {
40645
+ const $3 = loadFileFromPath1(x2);
40646
+ return (s) => $1.Bind1().bind((s$1) => $2.Bind1().bind($3)((x$1) => $2.Applicative0().pure($Tuple(x$1, s$1))))((x$1) => $1.Applicative0().pure($Tuple(
40647
+ x$1,
40648
+ s
40649
+ )));
40556
40650
  }
40557
40651
  };
40558
40652
  })());
@@ -40583,6 +40677,87 @@ var graphEval = (dictMonadAff) => {
40583
40677
  };
40584
40678
  };
40585
40679
 
40680
+ // output-es/File/index.js
40681
+ var bindExceptT2 = /* @__PURE__ */ bindExceptT(monadAff);
40682
+ var applicativeExceptT2 = /* @__PURE__ */ applicativeExceptT(monadAff);
40683
+ var Folder = (x2) => x2;
40684
+ var show4 = /* @__PURE__ */ showArrayImpl(showStringImpl);
40685
+ var loadFileAff = {
40686
+ loadFileFromPath: (dictMonadError) => (dictMonadAff) => (v) => _bind(bindExceptT2.bind(dictMonadAff.liftAff(_bind(request(driver)({
40687
+ method: $Either("Left", HEAD),
40688
+ url: v,
40689
+ headers: [],
40690
+ content: Nothing,
40691
+ username: Nothing,
40692
+ password: Nothing,
40693
+ withCredentials: false,
40694
+ responseFormat: $ResponseFormat("String", identity),
40695
+ timeout: Nothing
40696
+ }))((resp) => _pure((() => {
40697
+ if (resp.tag === "Right") {
40698
+ if (resp._1.status === 200) {
40699
+ return $Either("Right", $Tuple(resp._1, v));
40700
+ }
40701
+ return $Either("Left", RequestFailedError);
40702
+ }
40703
+ if (resp.tag === "Left") {
40704
+ return $Either("Left", resp._1);
40705
+ }
40706
+ fail();
40707
+ })()))))((v1) => {
40708
+ const $0 = v1._2;
40709
+ return bindExceptT2.bind(applicativeExceptT2.pure())(() => bindExceptT2.bind(dictMonadAff.liftAff(request(driver)({
40710
+ method: $Either("Left", GET),
40711
+ url: $0,
40712
+ headers: [],
40713
+ content: Nothing,
40714
+ username: Nothing,
40715
+ password: Nothing,
40716
+ withCredentials: false,
40717
+ responseFormat: $ResponseFormat("String", identity),
40718
+ timeout: Nothing
40719
+ })))((contents) => applicativeExceptT2.pure(contents.body)));
40720
+ }))((result) => _pure((() => {
40721
+ if (result.tag === "Left") {
40722
+ return Nothing;
40723
+ }
40724
+ if (result.tag === "Right") {
40725
+ return $Maybe("Just", result._1);
40726
+ }
40727
+ fail();
40728
+ })()))
40729
+ };
40730
+ var prependFolder = (v) => (v1) => v + "/" + v1;
40731
+ var loadFile = (dictLoadFile) => (dictMonad) => {
40732
+ const $0 = dictMonad.Applicative0();
40733
+ return (dictMonadError) => {
40734
+ const loadFileFromPath2 = dictLoadFile.loadFileFromPath(dictMonadError);
40735
+ return (dictMonadAff) => {
40736
+ const loadFileFromPath3 = loadFileFromPath2(dictMonadAff);
40737
+ return (folders) => (file) => {
40738
+ const paths = arrayApply(arrayMap(prependFolder)(folders))([file]);
40739
+ return dictMonad.Bind1().bind(foldM(dictMonad)((v) => (v1) => {
40740
+ if (v.tag === "Just") {
40741
+ return $0.pure($Maybe("Just", v._1));
40742
+ }
40743
+ if (v.tag === "Nothing") {
40744
+ return loadFileFromPath3(v1);
40745
+ }
40746
+ fail();
40747
+ })(Nothing)(paths))((result) => {
40748
+ if (result.tag === "Just") {
40749
+ return $0.pure(result._1);
40750
+ }
40751
+ if (result.tag === "Nothing") {
40752
+ return throwException(error("File not found in any path: " + show4(paths)))();
40753
+ }
40754
+ fail();
40755
+ });
40756
+ };
40757
+ };
40758
+ };
40759
+ };
40760
+
40586
40761
  // output-es/Data.CodePoint.Unicode/index.js
40587
40762
  var isUpper = (x2) => checkAttr([512, 524288])(x2);
40588
40763
  var isSpace = (c) => {
@@ -40744,7 +40919,7 @@ var toLowerSimple = /* @__PURE__ */ convert(uTowlower);
40744
40919
  var toUpperSimple = /* @__PURE__ */ convert(uTowupper);
40745
40920
 
40746
40921
  // output-es/Parsing.Token/index.js
40747
- var identity30 = (x2) => x2;
40922
+ var identity31 = (x2) => x2;
40748
40923
  var choice3 = /* @__PURE__ */ choice(foldableArray);
40749
40924
  var toUnfoldable15 = /* @__PURE__ */ toUnfoldable2(unfoldableArray);
40750
40925
  var theReservedNames = (v) => {
@@ -41057,10 +41232,10 @@ var makeTokenParser = (v) => {
41057
41232
  if ($132) {
41058
41233
  return $42(v4$1, $122);
41059
41234
  }
41060
- return $52(v2, identity30);
41235
+ return $52(v2, identity31);
41061
41236
  });
41062
41237
  },
41063
- (state2, a) => $22((v2$1) => $52(state2, identity30))
41238
+ (state2, a) => $22((v2$1) => $52(state2, identity31))
41064
41239
  )));
41065
41240
  });
41066
41241
  },
@@ -42326,7 +42501,7 @@ var onlyIf = (b) => (a) => {
42326
42501
  };
42327
42502
  var choose2 = /* @__PURE__ */ choose(altParserT);
42328
42503
  var fanin3 = /* @__PURE__ */ fanin(categoryFn)(choiceFn);
42329
- var identity31 = (x2) => x2;
42504
+ var identity32 = (x2) => x2;
42330
42505
  var operators = (binaryOp) => fromFoldable20(listMap(arrayMap((v) => $Operator(
42331
42506
  "Infix",
42332
42507
  (() => {
@@ -42350,6 +42525,10 @@ var operators = (binaryOp) => fromFoldable20(listMap(arrayMap((v) => $Operator(
42350
42525
  }
42351
42526
  fail();
42352
42527
  })(foldableMap.foldr(Cons)(Nil)(opDefs))))));
42528
+ var letters = ($$char) => {
42529
+ const $0 = some(alternativeParserT)(lazyParserT)($$char);
42530
+ return (state1, more, lift12, $$throw2, done) => more((v1) => $0(state1, more, lift12, $$throw2, (state2, a) => more((v2) => done(state2, fromCharArray(a)))));
42531
+ };
42353
42532
  var languageDef = /* @__PURE__ */ (() => {
42354
42533
  const opChar = oneOf([":", "!", "#", "$", "%", "&", "*", "+", ".", "/", "<", "=", ">", "?", "@", "\\", "^", "|", "-", "~"]);
42355
42534
  return {
@@ -42403,7 +42582,7 @@ var languageDef = /* @__PURE__ */ (() => {
42403
42582
  })(),
42404
42583
  opStart: opChar,
42405
42584
  opLetter: opChar,
42406
- reservedNames: ["as", "else", "fun", "if", "in", "let", "match", "then"],
42585
+ reservedNames: ["as", "else", "fun", "if", "in", "let", "match", "then", "import"],
42407
42586
  reservedOpNames: ["|", "..", "=", "<-", "->"],
42408
42587
  caseSensitive: true
42409
42588
  };
@@ -42438,6 +42617,34 @@ var keyword2 = (str$p) => {
42438
42617
  }
42439
42618
  return throwException(error(str$p + " is not a reserved word"))();
42440
42619
  };
42620
+ var imports_ = /* @__PURE__ */ manyRec2(/* @__PURE__ */ (() => {
42621
+ const $0 = keyword2("import");
42622
+ const $1 = joinWith("/");
42623
+ const $2 = sepBy1(token.identifier)(token.reservedOp("."));
42624
+ return (state1, more, lift12, $$throw2, done) => more((v2) => more((v1) => $0(
42625
+ state1,
42626
+ more,
42627
+ lift12,
42628
+ $$throw2,
42629
+ (state2, a) => more((v2$1) => more((v3) => more((v1$1) => $2(
42630
+ state2,
42631
+ more,
42632
+ lift12,
42633
+ $$throw2,
42634
+ (state2$1, a$1) => more((v2$2) => {
42635
+ const $3 = $1(fromFoldable111(a$1));
42636
+ return more((v4) => done(state2$1, $3));
42637
+ })
42638
+ ))))
42639
+ )));
42640
+ })());
42641
+ var withImports = (p) => topLevel((state1, more, lift12, $$throw2, done) => more((v1) => imports_(
42642
+ state1,
42643
+ more,
42644
+ lift12,
42645
+ $$throw2,
42646
+ (state2, a) => more((v2) => more((v1$1) => p(state2, more, lift12, $$throw2, (state2$1, a$1) => more((v2$1) => done(state2$1, $Tuple(a$1, a))))))
42647
+ )));
42441
42648
  var ident = (state1, more, lift12, $$throw2, done) => more((v1) => token.identifier(
42442
42649
  state1,
42443
42650
  more,
@@ -42739,17 +42946,8 @@ var varDefs = (expr$p) => {
42739
42946
  )));
42740
42947
  };
42741
42948
  var commentToken = /* @__PURE__ */ (() => {
42742
- const $0 = some(alternativeParserT)(lazyParserT)(docCommentLetter);
42743
- return (state1, more, lift12, $$throw2, done) => more((v1) => more((v1$1) => $0(
42744
- state1,
42745
- more,
42746
- lift12,
42747
- $$throw2,
42748
- (state2, a) => more((v2) => {
42749
- const $1 = fromCharArray(a);
42750
- return more((v2$1) => done(state2, $DocCommentElem("Token", $1)));
42751
- })
42752
- )));
42949
+ const $0 = letters(docCommentLetter);
42950
+ return (state1, more, lift12, $$throw2, done) => more((v1) => $0(state1, more, lift12, $$throw2, (state2, a) => more((v2) => done(state2, $DocCommentElem("Token", a)))));
42753
42951
  })();
42754
42952
  var commentExpr = (expr$p) => (state1, more, lift12, $$throw2, done) => more((v2) => more((v1) => string3("$")(
42755
42953
  state1,
@@ -43429,10 +43627,10 @@ var expr_$lazy = /* @__PURE__ */ binding(() => {
43429
43627
  if ($47) {
43430
43628
  return $42($ParseState(v4$5._1, v4$5._2, false), $46);
43431
43629
  }
43432
- return $43($ParseState($29, $30, false), identity31);
43630
+ return $43($ParseState($29, $30, false), identity32);
43433
43631
  });
43434
43632
  },
43435
- (state2, a) => $25((v2$3) => $43(state2, identity31))
43633
+ (state2, a) => $25((v2$3) => $43(state2, identity32))
43436
43634
  )));
43437
43635
  });
43438
43636
  },
@@ -43473,10 +43671,10 @@ var expr_$lazy = /* @__PURE__ */ binding(() => {
43473
43671
  if ($45) {
43474
43672
  return $40($ParseState(v4$4._1, v4$4._2, false), $44);
43475
43673
  }
43476
- return $41($ParseState($29, $30, false), identity31);
43674
+ return $41($ParseState($29, $30, false), identity32);
43477
43675
  });
43478
43676
  },
43479
- (state2, a) => $25((v2$3) => $41(state2, identity31))
43677
+ (state2, a) => $25((v2$3) => $41(state2, identity32))
43480
43678
  )));
43481
43679
  });
43482
43680
  },
@@ -43820,78 +44018,23 @@ var expr_$lazy = /* @__PURE__ */ binding(() => {
43820
44018
  return go;
43821
44019
  });
43822
44020
  var expr_ = /* @__PURE__ */ expr_$lazy();
43823
- var module_ = /* @__PURE__ */ (() => {
43824
- const $0 = topLevel((() => {
43825
- const $02 = sepBy_try(defs(expr_))(token.semi);
43826
- return (state1, more, lift12, $$throw2, done) => more((v2) => more((v1) => $02(
43827
- state1,
43828
- more,
43829
- lift12,
43830
- $$throw2,
43831
- (state2, a) => more((v2$1) => more((v3) => token.semi(state2, more, lift12, $$throw2, (state3, a$1) => more((v4) => done(state3, a)))))
43832
- )));
43833
- })());
43834
- return (state1, more, lift12, $$throw2, done) => more((v1) => $0(
44021
+ var module_ = /* @__PURE__ */ withImports(/* @__PURE__ */ (() => {
44022
+ const $0 = sepBy_try(defs(expr_))(token.semi);
44023
+ return (state1, more, lift12, $$throw2, done) => more((v2) => more((v1) => more((v1$1) => $0(
43835
44024
  state1,
43836
44025
  more,
43837
44026
  lift12,
43838
44027
  $$throw2,
43839
- (state2, a) => more((v2) => done(state2, $Module(bindList.bind(a)(identity13))))
43840
- ));
43841
- })();
43842
-
43843
- // output-es/Data.Argonaut.Decode.Error/index.js
43844
- var $JsonDecodeError = (tag, _1, _2) => ({ tag, _1, _2 });
43845
- var AtIndex = (value0) => (value1) => $JsonDecodeError("AtIndex", value0, value1);
43846
- var AtKey = (value0) => (value1) => $JsonDecodeError("AtKey", value0, value1);
43847
- var Named = (value0) => (value1) => $JsonDecodeError("Named", value0, value1);
43848
- var MissingValue = /* @__PURE__ */ $JsonDecodeError("MissingValue");
43849
- var showJsonDecodeError = {
43850
- show: (v) => {
43851
- if (v.tag === "TypeMismatch") {
43852
- return "(TypeMismatch " + showStringImpl(v._1) + ")";
43853
- }
43854
- if (v.tag === "UnexpectedValue") {
43855
- return "(UnexpectedValue " + stringify(v._1) + ")";
43856
- }
43857
- if (v.tag === "AtIndex") {
43858
- return "(AtIndex " + showIntImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
43859
- }
43860
- if (v.tag === "AtKey") {
43861
- return "(AtKey " + showStringImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
43862
- }
43863
- if (v.tag === "Named") {
43864
- return "(Named " + showStringImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
43865
- }
43866
- if (v.tag === "MissingValue") {
43867
- return "MissingValue";
43868
- }
43869
- fail();
43870
- }
43871
- };
43872
-
43873
- // output-es/Data.Argonaut.Decode.Parser/index.js
43874
- var parseJson = (x2) => {
43875
- const $0 = _jsonParser(Left, Right, x2);
43876
- if ($0.tag === "Left") {
43877
- return $Either("Left", $JsonDecodeError("TypeMismatch", "JSON"));
43878
- }
43879
- if ($0.tag === "Right") {
43880
- return $Either("Right", $0._1);
43881
- }
43882
- fail();
43883
- };
44028
+ (state2, a) => more((v2$1) => {
44029
+ const $1 = $Module(bindList.bind(a)(identity13));
44030
+ return more((v2$2) => more((v3) => token.semi(state2, more, lift12, $$throw2, (state3, a$1) => more((v4) => done(state3, $1)))));
44031
+ })
44032
+ ))));
44033
+ })());
43884
44034
 
43885
44035
  // output-es/Primitive.Defs/index.js
43886
44036
  var foldM4 = (dictMonad) => (f) => (b0) => foldableDict.foldl((b) => (a) => dictMonad.Bind1().bind(b)((a$1) => f(a$1)(a)))(dictMonad.Applicative0().pure(b0));
43887
44037
  var disjointUnion3 = /* @__PURE__ */ disjointUnion(mapDictString);
43888
- var fromFoldable21 = /* @__PURE__ */ foldlArray((m) => (a) => insert3(ordVertex)(a)()(m))(Leaf2);
43889
- var pretty = /* @__PURE__ */ (() => prettyVal(highlightableVertex).pretty)();
43890
- var toUnfoldable16 = /* @__PURE__ */ (() => {
43891
- const $0 = toArrayWithKey(Tuple);
43892
- return (x2) => toUnfoldable(unfoldableArray)($0(x2));
43893
- })();
43894
- var fromFoldable112 = /* @__PURE__ */ fromFoldable(foldableArray);
43895
44038
  var unary2 = /* @__PURE__ */ unary(boundedJoinSemilatticeUni);
43896
44039
  var binary2 = /* @__PURE__ */ binary(boundedJoinSemilatticeUni);
43897
44040
  var binaryZero2 = /* @__PURE__ */ binaryZero(boundedJoinSemilatticeUni);
@@ -43916,7 +44059,7 @@ var matrixUpdate = /* @__PURE__ */ $Tuple(
43916
44059
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
43917
44060
  return (dictMonadError) => {
43918
44061
  const $$throw2 = $$throw(dictMonadError.MonadThrow0());
43919
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44062
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
43920
44063
  if (v.tag === "Cons" && v._1._3.tag === "Matrix" && v._2.tag === "Cons" && v._2._1._3.tag === "Constr" && v._2._1._3._2.tag === "Cons" && v._2._1._3._2._1._3.tag === "Int" && v._2._1._3._2._2.tag === "Cons" && v._2._1._3._2._2._1._3.tag === "Int" && v._2._1._3._2._2._2.tag === "Nil" && v._2._2.tag === "Cons" && v._2._2._2.tag === "Nil" && v._2._1._3._1 === "Pair") {
43921
44064
  const $0 = v._2._2._1;
43922
44065
  return $$new((a) => Val(a)(None))($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))($BaseVal(
@@ -43935,12 +44078,12 @@ var matrixLookup = /* @__PURE__ */ $Tuple(
43935
44078
  /* @__PURE__ */ $ForeignOp$p({
43936
44079
  arity: 2,
43937
44080
  op: (dictMonadWithGraphAlloc) => (dictMonadError) => {
43938
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
43939
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44081
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44082
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
43940
44083
  if (v.tag === "Cons" && v._1._3.tag === "Matrix" && v._2.tag === "Cons" && v._2._1._3.tag === "Constr" && v._2._1._3._2.tag === "Cons" && v._2._1._3._2._1._3.tag === "Int" && v._2._1._3._2._2.tag === "Cons" && v._2._1._3._2._2._1._3.tag === "Int" && v._2._1._3._2._2._2.tag === "Nil" && v._2._2.tag === "Nil" && v._2._1._3._1 === "Pair") {
43941
- return dictMonadAff.MonadEffect0().Monad0().Applicative0().pure(matrixGet(v._2._1._3._2._1._3._1)(v._2._1._3._2._2._1._3._1)(v._1._3._1));
44084
+ return MonadThrow0.Monad0().Applicative0().pure(matrixGet(v._2._1._3._2._1._3._1)(v._2._1._3._2._2._1._3._1)(v._1._3._1));
43942
44085
  }
43943
- return $$throw2("Matrix and pair of integers expected");
44086
+ return MonadThrow0.throwError(error("Matrix and pair of integers expected"));
43944
44087
  };
43945
44088
  }
43946
44089
  })
@@ -43968,12 +44111,12 @@ var error_ = /* @__PURE__ */ $Tuple(
43968
44111
  /* @__PURE__ */ $ForeignOp$p({
43969
44112
  arity: 1,
43970
44113
  op: (dictMonadWithGraphAlloc) => (dictMonadError) => {
43971
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
43972
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44114
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44115
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
43973
44116
  if (v.tag === "Cons" && v._1._3.tag === "Str" && v._2.tag === "Nil") {
43974
- return dictMonadAff.MonadEffect0().Monad0().Applicative0().pure(throwException(error(v._1._3._1))());
44117
+ return MonadThrow0.Monad0().Applicative0().pure(throwException(error(v._1._3._1))());
43975
44118
  }
43976
- return $$throw2("String expected");
44119
+ return MonadThrow0.throwError(error("String expected"));
43977
44120
  };
43978
44121
  }
43979
44122
  })
@@ -43986,28 +44129,26 @@ var dims = /* @__PURE__ */ $Tuple(
43986
44129
  op: (dictMonadWithGraphAlloc) => {
43987
44130
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
43988
44131
  return (dictMonadError) => {
43989
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
43990
- return (dictMonadAff) => {
43991
- const $0 = dictMonadAff.MonadEffect0().Monad0().Bind1();
43992
- return (dictMonadReader) => (dictLoadFile) => (v) => {
43993
- if (v.tag === "Cons" && v._1._3.tag === "Matrix" && v._2.tag === "Nil") {
43994
- const $1 = v._1._3._1._2._2._1;
43995
- const $2 = v._1._1;
43996
- const $3 = v._1._3._1._2._2._2;
43997
- return $0.bind($$new((a) => Val(a)(None))($$$Map("Two", Leaf2, v._1._3._1._2._1._2, void 0, Leaf2))($BaseVal(
43998
- "Int",
43999
- v._1._3._1._2._1._1
44000
- )))((v1) => $0.bind($$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $3, void 0, Leaf2))($BaseVal(
44001
- "Int",
44002
- $1
44003
- )))((v2) => $$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $2, void 0, Leaf2))($BaseVal(
44004
- "Constr",
44005
- "Pair",
44006
- $List("Cons", v1, $List("Cons", v2, Nil))
44007
- ))));
44008
- }
44009
- return $$throw2("Matrix expected");
44010
- };
44132
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44133
+ const $0 = MonadThrow0.Monad0().Bind1();
44134
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
44135
+ if (v.tag === "Cons" && v._1._3.tag === "Matrix" && v._2.tag === "Nil") {
44136
+ const $1 = v._1._3._1._2._2._1;
44137
+ const $2 = v._1._1;
44138
+ const $3 = v._1._3._1._2._2._2;
44139
+ return $0.bind($$new((a) => Val(a)(None))($$$Map("Two", Leaf2, v._1._3._1._2._1._2, void 0, Leaf2))($BaseVal(
44140
+ "Int",
44141
+ v._1._3._1._2._1._1
44142
+ )))((v1) => $0.bind($$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $3, void 0, Leaf2))($BaseVal(
44143
+ "Int",
44144
+ $1
44145
+ )))((v2) => $$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $2, void 0, Leaf2))($BaseVal(
44146
+ "Constr",
44147
+ "Pair",
44148
+ $List("Cons", v1, $List("Cons", v2, Nil))
44149
+ ))));
44150
+ }
44151
+ return MonadThrow0.throwError(error("Matrix expected"));
44011
44152
  };
44012
44153
  };
44013
44154
  }
@@ -44021,29 +44162,27 @@ var dict_map = /* @__PURE__ */ $Tuple(
44021
44162
  const apply3 = apply2(dictMonadWithGraphAlloc);
44022
44163
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44023
44164
  return (dictMonadError) => {
44024
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44025
- return (dictMonadAff) => {
44026
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44027
- const Bind1 = Monad0.Bind1();
44028
- const traverse2 = traversableDict.traverse(Monad0.Applicative0());
44029
- return (dictMonadReader) => {
44030
- const apply1 = apply3(dictMonadReader)(dictMonadAff);
44031
- return (dictLoadFile) => {
44032
- const apply22 = apply1(dictLoadFile);
44033
- return (v) => {
44034
- if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Nil") {
44035
- const $0 = v._1;
44036
- const $1 = v._2._1._1;
44037
- return Bind1.bind(traverse2((v2) => {
44038
- const $2 = v2._1;
44039
- return Bind1.Apply0().Functor0().map((v3) => $Tuple($2, v3))(apply22($0)(v2._2));
44040
- })(v._2._1._3._1))((d$p) => $$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $1, void 0, Leaf2))($BaseVal(
44041
- "Dictionary",
44042
- d$p
44043
- )));
44044
- }
44045
- return $$throw2("Function and dictionary expected");
44046
- };
44165
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44166
+ const Monad0 = MonadThrow0.Monad0();
44167
+ const Bind1 = Monad0.Bind1();
44168
+ const traverse1 = traversableDict.traverse(Monad0.Applicative0());
44169
+ return (dictMonadReader) => {
44170
+ const apply1 = apply3(dictMonadReader);
44171
+ return (dictLoadFile) => {
44172
+ const apply22 = apply1(dictLoadFile);
44173
+ return (v) => {
44174
+ if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Nil") {
44175
+ const $0 = v._1;
44176
+ const $1 = v._2._1._1;
44177
+ return Bind1.bind(traverse1((v2) => {
44178
+ const $2 = v2._1;
44179
+ return Bind1.Apply0().Functor0().map((v3) => $Tuple($2, v3))(apply22($0)(v2._2));
44180
+ })(v._2._1._3._1))((d$p) => $$new((a) => Val(a)(None))($$$Map("Two", Leaf2, $1, void 0, Leaf2))($BaseVal(
44181
+ "Dictionary",
44182
+ d$p
44183
+ )));
44184
+ }
44185
+ return MonadThrow0.throwError(error("Function and dictionary expected"));
44047
44186
  };
44048
44187
  };
44049
44188
  };
@@ -44059,42 +44198,40 @@ var dict_intersectionWith = /* @__PURE__ */ $Tuple(
44059
44198
  const apply3 = apply2(dictMonadWithGraphAlloc);
44060
44199
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44061
44200
  return (dictMonadError) => {
44062
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44063
- return (dictMonadAff) => {
44064
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44065
- const Bind1 = Monad0.Bind1();
44066
- const Applicative0 = Monad0.Applicative0();
44067
- const $0 = Bind1.Apply0().Functor0();
44068
- return (dictMonadReader) => {
44069
- const apply1 = apply3(dictMonadReader)(dictMonadAff);
44070
- return (dictLoadFile) => {
44071
- const apply22 = apply1(dictLoadFile);
44072
- return (v) => {
44073
- if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Cons" && v._2._2._1._3.tag === "Dictionary" && v._2._2._2.tag === "Nil") {
44074
- const $1 = v._1;
44075
- const $2 = v._2._1._1;
44076
- const $3 = v._2._2._1._1;
44077
- return Bind1.bind($0.map(Dictionary3)($0.map(DictRep)(traversableDict.traverse(Applicative0)(identity19)(intersectionWith_Object((v2) => (v3) => {
44078
- const $4 = v3._2;
44079
- const $5 = v2._1;
44080
- const $6 = v3._1;
44081
- return Bind1.bind(Bind1.bind(apply22($1)(v2._2))((a) => apply22(a)($4)))((v4) => Bind1.bind($$new((a) => Val(a)(None))(insert3(ordVertex)($6)()($$$Map(
44082
- "Two",
44083
- Leaf2,
44084
- $5,
44085
- void 0,
44086
- Leaf2
44087
- )))(v4._3))((v5) => Applicative0.pure($Tuple(v5._1, v4))));
44088
- })(v._2._1._3._1)(v._2._2._1._3._1)))))((v$p) => $$new((a) => Val(a)(None))(insert3(ordVertex)($3)()($$$Map(
44201
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44202
+ const Monad0 = MonadThrow0.Monad0();
44203
+ const Bind1 = Monad0.Bind1();
44204
+ const Applicative0 = Monad0.Applicative0();
44205
+ const $0 = Bind1.Apply0().Functor0();
44206
+ return (dictMonadReader) => {
44207
+ const apply1 = apply3(dictMonadReader);
44208
+ return (dictLoadFile) => {
44209
+ const apply22 = apply1(dictLoadFile);
44210
+ return (v) => {
44211
+ if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Cons" && v._2._2._1._3.tag === "Dictionary" && v._2._2._2.tag === "Nil") {
44212
+ const $1 = v._1;
44213
+ const $2 = v._2._1._1;
44214
+ const $3 = v._2._2._1._1;
44215
+ return Bind1.bind($0.map(Dictionary3)($0.map(DictRep)(traversableDict.traverse(Applicative0)(identity20)(intersectionWith_Object((v2) => (v3) => {
44216
+ const $4 = v3._2;
44217
+ const $5 = v2._1;
44218
+ const $6 = v3._1;
44219
+ return Bind1.bind(Bind1.bind(apply22($1)(v2._2))((a) => apply22(a)($4)))((v4) => Bind1.bind($$new((a) => Val(a)(None))(insert3(ordVertex)($6)()($$$Map(
44089
44220
  "Two",
44090
44221
  Leaf2,
44091
- $2,
44222
+ $5,
44092
44223
  void 0,
44093
44224
  Leaf2
44094
- )))(v$p));
44095
- }
44096
- return $$throw2("Function and two dictionaries expected");
44097
- };
44225
+ )))(v4._3))((v5) => Applicative0.pure($Tuple(v5._1, v4))));
44226
+ })(v._2._1._3._1)(v._2._2._1._3._1)))))((v$p) => $$new((a) => Val(a)(None))(insert3(ordVertex)($3)()($$$Map(
44227
+ "Two",
44228
+ Leaf2,
44229
+ $2,
44230
+ void 0,
44231
+ Leaf2
44232
+ )))(v$p));
44233
+ }
44234
+ return MonadThrow0.throwError(error("Function and two dictionaries expected"));
44098
44235
  };
44099
44236
  };
44100
44237
  };
@@ -44108,7 +44245,7 @@ var dict_get = /* @__PURE__ */ $Tuple(
44108
44245
  arity: 2,
44109
44246
  op: (dictMonadWithGraphAlloc) => (dictMonadError) => {
44110
44247
  const MonadThrow0 = dictMonadError.MonadThrow0();
44111
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44248
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
44112
44249
  if (v.tag === "Cons" && v._1._3.tag === "Str" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Nil") {
44113
44250
  return orElse(MonadThrow0)('Key "' + v._1._3._1 + '" not found')((() => {
44114
44251
  const $0 = _lookup(Nothing, Just, v._1._3._1, v._2._1._3._1);
@@ -44130,23 +44267,21 @@ var dict_foldl = /* @__PURE__ */ $Tuple(
44130
44267
  op: (dictMonadWithGraphAlloc) => {
44131
44268
  const apply3 = apply2(dictMonadWithGraphAlloc);
44132
44269
  return (dictMonadError) => {
44133
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44134
- return (dictMonadAff) => {
44135
- const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44136
- return (dictMonadReader) => {
44137
- const apply1 = apply3(dictMonadReader)(dictMonadAff);
44138
- return (dictLoadFile) => {
44139
- const apply22 = apply1(dictLoadFile);
44140
- return (v) => {
44141
- if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Cons" && v._2._2._1._3.tag === "Dictionary" && v._2._2._2.tag === "Nil") {
44142
- const $0 = v._1;
44143
- return foldM4(Monad0)((u1) => (v2) => {
44144
- const $1 = v2._2;
44145
- return Monad0.Bind1().bind(apply22($0)(u1))((a) => apply22(a)($1));
44146
- })(v._2._1)(v._2._2._1._3._1);
44147
- }
44148
- return $$throw2("Function, value and dictionary expected");
44149
- };
44270
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44271
+ const Monad0 = MonadThrow0.Monad0();
44272
+ return (dictMonadReader) => {
44273
+ const apply1 = apply3(dictMonadReader);
44274
+ return (dictLoadFile) => {
44275
+ const apply22 = apply1(dictLoadFile);
44276
+ return (v) => {
44277
+ if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Cons" && v._2._2._1._3.tag === "Dictionary" && v._2._2._2.tag === "Nil") {
44278
+ const $0 = v._1;
44279
+ return foldM4(Monad0)((u1) => (v2) => {
44280
+ const $1 = v2._2;
44281
+ return Monad0.Bind1().bind(apply22($0)(u1))((a) => apply22(a)($1));
44282
+ })(v._2._1)(v._2._2._1._3._1);
44283
+ }
44284
+ return MonadThrow0.throwError(error("Function, value and dictionary expected"));
44150
44285
  };
44151
44286
  };
44152
44287
  };
@@ -44162,7 +44297,7 @@ var dict_disjointUnion = /* @__PURE__ */ $Tuple(
44162
44297
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44163
44298
  return (dictMonadError) => {
44164
44299
  const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44165
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44300
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
44166
44301
  if (v.tag === "Cons" && v._1._3.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Nil") {
44167
44302
  return $$new((a) => Val(a)(None))(insert3(ordVertex)(v._2._1._1)()($$$Map(
44168
44303
  "Two",
@@ -44186,7 +44321,7 @@ var dict_difference = /* @__PURE__ */ $Tuple(
44186
44321
  const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44187
44322
  return (dictMonadError) => {
44188
44323
  const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44189
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44324
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
44190
44325
  if (v.tag === "Cons" && v._1._3.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._3.tag === "Dictionary" && v._2._2.tag === "Nil") {
44191
44326
  return $$new((a) => Val(a)(None))(insert3(ordVertex)(v._2._1._1)()($$$Map(
44192
44327
  "Two",
@@ -44207,103 +44342,18 @@ var debugLog = /* @__PURE__ */ $Tuple(
44207
44342
  /* @__PURE__ */ $ForeignOp$p({
44208
44343
  arity: 1,
44209
44344
  op: (dictMonadWithGraphAlloc) => (dictMonadError) => {
44210
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44211
- return (dictMonadAff) => (dictMonadReader) => (dictLoadFile) => (v) => {
44345
+ const MonadThrow0 = dictMonadError.MonadThrow0();
44346
+ return (dictMonadReader) => (dictLoadFile) => (v) => {
44212
44347
  if (v.tag === "Cons" && v._2.tag === "Nil") {
44213
44348
  const $0 = v._1;
44214
- return dictMonadAff.MonadEffect0().Monad0().Applicative0().pure(_trace($0, (v$1) => $0));
44349
+ return MonadThrow0.Monad0().Applicative0().pure(_trace($0, (v$1) => $0));
44215
44350
  }
44216
- return $$throw2("Single value expected");
44217
- };
44218
- }
44219
- })
44220
- );
44221
- var arrVtoVal$p = (dictMonadWithGraphAlloc) => {
44222
- const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44223
- return (v) => {
44224
- if (v.tag === "Nil") {
44225
- return $$new((a) => Val(a)(None))(Leaf2)($BaseVal("Constr", "Nil", Nil));
44226
- }
44227
- if (v.tag === "Cons") {
44228
- const $0 = v._1;
44229
- return dictMonadWithGraphAlloc.MonadWithGraph2().Monad0().Bind1().bind(arrVtoVal$p(dictMonadWithGraphAlloc)(v._2))((tailV) => $$new((a) => Val(a)(None))(fromFoldable21([
44230
- $0._1,
44231
- tailV._1
44232
- ]))($BaseVal("Constr", ":", $List("Cons", $0, $List("Cons", tailV, Nil)))));
44233
- }
44234
- fail();
44235
- };
44236
- };
44237
- var fromJsonVal$p = (dictMonadWithGraphAlloc) => {
44238
- const $$throw2 = $$throw(dictMonadWithGraphAlloc.MonadError1().MonadThrow0());
44239
- const Monad0 = dictMonadWithGraphAlloc.MonadWithGraph2().Monad0();
44240
- const $0 = Monad0.Bind1();
44241
- const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
44242
- const Applicative0 = Monad0.Applicative0();
44243
- const traverse2 = traversableArray.traverse(Applicative0);
44244
- const arrVtoVal$p1 = arrVtoVal$p(dictMonadWithGraphAlloc);
44245
- return caseJson((v) => $$throw2("Error, Null JSON value cannot be converted to Val Vertex"))((b) => $0.bind($$new((a) => Val(a)(None))(Leaf2)($BaseVal(
44246
- "Constr",
44247
- b ? "True" : "False",
44248
- Nil
44249
- )))((v) => Applicative0.pure(spyWhen(true)("Processing boolean")((x2) => intercalate4("\n")(pretty(x2).lines))(v))))((n) => $0.bind((() => {
44250
- const v = fromNumber(n);
44251
- if (v.tag === "Just") {
44252
- return $$new((a) => Val(a)(None))(Leaf2)($BaseVal("Int", v._1));
44253
- }
44254
- if (v.tag === "Nothing") {
44255
- return $$new((a) => Val(a)(None))(Leaf2)($BaseVal("Float", n));
44256
- }
44257
- fail();
44258
- })())((v) => Applicative0.pure(spyWhen(true)("Processing number")((x2) => intercalate4("\n")(pretty(x2).lines))(v))))((s) => $0.bind($$new((a) => Val(a)(None))(Leaf2)($BaseVal(
44259
- "Str",
44260
- s
44261
- )))((v) => Applicative0.pure(spyWhen(true)("Processing string")((x2) => intercalate4("\n")(pretty(x2).lines))(v))))((arr) => $0.bind(traverse2(fromJsonVal$p(dictMonadWithGraphAlloc))(arr))((vs) => $0.bind(arrVtoVal$p1(toUnfoldable(unfoldableList)(vs)))((v) => Applicative0.pure(spyWhen(true)("Processing array")((x2) => intercalate4("\n")(pretty(x2).lines))(v)))))((obj) => $0.bind(traverse2((v) => {
44262
- const $1 = v._1;
44263
- return $0.bind(fromJsonVal$p(dictMonadWithGraphAlloc)(v._2))((vv) => Applicative0.pure($Tuple($1, $Tuple(vv._1, vv))));
44264
- })(toUnfoldable16(obj)))((entries) => $0.bind($$new((a) => Val(a)(None))(fromFoldable21(arrayMap((v) => v._2._1)(entries)))($BaseVal(
44265
- "Dictionary",
44266
- fromFoldable112(entries)
44267
- )))((v) => Applicative0.pure(spyWhen(true)("Processing object")((x2) => intercalate4("\n")(pretty(x2).lines))(v)))));
44268
- };
44269
- var loadJson = /* @__PURE__ */ $Tuple(
44270
- "loadJson",
44271
- /* @__PURE__ */ $ForeignOp$p({
44272
- arity: 1,
44273
- op: (dictMonadWithGraphAlloc) => {
44274
- const fromJsonVal$p1 = fromJsonVal$p(dictMonadWithGraphAlloc);
44275
- return (dictMonadError) => {
44276
- const $$throw2 = $$throw(dictMonadError.MonadThrow0());
44277
- return (dictMonadAff) => {
44278
- const $0 = dictMonadAff.MonadEffect0().Monad0().Bind1();
44279
- return (dictMonadReader) => {
44280
- const ask = dictMonadReader.MonadAsk0().ask;
44281
- return (dictLoadFile) => {
44282
- const loadFile = dictLoadFile.loadFile(dictMonadError)(dictMonadAff);
44283
- return (v) => {
44284
- if (v.tag === "Cons" && v._1._3.tag === "Str" && v._2.tag === "Nil") {
44285
- const $1 = v._1._3._1;
44286
- return $0.bind(ask)((v1) => $0.bind(loadFile(v1.fluidSrcPaths)($1))((str) => {
44287
- const v2 = parseJson(str);
44288
- if (v2.tag === "Left") {
44289
- return $$throw2("Failed to parse JSON: " + showJsonDecodeError.show(v2._1));
44290
- }
44291
- if (v2.tag === "Right") {
44292
- return fromJsonVal$p1(v2._1);
44293
- }
44294
- fail();
44295
- }));
44296
- }
44297
- return $$throw2("String expected");
44298
- };
44299
- };
44300
- };
44301
- };
44351
+ return MonadThrow0.throwError(error("Single value expected"));
44302
44352
  };
44303
44353
  }
44304
44354
  })
44305
44355
  );
44306
- var primitives = /* @__PURE__ */ fromFoldable112([
44356
+ var primitives = /* @__PURE__ */ fromFoldable(foldableArray)([
44307
44357
  /* @__PURE__ */ $Tuple(
44308
44358
  ":",
44309
44359
  /* @__PURE__ */ $Val(void 0, None, /* @__PURE__ */ $BaseVal("Fun", /* @__PURE__ */ $Fun("PartialConstr", ":", Nil)))
@@ -44312,7 +44362,6 @@ var primitives = /* @__PURE__ */ fromFoldable112([
44312
44362
  /* @__PURE__ */ extern1(debugLog),
44313
44363
  /* @__PURE__ */ extern1(dims),
44314
44364
  /* @__PURE__ */ extern1(error_),
44315
- /* @__PURE__ */ extern1(loadJson),
44316
44365
  /* @__PURE__ */ unary2("floor")({ i: number5, o: $$int, fwd: floor2 }),
44317
44366
  /* @__PURE__ */ unary2("log")({ i: intOrNumber, o: number5, fwd: log3 }),
44318
44367
  /* @__PURE__ */ unary2("numToStr")({ i: intOrNumber, o: string2, fwd: numToStr }),
@@ -44384,7 +44433,7 @@ var unions4 = /* @__PURE__ */ (() => {
44384
44433
  };
44385
44434
  return go(Leaf2);
44386
44435
  })();
44387
- var identity32 = (x2) => x2;
44436
+ var identity33 = (x2) => x2;
44388
44437
  var verticesProgCxtVertex = {
44389
44438
  vertices: (v) => union7(unions13(listMap(verticesValVertex.vertices)(mapObjectString.values(v.primitives))))(union7(unions4(listMap(verticesModuleVertex.vertices)(v.mods)))(unions4(listMap((x2) => verticesExprVertex.vertices(x2._2))(v.datasets))))
44390
44439
  };
@@ -44461,13 +44510,47 @@ var traversableProgCxt = {
44461
44510
  const traverse9 = traversableEnv.traverse(dictApplicative);
44462
44511
  return (f) => (m) => Apply0.apply(Apply0.apply(Apply0.Functor0().map((v1) => (v2) => (v3) => ({ primitives: v3, mods: v2, datasets: v1 }))(traverse5(traversableTuple.traverse(dictApplicative)(traverse7(f)))(m.datasets)))(traverse5(traverse8(f))(m.mods)))(traverse9(f)(m.primitives));
44463
44512
  },
44464
- sequence: (dictApplicative) => (v) => traversableProgCxt.traverse(dictApplicative)(identity32)(v),
44513
+ sequence: (dictApplicative) => (v) => traversableProgCxt.traverse(dictApplicative)(identity33)(v),
44465
44514
  Functor0: () => functorProgCxt,
44466
44515
  Foldable1: () => foldableProgCxt
44467
44516
  };
44468
44517
 
44469
44518
  // output-es/Module/index.js
44519
+ var all3 = /* @__PURE__ */ (() => foldableList.foldMap((() => {
44520
+ const semigroupConj1 = { append: (v) => (v1) => v && v1 };
44521
+ return { mempty: true, Semigroup0: () => semigroupConj1 };
44522
+ })()))();
44523
+ var elem2 = /* @__PURE__ */ (() => {
44524
+ const any1 = foldableList.foldMap((() => {
44525
+ const semigroupDisj1 = { append: (v) => (v1) => v || v1 };
44526
+ return { mempty: false, Semigroup0: () => semigroupDisj1 };
44527
+ })());
44528
+ return (x2) => any1(($0) => x2 === $0);
44529
+ })();
44530
+ var fromFoldable21 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
44470
44531
  var boundedLattice2 = { BoundedJoinSemilattice0: () => boundedJoinSemilatticeUni, BoundedMeetSemilattice1: () => boundedMeetSemilatticeUni };
44532
+ var unions5 = /* @__PURE__ */ (() => {
44533
+ const go = (go$a0$copy) => (go$a1$copy) => {
44534
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
44535
+ while (go$c) {
44536
+ const b = go$a0, v = go$a1;
44537
+ if (v.tag === "Nil") {
44538
+ go$c = false;
44539
+ go$r = b;
44540
+ continue;
44541
+ }
44542
+ if (v.tag === "Cons") {
44543
+ go$a0 = unionWith2(ordDVertex$p)($$const)(b)(v._1);
44544
+ go$a1 = v._2;
44545
+ continue;
44546
+ }
44547
+ fail();
44548
+ }
44549
+ return go$r;
44550
+ };
44551
+ return go(Leaf2);
44552
+ })();
44553
+ var union8 = /* @__PURE__ */ (() => setSet(ordDVertex$p).union)();
44471
44554
  var concatM2 = (dictMonad) => foldrArray((() => {
44472
44555
  const $0 = dictMonad.Bind1();
44473
44556
  return (f) => (g) => (a) => $0.bind(f(a))(g);
@@ -44489,76 +44572,146 @@ var parse = (dictMonadError) => {
44489
44572
  };
44490
44573
  };
44491
44574
  };
44492
- var parseProgram = (dictLoadFile) => (folders) => (file) => (dictMonadAff) => (dictMonadError) => dictMonadAff.MonadEffect0().Monad0().Bind1().bind(dictLoadFile.loadFile(dictMonadError)(dictMonadAff)(folders)(file))((() => {
44493
- const $0 = parse(dictMonadError);
44494
- return (a) => $0(a)(topLevel(expr_));
44495
- })());
44496
- var module_2 = (dictMonadAff) => {
44575
+ var loadModuleGraph = (dictMonadAff) => {
44497
44576
  const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44498
- const Bind1 = Monad0.Bind1();
44499
- const Applicative0 = Monad0.Applicative0();
44577
+ const $0 = Monad0.Bind1();
44578
+ const $1 = Monad0.Applicative0();
44500
44579
  return (dictMonadError) => {
44501
44580
  const parse1 = parse(dictMonadError);
44502
44581
  const desugarModuleFwd = moduleFwd(dictMonadError)(boundedLattice2);
44503
- return (dictLoadFile) => {
44504
- const loadFile = dictLoadFile.loadFile(dictMonadError)(dictMonadAff);
44505
- return (folders) => (file) => (v) => {
44506
- const $0 = v.mods;
44507
- return Bind1.bind(Applicative0.pure())(() => Bind1.bind(loadFile(folders)(file))((src) => Bind1.bind(Bind1.bind(parse1(src)(module_))(desugarModuleFwd))((mod) => Applicative0.pure({
44508
- primitives: v.primitives,
44509
- mods: $List("Cons", mod, $0),
44510
- datasets: v.datasets
44511
- }))));
44582
+ return (dictMonadReader) => {
44583
+ const ask = dictMonadReader.MonadAsk0().ask;
44584
+ return (dictLoadFile) => {
44585
+ const loadFile2 = loadFile(dictLoadFile)(Monad0)(dictMonadError)(dictMonadAff);
44586
+ return (roots) => {
44587
+ const collectModules = (visited) => (graph) => (modules) => (imports) => {
44588
+ if (imports.tag === "Nil") {
44589
+ return $1.pure($Tuple(graph, modules));
44590
+ }
44591
+ if (imports.tag === "Cons") {
44592
+ if ((() => {
44593
+ const $2 = lookup2(ordString)(imports._1)(visited);
44594
+ if ($2.tag === "Nothing") {
44595
+ return false;
44596
+ }
44597
+ if ($2.tag === "Just") {
44598
+ return true;
44599
+ }
44600
+ fail();
44601
+ })()) {
44602
+ return collectModules(visited)(graph)(modules)(imports._2);
44603
+ }
44604
+ return $0.bind($0.bind(ask)((v) => $0.bind(loadFile2(v.fluidSrcPaths)(imports._1 + ".fld"))((src) => $0.bind(parse1(src)(module_))((v1) => {
44605
+ const $2 = v1._2;
44606
+ return $0.bind(desugarModuleFwd(v1._1))((mod$p) => $1.pure($Tuple(
44607
+ mod$p,
44608
+ imports._1 === "lib/prelude" ? $2 : $List("Cons", "lib/prelude", $2)
44609
+ )));
44610
+ }))))((v) => collectModules(insert3(ordString)(imports._1)()(visited))(insert3(ordString)(imports._1)(v._2)(graph))(insert3(ordString)(imports._1)(v._1)(modules))(foldableList.foldr(Cons)(imports._2)(v._2)));
44611
+ }
44612
+ fail();
44613
+ };
44614
+ return $0.bind(collectModules(Leaf2)(Leaf2)(Leaf2)(roots))((v) => {
44615
+ const $2 = v._1;
44616
+ return $1.pure({
44617
+ roots,
44618
+ topsorted: (() => {
44619
+ const go = (go$a0$copy) => (go$a1$copy) => {
44620
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
44621
+ while (go$c) {
44622
+ const v$1 = go$a0, v1 = go$a1;
44623
+ if (v$1.tag === "Nil") {
44624
+ go$c = false;
44625
+ go$r = reverse2(v1);
44626
+ continue;
44627
+ }
44628
+ const v2 = find(foldableList)((mod) => {
44629
+ const v22 = lookup2(ordString)(mod)($2);
44630
+ if (v22.tag === "Nothing") {
44631
+ return true;
44632
+ }
44633
+ if (v22.tag === "Just") {
44634
+ return all3((dep) => !elem2(dep)(v$1))(v22._1);
44635
+ }
44636
+ fail();
44637
+ })(v$1);
44638
+ if (v2.tag === "Nothing") {
44639
+ go$c = false;
44640
+ go$r = throwException(error("Modules contain circular imports"))();
44641
+ continue;
44642
+ }
44643
+ if (v2.tag === "Just") {
44644
+ go$a0 = deleteBy2(eqStringImpl)(v2._1)(v$1);
44645
+ go$a1 = $List("Cons", v2._1, v1);
44646
+ continue;
44647
+ }
44648
+ fail();
44649
+ }
44650
+ return go$r;
44651
+ };
44652
+ return go(fromFoldable21(functorMap.map((v$1) => {
44653
+ })($2)))(Nil);
44654
+ })(),
44655
+ graph: $2,
44656
+ modules: v._2
44657
+ });
44658
+ });
44659
+ };
44512
44660
  };
44513
44661
  };
44514
44662
  };
44515
44663
  };
44516
44664
  var initialConfig = (dictMonadAff) => {
44517
44665
  const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44518
- const Bind1 = Monad0.Bind1();
44519
- const Applicative0 = Monad0.Applicative0();
44520
- const $0 = monadAllocAllocT(Monad0);
44521
- const fresh1 = $0.fresh;
44522
- const alloc = traversableProgCxt.traverse($0.Monad0().Applicative0())((v) => fresh1);
44523
- const $1 = bindStateT(Monad0);
44666
+ const $0 = bindStateT(Monad0);
44667
+ const $1 = monadAllocAllocT(Monad0);
44668
+ const Applicative0 = $1.Monad0().Applicative0();
44669
+ const fresh1 = $1.fresh;
44670
+ const alloc1 = traversableProgCxt.traverse(Applicative0)((v) => fresh1);
44671
+ const applicativeStateT2 = applicativeStateT(Monad0);
44672
+ const traverse1 = traversableMap.traverse(applicativeStateT2);
44673
+ const alloc2 = traversableModule.traverse(Applicative0)((v) => fresh1);
44524
44674
  const runWithGraphT_spy2 = runWithGraphT_spy({
44525
44675
  Applicative0: () => applicativeStateT(Monad0),
44526
44676
  Bind1: () => bindStateT(Monad0)
44527
44677
  })(graphGraphImpl);
44528
- const monadAffState2 = monadAffState(dictMonadAff);
44529
- const monadAffState1 = monadAffState(monadAffState2);
44530
- const $2 = monadAffState2.MonadEffect0().Monad0();
44678
+ const $2 = monadAffState(dictMonadAff).MonadEffect0().Monad0();
44531
44679
  const $3 = dictMonadAff.MonadEffect0().Monad0();
44532
44680
  return (dictMonadError) => {
44533
44681
  const eval_progCxt2 = eval_progCxt(monadWithGraphAllocWithGr(dictMonadError));
44534
44682
  return (dictMonadReader) => {
44535
- const eval_progCxt1 = eval_progCxt2(monadReaderStateT(monadReaderStateT(dictMonadReader)))(monadAffState1);
44683
+ const eval_progCxt1 = eval_progCxt2(monadReaderStateT(monadReaderStateT(dictMonadReader)));
44536
44684
  return (dictLoadFile) => {
44537
44685
  const eval_progCxt22 = eval_progCxt1((() => {
44538
- const loadFile1 = dictLoadFile.loadFile(dictMonadError)(dictMonadAff);
44686
+ const loadFileFromPath1 = dictLoadFile.loadFileFromPath(dictMonadError)(dictMonadAff);
44539
44687
  return {
44540
- loadFile: (dictMonadError1) => (dictMonadAff1) => (folders) => {
44541
- const $4 = loadFile1(folders);
44542
- return (x2) => {
44543
- const $5 = $4(x2);
44544
- return (s) => $2.Bind1().bind((s$1) => $3.Bind1().bind($5)((x$1) => $3.Applicative0().pure($Tuple(x$1, s$1))))((x$1) => $2.Applicative0().pure($Tuple(
44545
- x$1,
44546
- s
44547
- )));
44548
- };
44688
+ loadFileFromPath: (dictMonadError1) => (dictMonadAff1) => (x2) => {
44689
+ const $4 = loadFileFromPath1(x2);
44690
+ return (s) => $2.Bind1().bind((s$1) => $3.Bind1().bind($4)((x$1) => $3.Applicative0().pure($Tuple(x$1, s$1))))((x$1) => $2.Applicative0().pure($Tuple(
44691
+ x$1,
44692
+ s
44693
+ )));
44549
44694
  }
44550
44695
  };
44551
44696
  })());
44552
- return (dictFV) => (e) => (progCxt) => Bind1.bind(Applicative0.pure())(() => Bind1.bind(runAllocT(Monad0)($1.bind(alloc(progCxt))((progCxt$p) => $1.bind(runWithGraphT_spy2(eval_progCxt22(progCxt$p))(verticesProgCxtVertex.vertices(progCxt$p)))((v) => applicativeStateT(Monad0).pure($Tuple(
44697
+ return (dictFV) => (e) => (progCxt) => (moduleCxt) => Monad0.Bind1().bind(runAllocT(Monad0)($0.bind(alloc1(progCxt))((progCxt$p) => $0.bind(traverse1(alloc2)(moduleCxt.modules))((modules$p) => $0.bind(runWithGraphT_spy2(eval_progCxt22(progCxt$p)({
44698
+ modules: modules$p,
44699
+ graph: moduleCxt.graph,
44700
+ roots: moduleCxt.roots,
44701
+ topsorted: moduleCxt.topsorted
44702
+ }))(union8(verticesProgCxtVertex.vertices(progCxt$p))(unions5(listMap(verticesModuleVertex.vertices)(foldableMap.foldr(Cons)(Nil)(modules$p))))))((v) => applicativeStateT2.pure($Tuple(
44553
44703
  progCxt$p,
44554
- (() => {
44555
- const $4 = dictFV.fv(e);
44556
- return filterWithKey((x2) => {
44557
- const $5 = setSet(ordString).member(x2)($4);
44558
- return (v$1) => $5;
44559
- })(v._2);
44560
- })()
44561
- )))))(0))((v) => Applicative0.pure({ n: v._1, progCxt: v._2._2._1, "\u03B3": v._2._2._2 })));
44704
+ $Tuple(
44705
+ modules$p,
44706
+ (() => {
44707
+ const $4 = dictFV.fv(e);
44708
+ return filterWithKey((x2) => {
44709
+ const $5 = setSet(ordString).member(x2)($4);
44710
+ return (v$1) => $5;
44711
+ })(v._2);
44712
+ })()
44713
+ )
44714
+ ))))))(0))((v) => Monad0.Applicative0().pure({ n: v._1, progCxt: v._2._2._1, "\u03B3": v._2._2._2._2 }));
44562
44715
  };
44563
44716
  };
44564
44717
  };
@@ -44566,37 +44719,46 @@ var initialConfig = (dictMonadAff) => {
44566
44719
  var prepConfig = (dictMonadAff) => {
44567
44720
  const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44568
44721
  const $0 = Monad0.Bind1();
44722
+ const loadModuleGraph1 = loadModuleGraph(dictMonadAff);
44569
44723
  const initialConfig1 = initialConfig(dictMonadAff);
44570
44724
  return (dictMonadError) => {
44725
+ const loadModuleGraph2 = loadModuleGraph1(dictMonadError);
44571
44726
  const desug1 = exprFwd(boundedLattice2)(dictMonadError)(joinSemilatticeUnit);
44572
44727
  const initialConfig2 = initialConfig1(dictMonadError);
44573
44728
  return (dictMonadReader) => {
44574
- const ask = dictMonadReader.MonadAsk0().ask;
44729
+ const loadModuleGraph3 = loadModuleGraph2(dictMonadReader);
44575
44730
  const initialConfig3 = initialConfig2(dictMonadReader);
44576
44731
  return (dictLoadFile) => {
44732
+ const loadModuleGraph4 = loadModuleGraph3(dictLoadFile);
44577
44733
  const initialConfig4 = initialConfig3(dictLoadFile)(fVExpr);
44578
- return (file) => (progCxt) => $0.bind(ask)((v) => $0.bind(parseProgram(dictLoadFile)(v.fluidSrcPaths)(file)(dictMonadAff)(dictMonadError))((s) => $0.bind(desug1(s))((e) => $0.bind(initialConfig4(e)(progCxt))((gconfig) => Monad0.Applicative0().pure({
44579
- s,
44580
- e,
44581
- gconfig
44582
- })))));
44734
+ return (progCxt) => (fluidSrc) => $0.bind(parse(dictMonadError)(fluidSrc)(withImports(expr_)))((v) => {
44735
+ const $1 = v._1;
44736
+ return $0.bind(loadModuleGraph4($List("Cons", "lib/prelude", v._2)))((moduleCxt) => $0.bind(desug1($1))((e) => $0.bind(initialConfig4(e)(progCxt)(moduleCxt))((gconfig) => Monad0.Applicative0().pure({
44737
+ s: $1,
44738
+ e,
44739
+ gconfig
44740
+ }))));
44741
+ });
44583
44742
  };
44584
44743
  };
44585
44744
  };
44586
44745
  };
44587
44746
  var datasetAs = (dictMonadAff) => {
44588
44747
  const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44589
- const $0 = Monad0.Bind1();
44748
+ const Bind1 = Monad0.Bind1();
44590
44749
  return (dictMonadError) => {
44591
44750
  const desug1 = exprFwd(boundedLattice2)(dictMonadError)(joinSemilatticeUnit);
44592
- return (dictLoadFile) => (folders) => (v) => (v1) => {
44593
- const $1 = v1.datasets;
44594
- const $2 = v._1;
44595
- return $0.bind($0.bind(parseProgram(dictLoadFile)(folders)(v._2)(dictMonadAff)(dictMonadError))(desug1))((e\u03B1) => Monad0.Applicative0().pure({
44596
- primitives: v1.primitives,
44597
- mods: v1.mods,
44598
- datasets: $List("Cons", $Tuple($2, e\u03B1), $1)
44599
- }));
44751
+ return (dictLoadFile) => {
44752
+ const loadFile2 = loadFile(dictLoadFile)(Monad0)(dictMonadError)(dictMonadAff);
44753
+ return (folders) => (v) => (v1) => {
44754
+ const $0 = v1.datasets;
44755
+ const $1 = v._1;
44756
+ return Bind1.bind(loadFile2(folders)(v._2))((src) => Bind1.bind(Bind1.bind(Bind1.Apply0().Functor0().map(fst)(parse(dictMonadError)(src)(withImports(expr_))))(desug1))((e\u03B1) => Monad0.Applicative0().pure({
44757
+ primitives: v1.primitives,
44758
+ mods: v1.mods,
44759
+ datasets: $List("Cons", $Tuple($1, e\u03B1), $0)
44760
+ })));
44761
+ };
44600
44762
  };
44601
44763
  };
44602
44764
  };
@@ -44604,21 +44766,18 @@ var loadProgCxt = (dictMonadAff) => {
44604
44766
  const Monad0 = dictMonadAff.MonadEffect0().Monad0();
44605
44767
  const $0 = Monad0.Bind1();
44606
44768
  const concatM1 = concatM2(Monad0);
44607
- const module_1 = module_2(dictMonadAff);
44608
44769
  const datasetAs1 = datasetAs(dictMonadAff);
44609
44770
  return (dictMonadError) => {
44610
- const module_22 = module_1(dictMonadError);
44611
44771
  const datasetAs2 = datasetAs1(dictMonadError);
44612
44772
  return (dictMonadReader) => {
44613
44773
  const ask = dictMonadReader.MonadAsk0().ask;
44614
44774
  return (dictLoadFile) => {
44615
- const module_3 = module_22(dictLoadFile);
44616
44775
  const datasetAs3 = datasetAs2(dictLoadFile);
44617
- return (mods) => (datasets) => $0.bind(ask)((v) => $0.bind($0.bind(Monad0.Applicative0().pure({
44776
+ return (datasets) => $0.bind(ask)((v) => $0.bind(Monad0.Applicative0().pure({
44618
44777
  primitives,
44619
44778
  mods: Nil,
44620
44779
  datasets: Nil
44621
- }))(concatM1(arrayMap(module_3(v.fluidSrcPaths))(["lib/prelude", ...mods]))))(concatM1(arrayMap((() => {
44780
+ }))(concatM1(arrayMap((() => {
44622
44781
  const $1 = datasetAs3(v.fluidSrcPaths);
44623
44782
  return (x2) => $1($Tuple(x2._1, x2._2));
44624
44783
  })())(datasets))));
@@ -44632,7 +44791,7 @@ var fromFoldable25 = /* @__PURE__ */ fromFoldable(foldableSet);
44632
44791
  var ordVal2 = /* @__PURE__ */ ordVal(ordVertex);
44633
44792
  var botOf2 = /* @__PURE__ */ (() => ({ botOf: functorSelStates.map((v) => false) }))();
44634
44793
  var select\u{1D539}s = /* @__PURE__ */ (() => select\u03B1s\u{1D539}Vertex(applyVal)(foldableVal)["select\u{1D539}s"])();
44635
- var fromFoldable113 = /* @__PURE__ */ fromFoldable(foldableDict);
44794
+ var fromFoldable112 = /* @__PURE__ */ fromFoldable(foldableDict);
44636
44795
  var fromFoldable26 = /* @__PURE__ */ foldlArray((m) => (a) => insert3(ordString)(a)()(m))(Leaf2);
44637
44796
  var graphGC2 = /* @__PURE__ */ graphGC(graphGraphImpl);
44638
44797
  var graphGC1 = /* @__PURE__ */ graphGC2(applyVal)(applyEnvExpr)(foldableVal)(foldableEnvExpr);
@@ -44953,7 +45112,7 @@ var selectInput = (x2) => (\u03B4v) => (v) => {
44953
45112
  inerts: v.inerts
44954
45113
  };
44955
45114
  };
44956
- var rebuild\u03B9 = (inerts) => (\u03B1s) => (\u03B9) => fromFoldable113(intersectionWith_Object(apply)(_fmapObject(
45115
+ var rebuild\u03B9 = (inerts) => (\u03B1s) => (\u03B9) => fromFoldable112(intersectionWith_Object(apply)(_fmapObject(
44957
45116
  _fmapObject(\u03B9, (v) => select\u{1D539}s(v)(inerts)),
44958
45117
  (inert) => (v) => $Tuple(v._1, applyVal.apply(applyVal.apply(functorVal.map(selStates)(inert))(v._2.persistent))(v._2.transient))
44959
45118
  ))(_fmapObject(\u03B9, (v) => $Tuple(v._1, { persistent: select\u{1D539}s(v)(\u03B1s.persistent), transient: select\u{1D539}s(v)(\u03B1s.transient) }))));
@@ -44983,16 +45142,15 @@ var loadFig = (dictMonadAff) => {
44983
45142
  const loadProgCxt3 = loadProgCxt22(dictLoadFile);
44984
45143
  const prepConfig3 = prepConfig22(dictLoadFile);
44985
45144
  const graphEval22 = graphEval1(dictLoadFile)(dictMonadError);
44986
- return (v) => {
44987
- const $1 = v.file;
44988
- const $2 = v.inputs;
44989
- const $3 = v.linking;
44990
- return $0.bind(loadProgCxt3(v.imports)(v.datasets))((progCxt) => $0.bind(prepConfig3($1)(progCxt))((v1) => {
44991
- const $4 = v1.s;
45145
+ return (v) => (fluidSrc) => {
45146
+ const $1 = v.inputs;
45147
+ const $2 = v.linking;
45148
+ return $0.bind(loadProgCxt3(v.datasets))((progCxt) => $0.bind(prepConfig3(progCxt)(fluidSrc))((v1) => {
45149
+ const $3 = v1.s;
44992
45150
  return $0.bind(graphEval22(v1.gconfig)(v1.e))((v2) => {
44993
- const $5 = v2.g;
44994
- const $6 = v2["out\u03B1"];
44995
- const $7 = v2["in\u03B1"]._1;
45151
+ const $4 = v2.g;
45152
+ const $5 = v2["out\u03B1"];
45153
+ const $6 = v2["in\u03B1"]._1;
44996
45154
  const opEval = {
44997
45155
  g: $GraphImpl({ out: v2.g._1.in_, in_: v2.g._1.out, sinks: v2.g._1.sources, sources: v2.g._1.sinks, vertices: v2.g._1.vertices }),
44998
45156
  graph_fwd: v2.graph_fwd,
@@ -45000,86 +45158,86 @@ var loadFig = (dictMonadAff) => {
45000
45158
  "in\u03B1": v2["out\u03B1"],
45001
45159
  "out\u03B1": v2["in\u03B1"]
45002
45160
  };
45003
- const inputs$p = fromFoldable26($2);
45161
+ const inputs$p = fromFoldable26($1);
45004
45162
  const v3 = functorEnvExpr.map((v$1) => {
45005
45163
  })(v2["in\u03B1"]);
45006
- const $8 = unrestrictGC(boundedMeetSemilatticeBoo)(v3._1)(inputs$p);
45007
- const $9 = unprojExpr(boundedMeetSemilatticeBoo)($EnvExpr(v3._1, v3._2));
45008
- const $10 = filterWithKey((x2) => {
45009
- const $102 = setSet(ordString).member(x2)(inputs$p);
45010
- return (v$1) => $102;
45011
- })($7);
45012
- const $11 = _fmapObject($7, functorVal.map((v$1) => false));
45013
- const $12 = functorVal.map((v$1) => false)($6);
45164
+ const $7 = unrestrictGC(boundedMeetSemilatticeBoo)(v3._1)(inputs$p);
45165
+ const $8 = unprojExpr(boundedMeetSemilatticeBoo)($EnvExpr(v3._1, v3._2));
45166
+ const $9 = filterWithKey((x2) => {
45167
+ const $92 = setSet(ordString).member(x2)(inputs$p);
45168
+ return (v$1) => $92;
45169
+ })($6);
45170
+ const $10 = _fmapObject($6, functorVal.map((v$1) => false));
45171
+ const $11 = functorVal.map((v$1) => false)($5);
45014
45172
  const graphgc_op = graphGC1(opEval);
45015
45173
  const graphgc = graphGC22(v2);
45016
- const inertFwd = verticesGraphImpl.vertices(graphgc.fwd($9.fwd($8.fwd($11)))._2);
45017
- const inertBwd = setSet5.difference(verticesGraphImpl.vertices($5))(verticesGraphImpl.vertices(graphgc.bwd(functorVal.map((v$1) => true)($6))._2));
45018
- const $13 = select\u03B1s\u{1D539}Vertex2["select\u{1D539}s"]($7)(inertBwd);
45019
- const $14 = select\u{1D539}s($6)(inertFwd);
45020
- const $15 = _fmapObject($13, functorVal.map(selState));
45021
- const $16 = functorVal.map(selState)($14);
45022
- const demands = lift1($15)((v6) => {
45023
- const $17 = graphgc.bwd(v6);
45024
- return $Tuple($8.bwd($9.bwd($17._1)), $17._2);
45174
+ const inertFwd = verticesGraphImpl.vertices(graphgc.fwd($8.fwd($7.fwd($10)))._2);
45175
+ const inertBwd = setSet5.difference(verticesGraphImpl.vertices($4))(verticesGraphImpl.vertices(graphgc.bwd(functorVal.map((v$1) => true)($5))._2));
45176
+ const $12 = select\u03B1s\u{1D539}Vertex2["select\u{1D539}s"]($6)(inertBwd);
45177
+ const $13 = select\u{1D539}s($5)(inertFwd);
45178
+ const $14 = _fmapObject($12, functorVal.map(selState));
45179
+ const $15 = functorVal.map(selState)($13);
45180
+ const demands = lift1($14)((v6) => {
45181
+ const $16 = graphgc.bwd(v6);
45182
+ return $Tuple($7.bwd($8.bwd($16._1)), $16._2);
45025
45183
  });
45026
- const demandedBy = lift2($16)((\u03B31) => graphgc_op.bwd(deMorgan((x2) => $9.fwd($8.fwd(x2)))(\u03B31)));
45184
+ const demandedBy = lift2($15)((\u03B31) => graphgc_op.bwd(deMorgan((x2) => $8.fwd($7.fwd(x2)))(\u03B31)));
45027
45185
  return Monad0.Applicative0().pure({
45028
45186
  spec: v,
45029
- s: $4,
45187
+ s: $3,
45030
45188
  "\u03B3": intersectionWith_Object(apply)(_fmapObject(
45031
45189
  intersectionWith_Object(apply)(_fmapObject(
45032
- _fmapObject($13, functorVal.map(selStates)),
45190
+ _fmapObject($12, functorVal.map(selStates)),
45033
45191
  applyVal.apply
45034
- ))($11),
45192
+ ))($10),
45035
45193
  applyVal.apply
45036
- ))($11),
45037
- v: applyVal.apply(applyVal.apply(functorVal.map(selStates)($14))($12))($12),
45194
+ ))($10),
45195
+ v: applyVal.apply(applyVal.apply(functorVal.map(selStates)($13))($11))($11),
45038
45196
  "\u03B9": empty,
45039
45197
  linkedOutputs: (selType) => (v6) => {
45040
45198
  const v$p = functorVal.map(getSel(selType))(v6);
45041
45199
  const v7 = demands(v$p);
45042
- return $Tuple(v7._1, $Tuple($3 ? demandedBy(v7._1)._1 : v$p, verticesGraphImpl.vertices(v7._2)));
45200
+ return $Tuple(v7._1, $Tuple($2 ? demandedBy(v7._1)._1 : v$p, verticesGraphImpl.vertices(v7._2)));
45043
45201
  },
45044
45202
  linkedInputs: (selType) => (\u03B31) => {
45045
45203
  const \u03B3$p = _fmapObject(\u03B31, functorVal.map(getSel(selType)));
45046
45204
  const v6 = demandedBy(\u03B3$p);
45047
- return $Tuple($3 ? demands(v6._1)._1 : \u03B3$p, $Tuple(v6._1, verticesGraphImpl.vertices(v6._2)));
45205
+ return $Tuple($2 ? demands(v6._1)._1 : \u03B3$p, $Tuple(v6._1, verticesGraphImpl.vertices(v6._2)));
45048
45206
  },
45049
45207
  linkIntermediates: (\u03B9) => {
45050
45208
  const \u03B1s = select\u03B1s\u{1D539}Vertex2["select\u03B1s"](_fmapObject(
45051
45209
  \u03B9,
45052
45210
  functorVal.map((x2) => {
45053
- const $17 = getSel(Transient)(x2);
45054
- if ($17.tag === "Inert") {
45211
+ const $16 = getSel(Transient)(x2);
45212
+ if ($16.tag === "Inert") {
45055
45213
  return false;
45056
45214
  }
45057
- if ($17.tag === "Reactive") {
45058
- return $17._1;
45215
+ if ($16.tag === "Reactive") {
45216
+ return $16._1;
45059
45217
  }
45060
45218
  fail();
45061
45219
  })
45062
- ))(\u03B9from\u03B1s(graphGraphImpl)($5)(mapObjectString.keys(\u03B9)));
45220
+ ))(\u03B9from\u03B1s(graphGraphImpl)($4)(mapObjectString.keys(\u03B9)));
45063
45221
  return $Tuple(
45064
- intersectionWith_Object(apply)(_fmapObject($15, applyVal.apply))(select\u03B1s\u{1D539}Vertex2["select\u{1D539}s"]($7)(verticesGraphImpl.vertices(bwdSlice3($Tuple(
45222
+ intersectionWith_Object(apply)(_fmapObject($14, applyVal.apply))(select\u03B1s\u{1D539}Vertex2["select\u{1D539}s"]($6)(verticesGraphImpl.vertices(bwdSlice3($Tuple(
45065
45223
  \u03B1s,
45066
45224
  v2.g
45067
45225
  ))))),
45068
45226
  $Tuple(
45069
- applyVal.apply($16)(select\u{1D539}s($6)(verticesGraphImpl.vertices(bwdSlice3($Tuple(\u03B1s, opEval.g))))),
45227
+ applyVal.apply($15)(select\u{1D539}s($5)(verticesGraphImpl.vertices(bwdSlice3($Tuple(\u03B1s, opEval.g))))),
45070
45228
  map2(ordDVertex$p)((\u03B1) => $Tuple(
45071
45229
  \u03B1,
45072
- definitely("in graph")(_lookup(Nothing, Just, \u03B1, $5._1.out))._2
45230
+ definitely("in graph")(_lookup(Nothing, Just, \u03B1, $4._1.out))._2
45073
45231
  ))(\u03B1s)
45074
45232
  )
45075
45233
  );
45076
45234
  },
45077
45235
  dir: { persistent: LinkedOutputs, transient: LinkedOutputs },
45078
- in_views: _fmapObject($10, (v$1) => Nothing),
45236
+ in_views: _fmapObject($9, (v$1) => Nothing),
45079
45237
  out_view: Nothing,
45080
45238
  intermediate_views: empty,
45081
45239
  in_roots: fold((z) => (v$1) => (a) => insert3(ordVertex)(a)()(z))(Leaf2)(_fmapObject(
45082
- $10,
45240
+ $9,
45083
45241
  (v6) => v6._1
45084
45242
  )),
45085
45243
  inerts: intersection3(inertFwd)(inertBwd)
@@ -45244,6 +45402,36 @@ var drawFile = (v) => {
45244
45402
  };
45245
45403
  };
45246
45404
 
45405
+ // output-es/Data.Argonaut.Decode.Error/index.js
45406
+ var $JsonDecodeError = (tag, _1, _2) => ({ tag, _1, _2 });
45407
+ var AtIndex = (value0) => (value1) => $JsonDecodeError("AtIndex", value0, value1);
45408
+ var AtKey = (value0) => (value1) => $JsonDecodeError("AtKey", value0, value1);
45409
+ var Named = (value0) => (value1) => $JsonDecodeError("Named", value0, value1);
45410
+ var MissingValue = /* @__PURE__ */ $JsonDecodeError("MissingValue");
45411
+ var showJsonDecodeError = {
45412
+ show: (v) => {
45413
+ if (v.tag === "TypeMismatch") {
45414
+ return "(TypeMismatch " + showStringImpl(v._1) + ")";
45415
+ }
45416
+ if (v.tag === "UnexpectedValue") {
45417
+ return "(UnexpectedValue " + stringify(v._1) + ")";
45418
+ }
45419
+ if (v.tag === "AtIndex") {
45420
+ return "(AtIndex " + showIntImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
45421
+ }
45422
+ if (v.tag === "AtKey") {
45423
+ return "(AtKey " + showStringImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
45424
+ }
45425
+ if (v.tag === "Named") {
45426
+ return "(Named " + showStringImpl(v._1) + " " + showJsonDecodeError.show(v._2) + ")";
45427
+ }
45428
+ if (v.tag === "MissingValue") {
45429
+ return "MissingValue";
45430
+ }
45431
+ fail();
45432
+ }
45433
+ };
45434
+
45247
45435
  // output-es/Data.Argonaut.Decode.Decoders/index.js
45248
45436
  var traverseWithIndex = /* @__PURE__ */ (() => traversableWithIndexArray.traverseWithIndex(applicativeEither))();
45249
45437
  var decodeJArray = (x2) => {
@@ -45384,69 +45572,6 @@ var gDecodeJsonCons = (dictDecodeJsonField) => (dictGDecodeJson) => (dictIsSymbo
45384
45572
  }
45385
45573
  });
45386
45574
 
45387
- // output-es/File/index.js
45388
- var Folder = (x2) => x2;
45389
-
45390
- // output-es/Module.Web/index.js
45391
- var findM = (xs) => (f) => (base2) => foldrArray((x2) => (acc) => applyAff.apply(_map(altEither.alt)(acc))(f(x2)))(_pure(base2))(xs);
45392
- var loadFileWebT = (dictMonadThrow) => {
45393
- const Monad0 = dictMonadThrow.Monad0();
45394
- const bind1 = bindReaderT(Monad0.Bind1()).bind;
45395
- const monadWebT1 = monadReaderT(Monad0);
45396
- const bindExceptT2 = bindExceptT(monadWebT1);
45397
- const applicativeExceptT2 = applicativeExceptT(monadWebT1);
45398
- const $0 = Monad0.Applicative0();
45399
- return {
45400
- loadFile: (dictMonadError) => (dictMonadAff) => (folders) => (v) => bind1(bindExceptT2.bind(dictMonadAff.liftAff(findM(arrayMap((() => {
45401
- const $1 = v + ".fld";
45402
- return (a) => a + "/" + $1;
45403
- })())(folders))((v1) => _bind(request(driver)({
45404
- method: $Either("Left", HEAD),
45405
- url: v1,
45406
- headers: [],
45407
- content: Nothing,
45408
- username: Nothing,
45409
- password: Nothing,
45410
- withCredentials: false,
45411
- responseFormat: $ResponseFormat("String", identity),
45412
- timeout: Nothing
45413
- }))((resp) => _pure((() => {
45414
- if (resp.tag === "Right") {
45415
- if (resp._1.status === 200) {
45416
- return $Either("Right", $Tuple(resp._1, v1));
45417
- }
45418
- return $Either("Left", RequestFailedError);
45419
- }
45420
- if (resp.tag === "Left") {
45421
- return $Either("Left", resp._1);
45422
- }
45423
- fail();
45424
- })())))($Either("Left", RequestFailedError))))((v1) => {
45425
- const $1 = v1._2;
45426
- return bindExceptT2.bind(applicativeExceptT2.pure())(() => bindExceptT2.bind(dictMonadAff.liftAff(request(driver)({
45427
- method: $Either("Left", GET),
45428
- url: $1,
45429
- headers: [],
45430
- content: Nothing,
45431
- username: Nothing,
45432
- password: Nothing,
45433
- withCredentials: false,
45434
- responseFormat: $ResponseFormat("String", identity),
45435
- timeout: Nothing
45436
- })))((contents) => applicativeExceptT2.pure(contents.body)));
45437
- }))((result) => {
45438
- if (result.tag === "Left") {
45439
- return monadThrowReaderT(dictMonadThrow).throwError(error(printError(result._1)));
45440
- }
45441
- if (result.tag === "Right") {
45442
- const $1 = $0.pure(result._1);
45443
- return (v$1) => $1;
45444
- }
45445
- fail();
45446
- })
45447
- };
45448
- };
45449
-
45450
45575
  // output-es/App.LoadFigure/index.js
45451
45576
  var gDecodeJsonCons2 = /* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ (() => {
45452
45577
  const $0 = decodeArray(caseJsonString($Either(
@@ -45494,39 +45619,27 @@ var decodeJson = /* @__PURE__ */ (() => decodeRecord(gDecodeJsonCons((() => {
45494
45619
  return Nothing;
45495
45620
  }
45496
45621
  };
45497
- })())(gDecodeJsonCons({
45498
- decodeJsonField: (j) => {
45499
- if (j.tag === "Just") {
45500
- return $Maybe(
45501
- "Just",
45502
- _caseJson(
45503
- (v) => $Either("Left", $JsonDecodeError("TypeMismatch", "String")),
45504
- (v) => $Either("Left", $JsonDecodeError("TypeMismatch", "String")),
45505
- (v) => $Either("Left", $JsonDecodeError("TypeMismatch", "String")),
45506
- Right,
45507
- (v) => $Either("Left", $JsonDecodeError("TypeMismatch", "String")),
45508
- (v) => $Either("Left", $JsonDecodeError("TypeMismatch", "String")),
45509
- j._1
45510
- )
45511
- );
45512
- }
45513
- return Nothing;
45514
- }
45515
- })(gDecodeJsonCons2(gDecodeJsonCons2(gDecodeJsonCons2(gDecodeJsonCons1(gDecodeJsonCons1(gDecodeJsonNil)({ reflectSymbol: () => "query" })()())({
45622
+ })())(gDecodeJsonCons2(gDecodeJsonCons2(gDecodeJsonCons1(gDecodeJsonCons1(gDecodeJsonNil)({ reflectSymbol: () => "query" })()())({
45516
45623
  reflectSymbol: () => "linking"
45517
- })()())({ reflectSymbol: () => "inputs" })()())({ reflectSymbol: () => "imports" })()())({ reflectSymbol: () => "fluidSrcPath" })()())({ reflectSymbol: () => "file" })()())({
45518
- reflectSymbol: () => "datasets"
45519
- })()())().decodeJson)();
45520
- var monadAffWebT = /* @__PURE__ */ monadAffReader(monadAffAff);
45521
- var monadErrorErrorWebT = /* @__PURE__ */ monadErrorReaderT(monadErrorAff);
45522
- var loadFileWebT2 = /* @__PURE__ */ loadFileWebT(monadThrowAff);
45523
- var loadFig2 = /* @__PURE__ */ loadFig(monadAffWebT)(monadErrorErrorWebT)(/* @__PURE__ */ monadReaderReaderT(monadAff))(loadFileWebT2);
45524
- var loadFile$p = (folders) => (file) => (dictMonadAff) => (dictMonadError) => dictMonadAff.MonadEffect0().Monad0().Bind1().Apply0().Functor0().map((v) => $Tuple(file, v))(loadFileWebT2.loadFile(dictMonadError)(dictMonadAff)(folders)(file));
45624
+ })()())({ reflectSymbol: () => "inputs" })()())({ reflectSymbol: () => "fluidSrcPath" })()())({ reflectSymbol: () => "datasets" })()())().decodeJson)();
45625
+ var loadFig2 = /* @__PURE__ */ loadFig(/* @__PURE__ */ monadAffReader(monadAffAff))(/* @__PURE__ */ monadErrorReaderT(monadErrorAff))(/* @__PURE__ */ monadReaderReaderT(monadAff))({
45626
+ loadFileFromPath: (dictMonadError1) => (dictMonadAff1) => (x2) => {
45627
+ const $0 = loadFileAff.loadFileFromPath(monadErrorAff)(monadAffAff)(x2);
45628
+ return (v) => $0;
45629
+ }
45630
+ });
45631
+ var loadSpec = (filename) => _bind($$get(driver)($ResponseFormat("Json", identity))(filename))((result) => {
45632
+ if (result.tag === "Left") {
45633
+ return throwException(error("Json fetching failed with " + printError(result._1)))();
45634
+ }
45635
+ if (result.tag === "Right") {
45636
+ return _pure(result._1.body);
45637
+ }
45638
+ fail();
45639
+ });
45525
45640
  var figSpecFromJson = (v) => ({
45526
45641
  fluidSrcPaths: arrayMap(Folder)(v.fluidSrcPath),
45527
45642
  datasets: v.datasets,
45528
- imports: v.imports,
45529
- file: v.file,
45530
45643
  inputs: v.inputs,
45531
45644
  query: v.query ? $Maybe(
45532
45645
  "Just",
@@ -45546,25 +45659,79 @@ var figSpecFromJson = (v) => ({
45546
45659
  ) : Nothing,
45547
45660
  linking: v.linking
45548
45661
  });
45549
- var loadFigure = (fileName) => runAffs_((v) => drawFig(v._1)(v._2))([
45550
- _bind($$get(driver)($ResponseFormat("Json", identity))(fileName))((result) => {
45551
- if (result.tag === "Left") {
45552
- return throwException(error("Json fetching failed with " + printError(result._1)))();
45662
+ var loadFigureSpecSrc = (jsonSpec) => (fluidSrc) => runAffs_((v) => drawFig(v._1)(v._2))([
45663
+ (() => {
45664
+ const v = decodeJson(jsonSpec);
45665
+ if (v.tag === "Left") {
45666
+ return throwException(error("JSON decoding failed with " + showJsonDecodeError.show(v._1)))();
45553
45667
  }
45554
- if (result.tag === "Right") {
45555
- const v = decodeJson(result._1.body);
45556
- if (v.tag === "Left") {
45557
- return throwException(error("JSON decoding failed with " + showJsonDecodeError.show(v._1)))();
45668
+ if (v.tag === "Right") {
45669
+ const v1 = figSpecFromJson(v._1);
45670
+ return _map((v2) => $Tuple("fig", v2))(loadFig2(v1)(fluidSrc)({ fluidSrcPaths: v1.fluidSrcPaths }));
45671
+ }
45672
+ fail();
45673
+ })()
45674
+ ]);
45675
+ var loadFigureSpec = (jsonSpec) => (srcFile) => {
45676
+ const $0 = _makeFiber(
45677
+ ffiUtil,
45678
+ _bind(loadFileAff.loadFileFromPath(monadErrorAff)(monadAffAff)(srcFile))((fluidSrc) => _liftEffect(loadFigureSpecSrc(jsonSpec)(definitely("absurd")(fluidSrc))))
45679
+ );
45680
+ return () => {
45681
+ const fiber = $0();
45682
+ fiber.run();
45683
+ };
45684
+ };
45685
+ var loadFigure = (specFile) => (srcFile) => {
45686
+ const $0 = _makeFiber(ffiUtil, _bind(loadSpec(specFile))((jsonSpec) => _liftEffect(loadFigureSpec(jsonSpec)(srcFile))));
45687
+ return () => {
45688
+ const fiber = $0();
45689
+ fiber.run();
45690
+ };
45691
+ };
45692
+ var loadFigureSrc = (specFile) => (fluidSrc) => {
45693
+ const $0 = _makeFiber(ffiUtil, _bind(loadSpec(specFile))((jsonSpec) => _liftEffect(loadFigureSpecSrc(jsonSpec)(fluidSrc))));
45694
+ return () => {
45695
+ const fiber = $0();
45696
+ fiber.run();
45697
+ };
45698
+ };
45699
+ var drawCode2 = (file) => {
45700
+ const $0 = split("/")(file);
45701
+ const $1 = index($0)($0.length - 1 | 0);
45702
+ const filename = (() => {
45703
+ if ($1.tag === "Just") {
45704
+ const $22 = index(split(".")($1._1))(0);
45705
+ if ($22.tag === "Just") {
45706
+ if ($22._1 === "") {
45707
+ return Nothing;
45708
+ }
45709
+ return $Maybe("Just", $22._1);
45558
45710
  }
45559
- if (v.tag === "Right") {
45560
- const v1 = figSpecFromJson(v._1);
45561
- return _map((v2) => $Tuple("fig", v2))(loadFig2(v1)({ fluidSrcPaths: v1.fluidSrcPaths }));
45711
+ if ($22.tag === "Nothing") {
45712
+ return Nothing;
45562
45713
  }
45714
+ fail();
45715
+ }
45716
+ if ($1.tag === "Nothing") {
45717
+ return Nothing;
45563
45718
  }
45564
45719
  fail();
45565
- })
45566
- ]);
45567
- var drawCode2 = (folder) => (file) => runAffs_(drawFile)([loadFile$p([folder])(file)(monadAffWebT)(monadErrorErrorWebT)({ fluidSrcPaths: [folder] })]);
45720
+ })();
45721
+ const errNotFound = "drawCode: File not found: " + file;
45722
+ const errEmptyName = "drawCode: Filename cannot be empty: " + file;
45723
+ const $2 = _makeFiber(
45724
+ ffiUtil,
45725
+ _bind(loadFileAff.loadFileFromPath(monadErrorAff)(monadAffAff)(file))((fluidSrc) => _liftEffect(drawFile($Tuple(
45726
+ definitely(errEmptyName)(filename),
45727
+ definitely(errNotFound)(fluidSrc)
45728
+ ))))
45729
+ );
45730
+ return () => {
45731
+ const fiber = $2();
45732
+ fiber.run();
45733
+ };
45734
+ };
45568
45735
  export {
45569
45736
  decodeJson,
45570
45737
  drawCode2 as drawCode,
@@ -45573,8 +45740,8 @@ export {
45573
45740
  gDecodeJsonCons1,
45574
45741
  loadFig2 as loadFig,
45575
45742
  loadFigure,
45576
- loadFile$p,
45577
- loadFileWebT2 as loadFileWebT,
45578
- monadAffWebT,
45579
- monadErrorErrorWebT
45743
+ loadFigureSpec,
45744
+ loadFigureSpecSrc,
45745
+ loadFigureSrc,
45746
+ loadSpec
45580
45747
  };