├── .eslintignore ├── .eslintrc ├── .gitignore ├── .prettierrc ├── LICENSE ├── README.md ├── bin └── tslox.js ├── dist ├── ast.js ├── color.js ├── error.js ├── interpreter.js ├── main.js ├── parser.js ├── resolver.js ├── runner.js ├── scanner.js └── types.js ├── examples ├── block-scope.lox ├── class.lox ├── clock-fibonacci.lox ├── control-flow.lox ├── function.lox ├── global-variables.lox ├── hello-world.lox ├── inheritance.lox └── resolving-and-binding.lox ├── package.json ├── pnpm-lock.yaml ├── src ├── ast.ts ├── color.ts ├── error.ts ├── interpreter.ts ├── main.ts ├── parser.ts ├── resolver.ts ├── runner.ts ├── scanner.ts └── types.ts └── tsconfig.json /.eslintignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | /dist/ 3 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/.eslintrc -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "semi": false 3 | } 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/README.md -------------------------------------------------------------------------------- /bin/tslox.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | require('../dist/main') 4 | -------------------------------------------------------------------------------- /dist/ast.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/ast.js -------------------------------------------------------------------------------- /dist/color.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/color.js -------------------------------------------------------------------------------- /dist/error.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/error.js -------------------------------------------------------------------------------- /dist/interpreter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/interpreter.js -------------------------------------------------------------------------------- /dist/main.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/main.js -------------------------------------------------------------------------------- /dist/parser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/parser.js -------------------------------------------------------------------------------- /dist/resolver.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/resolver.js -------------------------------------------------------------------------------- /dist/runner.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/runner.js -------------------------------------------------------------------------------- /dist/scanner.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/scanner.js -------------------------------------------------------------------------------- /dist/types.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/dist/types.js -------------------------------------------------------------------------------- /examples/block-scope.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/block-scope.lox -------------------------------------------------------------------------------- /examples/class.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/class.lox -------------------------------------------------------------------------------- /examples/clock-fibonacci.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/clock-fibonacci.lox -------------------------------------------------------------------------------- /examples/control-flow.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/control-flow.lox -------------------------------------------------------------------------------- /examples/function.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/function.lox -------------------------------------------------------------------------------- /examples/global-variables.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/global-variables.lox -------------------------------------------------------------------------------- /examples/hello-world.lox: -------------------------------------------------------------------------------- 1 | print "Hello, world!"; 2 | -------------------------------------------------------------------------------- /examples/inheritance.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/inheritance.lox -------------------------------------------------------------------------------- /examples/resolving-and-binding.lox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/examples/resolving-and-binding.lox -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /src/ast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/ast.ts -------------------------------------------------------------------------------- /src/color.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/color.ts -------------------------------------------------------------------------------- /src/error.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/error.ts -------------------------------------------------------------------------------- /src/interpreter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/interpreter.ts -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/main.ts -------------------------------------------------------------------------------- /src/parser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/parser.ts -------------------------------------------------------------------------------- /src/resolver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/resolver.ts -------------------------------------------------------------------------------- /src/runner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/runner.ts -------------------------------------------------------------------------------- /src/scanner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/scanner.ts -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/src/types.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlliang/tslox/HEAD/tsconfig.json --------------------------------------------------------------------------------