firefly-compiler 0.5.76 → 0.5.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/bin/firefly.mjs +1 -1
  2. package/compiler/Builder.ff +3 -1
  3. package/compiler/Compiler.ff +7 -3
  4. package/compiler/JsEmitter.ff +1564 -623
  5. package/compiler/Main.ff +1 -1
  6. package/compiler/SourceMap.ff +149 -0
  7. package/core/Buffer.ff +2 -1
  8. package/core/BuildSystem.ff +3 -1
  9. package/core/Js.ff +6 -0
  10. package/firefly.sh +1 -1
  11. package/fireflysite/Main.ff +2 -1
  12. package/output/js/ff/compiler/Builder.mjs +8 -44
  13. package/output/js/ff/compiler/Builder.mjs.map +181 -0
  14. package/output/js/ff/compiler/Compiler.mjs +23 -16
  15. package/output/js/ff/compiler/Compiler.mjs.map +155 -0
  16. package/output/js/ff/compiler/Dependencies.mjs +12 -14
  17. package/output/js/ff/compiler/Dependencies.mjs.map +128 -0
  18. package/output/js/ff/compiler/DependencyLock.mjs +1 -4
  19. package/output/js/ff/compiler/DependencyLock.mjs.map +22 -0
  20. package/output/js/ff/compiler/Deriver.mjs +10 -11
  21. package/output/js/ff/compiler/Deriver.mjs.map +204 -0
  22. package/output/js/ff/compiler/Dictionaries.mjs +12 -13
  23. package/output/js/ff/compiler/Dictionaries.mjs.map +183 -0
  24. package/output/js/ff/compiler/Environment.mjs +24 -27
  25. package/output/js/ff/compiler/Environment.mjs.map +141 -0
  26. package/output/js/ff/compiler/Inference.mjs +83 -92
  27. package/output/js/ff/compiler/Inference.mjs.map +355 -0
  28. package/output/js/ff/compiler/JsEmitter.mjs +3689 -1687
  29. package/output/js/ff/compiler/JsEmitter.mjs.map +423 -0
  30. package/output/js/ff/compiler/JsImporter.mjs +9 -12
  31. package/output/js/ff/compiler/JsImporter.mjs.map +52 -0
  32. package/output/js/ff/compiler/LspHook.mjs +17 -18
  33. package/output/js/ff/compiler/LspHook.mjs.map +140 -0
  34. package/output/js/ff/compiler/Main.mjs +57 -67
  35. package/output/js/ff/compiler/Main.mjs.map +226 -0
  36. package/output/js/ff/compiler/ModuleCache.mjs +1 -4
  37. package/output/js/ff/compiler/ModuleCache.mjs.map +82 -0
  38. package/output/js/ff/compiler/Parser.mjs +54 -57
  39. package/output/js/ff/compiler/Parser.mjs.map +406 -0
  40. package/output/js/ff/compiler/Patterns.mjs +19 -22
  41. package/output/js/ff/compiler/Patterns.mjs.map +119 -0
  42. package/output/js/ff/compiler/Resolver.mjs +40 -39
  43. package/output/js/ff/compiler/Resolver.mjs.map +294 -0
  44. package/output/js/ff/compiler/SourceMap.mjs +402 -0
  45. package/output/js/ff/compiler/SourceMap.mjs.map +83 -0
  46. package/output/js/ff/compiler/Substitution.mjs +1 -4
  47. package/output/js/ff/compiler/Substitution.mjs.map +138 -0
  48. package/output/js/ff/compiler/Syntax.mjs +250 -249
  49. package/output/js/ff/compiler/Syntax.mjs.map +351 -0
  50. package/output/js/ff/compiler/Token.mjs +17 -22
  51. package/output/js/ff/compiler/Token.mjs.map +113 -0
  52. package/output/js/ff/compiler/Tokenizer.mjs +5 -12
  53. package/output/js/ff/compiler/Tokenizer.mjs.map +101 -0
  54. package/output/js/ff/compiler/Unification.mjs +32 -33
  55. package/output/js/ff/compiler/Unification.mjs.map +135 -0
  56. package/output/js/ff/compiler/Wildcards.mjs +1 -4
  57. package/output/js/ff/compiler/Wildcards.mjs.map +69 -0
  58. package/output/js/ff/compiler/Workspace.mjs +17 -16
  59. package/output/js/ff/compiler/Workspace.mjs.map +96 -0
  60. package/output/js/ff/core/Any.mjs +1 -4
  61. package/output/js/ff/core/Any.mjs.map +21 -0
  62. package/output/js/ff/core/Array.mjs +14 -15
  63. package/output/js/ff/core/Array.mjs.map +90 -0
  64. package/output/js/ff/core/AssetSystem.mjs +1 -4
  65. package/output/js/ff/core/AssetSystem.mjs.map +56 -0
  66. package/output/js/ff/core/Atomic.mjs +1 -4
  67. package/output/js/ff/core/Atomic.mjs.map +24 -0
  68. package/output/js/ff/core/Bool.mjs +4 -9
  69. package/output/js/ff/core/Bool.mjs.map +19 -0
  70. package/output/js/ff/core/BrowserSystem.mjs +1 -8
  71. package/output/js/ff/core/BrowserSystem.mjs.map +47 -0
  72. package/output/js/ff/core/Buffer.mjs +18 -17
  73. package/output/js/ff/core/Buffer.mjs.map +123 -0
  74. package/output/js/ff/core/BuildSystem.mjs +7 -10
  75. package/output/js/ff/core/BuildSystem.mjs.map +87 -0
  76. package/output/js/ff/core/Channel.mjs +1 -4
  77. package/output/js/ff/core/Channel.mjs.map +67 -0
  78. package/output/js/ff/core/Char.mjs +1 -8
  79. package/output/js/ff/core/Char.mjs.map +21 -0
  80. package/output/js/ff/core/Core.mjs +5 -8
  81. package/output/js/ff/core/Core.mjs.map +40 -0
  82. package/output/js/ff/core/Crypto.mjs +1 -4
  83. package/output/js/ff/core/Crypto.mjs.map +65 -0
  84. package/output/js/ff/core/Date.mjs +8 -7
  85. package/output/js/ff/core/Date.mjs.map +168 -0
  86. package/output/js/ff/core/Duration.mjs +4 -9
  87. package/output/js/ff/core/Duration.mjs.map +18 -0
  88. package/output/js/ff/core/Equal.mjs +9 -14
  89. package/output/js/ff/core/Equal.mjs.map +22 -0
  90. package/output/js/ff/core/Error.mjs +1 -8
  91. package/output/js/ff/core/Error.mjs.map +21 -0
  92. package/output/js/ff/core/FileHandle.mjs +1 -8
  93. package/output/js/ff/core/FileHandle.mjs.map +32 -0
  94. package/output/js/ff/core/Float.mjs +4 -5
  95. package/output/js/ff/core/Float.mjs.map +93 -0
  96. package/output/js/ff/core/HttpClient.mjs +1 -4
  97. package/output/js/ff/core/HttpClient.mjs.map +62 -0
  98. package/output/js/ff/core/Int.mjs +4 -9
  99. package/output/js/ff/core/Int.mjs.map +49 -0
  100. package/output/js/ff/core/IntMap.mjs +3 -6
  101. package/output/js/ff/core/IntMap.mjs.map +52 -0
  102. package/output/js/ff/core/Js.mjs +13 -8
  103. package/output/js/ff/core/Js.mjs.map +121 -0
  104. package/output/js/ff/core/JsSystem.mjs +1 -8
  105. package/output/js/ff/core/JsSystem.mjs.map +59 -0
  106. package/output/js/ff/core/JsValue.mjs +23 -42
  107. package/output/js/ff/core/JsValue.mjs.map +155 -0
  108. package/output/js/ff/core/Json.mjs +25 -26
  109. package/output/js/ff/core/Json.mjs.map +134 -0
  110. package/output/js/ff/core/List.mjs +11 -12
  111. package/output/js/ff/core/List.mjs.map +123 -0
  112. package/output/js/ff/core/Lock.mjs +7 -14
  113. package/output/js/ff/core/Lock.mjs.map +52 -0
  114. package/output/js/ff/core/Log.mjs +1 -8
  115. package/output/js/ff/core/Log.mjs.map +26 -0
  116. package/output/js/ff/core/Map.mjs +6 -7
  117. package/output/js/ff/core/Map.mjs.map +67 -0
  118. package/output/js/ff/core/NodeSystem.mjs +11 -14
  119. package/output/js/ff/core/NodeSystem.mjs.map +137 -0
  120. package/output/js/ff/core/Nothing.mjs +1 -10
  121. package/output/js/ff/core/Nothing.mjs.map +11 -0
  122. package/output/js/ff/core/Option.mjs +10 -15
  123. package/output/js/ff/core/Option.mjs.map +67 -0
  124. package/output/js/ff/core/Ordering.mjs +12 -13
  125. package/output/js/ff/core/Ordering.mjs.map +48 -0
  126. package/output/js/ff/core/Pair.mjs +8 -13
  127. package/output/js/ff/core/Pair.mjs.map +48 -0
  128. package/output/js/ff/core/Path.mjs +5 -14
  129. package/output/js/ff/core/Path.mjs.map +178 -0
  130. package/output/js/ff/core/Queue.mjs +1 -4
  131. package/output/js/ff/core/Queue.mjs.map +45 -0
  132. package/output/js/ff/core/Random.mjs +1 -4
  133. package/output/js/ff/core/Random.mjs.map +79 -0
  134. package/output/js/ff/core/RbMap.mjs +1 -16
  135. package/output/js/ff/core/RbMap.mjs.map +92 -0
  136. package/output/js/ff/core/Serializable.mjs +17 -22
  137. package/output/js/ff/core/Serializable.mjs.map +73 -0
  138. package/output/js/ff/core/Set.mjs +6 -7
  139. package/output/js/ff/core/Set.mjs.map +45 -0
  140. package/output/js/ff/core/Show.mjs +11 -20
  141. package/output/js/ff/core/Show.mjs.map +29 -0
  142. package/output/js/ff/core/SourceLocation.mjs +7 -8
  143. package/output/js/ff/core/SourceLocation.mjs.map +41 -0
  144. package/output/js/ff/core/Stream.mjs +1 -4
  145. package/output/js/ff/core/Stream.mjs.map +92 -0
  146. package/output/js/ff/core/String.mjs +14 -19
  147. package/output/js/ff/core/String.mjs.map +106 -0
  148. package/output/js/ff/core/StringMap.mjs +3 -6
  149. package/output/js/ff/core/StringMap.mjs.map +52 -0
  150. package/output/js/ff/core/Task.mjs +1 -8
  151. package/output/js/ff/core/Task.mjs.map +79 -0
  152. package/output/js/ff/core/Try.mjs +3 -6
  153. package/output/js/ff/core/Try.mjs.map +41 -0
  154. package/output/js/ff/core/Unit.mjs +5 -12
  155. package/output/js/ff/core/Unit.mjs.map +18 -0
  156. package/package.json +1 -1
  157. package/vscode/package.json +1 -1
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  import * as ff_compiler_Inference from "../../ff/compiler/Inference.mjs"
4
2
 
5
3
  import * as ff_compiler_Environment from "../../ff/compiler/Environment.mjs"
@@ -111,14 +109,12 @@ export function Inference(unification_, missing_, lspHook_) {
111
109
  return {unification_, missing_, lspHook_};
112
110
  }
113
111
 
114
-
115
-
116
112
  export function new_(modules_, lspHook_) {
117
113
  return ff_compiler_Inference.Inference(ff_compiler_Unification.new_(modules_, ff_compiler_LspHook.LspHook_isEnabled(lspHook_)), ff_core_StringMap.new_(), lspHook_)
118
114
  }
119
115
 
120
116
  export function fail_(at_, message_) {
121
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, message_), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
117
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, message_), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
122
118
  }
123
119
 
124
120
  export function core_(name_) {
@@ -147,7 +143,7 @@ return ff_compiler_Inference.Inference(ff_compiler_Unification.new_(modules_, ff
147
143
  }
148
144
 
149
145
  export async function fail_$(at_, message_, $task) {
150
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, message_), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
146
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, message_), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
151
147
  }
152
148
 
153
149
  export async function core_$(name_, $task) {
@@ -202,7 +198,7 @@ break
202
198
  }
203
199
  {
204
200
  const allErrors_ = _1;
205
- ff_core_Core.throw_(ff_compiler_Syntax.CompileErrors(ff_core_List.List_map(allErrors_, ((_w1) => {
201
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileErrors(ff_core_List.List_map(allErrors_, ((_w1) => {
206
202
  return _w1.first_
207
203
  }))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileErrors, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileErrors)
208
204
  }
@@ -232,10 +228,10 @@ const instances_ = ff_compiler_Inference.constraintsToInstances_(definition_.con
232
228
  return ff_compiler_Unification.Unification_withLocalInstances(self_.unification_, instances_, (() => {
233
229
  const traitName_ = definition_.traitName_;
234
230
  const traitDefinition_ = ff_core_Option.Option_else(ff_core_Map.Map_get(environment_.traits_, traitName_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), (() => {
235
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ("No such trait: " + traitName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
231
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ("No such trait: " + traitName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
236
232
  }));
237
233
  if((traitDefinition_.generics_.length !== definition_.typeArguments_.length)) {
238
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ((((("Wrong number of type arguments for " + traitName_) + ", expected ") + (traitDefinition_.generics_.length - 1)) + ", got ") + (definition_.typeArguments_.length - 1))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
234
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ((((("Wrong number of type arguments for " + traitName_) + ", expected ") + (traitDefinition_.generics_.length - 1)) + ", got ") + (definition_.typeArguments_.length - 1))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
239
235
  };
240
236
  const instantiationMap_ = ff_core_List.List_toMap(ff_core_List.List_zip(traitDefinition_.generics_, definition_.typeArguments_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
241
237
  for(let for_a = traitDefinition_.methods_, for_i = 0, for_l = for_a.length; for_i < for_l; for_i++) {
@@ -244,11 +240,11 @@ const found_ = ff_core_List.List_filter(definition_.methods_, ((_w1) => {
244
240
  return (_w1.signature_.name_ === traitMethod_.name_)
245
241
  }));
246
242
  if(ff_core_List.List_isEmpty(found_)) {
247
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ("Missing instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
243
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ("Missing instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
248
244
  };
249
245
  for(let for_a = found_, for_i = 1, for_l = for_a.length; for_i < for_l; for_i++) {
250
246
  const duplicateMethod_ = for_a[for_i];
251
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(duplicateMethod_.at_, ("Duplicated instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
247
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(duplicateMethod_.at_, ("Duplicated instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
252
248
  }
253
249
  };
254
250
  {
@@ -261,7 +257,7 @@ const traitMethodName_ = (ff_core_String.String_reverse(ff_core_String.String_dr
261
257
  return (_w1 !== 46)
262
258
  }))) + methodName_);
263
259
  const traitMethodScheme_ = ff_core_Option.Option_else(ff_core_Map.Map_get(environment_.symbols_, traitMethodName_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), (() => {
264
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceFunction_.at_, ((("Trait " + traitName_) + " has no such method: ") + methodName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
260
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceFunction_.at_, ((("Trait " + traitName_) + " has no such method: ") + methodName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
265
261
  }));
266
262
  const parameters_ = ff_core_List.List_map(traitMethodScheme_.signature_.parameters_, ((p_) => {
267
263
  {
@@ -275,11 +271,11 @@ return ff_compiler_Syntax.Parameter(_c.at_, _c.mutable_, _c.name_, ff_compiler_U
275
271
  const returnType_ = ff_compiler_Unification.Unification_instantiate(self_.unification_, instantiationMap_, traitMethodScheme_.signature_.returnType_);
276
272
  for(let for_a = instanceFunction_.signature_.parameters_, for_i = Math.max(parameters_.length, 0), for_l = for_a.length; for_i < for_l; for_i++) {
277
273
  const instanceParameter_ = for_a[for_i];
278
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceParameter_.at_, ("Unexpected parameter: " + instanceParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
274
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceParameter_.at_, ("Unexpected parameter: " + instanceParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
279
275
  };
280
276
  for(let for_a = parameters_, for_i = Math.max(instanceFunction_.signature_.parameters_.length, 0), for_l = for_a.length; for_i < for_l; for_i++) {
281
277
  const traitParameter_ = for_a[for_i];
282
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceFunction_.at_, ("Missing parameter: " + traitParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
278
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceFunction_.at_, ("Missing parameter: " + traitParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
283
279
  };
284
280
  for(let for_a = parameters_, for_i = 0, for_l = for_a.length, for_a2 = instanceFunction_.signature_.parameters_, for_i2 = 0, for_l2 = for_a2.length; for_i < for_l && for_i2 < for_l2; for_i++, for_i2++) {
285
281
  const traitParameter_ = for_a[for_i];
@@ -546,10 +542,10 @@ const name_ = _1.name_;
546
542
  const variableAt_ = _1.variableAt_;
547
543
  const variableOption_ = _1.variable_;
548
544
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, at_, name_, [], ff_core_Option.None()), (() => {
549
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
545
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
550
546
  }));
551
547
  if(instantiated_.scheme_.isNewtype_) {
552
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, "This kind of pattern is not allowed for newtypes"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
548
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, "This kind of pattern is not allowed for newtypes"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
553
549
  };
554
550
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, instantiated_.scheme_.signature_.returnType_);
555
551
  const parameters_ = ff_core_List.List_sortBy(instantiated_.scheme_.signature_.parameters_, ((_w1) => {
@@ -613,11 +609,11 @@ const at_ = _1.at_;
613
609
  const name_ = _1.name_;
614
610
  const patterns_ = _1.patterns_;
615
611
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, at_, name_, [], ff_core_Option.None()), (() => {
616
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
612
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
617
613
  }));
618
614
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, instantiated_.scheme_.signature_.returnType_);
619
615
  if(((patterns_.length !== instantiated_.scheme_.signature_.parameters_.length) && (!ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)))) {
620
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, (((("Wrong number of subpatterns, expected " + instantiated_.scheme_.signature_.parameters_.length) + ", got ") + patterns_.length) + ".")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
616
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, (((("Wrong number of subpatterns, expected " + instantiated_.scheme_.signature_.parameters_.length) + ", got ") + patterns_.length) + ".")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
621
617
  };
622
618
  return ff_core_List.List_foldLeft(ff_core_List.List_map(ff_core_List.List_zip(patterns_, instantiated_.scheme_.signature_.parameters_), ((_1) => {
623
619
  {
@@ -669,7 +665,7 @@ return term_
669
665
  return ff_compiler_Inference.Inference_inferEtaExpansion(self_, environment_, expected_, e_.at_, instantiated_.scheme_.signature_, term_)
670
666
  }
671
667
  })), (() => {
672
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
668
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
673
669
  }))
674
670
  return
675
671
  }
@@ -730,7 +726,7 @@ return ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)
730
726
  }), (() => {
731
727
  return term_
732
728
  })), (() => {
733
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
729
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
734
730
  }))
735
731
  return
736
732
  }
@@ -766,7 +762,7 @@ return ff_compiler_Syntax.EField(_c.at_, instantiated_.scheme_.isNewtype_, recor
766
762
  return
767
763
  }
768
764
  {
769
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
765
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
770
766
  }
771
767
  }
772
768
  return
@@ -776,7 +772,7 @@ return term_
776
772
  }
777
773
  {
778
774
  const index_ = _1.index_;
779
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
775
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
780
776
  }
781
777
  }
782
778
  return
@@ -1022,7 +1018,7 @@ return ff_compiler_Syntax.ELambda(at_, lambda_)
1022
1018
  if(_1.EVariant) {
1023
1019
  const e_ = _1;
1024
1020
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, e_.typeArguments_, e_.arguments_), (() => {
1025
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1021
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1026
1022
  }));
1027
1023
  ff_compiler_Unification.Unification_unify(self_.unification_, e_.at_, expected_, instantiated_.scheme_.signature_.returnType_);
1028
1024
  const arguments_ = ff_core_Option.Option_map(e_.arguments_, ((_w1) => {
@@ -1043,7 +1039,7 @@ return
1043
1039
  if(_1.EVariantIs) {
1044
1040
  const e_ = _1;
1045
1041
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, e_.typeArguments_, ff_core_Option.None()), (() => {
1046
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1042
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1047
1043
  }));
1048
1044
  const parameters_ = ff_core_List.List_sortBy(instantiated_.scheme_.signature_.parameters_, ((_w1) => {
1049
1045
  return _w1.name_
@@ -1070,10 +1066,10 @@ return
1070
1066
  if(_1.ECopy) {
1071
1067
  const e_ = _1;
1072
1068
  const scheme_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, [], ff_core_Option.None()), (() => {
1073
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1069
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1074
1070
  })).scheme_;
1075
1071
  if(scheme_.isNewtype_) {
1076
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Newtypes can't be copied"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1072
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Newtypes can't be copied"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1077
1073
  };
1078
1074
  const signature_ = scheme_.signature_;
1079
1075
  if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
@@ -1111,8 +1107,7 @@ return (_w1 === a_.name_)
1111
1107
  const at_ = _1.at_;
1112
1108
  const name_ = _1.name_;
1113
1109
  const value_ = _1.value_;
1114
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("Unknown parameter: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1115
- return
1110
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("Unknown parameter: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1116
1111
  }
1117
1112
  }));
1118
1113
  const arguments_ = ff_core_List.List_map(parameterNames_, ((name_) => {
@@ -1168,7 +1163,7 @@ const call_ = (((_1) => {
1168
1163
  if(_1.DynamicCall) {
1169
1164
  const call_ = _1;
1170
1165
  return {
1171
- function_: call_.function_,
1166
+ function_: call_.function_,
1172
1167
  tailCall_: call_.tailCall_
1173
1168
  }
1174
1169
  return
@@ -1200,7 +1195,7 @@ return ff_compiler_Inference.Inference_inferFunctionCall(self_, environment_, ex
1200
1195
  return
1201
1196
  }
1202
1197
  {
1203
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(variableAt_, ("No such function: " + x_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1198
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(variableAt_, ("No such function: " + x_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1204
1199
  }
1205
1200
  }
1206
1201
  }
@@ -1246,7 +1241,7 @@ const instantiated_ = _1.value_;
1246
1241
  return ff_compiler_Inference.Inference_inferLambdaCall(self_, environment_, expected_, e2_)
1247
1242
  }
1248
1243
  {
1249
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1244
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1250
1245
  }
1251
1246
  }
1252
1247
  return
@@ -1256,7 +1251,7 @@ return ff_compiler_Inference.Inference_inferLambdaCall(self_, environment_, expe
1256
1251
  }
1257
1252
  {
1258
1253
  const index_ = _1.index_;
1259
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1254
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1260
1255
  }
1261
1256
  }
1262
1257
  return
@@ -1333,10 +1328,10 @@ return ff_compiler_Syntax.EAssign(_c.at_, _c.operator_, _c.variable_, value_)
1333
1328
  }
1334
1329
  }
1335
1330
  } else {
1336
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol is not mutable: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1331
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol is not mutable: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1337
1332
  }
1338
1333
  })), (() => {
1339
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1334
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1340
1335
  }))
1341
1336
  return
1342
1337
  }
@@ -1351,7 +1346,7 @@ const t_ = _1;
1351
1346
  const name_ = _1.name_;
1352
1347
  const typeArguments_ = _1.generics_;
1353
1348
  if(ff_core_String.String_startsWith(name_, "Record$", 0)) {
1354
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Can't assign fields of anonymous records: " + e_.field_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1349
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Can't assign fields of anonymous records: " + e_.field_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1355
1350
  }
1356
1351
  }
1357
1352
  if(_1.TConstructor) {
@@ -1377,10 +1372,10 @@ return
1377
1372
  }
1378
1373
  if(_1.Some) {
1379
1374
  const instantiated_ = _1.value_;
1380
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("Can't assign an immutable field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1375
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("Can't assign an immutable field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1381
1376
  }
1382
1377
  {
1383
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1378
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1384
1379
  }
1385
1380
  }
1386
1381
  return
@@ -1390,7 +1385,7 @@ return term_
1390
1385
  }
1391
1386
  {
1392
1387
  const index_ = _1.index_;
1393
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1388
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1394
1389
  }
1395
1390
  }
1396
1391
  return
@@ -1416,7 +1411,7 @@ ff_compiler_Unification.Unification_unify(self_.unification_, at_, t_, ff_compil
1416
1411
  }
1417
1412
  } while(false)
1418
1413
  } else if((operator_ !== "")) {
1419
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, (("Only +=, -=, *=, /= and = assignments are supported. Got: " + operator_) + "=")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1414
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, (("Only +=, -=, *=, /= and = assignments are supported. Got: " + operator_) + "=")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1420
1415
  } else {};
1421
1416
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, ff_compiler_Syntax.TConstructor(at_, ff_compiler_Inference.core_("Unit"), []));
1422
1417
  return newValue_
@@ -1523,14 +1518,14 @@ if(_1.DynamicCall) {
1523
1518
  const call_ = _1;
1524
1519
  if((!call_.tailCall_)) {
1525
1520
  return {
1526
- function_: call_.function_,
1521
+ function_: call_.function_,
1527
1522
  tailCall_: call_.tailCall_
1528
1523
  }
1529
1524
  return
1530
1525
  }
1531
1526
  }
1532
1527
  if(_1.DynamicCall) {
1533
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Tailcalls not supported on lambda functions"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1528
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Tailcalls not supported on lambda functions"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1534
1529
  }
1535
1530
  {
1536
1531
  return ff_compiler_Inference.fail_(e_.at_, "Internal error: Static calls not expected in inferLambdaCall")
@@ -1550,7 +1545,7 @@ const t_ = _1.second_;
1550
1545
  const if_o = argument_.name_
1551
1546
  if(if_o.Some) {
1552
1547
  const name_ = if_o.value_;
1553
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(argument_.at_, ("Named argument not allowed here: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1548
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(argument_.at_, ("Named argument not allowed here: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1554
1549
  }
1555
1550
  };
1556
1551
  {
@@ -1567,7 +1562,7 @@ return
1567
1562
  const if_o = ff_core_List.List_first(e_.typeArguments_)
1568
1563
  if(if_o.Some) {
1569
1564
  const typeArgument_ = if_o.value_;
1570
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(typeArgument_.at_, "Type arguments not allowed here"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1565
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(typeArgument_.at_, "Type arguments not allowed here"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1571
1566
  }
1572
1567
  };
1573
1568
  ff_compiler_Unification.Unification_affect(self_.unification_, term_.at_, effect_, environment_.effect_);
@@ -1642,7 +1637,7 @@ if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
1642
1637
  break
1643
1638
  }
1644
1639
  {
1645
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1640
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1646
1641
  }
1647
1642
  } while(false);
1648
1643
  {
@@ -1843,12 +1838,10 @@ if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
1843
1838
  return
1844
1839
  }
1845
1840
  if(_1.Some && _2.Some) {
1846
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on these types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1847
- return
1841
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on these types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1848
1842
  }
1849
1843
  {
1850
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1851
- return
1844
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
1852
1845
  }
1853
1846
  });
1854
1847
  chooseType_(magic_(t1_), magic_(t2_));
@@ -2034,7 +2027,7 @@ return (_w1 === "Q$")
2034
2027
  : typeArguments_);
2035
2028
  if(((scheme_.signature_.generics_.length !== newTypeArguments_.length) && (!ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)))) {
2036
2029
  const extra_ = (newTypeArguments_.length - typeArguments_.length);
2037
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ((((("Wrong number of type arguments for " + symbol_) + ", expected ") + (scheme_.signature_.generics_.length - extra_)) + ", got ") + (newTypeArguments_.length - extra_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2030
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ((((("Wrong number of type arguments for " + symbol_) + ", expected ") + (scheme_.signature_.generics_.length - extra_)) + ", got ") + (newTypeArguments_.length - extra_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2038
2031
  };
2039
2032
  return ff_core_List.List_zip(scheme_.signature_.generics_, newTypeArguments_)
2040
2033
  })()
@@ -2122,7 +2115,7 @@ break
2122
2115
  }
2123
2116
  {
2124
2117
  const allErrors_ = _1;
2125
- ff_core_Core.throw_(ff_compiler_Syntax.CompileErrors(ff_core_List.List_map(allErrors_, ((_w1) => {
2118
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileErrors(ff_core_List.List_map(allErrors_, ((_w1) => {
2126
2119
  return _w1.first_
2127
2120
  }))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileErrors, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileErrors)
2128
2121
  }
@@ -2152,10 +2145,10 @@ const instances_ = ff_compiler_Inference.constraintsToInstances_(definition_.con
2152
2145
  return ff_compiler_Unification.Unification_withLocalInstances(self_.unification_, instances_, (() => {
2153
2146
  const traitName_ = definition_.traitName_;
2154
2147
  const traitDefinition_ = ff_core_Option.Option_else(ff_core_Map.Map_get(environment_.traits_, traitName_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), (() => {
2155
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ("No such trait: " + traitName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2148
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ("No such trait: " + traitName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2156
2149
  }));
2157
2150
  if((traitDefinition_.generics_.length !== definition_.typeArguments_.length)) {
2158
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ((((("Wrong number of type arguments for " + traitName_) + ", expected ") + (traitDefinition_.generics_.length - 1)) + ", got ") + (definition_.typeArguments_.length - 1))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2151
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ((((("Wrong number of type arguments for " + traitName_) + ", expected ") + (traitDefinition_.generics_.length - 1)) + ", got ") + (definition_.typeArguments_.length - 1))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2159
2152
  };
2160
2153
  const instantiationMap_ = ff_core_List.List_toMap(ff_core_List.List_zip(traitDefinition_.generics_, definition_.typeArguments_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
2161
2154
  for(let for_a = traitDefinition_.methods_, for_i = 0, for_l = for_a.length; for_i < for_l; for_i++) {
@@ -2164,11 +2157,11 @@ const found_ = ff_core_List.List_filter(definition_.methods_, ((_w1) => {
2164
2157
  return (_w1.signature_.name_ === traitMethod_.name_)
2165
2158
  }));
2166
2159
  if(ff_core_List.List_isEmpty(found_)) {
2167
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(definition_.at_, ("Missing instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2160
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(definition_.at_, ("Missing instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2168
2161
  };
2169
2162
  for(let for_a = found_, for_i = 1, for_l = for_a.length; for_i < for_l; for_i++) {
2170
2163
  const duplicateMethod_ = for_a[for_i];
2171
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(duplicateMethod_.at_, ("Duplicated instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2164
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(duplicateMethod_.at_, ("Duplicated instance method: " + traitMethod_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2172
2165
  }
2173
2166
  };
2174
2167
  {
@@ -2181,7 +2174,7 @@ const traitMethodName_ = (ff_core_String.String_reverse(ff_core_String.String_dr
2181
2174
  return (_w1 !== 46)
2182
2175
  }))) + methodName_);
2183
2176
  const traitMethodScheme_ = ff_core_Option.Option_else(ff_core_Map.Map_get(environment_.symbols_, traitMethodName_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), (() => {
2184
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceFunction_.at_, ((("Trait " + traitName_) + " has no such method: ") + methodName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2177
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceFunction_.at_, ((("Trait " + traitName_) + " has no such method: ") + methodName_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2185
2178
  }));
2186
2179
  const parameters_ = ff_core_List.List_map(traitMethodScheme_.signature_.parameters_, ((p_) => {
2187
2180
  {
@@ -2195,11 +2188,11 @@ return ff_compiler_Syntax.Parameter(_c.at_, _c.mutable_, _c.name_, ff_compiler_U
2195
2188
  const returnType_ = ff_compiler_Unification.Unification_instantiate(self_.unification_, instantiationMap_, traitMethodScheme_.signature_.returnType_);
2196
2189
  for(let for_a = instanceFunction_.signature_.parameters_, for_i = Math.max(parameters_.length, 0), for_l = for_a.length; for_i < for_l; for_i++) {
2197
2190
  const instanceParameter_ = for_a[for_i];
2198
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceParameter_.at_, ("Unexpected parameter: " + instanceParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2191
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceParameter_.at_, ("Unexpected parameter: " + instanceParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2199
2192
  };
2200
2193
  for(let for_a = parameters_, for_i = Math.max(instanceFunction_.signature_.parameters_.length, 0), for_l = for_a.length; for_i < for_l; for_i++) {
2201
2194
  const traitParameter_ = for_a[for_i];
2202
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(instanceFunction_.at_, ("Missing parameter: " + traitParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2195
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(instanceFunction_.at_, ("Missing parameter: " + traitParameter_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2203
2196
  };
2204
2197
  for(let for_a = parameters_, for_i = 0, for_l = for_a.length, for_a2 = instanceFunction_.signature_.parameters_, for_i2 = 0, for_l2 = for_a2.length; for_i < for_l && for_i2 < for_l2; for_i++, for_i2++) {
2205
2198
  const traitParameter_ = for_a[for_i];
@@ -2466,10 +2459,10 @@ const name_ = _1.name_;
2466
2459
  const variableAt_ = _1.variableAt_;
2467
2460
  const variableOption_ = _1.variable_;
2468
2461
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, at_, name_, [], ff_core_Option.None()), (() => {
2469
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2462
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2470
2463
  }));
2471
2464
  if(instantiated_.scheme_.isNewtype_) {
2472
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, "This kind of pattern is not allowed for newtypes"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2465
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, "This kind of pattern is not allowed for newtypes"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2473
2466
  };
2474
2467
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, instantiated_.scheme_.signature_.returnType_);
2475
2468
  const parameters_ = ff_core_List.List_sortBy(instantiated_.scheme_.signature_.parameters_, ((_w1) => {
@@ -2533,11 +2526,11 @@ const at_ = _1.at_;
2533
2526
  const name_ = _1.name_;
2534
2527
  const patterns_ = _1.patterns_;
2535
2528
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, at_, name_, [], ff_core_Option.None()), (() => {
2536
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2529
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("No such variant: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2537
2530
  }));
2538
2531
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, instantiated_.scheme_.signature_.returnType_);
2539
2532
  if(((patterns_.length !== instantiated_.scheme_.signature_.parameters_.length) && (!ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)))) {
2540
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, (((("Wrong number of subpatterns, expected " + instantiated_.scheme_.signature_.parameters_.length) + ", got ") + patterns_.length) + ".")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2533
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, (((("Wrong number of subpatterns, expected " + instantiated_.scheme_.signature_.parameters_.length) + ", got ") + patterns_.length) + ".")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2541
2534
  };
2542
2535
  return ff_core_List.List_foldLeft(ff_core_List.List_map(ff_core_List.List_zip(patterns_, instantiated_.scheme_.signature_.parameters_), ((_1) => {
2543
2536
  {
@@ -2589,7 +2582,7 @@ return term_
2589
2582
  return ff_compiler_Inference.Inference_inferEtaExpansion(self_, environment_, expected_, e_.at_, instantiated_.scheme_.signature_, term_)
2590
2583
  }
2591
2584
  })), (() => {
2592
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2585
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2593
2586
  }))
2594
2587
  return
2595
2588
  }
@@ -2650,7 +2643,7 @@ return ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)
2650
2643
  }), (() => {
2651
2644
  return term_
2652
2645
  })), (() => {
2653
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2646
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2654
2647
  }))
2655
2648
  return
2656
2649
  }
@@ -2686,7 +2679,7 @@ return ff_compiler_Syntax.EField(_c.at_, instantiated_.scheme_.isNewtype_, recor
2686
2679
  return
2687
2680
  }
2688
2681
  {
2689
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2682
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2690
2683
  }
2691
2684
  }
2692
2685
  return
@@ -2696,7 +2689,7 @@ return term_
2696
2689
  }
2697
2690
  {
2698
2691
  const index_ = _1.index_;
2699
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2692
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2700
2693
  }
2701
2694
  }
2702
2695
  return
@@ -2942,7 +2935,7 @@ return ff_compiler_Syntax.ELambda(at_, lambda_)
2942
2935
  if(_1.EVariant) {
2943
2936
  const e_ = _1;
2944
2937
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, e_.typeArguments_, e_.arguments_), (() => {
2945
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2938
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2946
2939
  }));
2947
2940
  ff_compiler_Unification.Unification_unify(self_.unification_, e_.at_, expected_, instantiated_.scheme_.signature_.returnType_);
2948
2941
  const arguments_ = ff_core_Option.Option_map(e_.arguments_, ((_w1) => {
@@ -2963,7 +2956,7 @@ return
2963
2956
  if(_1.EVariantIs) {
2964
2957
  const e_ = _1;
2965
2958
  const instantiated_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, e_.typeArguments_, ff_core_Option.None()), (() => {
2966
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2959
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2967
2960
  }));
2968
2961
  const parameters_ = ff_core_List.List_sortBy(instantiated_.scheme_.signature_.parameters_, ((_w1) => {
2969
2962
  return _w1.name_
@@ -2990,10 +2983,10 @@ return
2990
2983
  if(_1.ECopy) {
2991
2984
  const e_ = _1;
2992
2985
  const scheme_ = ff_core_Option.Option_else(ff_compiler_Inference.Inference_lookup(self_, environment_, expected_, e_.at_, e_.name_, [], ff_core_Option.None()), (() => {
2993
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2986
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2994
2987
  })).scheme_;
2995
2988
  if(scheme_.isNewtype_) {
2996
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Newtypes can't be copied"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2989
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Newtypes can't be copied"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
2997
2990
  };
2998
2991
  const signature_ = scheme_.signature_;
2999
2992
  if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
@@ -3031,8 +3024,7 @@ return (_w1 === a_.name_)
3031
3024
  const at_ = _1.at_;
3032
3025
  const name_ = _1.name_;
3033
3026
  const value_ = _1.value_;
3034
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ("Unknown parameter: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3035
- return
3027
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ("Unknown parameter: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3036
3028
  }
3037
3029
  }));
3038
3030
  const arguments_ = ff_core_List.List_map(parameterNames_, ((name_) => {
@@ -3088,7 +3080,7 @@ const call_ = (((_1) => {
3088
3080
  if(_1.DynamicCall) {
3089
3081
  const call_ = _1;
3090
3082
  return {
3091
- function_: call_.function_,
3083
+ function_: call_.function_,
3092
3084
  tailCall_: call_.tailCall_
3093
3085
  }
3094
3086
  return
@@ -3120,7 +3112,7 @@ return ff_compiler_Inference.Inference_inferFunctionCall(self_, environment_, ex
3120
3112
  return
3121
3113
  }
3122
3114
  {
3123
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(variableAt_, ("No such function: " + x_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3115
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(variableAt_, ("No such function: " + x_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3124
3116
  }
3125
3117
  }
3126
3118
  }
@@ -3166,7 +3158,7 @@ const instantiated_ = _1.value_;
3166
3158
  return ff_compiler_Inference.Inference_inferLambdaCall(self_, environment_, expected_, e2_)
3167
3159
  }
3168
3160
  {
3169
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3161
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3170
3162
  }
3171
3163
  }
3172
3164
  return
@@ -3176,7 +3168,7 @@ return ff_compiler_Inference.Inference_inferLambdaCall(self_, environment_, expe
3176
3168
  }
3177
3169
  {
3178
3170
  const index_ = _1.index_;
3179
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3171
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(f_.at_, ((("No such field " + f_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3180
3172
  }
3181
3173
  }
3182
3174
  return
@@ -3253,10 +3245,10 @@ return ff_compiler_Syntax.EAssign(_c.at_, _c.operator_, _c.variable_, value_)
3253
3245
  }
3254
3246
  }
3255
3247
  } else {
3256
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol is not mutable: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3248
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol is not mutable: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3257
3249
  }
3258
3250
  })), (() => {
3259
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3251
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Symbol not in scope: " + e_.variable_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3260
3252
  }))
3261
3253
  return
3262
3254
  }
@@ -3271,7 +3263,7 @@ const t_ = _1;
3271
3263
  const name_ = _1.name_;
3272
3264
  const typeArguments_ = _1.generics_;
3273
3265
  if(ff_core_String.String_startsWith(name_, "Record$", 0)) {
3274
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ("Can't assign fields of anonymous records: " + e_.field_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3266
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ("Can't assign fields of anonymous records: " + e_.field_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3275
3267
  }
3276
3268
  }
3277
3269
  if(_1.TConstructor) {
@@ -3297,10 +3289,10 @@ return
3297
3289
  }
3298
3290
  if(_1.Some) {
3299
3291
  const instantiated_ = _1.value_;
3300
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("Can't assign an immutable field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3292
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("Can't assign an immutable field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3301
3293
  }
3302
3294
  {
3303
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3295
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on type: ") + ff_compiler_Syntax.Type_show(t_, []))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3304
3296
  }
3305
3297
  }
3306
3298
  return
@@ -3310,7 +3302,7 @@ return term_
3310
3302
  }
3311
3303
  {
3312
3304
  const index_ = _1.index_;
3313
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3305
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, ((("No such field " + e_.field_) + " on unknown type: $") + index_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3314
3306
  }
3315
3307
  }
3316
3308
  return
@@ -3336,7 +3328,7 @@ ff_compiler_Unification.Unification_unify(self_.unification_, at_, t_, ff_compil
3336
3328
  }
3337
3329
  } while(false)
3338
3330
  } else if((operator_ !== "")) {
3339
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, (("Only +=, -=, *=, /= and = assignments are supported. Got: " + operator_) + "=")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3331
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, (("Only +=, -=, *=, /= and = assignments are supported. Got: " + operator_) + "=")), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3340
3332
  } else {};
3341
3333
  ff_compiler_Unification.Unification_unify(self_.unification_, at_, expected_, ff_compiler_Syntax.TConstructor(at_, ff_compiler_Inference.core_("Unit"), []));
3342
3334
  return newValue_
@@ -3443,14 +3435,14 @@ if(_1.DynamicCall) {
3443
3435
  const call_ = _1;
3444
3436
  if((!call_.tailCall_)) {
3445
3437
  return {
3446
- function_: call_.function_,
3438
+ function_: call_.function_,
3447
3439
  tailCall_: call_.tailCall_
3448
3440
  }
3449
3441
  return
3450
3442
  }
3451
3443
  }
3452
3444
  if(_1.DynamicCall) {
3453
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Tailcalls not supported on lambda functions"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3445
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Tailcalls not supported on lambda functions"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3454
3446
  }
3455
3447
  {
3456
3448
  return ff_compiler_Inference.fail_(e_.at_, "Internal error: Static calls not expected in inferLambdaCall")
@@ -3470,7 +3462,7 @@ const t_ = _1.second_;
3470
3462
  const if_o = argument_.name_
3471
3463
  if(if_o.Some) {
3472
3464
  const name_ = if_o.value_;
3473
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(argument_.at_, ("Named argument not allowed here: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3465
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(argument_.at_, ("Named argument not allowed here: " + name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3474
3466
  }
3475
3467
  };
3476
3468
  {
@@ -3487,7 +3479,7 @@ return
3487
3479
  const if_o = ff_core_List.List_first(e_.typeArguments_)
3488
3480
  if(if_o.Some) {
3489
3481
  const typeArgument_ = if_o.value_;
3490
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(typeArgument_.at_, "Type arguments not allowed here"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3482
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(typeArgument_.at_, "Type arguments not allowed here"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3491
3483
  }
3492
3484
  };
3493
3485
  ff_compiler_Unification.Unification_affect(self_.unification_, term_.at_, effect_, environment_.effect_);
@@ -3562,7 +3554,7 @@ if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
3562
3554
  break
3563
3555
  }
3564
3556
  {
3565
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3557
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3566
3558
  }
3567
3559
  } while(false);
3568
3560
  {
@@ -3763,12 +3755,10 @@ if(ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)) {
3763
3755
  return
3764
3756
  }
3765
3757
  if(_1.Some && _2.Some) {
3766
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on these types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3767
- return
3758
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on these types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3768
3759
  }
3769
3760
  {
3770
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3771
- return
3761
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(e_.at_, "Operators on unknown types not currently supported"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3772
3762
  }
3773
3763
  });
3774
3764
  chooseType_(magic_(t1_), magic_(t2_));
@@ -3954,7 +3944,7 @@ return (_w1 === "Q$")
3954
3944
  : typeArguments_);
3955
3945
  if(((scheme_.signature_.generics_.length !== newTypeArguments_.length) && (!ff_compiler_LspHook.LspHook_isEnabled(self_.lspHook_)))) {
3956
3946
  const extra_ = (newTypeArguments_.length - typeArguments_.length);
3957
- ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ((((("Wrong number of type arguments for " + symbol_) + ", expected ") + (scheme_.signature_.generics_.length - extra_)) + ", got ") + (newTypeArguments_.length - extra_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3947
+ throw ff_core_Js.initializeError_(new Error(), ff_compiler_Syntax.CompileError(at_, ((((("Wrong number of type arguments for " + symbol_) + ", expected ") + (scheme_.signature_.generics_.length - extra_)) + ", got ") + (newTypeArguments_.length - extra_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
3958
3948
  };
3959
3949
  return ff_core_List.List_zip(scheme_.signature_.generics_, newTypeArguments_)
3960
3950
  })()
@@ -4012,3 +4002,4 @@ return instantiated_
4012
4002
  }
4013
4003
 
4014
4004
 
4005
+ //# sourceMappingURL=Inference.mjs.map