Javascript Interpreter for C# (no dependencies)
#scripting #script-engine

Frederic Torres f68c04945e fix string[Infinity] and string.localeCompare.length %!s(int64=11) %!d(string=hai) anos
Jint f68c04945e fix string[Infinity] and string.localeCompare.length %!s(int64=11) %!d(string=hai) anos
Jint.Benchmark ae2c00b4e0 Implementing Arguments object %!s(int64=12) %!d(string=hai) anos
Jint.Repl 1227c2992f Implementing JsValue %!s(int64=11) %!d(string=hai) anos
Jint.Tests 24a479c429 Removing TypeConverter JsValue direct conversions %!s(int64=11) %!d(string=hai) anos
Jint.Tests.Ecma 114bb43d93 Skip unit tests because of double precision issue %!s(int64=11) %!d(string=hai) anos
Jint.Tests.Scaffolding b6d60818da Adding Ecma 262 tests %!s(int64=12) %!d(string=hai) anos
.gitignore 2dab8046d6 Scaffolding project vs. hand written classes %!s(int64=12) %!d(string=hai) anos
CREDITS.txt f53137698a Adding license information %!s(int64=11) %!d(string=hai) anos
Jint.sln 079c6a1764 Fixing more unit tests %!s(int64=12) %!d(string=hai) anos
LICENSE.txt f53137698a Adding license information %!s(int64=11) %!d(string=hai) anos
README.md 03a4224988 Update README.md %!s(int64=11) %!d(string=hai) anos

README.md

Jint

Jint is a Javascript interpreter for .NET. Jint doesn't compile Javascript to .NET bytecode and in this sense might be best suited for projects requiring to run relatively small scripts faster, or which need to run on different platforms.

Objectives

Example

script= @"
  function hello() { 
    log("Hello World");
  };
";

var engine = new Engine(cfg => cfg
    .WithDelegate("log", new Action<object>(Console.WriteLine))
);

engine.Execute("hello()");

You can also check the actual implemented test suite for more samples.

Roadmap

Status:

Todo:

  • Improve C# interoperability
  • Finish up ECMAScript test suite