Skip to content

Commit

Permalink
update readme a bit
Browse files Browse the repository at this point in the history
  • Loading branch information
zhiayang committed Oct 7, 2019
1 parent 0ad047f commit 461e4ed
Showing 1 changed file with 18 additions and 3 deletions.
21 changes: 18 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ A low level, general-purpose language with high level syntax and expressibility.
I work on Flax in my spare time, and as the lone developer I cannot guarantee continuous development.
I'm no famous artist but this is my magnum opus, so it'll not be abandoned anytime soon.

Development is currently on hiatus. Work will resume NET 2019-12-09.
Development is currently on hiatus. Regular work will resume NET 2019-12-09.

### Language Goals

Expand All @@ -44,26 +44,41 @@ Development is currently on hiatus. Work will resume NET 2019-12-09.

### Current Features

- Structs, classes, unions, enums
- Structs, unions, enums
- Arrays (fixed and dynamic), slices
- Pointer manipulation/arithmetic
- Operator overloading
- Generic functions and types
- Type inference (including for generics)
- Full compile-time execution (of arbitrary code)
- Classes, including virtual dispatch and (single) inheritance

-----------------------------------------------


### Language Syntax
- See https://flax-lang.github.io (incomplete, outdated, obsolete, etc. etc.)

- We don't have a proper place that documents everything yet, but most of the basic stuff is probably not gonna change much.
The testing code in `build/tests/` (most of them, anyway — check `tester.flx` to see which ones we call) tests basically 90% of the
language, so that's the syntax reference for now.
- Yes, the syntax is not "officially" defined by a grammar. The reference parser implementation is the One True Definition, for now.

-----------------------------------------------



### Code Sample

```rust
import std::io as _

@entry fn main()
{
println("hello, world!")
}

```

```rust
do {
fn prints<T, U>(m: T, a: [U: ...])
Expand Down

0 comments on commit 461e4ed

Please sign in to comment.