This adds support for Karel Java and Karel Pascal as used by the Mexican Olimpiad in Informatics
Do not use
Karel (rekarel.1.0.0)
The Karel language Karel (rekarel.1.0.0)
is deprecated and is kept for compatibility purposes. It will be deleted after August 2025.
Both languages compile and run the same language (ReKarel 2.3), this is the reason as to why Karel (rekarel 1.0.0) is deprecated, due to its poor name.
However, deleting a language from a CMS causes internal errors if there were submissions to it or if a contest allows it and such, so it is kept to give time to consumers to plan their migration.
First install the compiler (Node must be at least 1.10.2)
npm install -g @rekarel/cli
Make sure it is in the correct place by running
rekarel -V
And
type -a rekarel
It should be in /usr/local/bin/rekarel
, otherwise, you'll have to move it.
Next, let's install the interpreter.
Download the C++ VM
https://github.com/kishtarn555/rekarel-cpp-interpreter/releases/tag/v2.0.0
Go to the download/clone folder and run:
Then
mkdir bin
make karel
cd bin
sudo install -m 755 karel /usr/local/bin
Run
python3 setup.py install
Restart CMS
This package adds two things
- Karel languages
- Karel task type.
A Karel task type is a slightly modified version of a batch task that changes the task output the correct information, like Instruction Limit Exceeded and the type or Runtime Error
Here's a map for exploring the ReKarel project:
Repo | Description |
---|---|
ReKarel | Web IDE for ReKarel |
Core | JS compiler, interpreter and transpiler |
CLI | Node command line interface for the core |
CPP Interpreter | Faster C++ interpreter, runs bytecode compiled by the CLI compiler |
CMS | Adds ReKarel support to CMS |
KarelCaseGenerator | Python Case Generator |