Hascal is a general purpose and open source programming language designed to build optimal, maintainable, reliable and efficient software.

Getting Started » Install Hascal

Latest release : v1.4.1

// manual memory management example in Hascal
struct point {
    var x : int?
    var y : int?

function main() : int {
    // declaring and allocating `foo` in heap
    var foo : point^ = new point(point(10,10))
    // printing `foo` contents
    print(^foo) // Output: point(x:10,y:10)
    // reallocate `foo`
    foo = new point(point(20,20))
    // deallocate `foo` from heap at end of function scope
    delete foo

    return 0
More examples...

Simple and Easy Language

Hascal has a simple and easy syntax and a small standard library, you can learn Hascal in less than a hour!
Hascal is very similar to Swift and it was originally based on the good ideas of the Pascal language.

Safe and reliable

Hascal uses a null safety system to prevent null data errors to increase the security and stability of applications.
By default, Hascal requires you to select a value for your variable and constants (at declaration) to ensure that there is no NULL data in the program.

Manual memory management

Hascal uses manual memory management and gives you the freedom to act against memory but guides you in manual memory management when compiling(WIP).

Use Hascal every where!

Hascal is cross platform, meaning it can run on any platform, from Linux and Windows to embedded systems!
The Hascal can call C++ code, and it is possible to call Hascal code in any language that can be able to cooperate with C++ code.

The Hascal Foundation

The Hascal Foundation is an open-source foundation was created in 2021 to fund long term Hascal development.

Learn More