<commit_before># Language Development Getting Started

This guide will get you started with language development in Spoofax, within an Eclipse environment.

## Requirements

Spoofax runs on the major operating systems:

* Windows (32 and 64 bits)
* Linux (32 and 64 bits)
* Mac OSX (Intel only)

Spoofax requires a working internet connection to download several libraries when it is first started.
These libraries are cached afterwards, and only need to be re-downloaded when you update Spoofax.

## Installation

To get started with Spoofax, download an Eclipse Mars installation with Spoofax preinstalled for your platform:

* [Windows 32-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86-jre.zip)
* [Windows 64-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86_64-jre.zip)
* [Linux 32-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86-jre.tar.gz)
* [Linux 64-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86_64-jre.tar.gz)
* [Mac OS X (Intel only), embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-macosx-x86_64-jre.tar.gz)

These are bundled with an embedded Java Runtime Environment (JRE) version 7, such that a JRE on your system is not required.
If your system has a JRE of version 7 or higher installed, and would rather use that, use the following download links instead:

* [Windows 32-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86.zip)
* [Windows 64-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86_64.zip)
* [Linux 32-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86.tar.gz)
* [Linux 64-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86_64.tar.gz)
* [Mac OS X (Intel only)](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-macosx-x86_64.tar.gz)

Unpack the downloaded archive to a location with write access, since Eclipse requires write access to the unpacked Eclipse installation.

```eval_rst
.. warning:: On Windows, do **not** unpack the Eclipse installation into :file:`Program Files`, because no write access is granted there, breaking both Eclipse and Spoofax.
```

Start up Eclipse, depending on your operating system:

* Windows: open <span class='file'>eclipse.exe</span>
* Linux: open <span class='file'>eclipse</span>
* Mac OSX: open <span class='file'>Eclipse.app</span>

```eval_rst
.. note::
   On Mac OSX, if Eclipse cannot be opened because it is from an unidentified developer, right click :file:`Eclipse.app` and choose :guilabel:`Open` to grant permission to open Eclipse.

   If Eclipse cannot be opened because it is damaged, open the Terminal, navigate to the directory where :file:`Eclipse.app` is located, and execute:

   .. code-block:: bash
<commit_msg>Add workaround for Ubuntu 16.04 Eclipse issues<commit_after># Language Development Getting Started

This guide will get you started with language development in Spoofax, within an Eclipse environment.

## Requirements

Spoofax runs on the major operating systems:

* Windows (32 and 64 bits)
* Linux (32 and 64 bits)
* Mac OSX (Intel only)

Spoofax requires a working internet connection to download several libraries when it is first started.
These libraries are cached afterwards, and only need to be re-downloaded when you update Spoofax.

## Installation

To get started with Spoofax, download an Eclipse Mars installation with Spoofax preinstalled for your platform:

* [Windows 32-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86-jre.zip)
* [Windows 64-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86_64-jre.zip)
* [Linux 32-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86-jre.tar.gz)
* [Linux 64-bits, embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86_64-jre.tar.gz)
* [Mac OS X (Intel only), embedded JRE](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-macosx-x86_64-jre.tar.gz)

These are bundled with an embedded Java Runtime Environment (JRE) version 7, such that a JRE on your system is not required.
If your system has a JRE of version 7 or higher installed, and would rather use that, use the following download links instead:

* [Windows 32-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86.zip)
* [Windows 64-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-win32-x86_64.zip)
* [Linux 32-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86.tar.gz)
* [Linux 64-bits](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-linux-x86_64.tar.gz)
* [Mac OS X (Intel only)](http://download.spoofax.org/update/release/2.0.0-beta1/eclipse/spoofax-2.0.0-beta1-macosx-x86_64.tar.gz)

Unpack the downloaded archive to a location with write access, since Eclipse requires write access to the unpacked Eclipse installation.

```eval_rst
.. warning:: On Windows, do **not** unpack the Eclipse installation into :file:`Program Files`, because no write access is granted there, breaking both Eclipse and Spoofax.
```

```eval_rst
.. warning:: On Ubuntu 16.04, Eclipse is known to have problems with GTK+ 3. To work around this issue, add the following to :file:`eclipse.ini`::

     --launcher.GTK_version
     2

   before the line::

     --launcher.appendVmargs
```

Start up Eclipse, depending on your operating system:

* Windows: open <span class='file'>eclipse.exe</span>
* Linux: open <span class='file'>eclipse</span>
* Mac OSX: open <span class='file'>Eclipse.app</span>

```eval_rst
.. note::
   On Mac OSX, if Eclipse cannot be opened because it is from an unidentified developer, right click :file:`Eclipse.app` and choose :guilabel:`Open` to grant permission to open Eclipse.

   If Eclipse cannot be opened because it is damaged, open the Terminal, navigate to the directory where :file:`Eclipse.app` is located, and execute:

   .. code-block:: bash

{'fraction_non_alphanumeric': 0.12750038173766987, 'fraction_numerical': 0.04611391052069018, 'mean_word_length': 4.417700578990901, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 32, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2607978', 'n_tokens_mistral': 2424, 'n_tokens_neox': 2197, 'n_words': 618}