- C 54.1%
- Hare 20%
- Yacc 7.4%
- Swift 5.5%
- Brainfuck 4.2%
- Other 8.8%
| .github/workflows | ||
| examples | ||
| headers | ||
| HomebrewFormula | ||
| src | ||
| syntax-highlight-vscode | ||
| test | ||
| .gitignore | ||
| .linguist.yml | ||
| LICENSE | ||
| Makefile | ||
| problems.txt | ||
| README.md | ||
| valgrindline.txt | ||
Headache
Headache is a programming language that compiles to 8-Bit Brainfuck.
Documentation
For documentation, please visit Headache's wiki: https://github.com/LucasMW/Headache/wiki
Support Headache
Help Headache launch on Homebrew. This repository needs 50 stargazers to become a brew package.
Build
You may build the project by running make.
Install
Run make install and the include $HOME/.Headache/ in your PATH variable in order to enable hac and bfi in your shell.
Usage
Compiling headache (.ha) files
In order to compile headache (.ha) files to brainfuck, run:
./hac file.ha
It generates and executes a brainfuck file named a.bf.
Options
Lexical analyzer
To run a lexical analyzer, execute:
./hac -lex
Syntactical Analyzer
To run a syntactical analyzer, execute:
./hac -syntax
AST
To output the current program's AST, execute:
./hac -tree
Warning and errors checking
To check for errors and warnings without compiling, execute:
./hac -check
Tests
Execute make test to run the default tests.
Other test options
For testing only type checks, run:
make testchecks
For testing only the lexical scope, run:
make testlexical
For testing only the syntax scope, run:
make testsyntax
For testing only programs that are compiled and run successfully, run:
make testrunnable
Donation Addresses:
Support Headache with cryptocurrency:
BTC: 1NcdcAjkKj9ywiCfinwFi1W3QfsvFSFsAHDoge: D5wEBGcwLeBSQvwnBckco1EvQQcuXCBvRjLTC: Ldj6ax1CzdYFRbSiZjpCvcPoxQ2BvX42KbZEC: t1PsMPGuoZfD5YwAgmyd3j2cb8siysxR9fEDash: Xt7qYtLiLx6mHR1fUeQVYiHgEbX7YNugM2BCH: 1NCYSnFb44ybHtzwG51cUYWLa67PZdsREGXMR: 4CTKuktQ8eQFriMu3xDALEawuu9iWQhFYffgffqgC3RHCWgcLGTG9oyNWgvLiAoDPpYUvsJmRkTAudGSXNqnRFsuT9LNU3Up81F2x3fzkj