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:
- Quick Start — Install Neutron and write your first program (5 minutes)
- Build Guide — Detailed build instructions for your platform
- 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¶
- Read Quick Start
- Try examples from Language Reference
- Explore Core Modules
Intermediate¶
- Study Module System
- Learn Error Handling
- Build a project using Project System
Advanced¶
- Read JIT/AOT documentation
- Create Native Modules
- Contribute to Neutron
External Links¶
- GitHub: github.com/yasakei/neutron
- Issues: Report a bug
- Discussions: Ask questions
- NUR: Native modules registry
Need help? Check the Error Reference or ask in GitHub Discussions.