Skip to content

UCSD-PL/impscript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

impscript

Gradual Types for JavaScript

Licenses

1) TODO          : ImpScript
2) LICENSE.LamJS : LambdaJS by Arjun Guha and Claudiu Saftoiu (in src/LamJS)

Execution Modes

Usage: ./impscript [options] (file.js | file.is | file.n.is | file._.is)

  Input       Mode
  ---------   -----------------------------------------------

  file.js     1) Desugar JavaScript to ImpScript file.0.is
              2) Type check and insert casts in file.1.is
              3) Type check file.1.is (sanity check)

  file.n.is   1) Type check and insert casts in file.n+1.is
              2) Type check file.n+1.is (sanity check)

  file._.is   1) Type check and insert casts in file.99999.is
              2) Type check file.99999.is (sanity check)

  file.is     1) Type check file.is

Sample Tests

% cd ~/impscript/src

% make
...

% ./impscript ../tests/simple-0/negate.js 
DESUGARING: OK
Wrote to ../tests/simple-0/negate.is.
TC + CASTS: OK
Wrote to ../tests/simple-0/negate.1.is.
TC: OK

% ./impscript ../tests/simple-0/negate.1.is 
TC + CASTS: OK
Wrote to ../tests/simple-0/negate.2.is.
TC: OK

% ../scripts/run.py
...

About

Gradual Types for JavaScript

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages