Welcome to One!
It is an open source, self-hosted, bootstrapping system programming language which makes it easy to
build reliable and efficient software.
It is being developed by Max, John and other open-source contributors.
The main goal of this image is to serve as a development environment where to run build code and run tests, before the release of ONE
.
- latest: This docker image contains the following packages:
autoconf
automake
cmake
freetype-dev
g++
gcc
libxml2-dev
linux-headers
make
musl-dev
ncurses-dev
python3
pre-commit
git
LLVM
- To run this image:
docker run -it onelangorg/one:latest
- To get the container ID and the container NAME:
docker ps
- To run the code using
*.sh
files:
# SRC
docker exec -it <container ID> sh -c 'cd src/parser && chmod +x build.sh && ./build.sh'
docker exec -it <container ID> sh -c 'cd src/lexer && chmod +x build.sh && ./build.sh'
docker exec -it <container ID> sh -c 'cd src/lexer && chmod +x test.sh && ./test.sh'
# TESTS
docker exec -it <container ID> sh -c 'cd src/lexer && chmod +x build.sh && ./build.sh'
- To run the code using executable (pre-built with CMake) files:
# SRC
docker exec -it <container ID> sh -c 'cd build && ./lexer input.one'
docker exec -it <container ID> sh -c 'cd build && ./parser input.one'
docker exec -it <container ID> sh -c 'cd build && ./ast input.one'
# TESTS
docker exec -it <container ID> sh -c 'cd build && ./lexer_test'
docker exec -it <container ID> sh -c 'cd build && ./parser_test'
docker exec -it <container ID> sh -c 'cd build && ./argument_test'
docker exec -it <container ID> sh -c 'cd build && ./ast_test'
- If you use VSCode for development, you can use this container remotely. To do so, you will need Visual Studio Code Remote Development. After running your container, you can work from within the container:
-
run the container
-
connect to the container
-
Now you can work from within the docker container and the previous step will open this new VSCode window
-
Choose
One
directory -
finally here you go!
- To remove the container:
docker rm <container name>
We welcome all kinds of contributions, including bug reports, feature requests, documentation improvements, etc. To ask a question or open a discussion, create an issue or join the One Discord Server.
If you are not familiar with making a pull request on GitHub, please read this guide.
If you have decided to contribute, please first read the guidelines here.
You can also help in the development of One
by making some donations on Patreon.
Thanks to all the contributors!!
If you would like to contribute to the development of this project, you can mail us at: maxbasecode@gmail.com
Created By Max Base @ 2019
One
is released under the GNU General Public License v3.0. Please refer to the terms in the LICENSE file included in the repository.