Requires Python 3.7 and Antlr 4.9.2 or 4.9.3
- If you're on Mac, first run
brew install swig
. - Install from the wheel located in
rlang/rlang/dist
withpython -m pip install rlang/rlang/dist/rlang-0.2.5-py3-none-any.whl
. - If you want to run the Gridworld experiment, clone this simple_rl fork and pip-install it.
pip install path/to/downloaded/simple_rl/.
(if you're developing, install it with the-e
flag for convenience)
examples/
: example RLang programs and RLang-informed agents.antlr/
: contains all antlr-related stuff. core RLang development mostly happens here.sphinx/
: contains all documentation generation stuffrlang/
: directory that contains therlang
packagerlang/
: the actualrlang
packageagents/
: contains implementations of RLang-enabled agentslanguage/
: contains the python files for lexing/parsing/listening. Most of these files are generated by Antlr4.grounding/
: contains all the RLang groundings.
docs/
tests/
examples/
- In the
rlang/rlang/tests/
directory runpytest -s listener_test/listener_test.py
.
- Run
mvn compile
from the root directory to run Antlr4. - Clean with
mvn clean
, though it should do it automatically in each build cycle. - Run tests with
mvn test
. - Check out
antlr/README.md
andantlr/pom.xml
for more info on grammar development.
- You can easily generate html files by running
make clean
andmake multiversion
fromsphinx/
- If you add or remove a module, delete the corresponding file in
sphinx/source/
and then withinsphinx/
runexport SPHINX_APIDOC_OPTIONS=members,show-inheritance
and thensphinx-apidoc -t templates/ -o source/ ../rlang/rlang ../rlang/rlang/language
.
- In the
rlang/rlang/
directory runpython -m build
, which will put builds intorlang/rlang/dist/
. - You can upload these to PyPi or TestPyPi:
- For TestPyPi:
python -m twine upload --repository testpypi dist/*
- Username should be
__token__
and password should be the API key, starts withpypi-
.
- Username should be
- For TestPyPi: