Browse Source

Fix import paths

master
James Mills 3 months ago
parent
commit
c58de88d90
Signed by: prologic GPG Key ID: AC4C014F1440EBD6
  1. 10
      .github/workflows/greetings.yml
  2. 16
      README.md
  3. 110
      ReadingGuide.md
  4. 2
      ast/ast.go
  5. 2
      ast/ast_test.go
  6. 4
      builtins/abs.go
  7. 4
      builtins/accept.go
  8. 4
      builtins/args.go
  9. 4
      builtins/assert.go
  10. 4
      builtins/bin.go
  11. 4
      builtins/bind.go
  12. 4
      builtins/bool.go
  13. 2
      builtins/builtins.go
  14. 4
      builtins/chr.go
  15. 4
      builtins/close.go
  16. 4
      builtins/connect.go
  17. 4
      builtins/divmod.go
  18. 4
      builtins/exit.go
  19. 4
      builtins/ffi.go
  20. 4
      builtins/find.go
  21. 4
      builtins/first.go
  22. 4
      builtins/hash.go
  23. 4
      builtins/hex.go
  24. 4
      builtins/id.go
  25. 4
      builtins/input.go
  26. 4
      builtins/int.go
  27. 4
      builtins/join.go
  28. 4
      builtins/last.go
  29. 4
      builtins/len.go
  30. 4
      builtins/listen.go
  31. 4
      builtins/lower.go
  32. 4
      builtins/max.go
  33. 4
      builtins/min.go
  34. 4
      builtins/oct.go
  35. 4
      builtins/open.go
  36. 4
      builtins/ord.go
  37. 4
      builtins/pop.go
  38. 4
      builtins/pow.go
  39. 4
      builtins/print.go
  40. 4
      builtins/push.go
  41. 4
      builtins/read.go
  42. 4
      builtins/readfile.go
  43. 4
      builtins/rest.go
  44. 4
      builtins/reversed.go
  45. 4
      builtins/seek.go
  46. 4
      builtins/socket.go
  47. 4
      builtins/sorted.go
  48. 4
      builtins/split.go
  49. 4
      builtins/str.go
  50. 4
      builtins/typeof.go
  51. 4
      builtins/upper.go
  52. 4
      builtins/write.go
  53. 4
      builtins/writefile.go
  54. 8
      compiler/compiler.go
  55. 10
      compiler/compiler_test.go
  56. 12
      eval/eval.go
  57. 8
      eval/eval_test.go
  58. 2
      go.mod
  59. 2
      lexer/lexer.go
  60. 2
      lexer/lexer_test.go
  61. 10
      main.go
  62. 2
      object/closure.go
  63. 2
      object/function.go
  64. 6
      parser/parser.go
  65. 4
      parser/parser_test.go
  66. 2
      plugins/hello.go
  67. 12
      repl/repl.go
  68. 2
      typing/typing.go
  69. 4
      vm/frame.go
  70. 14
      vm/vm.go
  71. 12
      vm/vm_test.go

10
.github/workflows/greetings.yml

@ -12,8 +12,8 @@ jobs:
Welcome to the Monkey Lang project! Someone will respond to your issue pretty quickly,
the author is pretty responsive 😀 In the meantime; please make sure you have read
the [Contributing](https://github.com/prologic/monkey-lang/blob/master/CONTRIBUTING.md)
and [Code of Conduct](https://github.com/prologic/monkey-lang/blob/master/CODE_OF_CONDUCT.md)
the [Contributing](https://git.mills.io/prologic/monkey-lang/blob/master/CONTRIBUTING.md)
and [Code of Conduct](https://git.mills.io/prologic/monkey-lang/blob/master/CODE_OF_CONDUCT.md)
documents.
if possible please also make sure your Bug Report or Feature Request is clearly defined
@ -28,15 +28,15 @@ jobs:
Thank you for your Pull Request and Contribution! We highly value all contributions to this Project!
Your Pull Request will be reviewed shortly! The author is pretty responsive 😀
In the meantime; please make sure you have read
the [Contributing](https://github.com/prologic/monkey-lang/blob/master/CONTRIBUTING.md)
and [Code of Conduct](https://github.com/prologic/monkey-lang/blob/master/CODE_OF_CONDUCT.md)
the [Contributing](https://git.mills.io/prologic/monkey-lang/blob/master/CONTRIBUTING.md)
and [Code of Conduct](https://git.mills.io/prologic/monkey-lang/blob/master/CODE_OF_CONDUCT.md)
documents.
Please also ensure that your PR passes all the CI/CD tests -- They will appear in your PR
towards the bottom just above the comment box.
Also in addition, if you haven't already; please ammend your PR by modifying the
[AUTHORS](https://github.com/prologic/monkey-lang/blob/master/AUTHORS) file and adding
[AUTHORS](https://git.mills.io/prologic/monkey-lang/blob/master/AUTHORS) file and adding
yourself to it! We like to recognize and peserve in Git history all contributors!
Thank you 😃

16
README.md

@ -1,14 +1,14 @@
# monkey-lang
![](https://github.com/prologic/monkey-lang/workflows/Coverage/badge.svg)
![](https://github.com/prologic/monkey-lang/workflows/Docker/badge.svg)
![](https://github.com/prologic/monkey-lang/workflows/Go/badge.svg)
![](https://github.com/prologic/monkey-lang/workflows/ReviewDog/badge.svg)
![](https://git.mills.io/prologic/monkey-lang/workflows/Coverage/badge.svg)
![](https://git.mills.io/prologic/monkey-lang/workflows/Docker/badge.svg)
![](https://git.mills.io/prologic/monkey-lang/workflows/Go/badge.svg)
![](https://git.mills.io/prologic/monkey-lang/workflows/ReviewDog/badge.svg)
[![CodeCov](https://codecov.io/gh/prologic/monkey-lang/branch/master/graph/badge.svg)](https://codecov.io/gh/prologic/monkey-lang)
[![Go Report Card](https://goreportcard.com/badge/prologic/monkey-lang)](https://goreportcard.com/report/prologic/monkey-lang)
[![GoDoc](https://godoc.org/github.com/prologic/monkey-lang?status.svg)](https://godoc.org/github.com/prologic/monkey-lang)
[![Sourcegraph](https://sourcegraph.com/github.com/prologic/monkey-lang/-/badge.svg)](https://sourcegraph.com/github.com/prologic/monkey-lang?badge)
[![GoDoc](https://godoc.org/git.mills.io/prologic/monkey-lang?status.svg)](https://godoc.org/git.mills.io/prologic/monkey-lang)
[![Sourcegraph](https://sourcegraph.com/git.mills.io/prologic/monkey-lang/-/badge.svg)](https://sourcegraph.com/git.mills.io/prologic/monkey-lang?badge)
Monkey programming language interpreter designed in [_Writing An Interpreter In Go_](https://interpreterbook.com/).
A step-by-step walk-through where each commit is a fully working part.
@ -58,7 +58,7 @@ See: [Reading Guide](./ReadingGuide.md)
## Quick start
```#!sh
$ go get github.com/prologic/monkey-lang
$ go get git.mills.io/prologic/monkey-lang
$ monkey-lang
```
@ -67,7 +67,7 @@ $ monkey-lang
To build run `make`.
```#!sh
$ git clone https://github.com/prologic/monkey-lang
$ git clone https://git.mills.io/prologic/monkey-lang
$ monkey-lang
$ make
This is the Monkey programming language!

110
ReadingGuide.md

@ -2,64 +2,64 @@
## Writing an Interpreter in Go
* [1.2 Tokens 2018-10-30](https://github.com/prologic/monkey-lang/commit/3320dc452dfb30648f03c96711e27a06d63935ac)
* [1.3 Lexer (basic) 2018-10-31](https://github.com/prologic/monkey-lang/commit/538995df8daac46dc4b1386074a3b9ce418b966e)
* [1.4 Lexer (extended) 2018-10-31](https://github.com/prologic/monkey-lang/commit/462dab0218b5d429071c9d72fe9bd1df0b53c581)
* [1.5 REPL (basic) 2018-10-31](https://github.com/prologic/monkey-lang/commit/4ff40960166dedcc1b6f6d52ecf969478cf0ba1c)
* [2.4 Parser (basic) 2018-11-04](https://github.com/prologic/monkey-lang/commit/6c466b8d7c19fa158f0e5c2f421b633d9332f016)
* [2.4 Parser (error handling) 2018-11-04](https://github.com/prologic/monkey-lang/commit/aa417967d4d6a36cba2c8990ec7b7032cf49c15c)
* [2.5 Parser (return) 2018-11-07](https://github.com/prologic/monkey-lang/commit/ec367c732413d69751be5e0d91dfca904c0b221e)
* [2.6 Pratt Parser (prefix) 2018-11-08](https://github.com/prologic/monkey-lang/commit/6bab31d2f5b8f84e509c5929edb7d8874d74484c)
* [2.6 Pratt Parser (infix) 2018-11-10](https://github.com/prologic/monkey-lang/commit/84d767208af02180ce1167503b652724a1030bda)
* [2.8 Parser tracing 2018-11-11](https://github.com/prologic/monkey-lang/commit/74142f10091e69c80b332d26e698b92bed9d074b)
* [2.8 Parser (extended) 2018-11-12](https://github.com/prologic/monkey-lang/commit/24e04e54d1ed613ea9a53ee196fa19604e588a76)
* [2.9 REPL (read-parse-print-loop) 2018-11-12](https://github.com/prologic/monkey-lang/commit/877476e35cb4d7a47ae3752a2be109c532423533)
* [3.4 Evaluation (Object System) 2018-11-12](https://github.com/prologic/monkey-lang/commit/ed682462d565dd77fc780493f5d786c6095b404c)
* [3.5 Evaluation (basic) 2018-11-12](https://github.com/prologic/monkey-lang/commit/981a7c45a406f9321eb0b26d90c8483132fe4799)
* [3.5 REPL (complee) 2018-11-12](https://github.com/prologic/monkey-lang/commit/1f10ca5192182a3dea7766383f651575823dc2b3)
* [3.5 Evaluation (literals) 2018-11-12](https://github.com/prologic/monkey-lang/commit/4f04664e63a4c999cd7af3a6ff99f50c03530124)
* [3.5 Evaluation (prefix expressions) 2018-11-12](https://github.com/prologic/monkey-lang/commit/9d4a941cbcf432444b6c50802450705be0a7307f)
* [3.5 Evaluation (infix expressions) 2018-11-12](https://github.com/prologic/monkey-lang/commit/69831466458a73e913da87a99948e62c867a641c)
* [3.6 Evaluation (conditionals) 2018-11-12](https://github.com/prologic/monkey-lang/commit/c8cb0ba556888338f4fec623a6b88b3d841e3a3a)
* [3.7 Evaluation (return statements) 2018-11-12](https://github.com/prologic/monkey-lang/commit/ed7c3883d75b264dab37ea41ef590fd0a1c214fc)
* [3.8 Evaluation (error handling) 2018-11-12](https://github.com/prologic/monkey-lang/commit/bcfe39891874d00b70289e35cbdf16cf9a76b0c3)
* [3.9 Evaluation (bindings and environment) 2018-11-12](https://github.com/prologic/monkey-lang/commit/8dcff4c24a5ac75c87b049c0f60ff51e7c40732a)
* [3.10 Evaluation (functions and call expressions) 2018-11-12](https://github.com/prologic/monkey-lang/commit/f1e8bb2e6a19e795f8405e67a9d3c9541427c64e)
* [4.2 Data Types (strings) 2018-11-12](https://github.com/prologic/monkey-lang/commit/3180a5753586afef839f5a3343938d1d249552fc)
* [4.2 Data Types (string concatentation) 2018-11-12](https://github.com/prologic/monkey-lang/commit/7915100ee876557f179e2e76d73d77376419224a)
* [4.3 Builtins (len) 2018-11-12](https://github.com/prologic/monkey-lang/commit/a84658da092ef003a420a7c8e5a9edddf121bbd8)
* [4.4 Arrays (parsing array literals) 2018-11-12](https://github.com/prologic/monkey-lang/commit/795afaca9538cb8fe8ca330451a2c82157837c0f)
* [4.4 Arrays (index operator expressions) 2018-11-12](https://github.com/prologic/monkey-lang/commit/350e73cbf5bb0296d16ae3dbbd92c3e552b4efc6)
* [4.4 Arrays (evaluating array literals) 2018-11-12](https://github.com/prologic/monkey-lang/commit/cf6563386008f09841baae418c2a7752f6ca9cfa)
* [4.4 Arrays (indexing) 2018-11-12](https://github.com/prologic/monkey-lang/commit/fc0cbe5cb8e7aed35db1067b0e778b36799dd973)
* [4.4 Arrays (more builtins) 2018-11-12](https://github.com/prologic/monkey-lang/commit/7ccbb41ab5422f5701fa15904c1d92d4dafad251)
* [4.5 Hash Maps 2018-11-12](https://github.com/prologic/monkey-lang/commit/11a9b81d83928de4fe08af86a3a15e227baca388)
* [4.6 Hello World 2018-11-13](https://github.com/prologic/monkey-lang/commit/ea753dee534fc33900db4b5ab7c9d93fc4e48176)
* [1.2 Tokens 2018-10-30](https://git.mills.io/prologic/monkey-lang/commit/3320dc452dfb30648f03c96711e27a06d63935ac)
* [1.3 Lexer (basic) 2018-10-31](https://git.mills.io/prologic/monkey-lang/commit/538995df8daac46dc4b1386074a3b9ce418b966e)
* [1.4 Lexer (extended) 2018-10-31](https://git.mills.io/prologic/monkey-lang/commit/462dab0218b5d429071c9d72fe9bd1df0b53c581)
* [1.5 REPL (basic) 2018-10-31](https://git.mills.io/prologic/monkey-lang/commit/4ff40960166dedcc1b6f6d52ecf969478cf0ba1c)
* [2.4 Parser (basic) 2018-11-04](https://git.mills.io/prologic/monkey-lang/commit/6c466b8d7c19fa158f0e5c2f421b633d9332f016)
* [2.4 Parser (error handling) 2018-11-04](https://git.mills.io/prologic/monkey-lang/commit/aa417967d4d6a36cba2c8990ec7b7032cf49c15c)
* [2.5 Parser (return) 2018-11-07](https://git.mills.io/prologic/monkey-lang/commit/ec367c732413d69751be5e0d91dfca904c0b221e)
* [2.6 Pratt Parser (prefix) 2018-11-08](https://git.mills.io/prologic/monkey-lang/commit/6bab31d2f5b8f84e509c5929edb7d8874d74484c)
* [2.6 Pratt Parser (infix) 2018-11-10](https://git.mills.io/prologic/monkey-lang/commit/84d767208af02180ce1167503b652724a1030bda)
* [2.8 Parser tracing 2018-11-11](https://git.mills.io/prologic/monkey-lang/commit/74142f10091e69c80b332d26e698b92bed9d074b)
* [2.8 Parser (extended) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/24e04e54d1ed613ea9a53ee196fa19604e588a76)
* [2.9 REPL (read-parse-print-loop) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/877476e35cb4d7a47ae3752a2be109c532423533)
* [3.4 Evaluation (Object System) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/ed682462d565dd77fc780493f5d786c6095b404c)
* [3.5 Evaluation (basic) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/981a7c45a406f9321eb0b26d90c8483132fe4799)
* [3.5 REPL (complee) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/1f10ca5192182a3dea7766383f651575823dc2b3)
* [3.5 Evaluation (literals) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/4f04664e63a4c999cd7af3a6ff99f50c03530124)
* [3.5 Evaluation (prefix expressions) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/9d4a941cbcf432444b6c50802450705be0a7307f)
* [3.5 Evaluation (infix expressions) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/69831466458a73e913da87a99948e62c867a641c)
* [3.6 Evaluation (conditionals) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/c8cb0ba556888338f4fec623a6b88b3d841e3a3a)
* [3.7 Evaluation (return statements) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/ed7c3883d75b264dab37ea41ef590fd0a1c214fc)
* [3.8 Evaluation (error handling) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/bcfe39891874d00b70289e35cbdf16cf9a76b0c3)
* [3.9 Evaluation (bindings and environment) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/8dcff4c24a5ac75c87b049c0f60ff51e7c40732a)
* [3.10 Evaluation (functions and call expressions) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/f1e8bb2e6a19e795f8405e67a9d3c9541427c64e)
* [4.2 Data Types (strings) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/3180a5753586afef839f5a3343938d1d249552fc)
* [4.2 Data Types (string concatentation) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/7915100ee876557f179e2e76d73d77376419224a)
* [4.3 Builtins (len) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/a84658da092ef003a420a7c8e5a9edddf121bbd8)
* [4.4 Arrays (parsing array literals) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/795afaca9538cb8fe8ca330451a2c82157837c0f)
* [4.4 Arrays (index operator expressions) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/350e73cbf5bb0296d16ae3dbbd92c3e552b4efc6)
* [4.4 Arrays (evaluating array literals) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/cf6563386008f09841baae418c2a7752f6ca9cfa)
* [4.4 Arrays (indexing) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/fc0cbe5cb8e7aed35db1067b0e778b36799dd973)
* [4.4 Arrays (more builtins) 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/7ccbb41ab5422f5701fa15904c1d92d4dafad251)
* [4.5 Hash Maps 2018-11-12](https://git.mills.io/prologic/monkey-lang/commit/11a9b81d83928de4fe08af86a3a15e227baca388)
* [4.6 Hello World 2018-11-13](https://git.mills.io/prologic/monkey-lang/commit/ea753dee534fc33900db4b5ab7c9d93fc4e48176)
## Writing a Compiler in Go
* [Hello Bytecode - First instructions 2019-01-27](https://github.com/prologic/monkey-lang/commit/2c1639631e6b7a6baa20062b93c52e2f32a94c49)
* [Hello Bytecode - Adding on the stack 2019-01-27](https://github.com/prologic/monkey-lang/commit/e5674fcd0522fef351d30b357f34627748764ed3)
* [Hello Bytecode - Hooking up the REPL 2019-01-27](https://github.com/prologic/monkey-lang/commit/1379285101d4b386106b578b2f09c200bf315aaa)
* [Compiling Expressions - Cleaning up the stack 2019-01-27](https://github.com/prologic/monkey-lang/commit/91a40896ba77e6776014a0373f9c2ac49d33777d)
* [Compiling Expressions - Infix Expressions 2019-01-27](https://github.com/prologic/monkey-lang/commit/c8ffcd8d2553a1ee3fb9790f774bfd3ce7ca0774)
* [Compiling Expressions - Booleans 2019-01-28](https://github.com/prologic/monkey-lang/commit/dba40ebe9f72bc52eaab83734574d1219101c8a4)
* [Compiling Expressions - Comparision Operators 2019-01-28](https://github.com/prologic/monkey-lang/commit/74323b1266b3b233e8e9dca9b6ce489649699fd1)
* [Compiling Expressions - Prefix Expressions 2019-01-28](https://github.com/prologic/monkey-lang/commit/b6426073352db726e2ab2a2d94706d0f4a03ad67)
* [Conditionals 2019-01-28](https://github.com/prologic/monkey-lang/commit/4dff8b7a19030ea608cfa61e917e8cb9fad0f0d4)
* [Keeping track of names 2019-01-28](https://github.com/prologic/monkey-lang/commit/5622b5626ee07f79daf579b375fccb41eba7a2ed)
* [String, Array, Hash - Strings 2019-01-28](https://github.com/prologic/monkey-lang/commit/8f49b0ad73a2871a889679c6004897818dd7202e)
* [String, Array, Hash - Arrays 2019-01-28](https://github.com/prologic/monkey-lang/commit/b1a6828d3334054134cdf9a25cf52b406512b373)
* [String, Array, Hash - Hashes 2019-01-28](https://github.com/prologic/monkey-lang/commit/091c0792c4c39e1fb4bdaf8b002a6e6b0f857889)
* [String, Array, Hash - Adding the index operator 2019-01-28](https://github.com/prologic/monkey-lang/commit/24b03b4e4776bd7c839a12b6cae79467e4f0faf5)
* [Functions - a Simple Function 2019-01-29](https://github.com/prologic/monkey-lang/commit/f7a2b1e14cce94f70d3b2dfdbc79fc1c89122066)
* [Functions - Local Bindings 2019-01-29](https://github.com/prologic/monkey-lang/commit/3cc222e9118ee8e9f370040efb9d51e36b6d8555)
* [Functions - Arguments 2019-01-29](https://github.com/prologic/monkey-lang/commit/eda6ccf4162b9d8c652af9f28f0861a7de1dae87)
* [Builtin Functions - Refactoring 2019-01-29](https://github.com/prologic/monkey-lang/commit/e047f6fdf843b9eb752304736ec6eceb20d376b0)
* [Builtin Functions - Builtins 2019-01-29](https://github.com/prologic/monkey-lang/commit/6999e937fff5a497eefc2145672677f66ca1a425)
* [CLosures - Everything is a closure 2019-01-30](https://github.com/prologic/monkey-lang/commit/01c086901a223a0641610c2f26c7c16580f118b2)
* [Closures - Creating real closures at runtime 2019-01-30](https://github.com/prologic/monkey-lang/commit/4d096f9381f0833dae6a840b4f2640b0428b0cc3)
* [Fixed recursive function lookups 2019-01-30](https://github.com/prologic/monkey-lang/commit/4275fea6de8c65df441e0b055f8665500970afc5)
* [Hello Bytecode - First instructions 2019-01-27](https://git.mills.io/prologic/monkey-lang/commit/2c1639631e6b7a6baa20062b93c52e2f32a94c49)
* [Hello Bytecode - Adding on the stack 2019-01-27](https://git.mills.io/prologic/monkey-lang/commit/e5674fcd0522fef351d30b357f34627748764ed3)
* [Hello Bytecode - Hooking up the REPL 2019-01-27](https://git.mills.io/prologic/monkey-lang/commit/1379285101d4b386106b578b2f09c200bf315aaa)
* [Compiling Expressions - Cleaning up the stack 2019-01-27](https://git.mills.io/prologic/monkey-lang/commit/91a40896ba77e6776014a0373f9c2ac49d33777d)
* [Compiling Expressions - Infix Expressions 2019-01-27](https://git.mills.io/prologic/monkey-lang/commit/c8ffcd8d2553a1ee3fb9790f774bfd3ce7ca0774)
* [Compiling Expressions - Booleans 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/dba40ebe9f72bc52eaab83734574d1219101c8a4)
* [Compiling Expressions - Comparision Operators 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/74323b1266b3b233e8e9dca9b6ce489649699fd1)
* [Compiling Expressions - Prefix Expressions 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/b6426073352db726e2ab2a2d94706d0f4a03ad67)
* [Conditionals 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/4dff8b7a19030ea608cfa61e917e8cb9fad0f0d4)
* [Keeping track of names 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/5622b5626ee07f79daf579b375fccb41eba7a2ed)
* [String, Array, Hash - Strings 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/8f49b0ad73a2871a889679c6004897818dd7202e)
* [String, Array, Hash - Arrays 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/b1a6828d3334054134cdf9a25cf52b406512b373)
* [String, Array, Hash - Hashes 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/091c0792c4c39e1fb4bdaf8b002a6e6b0f857889)
* [String, Array, Hash - Adding the index operator 2019-01-28](https://git.mills.io/prologic/monkey-lang/commit/24b03b4e4776bd7c839a12b6cae79467e4f0faf5)
* [Functions - a Simple Function 2019-01-29](https://git.mills.io/prologic/monkey-lang/commit/f7a2b1e14cce94f70d3b2dfdbc79fc1c89122066)
* [Functions - Local Bindings 2019-01-29](https://git.mills.io/prologic/monkey-lang/commit/3cc222e9118ee8e9f370040efb9d51e36b6d8555)
* [Functions - Arguments 2019-01-29](https://git.mills.io/prologic/monkey-lang/commit/eda6ccf4162b9d8c652af9f28f0861a7de1dae87)
* [Builtin Functions - Refactoring 2019-01-29](https://git.mills.io/prologic/monkey-lang/commit/e047f6fdf843b9eb752304736ec6eceb20d376b0)
* [Builtin Functions - Builtins 2019-01-29](https://git.mills.io/prologic/monkey-lang/commit/6999e937fff5a497eefc2145672677f66ca1a425)
* [CLosures - Everything is a closure 2019-01-30](https://git.mills.io/prologic/monkey-lang/commit/01c086901a223a0641610c2f26c7c16580f118b2)
* [Closures - Creating real closures at runtime 2019-01-30](https://git.mills.io/prologic/monkey-lang/commit/4d096f9381f0833dae6a840b4f2640b0428b0cc3)
* [Fixed recursive function lookups 2019-01-30](https://git.mills.io/prologic/monkey-lang/commit/4275fea6de8c65df441e0b055f8665500970afc5)
## Buy the Books :D

2
ast/ast.go

@ -8,7 +8,7 @@ import (
"fmt"
"strings"
"github.com/prologic/monkey-lang/token"
"git.mills.io/prologic/monkey-lang/token"
)
// Node defines an interface for all nodes in the AST.

2
ast/ast_test.go

@ -5,7 +5,7 @@ import (
"github.com/stretchr/testify/assert"
"github.com/prologic/monkey-lang/token"
"git.mills.io/prologic/monkey-lang/token"
)
func TestString(t *testing.T) {

4
builtins/abs.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Abs ...

4
builtins/accept.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Accept ...

4
builtins/args.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Args ...

4
builtins/assert.go

@ -4,8 +4,8 @@ import (
"fmt"
"os"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Assert ...

4
builtins/bin.go

@ -4,8 +4,8 @@ import (
"fmt"
"strconv"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Bin ...

4
builtins/bind.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Bind ...

4
builtins/bool.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Bool ...

2
builtins/builtins.go

@ -4,7 +4,7 @@ import (
"fmt"
"sort"
. "github.com/prologic/monkey-lang/object"
. "git.mills.io/prologic/monkey-lang/object"
)
// Builtins ...

4
builtins/chr.go

@ -3,8 +3,8 @@ package builtins
import (
"fmt"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Chr ...

4
builtins/close.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Close ...

4
builtins/connect.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Connect ...

4
builtins/divmod.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Divmod ...

4
builtins/exit.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Exit ...

4
builtins/ffi.go

@ -4,8 +4,8 @@ import (
"fmt"
"plugin"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// FFI ...

4
builtins/find.go

@ -4,8 +4,8 @@ import (
"sort"
"strings"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Find ...

4
builtins/first.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// First ...

4
builtins/hash.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// HashOf ...

4
builtins/hex.go

@ -4,8 +4,8 @@ import (
"fmt"
"strconv"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Hex ...

4
builtins/id.go

@ -3,8 +3,8 @@ package builtins
import (
"fmt"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// IdOf ...

4
builtins/input.go

@ -6,8 +6,8 @@ import (
"io"
"os"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Input ...

4
builtins/int.go

@ -3,8 +3,8 @@ package builtins
import (
"strconv"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Int ...

4
builtins/join.go

@ -3,8 +3,8 @@ package builtins
import (
"strings"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Join ...

4
builtins/last.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Last ...

4
builtins/len.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Len ...

4
builtins/listen.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Listen ...

4
builtins/lower.go

@ -3,8 +3,8 @@ package builtins
import (
"strings"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Lower ...

4
builtins/max.go

@ -3,8 +3,8 @@ package builtins
import (
"sort"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Max ...

4
builtins/min.go

@ -3,8 +3,8 @@ package builtins
import (
"sort"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Min ...

4
builtins/oct.go

@ -4,8 +4,8 @@ import (
"fmt"
"strconv"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Oct ...

4
builtins/open.go

@ -5,8 +5,8 @@ import (
"os"
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
func parseMode(mode string) (int, error) {

4
builtins/ord.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Ord ...

4
builtins/pop.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Pop ...

4
builtins/pow.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
func pow(x, y int64) int64 {

4
builtins/print.go

@ -3,8 +3,8 @@ package builtins
import (
"fmt"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Print ...

4
builtins/push.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Push ...

4
builtins/read.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// DefaultBufferSize is the default buffer size

4
builtins/readfile.go

@ -3,8 +3,8 @@ package builtins
import (
"io/ioutil"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// ReadFile ...

4
builtins/rest.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Rest ...

4
builtins/reversed.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Reversed ...

4
builtins/seek.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Seek ...

4
builtins/socket.go

@ -4,8 +4,8 @@ import (
"strings"
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Socket ...

4
builtins/sorted.go

@ -3,8 +3,8 @@ package builtins
import (
"sort"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Sorted ...

4
builtins/split.go

@ -3,8 +3,8 @@ package builtins
import (
"strings"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Split ...

4
builtins/str.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Str ...

4
builtins/typeof.go

@ -1,8 +1,8 @@
package builtins
import (
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// TypeOf ...

4
builtins/upper.go

@ -3,8 +3,8 @@ package builtins
import (
"strings"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Upper ...

4
builtins/write.go

@ -3,8 +3,8 @@ package builtins
import (
"syscall"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// Write ...

4
builtins/writefile.go

@ -3,8 +3,8 @@ package builtins
import (
"io/ioutil"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/typing"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/typing"
)
// WriteFile ...

8
compiler/compiler.go

@ -9,10 +9,10 @@ import (
"sort"
"strings"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/builtins"
"github.com/prologic/monkey-lang/code"
"github.com/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/builtins"
"git.mills.io/prologic/monkey-lang/code"
"git.mills.io/prologic/monkey-lang/object"
)
type EmittedInstruction struct {

10
compiler/compiler_test.go

@ -6,11 +6,11 @@ import (
"github.com/stretchr/testify/assert"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/code"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/code"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
)
type Instructions string

12
eval/eval.go

@ -9,12 +9,12 @@ import (
"io/ioutil"
"strings"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/builtins"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/utils"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/builtins"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/utils"
)
var (

8
eval/eval_test.go

@ -8,10 +8,10 @@ import (
"github.com/stretchr/testify/assert"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/utils"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/utils"
)
func assertEvaluated(t *testing.T, expected interface{}, actual object.Object) {

2
go.mod

@ -1,4 +1,4 @@
module github.com/prologic/monkey-lang
module git.mills.io/prologic/monkey-lang
require github.com/stretchr/testify v1.7.0

2
lexer/lexer.go

@ -8,7 +8,7 @@ import (
"encoding/hex"
"strings"
"github.com/prologic/monkey-lang/token"
"git.mills.io/prologic/monkey-lang/token"
)
func isDigit(ch byte) bool {

2
lexer/lexer_test.go

@ -3,7 +3,7 @@ package lexer
import (
"testing"
"github.com/prologic/monkey-lang/token"
"git.mills.io/prologic/monkey-lang/token"
)
func TestNextToken(t *testing.T) {

10
main.go

@ -14,11 +14,11 @@ import (
"path"
"strings"
"github.com/prologic/monkey-lang/compiler"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/repl"
"git.mills.io/prologic/monkey-lang/compiler"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/repl"
)
var (

2
object/closure.go

@ -3,7 +3,7 @@ package object
import (
"fmt"
"github.com/prologic/monkey-lang/code"
"git.mills.io/prologic/monkey-lang/code"
)
// CompiledFunction is the compiled function type that holds the function's

2
object/function.go

@ -4,7 +4,7 @@ import (
"bytes"
"strings"
"github.com/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/ast"
)
// Function is the function type that holds the function's formal parameters,

6
parser/parser.go

@ -4,9 +4,9 @@ import (
"fmt"
"strconv"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/token"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/token"
)
const (

4
parser/parser_test.go

@ -6,8 +6,8 @@ import (
"github.com/stretchr/testify/assert"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/lexer"
)
func TestComments(t *testing.T) {

2
plugins/hello.go

@ -1,7 +1,7 @@
package main
import (
. "github.com/prologic/monkey-lang/object"
. "git.mills.io/prologic/monkey-lang/object"
)
// Hello ...

12
repl/repl.go

@ -11,12 +11,12 @@ import (
"log"
"os"
"github.com/prologic/monkey-lang/compiler"
"github.com/prologic/monkey-lang/eval"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/vm"
"git.mills.io/prologic/monkey-lang/compiler"
"git.mills.io/prologic/monkey-lang/eval"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/vm"
)
// PROMPT is the REPL prompt displayed for each input

2
typing/typing.go

@ -3,7 +3,7 @@ package typing
import (
"fmt"
"github.com/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/object"
)
type CheckFunc func(name string, args []object.Object) error

4
vm/frame.go

@ -1,8 +1,8 @@
package vm
import (
"github.com/prologic/monkey-lang/code"
"github.com/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/code"
"git.mills.io/prologic/monkey-lang/object"
)
type Frame struct {

14
vm/vm.go

@ -11,13 +11,13 @@ import (
"strings"
"unicode"
"github.com/prologic/monkey-lang/builtins"
"github.com/prologic/monkey-lang/code"
"github.com/prologic/monkey-lang/compiler"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/utils"
"git.mills.io/prologic/monkey-lang/builtins"
"git.mills.io/prologic/monkey-lang/code"
"git.mills.io/prologic/monkey-lang/compiler"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/utils"
)
const (

12
vm/vm_test.go

@ -8,12 +8,12 @@ import (
"strings"
"testing"
"github.com/prologic/monkey-lang/ast"
"github.com/prologic/monkey-lang/compiler"
"github.com/prologic/monkey-lang/lexer"
"github.com/prologic/monkey-lang/object"
"github.com/prologic/monkey-lang/parser"
"github.com/prologic/monkey-lang/utils"
"git.mills.io/prologic/monkey-lang/ast"
"git.mills.io/prologic/monkey-lang/compiler"
"git.mills.io/prologic/monkey-lang/lexer"
"git.mills.io/prologic/monkey-lang/object"
"git.mills.io/prologic/monkey-lang/parser"
"git.mills.io/prologic/monkey-lang/utils"
)
func parse(input string) *ast.Program {

Loading…
Cancel
Save