Skip to content

Neutron Documentation

Welcome to the Neutron Programming Language documentation!


Find What You Need

I'm New to Neutron

Start here if you're just getting started:

  1. Quick Start — Install Neutron and write your first program (5 minutes)
  2. Build Guide — Detailed build instructions for your platform
  3. Common Pitfalls — Avoid common mistakes

Learn the Language

Understand how Neutron works:

Topic Description
Language Reference Complete syntax and features
Module System How to use and create modules
Type System Understanding types in Neutron
Error Handling Handle errors gracefully

Using Modules

Pre-built functionality for your programs:

Core Modules

Module What It Does
sys File operations, system access
json JSON parsing and serialization
http HTTP requests (web APIs)
math Mathematical operations

Utility Modules

Module What It Does
fmt Type conversion and formatting
strings String/text manipulation
arrays Array/list operations
collections Sets, stacks, queues
time Time, dates, delays
async Async operations, timers
log Logging with levels
regex Regular expressions
process Process management
path File path utilities
random Random numbers
crypto Cryptographic functions

Advanced Topics

Deep dive into Neutron internals:

Topic Description
JIT Compilation How JIT works (x86-64 & ARM64)
AOT Compilation Compile to native executables
Extending Neutron Create native C++ modules
LSP Setup Editor integration (VS Code, etc.)
Roadmap Future development plans
Known Issues Current limitations and bugs

Project Management

Manage your Neutron projects:

Topic Description
Project System Organize Neutron projects
Box Integration Package manager usage
Durable Execution Checkpoint and resume
Test Suite Write and run tests

Troubleshooting

Having problems?

Resource Description
FAQ Frequently asked questions
Quick Syntax Reference Cheat sheet for common operations
Error Reference Understand error messages
Common Pitfalls Avoid typical mistakes
Known Issues Known bugs and workarounds

Documentation Structure

docs/
├── guides/              # How-to guides and tutorials
│   ├── quickstart.md
│   ├── build.md
│   ├── common-pitfalls.md
│   ├── project-system.md
│   ├── test-suite.md
│   └── durable-execution.md
├── reference/           # Technical reference
│   ├── language_reference.md
│   ├── module-system.md
│   ├── box-project-integration.md
│   ├── cross-platform.md
│   └── buffers.md
├── modules/             # Module API documentation
│   ├── sys_module.md
│   ├── json_module.md
│   ├── http_module.md
│   └── ... (all modules)
├── implementation/      # Internals and advanced topics
│   ├── jit.md
│   ├── aot.md
│   ├── roadmap.md
│   └── known-issues.md
├── error_handling/      # Error handling documentation
│   ├── index.md
│   └── error-handling.md
├── extending-neutron.md  # Native module development
├── lsp.md                # Language server setup
└── readme.md             # You are here

Learning Path

Beginner

  1. Read Quick Start
  2. Try examples from Language Reference
  3. Explore Core Modules

Intermediate

  1. Study Module System
  2. Learn Error Handling
  3. Build a project using Project System

Advanced

  1. Read JIT/AOT documentation
  2. Create Native Modules
  3. Contribute to Neutron


Need help? Check the Error Reference or ask in GitHub Discussions.