Main Page: Difference between revisions

From NovaLang
No edit summary
No edit summary
 
Line 1: Line 1:
= Welcome to Nova! =
= Nova - Your Goto Functional Language =


Nova is a programming language designed to bridge the gap between '''functional programming''' and '''C-like systems languages'''. Our goal is to make functional paradigms accessible to developers familiar with the syntax of Rust, Zig, C, and C++.
=== What Is Nova? ===


=== What is Nova? ===
Nova is a new programming language written in OCaml that aims to bridge the gap between traditional C-syntax based languages and functional languages like OCaml, Haskell, and Lisp.


Nova combines the robust type systems and power of languages like '''OCaml''' and '''Haskell''' with the familiar, imperative structure of modern systems languages.
Nova is a garbage-collected with an opt in allocator system akin to [https://www.gingerbill.org/article/2025/12/15/odins-most-misunderstood-feature-context/ Odin's context].


=== Key Features ===
=== Key Features ===


'''Friendly Syntax''': Inspired by the C-family to ensure a shallow learning curve.
'''Friendly Syntax:''' Functional programming with a familiar feel


'''Functional Roots''': Deeply influenced by OCaml's functional patterns.
'''Garbage-collected:''' Garbage-collected with an opt-in allocator system


'''Flexible Memory Management''': A garbage-collected language that offers optional explicit control over allocations.
'''Modern Tooling:''' Build on Dune's amazing ecosystem


'''Modern Tooling''': The <code>novac</code> compiler is built with OCaml and Dune for high-performance compilation.
'''Modern C Interop:''' Built with [https://github.com/libffi/libffi libffi] first in mind


=== The Project ===
=== The Project ===
The project currently features a functional compiler (<code>novac</code>) with:


'''Lexer & Parser''': Full implementation for Nova source files.
'''Lexer & Parser''': Full implementation for Nova source files.
'''AST Definitions''': Detailed Abstract Syntax Tree nodes for declarations, expressions, and statements.
'''Example Suite''': Check out our examples for currying, complex types, and more in the repository.


=== Get Involved ===
=== Get Involved ===


Explore the source code, check out our vision, and contribute to the compiler on GitHub:
Explore the source code, check out our vision, follow the socials, and contribute to the compiler:


[https://github.com/super-nova-lang/novac Nova on GitHub]
[https://github.com/super-nova-lang/novac Nova on GitHub]
Line 35: Line 29:
[https://x.com/SuperNovaLang Nova on Twitter (X)]
[https://x.com/SuperNovaLang Nova on Twitter (X)]


[mailto:super.nova.compiler@gmail.com Contact NovaLang]
[https://wiki.nova.nerdcult.net/index.php/Main_Page Nova's Wiki]
 
[mailto:super.nova.compiler@gmail.com Contact Nova]

Latest revision as of 12:26, 24 December 2025

Nova - Your Goto Functional Language

What Is Nova?

Nova is a new programming language written in OCaml that aims to bridge the gap between traditional C-syntax based languages and functional languages like OCaml, Haskell, and Lisp.

Nova is a garbage-collected with an opt in allocator system akin to Odin's context.

Key Features

Friendly Syntax: Functional programming with a familiar feel

Garbage-collected: Garbage-collected with an opt-in allocator system

Modern Tooling: Build on Dune's amazing ecosystem

Modern C Interop: Built with libffi first in mind

The Project

Lexer & Parser: Full implementation for Nova source files.

Get Involved

Explore the source code, check out our vision, follow the socials, and contribute to the compiler:

Nova on GitHub

Nova on Twitter (X)

Nova's Wiki

Contact Nova