Skip to content
/ Pa Public

A Small & Interesting Programming Language.

License

Notifications You must be signed in to change notification settings

valkarias/Pa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

Pa

Balanced as all things should be.

logo logo


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

map-marker-home  New here? Head straight to Pa's Documentation to learn the basics!

share-free-icon-font  Examples are all in the examples folder.

refresh-free-icon-font  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

download



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

Huge thanks to Jérémie Astor for helping Pa!

License

Licensed under the MIT License.