Closed lahma closed 10 months ago
I was able to fix the issue with some crashes, however, linq-js is accessing global this
, which isn't available in strict mode as YantraJS treats all scripts as strict only.
So please change the code,
[Benchmark]
public void YantraJS()
{
var engine = new YantraJS.Core.JSContext();
engine.Eval(_files[FileName]);
}
To following,
[Benchmark]
public void YantraJS()
{
var engine = new YantraJS.Core.JSContext();
// By default YantraJS is strict mode only, in strict mode
// we need to pass `this` explicitly in global context
// if script is expecting global context as `this`
engine.Eval(_files[FileName], null, engine);
}
I was able to run all benchmarks successfully with version 1.2.203
Thank you for fast response, I was now able to run all the benchmarks also with YantraJS and the results have been updated.
We have our comparison benchmarks at Jint repo and it's getting a bit tedious to try to run the benchmarks as yantra is either really slow (regex) or just crashing (linqjs), is there something that could be done? I tried this run with NET 8.0 RC 2 to ensure there's nothing legacy hindering the run.
We are using the (current latest) version
1.2.201
.Benchmarks with issues: EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=dromaeo-3d-cube] EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=droma(...)egexp [21]] EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=linq-js]