diff --git a/HOW_TO_RUN_THE_GAMES.md b/HOW_TO_RUN_THE_GAMES.md new file mode 100644 index 00000000..44d82e98 --- /dev/null +++ b/HOW_TO_RUN_THE_GAMES.md @@ -0,0 +1,85 @@ +# How to run the games + +The games in this repository have been translated into a number of different languages. How to run them depends on the target language. + +## csharp + +### dotnet command-line + +The best cross-platform method for running the csharp examples is with the `dotnet` command-line tool. This can be downloaded for **MacOS**, **Windows** and **Linux** from [dotnet.microsoft.com](https://dotnet.microsoft.com/). + +From there, the program can be run by + +1. Opening a terminal window +1. Navigating to the corresponding directory +1. Starting with `dotnet run` + +### Visual Studio + +Alternatively, for non-dotnet compatible translations, you will need [Visual Studio](https://visualstudio.microsoft.com/vs/community/) which can be used to both open the project and run the example. + +1. Open the corresponding `.csproj` or `.sln` file +1. Click `Run` from within the Visual Studio IDE + +## java + +The Java translations can be run via the command line or from an IDE such as [Eclipse](https://www.eclipse.org/downloads/packages/release/kepler/sr1/eclipse-ide-java-developers) or [IntelliJ](https://www.jetbrains.com/idea/) + +To run from the command line, you will need a Java SDK (eg. [Oracle JDK](https://www.oracle.com/java/technologies/downloads/) or [Open JDK](https://openjdk.java.net/)). + +1. Navigate to the corresponding directory. +1. Compile the program with `javac`: + * eg. `javac AceyDuceyGame.java` +1. Run the compiled program with `java`: + * eg. `java AceyDuceyGame` + +## javascript + +The javascript examples can be run from within your web browser: + +1. Simply open the corresponding `.html` file from your web browser. + +## pascal + +The pascal examples can be run using [Free Pascal](https://www.freepascal.org/). Additionally, `.lsi` project files can be opened with the [Lazarus Project IDE](https://www.lazarus-ide.org/). + +The pascal examples include both *simple* (single-file) and *object-oriented* (in the `/object-pascal`directories) examples. + +1. You can compile the program from the command line with the `fpc` command. + * eg. `fpc amazing.pas` +1. The output is an executable file that can be run directly. + +## perl + +The perl translations can be run using a perl interpreter (a copy can be downloaded from [perl.org](https://www.perl.org/)) if not already installed. + +1. From the command-line, navigate to the corresponding directory. +1. Invoke with the `perl` command. + * eg. `perl aceyducey.pl` + +## python + +The python translations can be run from the command line by using the `py` interpreter. If not already installed, a copy can be downloaded from [python.org](https://www.python.org/downloads/) for **Windows**, **MacOS** and **Linux**. + +1. From the command-line, navigate to the corresponding directory. +1. Invoke with the `py` or `python` interpreter (depending on your python version). + * eg. `py acey_ducey_oo.py` + * eg. `python aceyducey.py` + +**Note** + +Some translations include multiple versions for python, such as `acey ducey` which features versions for Python 2 (`aceyducey.py`) and Python 3 (`acey_ducey.py`) as well as an extra object-oriented version (`acey_ducey_oo.py`). + +You can manage and use different versions of python with [pip](https://pypi.org/project/pip/). + +## ruby + +If you don't already have a ruby interpreter, you can download it from the [ruby project site](https://www.ruby-lang.org/en/). + +1. From the command-line, navigate to the corresponding directory. +1. Invoke with the `ruby` tool. + * eg. `ruby aceyducey.rb` + +## vbnet + +Follow the same steps as for the [csharp](#csharp) translations. This can be run with `dotnet` or `Visual Studio`.