Updated docs and README
This commit is contained in:
parent
47a6f16664
commit
55966ba93c
10
README.md
10
README.md
|
@ -24,11 +24,17 @@ Peon is a simple, functional, async-first programming language with a focus on c
|
|||
|
||||
## Credits
|
||||
|
||||
- Araq, for creating the amazing language that is [Nim](https://nim-lang.org)
|
||||
- Araq, for creating the amazing language that is [Nim](https://nim-lang.org) (as well as all of its contributors!)
|
||||
- Guido Van Rossum, aka the chad who created [Python](https://python.org) and its awesome community and resources
|
||||
- The Nim community and contributors, for making Nim what it is today
|
||||
- Bob Nystrom, for his amazing [book](https://craftinginterpreters.com) that inspired me
|
||||
and taught me how to actually make a programming language
|
||||
and taught me how to actually make a programming language (kinda, I'm still very dumb)
|
||||
- [Njsmith](https://vorpus.org/), for his awesome articles on structured concurrency
|
||||
- All the amazing people in the [r/ProgrammingLanguages](https://reddit.com/r/ProgrammingLanguages) subreddit and its [Discord](https://discord.gg/tuFCPmB7Un) server
|
||||
- [Art](https://git.nocturn9x.space/art) <3
|
||||
- Everyone to listened (and still listens to) me ramble about compilers, programming languages and the likes (and for giving me ideas and testing peon!)
|
||||
- ... More? (I'd thank the contributors but it's just me :P)
|
||||
- Me! I guess
|
||||
|
||||
|
||||
## Project State
|
||||
|
|
|
@ -33,11 +33,13 @@ to happen, we need:
|
|||
- C/Nim FFI
|
||||
- A package manager
|
||||
|
||||
Peon ~~steals~~ borrows many ideas from Python and Nim (the latter being the language peon itself is written in).
|
||||
Peon ~~steals~~ borrows many ideas from Python, Nim (the the language peon itself is written in), C and many others.
|
||||
|
||||
## Peon by Example
|
||||
|
||||
Here follow a few examples of peon code to make it clear what the end product should look like
|
||||
Here follow a few examples of peon code to make it clear what the end product should look like. Note that
|
||||
not all examples represent working functionality and some of these examples might not be up to date either.
|
||||
For somewhat updated tests, check the [tests](../tests/) directory.
|
||||
|
||||
### Variable declarations
|
||||
|
||||
|
@ -78,7 +80,7 @@ type Foo = object { # Can also be "ref object" for reference types (managed auto
|
|||
### Operator overloading
|
||||
|
||||
```
|
||||
operator `+`(a, b: Foo) {
|
||||
operator `+`(a, b: Foo): Foo {
|
||||
return Foo(fieldOne: a.fieldOne + b.fieldOne, fieldTwo: a.fieldTwo + b.fieldTwo);
|
||||
}
|
||||
|
||||
|
@ -138,7 +140,7 @@ __before__ generics declarations, so only `fn foo*[T](a: T) {}` is the correct s
|
|||
```
|
||||
fn someF: int; # Semicolon, no body!
|
||||
|
||||
someF(); # This works!
|
||||
print(someF()); # This works!
|
||||
|
||||
fn someF: int {
|
||||
return 42;
|
||||
|
|
Loading…
Reference in New Issue