36 lines
1 KiB
Markdown
36 lines
1 KiB
Markdown
# Ava - 2026
|
|
|
|
At the beginning of 2026, extreme stress gave me new motivation to pursue Ava as
|
|
a research project. It provides mental relief when times are tough. This new
|
|
revision of Ava uses my time away to revisit concepts from the ground up and
|
|
helps to take a principles-first approach to language design.
|
|
|
|
## Ideas -- Working Towards Core Principles
|
|
|
|
### Single-Purpose Syntax
|
|
|
|
As much as possible ensure that syntax has only one meaning.
|
|
|
|
### Syntax Consistency
|
|
|
|
Apply the same patterns everywhere. Make Ava predictable. Do not allow for
|
|
special cases or exceptions to rules.
|
|
|
|
### Explicitness
|
|
|
|
Ava should be clear and precise. Accept some deliberate verbosity to achieve
|
|
this in some cases.
|
|
|
|
### Functional
|
|
|
|
Ava is a functional programming language.
|
|
|
|
### Data Expression
|
|
|
|
Data modeling is critical to software development, and Ava must provide a
|
|
foundational set of tools for expressing data.
|
|
|
|
### Types
|
|
|
|
Ava is a statically-typed language with support for generic types, higher-kinded
|
|
types, type constructors, and generally leans into types.
|