These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
-
Git - for downloading the repository.
Preferably with SSH access configured; see GitHub’s post about requiring tokens for git operations. You can set up SSH access using these instructions.
-
Node.js 12.19 and NPM 6.14 or newer - for running the code.
After you have a version of npm installed, I recommend using the
npackage to manage node/npm versions and updates. -
HWhile - For running WHILE programs
See Installing HWhile for a quick installation guide with solutions to some common issues.
-
Clone the repository:
Using SSH:
git clone https://github.com/sonrad10/hwhile-wrapperOr using a username/password:
git clone https://github.com/sonrad10/hwhile-wrapper -
Navigate into the cloned directory
cd hwhile-wrapper/ -
Optionally, switch to the development branch:
git checkout development -
Install the dependencies
npm install -
Run the tests
npm run test
-
The recommended install method is to use the Haskell Stack. On Linux, use the following command:
curl -sSL https://get.haskellstack.org/ | sh -
Run
stack init -
You should also make sure
~/.local/binis in your$PATHas this is where the installed programs will be placed.
If this is your first time installing HWhile, you may need to install the happy and alex packages:
stack install happy alexFinally, to install HWhile, run this command:
stack install --resolver=lts-8.0 hwhileUsing the default resolver causes dependency issues, which are not present with this version.
|
Note
|
Stack’s installed programs are removed from the path when you log out. If you get a command not found error, simply run this command again. |
This repository uses standard-version to maintain the version number. As such, commits should follow the Conventional Commits specification.
Any changes should be opened in their own branch, then merged into master through a pull request.
Once a branch is merged into master, npm run release should be used to update the version number and changelog.
This project is licensed under the MIT License - see LICENSE.md file for details.
-
The WHILE programs used in the tests are sourced from AlexJ’s HWhile interpreter