Update links and add Reid logo

This commit is contained in:
Sofia 2017-08-28 11:05:46 +00:00
parent 4198b43b1d
commit 5c3bc9963f
1 changed files with 15 additions and 7 deletions

View File

@ -1,6 +1,5 @@
# Reid
# <img src="https://teasca.de/external_img/reid_logo.png" alt="reid logo" style="width: 200px;"/>
- [What?](#what)
- [Why?](#why)
- [Who?](#who)
@ -16,15 +15,15 @@ Reid is a letter in the old nordic alphabet that means "ride" or "journey", so t
## Why?
The original version of Reid was written in TypeScript for a NodeJS server for a dungeons and dragons system client. The new server is being written in Rust, so the language must be re-written. To make the process easier, here is the specifications (and technically the documentation) for the re-visited version of the language. To the same repository I will be creating the actual Rust implementation of this language too.
The original version of Reid (originally called Omega) can be viewed [here](https://github.com/excitedneon/hero.neon.moe/blob/master/ts/omegaParser.ts)
The original version of Reid (originally called Omega) can be viewed [here][omega_orig]
## Who?
Reid is created by [Teascade](https://teasca.de), original version being written with TypeScript in 2016, and new specification and Rust implementation written in 2017.
Reid is created by [Teascade][teascade], original version being written with TypeScript in 2016, and new specification and Rust implementation written in 2017.
## License?
Currently Reid has no license, since it is only a specification, but most likely it will be licensed under MIT later.
The Reid specification is simply [CC-BY-SA](http://creativecommons.org/licenses/by-sa/4.0/):
The Reid specification is simply [CC-BY-SA][ccbysa]:
<a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a>
@ -58,7 +57,7 @@ for (let i = 0; i < max; i++) {
```
## General Syntax
The general syntax of Reid is fairly similar to that of [TypeScript](https://www.typescriptlang.org/) or [Rust](https://www.rust-lang.org/). The syntax is a mix of [keywords](#keywords) and [expressions](#expressions) displayed such as in the [examples](#examples).
The general syntax of Reid is fairly similar to that of [TypeScript][typescript] or [Rust][rust]. The syntax is a mix of [keywords](#keywords) and [expressions](#expressions) displayed such as in the [examples](#examples).
## Expressions
Expressions are a set of [values](#values), [function calls](#function-calls) and [operators](#operators) that Reid interprets and returns a new [value](#values) out of.
@ -236,7 +235,7 @@ This also causes a runtime exception, as can be deducted.
Trying to assign a number larger or smaller than the byte-limit of the type allows (ie. larger than `2147483647` for `i32` or smaller than `-2147483647`), will cause a runtime exception.
## Function Overloading
[Function overloading](https://en.wikipedia.org/wiki/Function_overloading) in Reid is possible, meaning you can create functions that have the same name as other already existing functions, but the parameter count and/or parameter types must differ.
[Function overloading][overloading] in Reid is possible, meaning you can create functions that have the same name as other already existing functions, but the parameter count and/or parameter types must differ.
ie. you could have two functions called `test`, both of which require a parameter `param`, but the other function's `param` is a string type, and the other is `i32`, like so:
```
def test(param: string) {
@ -533,3 +532,12 @@ Functions like [`random() -> f32`](#random-f32), except it returns a more accura
#### `time_now64() -> i64`
Returns the current time in nanoseconds since January 1st 1970.
[teascade]: https://teasca.de
[omega_orig]: https://github.com/excitedneon/hero.neon.moe/blob/master/ts/omegaParser.ts
[overloading]: https://en.wikipedia.org/wiki/Function_overloading
[typescript]: https://www.typescriptlang.org/
[rust]: https://www.rust-lang.org/
[reid_logo]: https://teasca.de/external_img/reid_logo.png
[ccbysa]: http://creativecommons.org/licenses/by-sa/4.0/
[mit]: https://tldrlegal.com/license/mit-license