Pa
Pa copied to clipboard
A Small & Interesting Programming Language.

Pa
Balanced as all things should be.
What
You are welcomed to the holy lands of Pa.
Pa is a hobby project designed around familiarity & quick-prototyping, it balances various features and makes them fit in one environment for the ease of development and focus.Documentation
New here? Head straight to Pa's Documentation to learn the basics!
Examples are all in the examples folder.
And lastly, check the Update Log page for any major or minor changes added!
Up & Running
Pa uses a pre-built command line tool called PBuild to automate the process of downloading & building.
Download PBuild
Follow the instructions to install Pa using PBuild here.
Tooling
- A more versatile tooling is planned!
At the moment there is only a syntax highlighter for the vscode text editor.
Avaliable in the marketplace here
Example
Here is a tail-call fibonacci function implemented in Pa.
define fib (n, a, b) {
if n == 0 {
return a;
}
if n == 1 {
return b;
}
return fib(n - 1, b, a + b);
}
Performance
Thanks Gwion-Benchmarks for benchmarking Pa.
Here are the results of a full benchmark suite for Pa against some other languages -> benchmarks.
Thanks to
-
Dictu By Jason Hall.
-
Crafting Interpreters By Bob Nystrom.
-
Wren By Wren-lang Organization.
-
PocketLang By ThakeeNathees.
Huge thanks to Jérémie Astor for helping Pa!
License
Licensed under the MIT License.
