├── .cargo └── config ├── .dockerignore ├── .drone.yml ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── Dockerfile ├── LICENSE.txt ├── README.md ├── config.example.toml ├── generate_programs.sh ├── generate_tests.sh ├── index.html ├── rustfmt.toml ├── src ├── lib.rs ├── main.rs ├── programs │ ├── default_serve.bin │ ├── default_serve.txt │ ├── off.bin │ └── off.txt ├── pwlp │ ├── api.rs │ ├── ast.rs │ ├── client.rs │ ├── instructions.rs │ ├── mod.rs │ ├── parser.rs │ ├── program.rs │ ├── protocol.rs │ ├── server.rs │ ├── strip.rs │ └── vm.rs └── test.rs └── test ├── blink.bin ├── blink.dis ├── blink.out ├── blink.txt ├── clamp.bin ├── clamp.dis ├── clamp.out ├── clamp.txt ├── clock.bin ├── clock.dis ├── clock.out ├── clock.txt ├── comment.bin ├── comment.dis ├── comment.out ├── comment.txt ├── cycle.bin ├── cycle.dis ├── cycle.out ├── cycle.txt ├── intrinsics.bin ├── intrinsics.dis ├── intrinsics.out ├── intrinsics.txt ├── level_in_parameter.bin ├── level_in_parameter.dis ├── level_in_parameter.out ├── level_in_parameter.txt ├── loop.bin ├── loop.dis ├── loop.out ├── loop.txt ├── program.bin ├── program.dis ├── program.out ├── program.txt ├── rainbow.bin ├── rainbow.dis ├── rainbow.out ├── rainbow.txt ├── random.bin ├── random.dis ├── random.out ├── random.txt ├── random_inc.bin ├── random_inc.dis ├── random_inc.out ├── random_inc.txt ├── random_life.bin ├── random_life.dis ├── random_life.out ├── random_life.txt ├── set_all.bin ├── set_all.dis ├── set_all.out ├── set_all.txt ├── set_pixel.bin ├── set_pixel.dis ├── set_pixel.out ├── set_pixel.txt ├── set_single.bin ├── set_single.dis ├── set_single.out ├── set_single.txt ├── shifts.bin ├── shifts.dis ├── shifts.out ├── shifts.txt ├── stack_size_in_loop.bin ├── stack_size_in_loop.dis ├── stack_size_in_loop.out ├── stack_size_in_loop.txt ├── variable.bin ├── variable.dis ├── variable.out └── variable.txt /.cargo/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/.cargo/config -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | target/ 2 | 3 | -------------------------------------------------------------------------------- /.drone.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/.drone.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | **/*.rs.bk 3 | /config.toml -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/Cargo.toml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/README.md -------------------------------------------------------------------------------- /config.example.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/config.example.toml -------------------------------------------------------------------------------- /generate_programs.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/generate_programs.sh -------------------------------------------------------------------------------- /generate_tests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/generate_tests.sh -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/index.html -------------------------------------------------------------------------------- /rustfmt.toml: -------------------------------------------------------------------------------- 1 | hard_tabs=true 2 | 3 | -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/main.rs -------------------------------------------------------------------------------- /src/programs/default_serve.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/programs/default_serve.bin -------------------------------------------------------------------------------- /src/programs/default_serve.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/programs/default_serve.txt -------------------------------------------------------------------------------- /src/programs/off.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/programs/off.bin -------------------------------------------------------------------------------- /src/programs/off.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/programs/off.txt -------------------------------------------------------------------------------- /src/pwlp/api.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/api.rs -------------------------------------------------------------------------------- /src/pwlp/ast.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/ast.rs -------------------------------------------------------------------------------- /src/pwlp/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/client.rs -------------------------------------------------------------------------------- /src/pwlp/instructions.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/instructions.rs -------------------------------------------------------------------------------- /src/pwlp/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/mod.rs -------------------------------------------------------------------------------- /src/pwlp/parser.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/parser.rs -------------------------------------------------------------------------------- /src/pwlp/program.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/program.rs -------------------------------------------------------------------------------- /src/pwlp/protocol.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/protocol.rs -------------------------------------------------------------------------------- /src/pwlp/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/server.rs -------------------------------------------------------------------------------- /src/pwlp/strip.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/strip.rs -------------------------------------------------------------------------------- /src/pwlp/vm.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/pwlp/vm.rs -------------------------------------------------------------------------------- /src/test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/src/test.rs -------------------------------------------------------------------------------- /test/blink.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/blink.bin -------------------------------------------------------------------------------- /test/blink.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/blink.dis -------------------------------------------------------------------------------- /test/blink.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/blink.out -------------------------------------------------------------------------------- /test/blink.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/blink.txt -------------------------------------------------------------------------------- /test/clamp.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clamp.bin -------------------------------------------------------------------------------- /test/clamp.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clamp.dis -------------------------------------------------------------------------------- /test/clamp.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clamp.out -------------------------------------------------------------------------------- /test/clamp.txt: -------------------------------------------------------------------------------- 1 | a=20; 2 | set_pixel(1, clamp(a, 0, 10), a, a); 3 | blit; -------------------------------------------------------------------------------- /test/clock.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clock.bin -------------------------------------------------------------------------------- /test/clock.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clock.dis -------------------------------------------------------------------------------- /test/clock.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clock.out -------------------------------------------------------------------------------- /test/clock.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/clock.txt -------------------------------------------------------------------------------- /test/comment.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/comment.bin -------------------------------------------------------------------------------- /test/comment.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/comment.dis -------------------------------------------------------------------------------- /test/comment.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/comment.out -------------------------------------------------------------------------------- /test/comment.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/comment.txt -------------------------------------------------------------------------------- /test/cycle.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/cycle.bin -------------------------------------------------------------------------------- /test/cycle.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/cycle.dis -------------------------------------------------------------------------------- /test/cycle.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/cycle.out -------------------------------------------------------------------------------- /test/cycle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/cycle.txt -------------------------------------------------------------------------------- /test/intrinsics.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/intrinsics.bin -------------------------------------------------------------------------------- /test/intrinsics.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/intrinsics.dis -------------------------------------------------------------------------------- /test/intrinsics.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/intrinsics.out -------------------------------------------------------------------------------- /test/intrinsics.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/intrinsics.txt -------------------------------------------------------------------------------- /test/level_in_parameter.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/level_in_parameter.bin -------------------------------------------------------------------------------- /test/level_in_parameter.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/level_in_parameter.dis -------------------------------------------------------------------------------- /test/level_in_parameter.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/level_in_parameter.out -------------------------------------------------------------------------------- /test/level_in_parameter.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/level_in_parameter.txt -------------------------------------------------------------------------------- /test/loop.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/loop.bin -------------------------------------------------------------------------------- /test/loop.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/loop.dis -------------------------------------------------------------------------------- /test/loop.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/loop.out -------------------------------------------------------------------------------- /test/loop.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/loop.txt -------------------------------------------------------------------------------- /test/program.bin: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /test/program.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/program.dis -------------------------------------------------------------------------------- /test/program.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/program.txt: -------------------------------------------------------------------------------- 1 | 1+2+3 -------------------------------------------------------------------------------- /test/rainbow.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/rainbow.bin -------------------------------------------------------------------------------- /test/rainbow.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/rainbow.dis -------------------------------------------------------------------------------- /test/rainbow.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/rainbow.out -------------------------------------------------------------------------------- /test/rainbow.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/rainbow.txt -------------------------------------------------------------------------------- /test/random.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random.bin -------------------------------------------------------------------------------- /test/random.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random.dis -------------------------------------------------------------------------------- /test/random.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random.out -------------------------------------------------------------------------------- /test/random.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random.txt -------------------------------------------------------------------------------- /test/random_inc.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_inc.bin -------------------------------------------------------------------------------- /test/random_inc.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_inc.dis -------------------------------------------------------------------------------- /test/random_inc.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_inc.out -------------------------------------------------------------------------------- /test/random_inc.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_inc.txt -------------------------------------------------------------------------------- /test/random_life.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_life.bin -------------------------------------------------------------------------------- /test/random_life.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_life.dis -------------------------------------------------------------------------------- /test/random_life.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_life.out -------------------------------------------------------------------------------- /test/random_life.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/random_life.txt -------------------------------------------------------------------------------- /test/set_all.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/set_all.bin -------------------------------------------------------------------------------- /test/set_all.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/set_all.dis -------------------------------------------------------------------------------- /test/set_all.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/set_all.out -------------------------------------------------------------------------------- /test/set_all.txt: -------------------------------------------------------------------------------- 1 | for(n=get_length){ 2 | set_pixel(n-1,255,0,0) 3 | }; 4 | blit; -------------------------------------------------------------------------------- /test/set_pixel.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/set_pixel.bin -------------------------------------------------------------------------------- /test/set_pixel.dis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pixelspark/pwlp/HEAD/test/set_pixel.dis -------------------------------------------------------------------------------- /test/set_pixel.out: -------------------------------------------------------------------------------- 1 | 30