@scinorandex/sparse 0.0.8 → 0.1.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.
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import fs from "fs/promises";
2
- import { buildProductions, LR1StackSymbol, Sparse } from "../../src/index";
2
+ import { buildProductions, buildStates, LR1StackSymbol, Sparse } from "../../src/index";
3
3
  import { ColumnAndRow, Slex, Token } from "@scinorandex/slex";
4
4
 
5
5
  // prettier-ignore
@@ -165,13 +165,14 @@ class Node {
165
165
  }
166
166
  }
167
167
 
168
- async function main() {
168
+ async function parse(tablePath: string) {
169
169
  const exampleSourceCode = await fs.readFile("./example/LoLang/Features_Array_Methods.lol", "utf8");
170
170
  const lexer = lexerGenerator.generate(exampleSourceCode, () => ({}));
171
171
 
172
172
  const toStringifiedTokenType = (type: LoLangTokenType) => LoLangTokenType[type];
173
173
  const productions = buildProductions(await fs.readFile("./example/LoLang/grammar.txt", "utf8"));
174
- const parserGenerator = Sparse.fromProductions<LoLangTokenType, {}, Node>({ productions, toStringifiedTokenType });
174
+ const states = buildStates(await fs.readFile(tablePath, "utf8"));
175
+ const parserGenerator = new Sparse<LoLangTokenType, {}, Node>({ productions, toStringifiedTokenType, states });
175
176
 
176
177
  const parser = parserGenerator.generate(lexer, {
177
178
  reducer: (_, { input }) => new Node(input),
@@ -215,7 +216,29 @@ async function main() {
215
216
  },
216
217
  });
217
218
 
218
- console.log(parser.parse());
219
+ const parsingResult = parser.parse();
220
+ return JSON.stringify(parsingResult.result?.toObject());
221
+ }
222
+
223
+ async function main() {
224
+ let nsTime = Date.now();
225
+ const lr1Result = await parse("./example/LoLang/table.txt");
226
+ const lr1Time = Date.now() - nsTime;
227
+
228
+ nsTime = Date.now();
229
+ const lalrResult = await parse("./example/LoLang/tablelalr.txt");
230
+ const lalrTime = Date.now() - nsTime;
231
+
232
+ console.log(`LR(1) time: ${lr1Time}ms`);
233
+ console.log(`LALR(1) time: ${lalrTime}ms`);
234
+ const delta = Math.abs(lalrTime - lr1Time);
235
+ console.log("LR(1) is " + (lr1Time < lalrTime ? "faster" : "slower") + " than LALR(1)" + ` (${delta}ms)`);
236
+
237
+ console.log("==============================");
238
+ console.log(`LR(1) result: ${lr1Result}`);
239
+ console.log(`LALR(1) result: ${lalrResult}`);
240
+ console.log("==============================");
241
+ console.log(lr1Result === lalrResult ? "Equal output" : "Not equal output");
219
242
  }
220
243
 
221
244
  main();