<commit_before>ArthurJS
========

## What?

Arthur is a language that compiles to standards compliant JavaScript using NodeJS. It uses significant-whitespace instead of curly braces to denote code blocks leader to code that is (hopefully) easier to read and more concise.

The Arthur specification is currently quite sparse and I intend to add the following features in the coming weeks:

| status        | description                    |
|:--------------|:-------------------------------|
| ✓             | Basic Math                     |
| ✓             | Assignment                     |
| ✓             | If/Else                        |
| ✓             | Functions                      |
| ✓             | Arrays                         |
| ✓             | Objects                        |
| ✓             | For and While loops            |
| 1 week        | Switch/Case/Default            |
| 1 week        | Try/Catch/Finally              |
| 2 weeks       | Basic Classes and Inheiritance |
| 2 weeks       | Improved CLI                   |
| -             | 1.0 Release                    |

## Why?

I wanted to experiment with designing a language that was built using a very consistent structure and which employed significant whitespace.

Arthur employs many of the same syntactic elements as JavaScript but with many special syntax cases replaced.

## Examples

### hello world

```
# define a function
helloWorld = def:
	return 'Hello World!'

console.log(helloWorld())
```

becomes:

```javascript
(function () {<commit_msg>update roadmap<commit_after>ArthurJS
========

## What?

Arthur is a language that compiles to standards compliant JavaScript using NodeJS. It uses significant-whitespace instead of curly braces to denote code blocks leader to code that is (hopefully) easier to read and more concise.

The Arthur specification is currently quite sparse and I intend to add the following features in the coming weeks:

| status        | description                    |
|:--------------|:-------------------------------|
| ✓             | Basic Math                     |
| ✓             | Assignment                     |
| ✓             | If/Else                        |
| ✓             | Functions                      |
| ✓             | Arrays                         |
| ✓             | Objects                        |
| ✓             | For and While loops            |
| ✓             | Switch/Case/Default            |
| 1 week        | Try/Catch/Finally              |
| 2 weeks       | Basic Classes and Inheiritance |
| 2 weeks       | Improved CLI                   |
| -             | 1.0 Release                    |

## Why?

I wanted to experiment with designing a language that was built using a very consistent structure and which employed significant whitespace.

Arthur employs many of the same syntactic elements as JavaScript but with many special syntax cases replaced.

## Examples

### hello world

```
# define a function
helloWorld = def:
	return 'Hello World!'

console.log(helloWorld())
```

becomes:

```javascript
(function () {
{'fraction_non_alphanumeric': 0.10268869452542922, 'fraction_numerical': 0.0035633300939423387, 'mean_word_length': 1.4704, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2289549', 'n_tokens_mistral': 758, 'n_tokens_neox': 673, 'n_words': 296}