https://github.com/arocks/punchscript
A programming language made up of Rajinikanth punch dialogues
https://github.com/arocks/punchscript
compiler interpreter menhir ocaml rajinikanth
Last synced: 4 months ago
JSON representation
A programming language made up of Rajinikanth punch dialogues
- Host: GitHub
- URL: https://github.com/arocks/punchscript
- Owner: arocks
- License: gpl-3.0
- Created: 2018-11-19T18:38:03.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-10-22T11:16:00.000Z (9 months ago)
- Last Synced: 2025-03-17T21:27:10.664Z (4 months ago)
- Topics: compiler, interpreter, menhir, ocaml, rajinikanth
- Language: JavaScript
- Size: 665 KB
- Stars: 18
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
![]()
# Punchscript
An imperative language made up of Rajinikanth punch dialogues. It currently supports only Integer data types.
Here is how Fizz Buzz in Punchscript looks like:

More examples are in the tests directory.
Try it here: [Online Interpreter](https://arunrocks.com/punchscript/)
Read more: [Blog post](https://arunrocks.com/punchscript-rajinikanth/) | [Language Specs](https://github.com/arocks/punchscript-specs)
## Installation
Latest stable version of OCaml (developed in version 4.06.0) should be obtained from opam.
Install menhir, js_of_ocaml and other dependencies
```
$ opam depext -i core merlin utop ocp-indent
$ opam depext -i menhir js_of_ocaml-compiler sedlex
$ opam depext -i js_of_ocaml js_of_ocaml-ppx js_of_ocaml-lwt
```Use the Makefile to build a release target producing the javascript file:
```
$ make release
```Go to the `web` directory and run any local web server, for e.g.:
```
$ python3 -m http.server
```You can also create OCaml bytecode executable for debug and testing:
```
$ make debug
```## License
GNU GPL ver 3. See the file COPYING for details.
(C) 2018 by Arun Ravindran