Nim
Full Nim course — 51 topics from the basics to advanced use.
Lessons
- Pragmas
- Compile-Time Execution
- Templates
- Macros and AST Manipulation
- Building DSLs
- Concepts
- Memory Management: ARC, ORC and Destructors
- Move Semantics and Ownership
- Concurrency and Parallelism
- Asynchronous Programming
- Foreign Function Interface
- The JavaScript Backend
- Low-Level and Systems Programming
- Introduction to Nim
- Installation, Tooling and First Program
- Lexical Structure and Syntax Basics
- Variables, Constants and Basic Types
- Operators and Expressions
- Control Flow
- Procedures
- Strings and Characters
- Compiler Configuration, Build Modes and Cross-Compilation
- NimScript and Build Automation
- Debugging and Profiling
- Performance Optimization
- Networking and Web Development
- Databases
- CLI Applications
- GUI, Games and Graphics
- Embedded and WebAssembly
- Scientific Computing and Data
- Style, Idioms and Best Practices
- Nim Internals and the Future of Nim
- Appendices: Projects, Review Questions, Cheat Sheet & Resources
- Arrays, Sequences, Open Arrays and Slices
- Tuples, Sets and Enums
- Objects and Object Variants
- References, Pointers and the Heap
- Type System in Depth
- Iterators
- Modules and Code Organization
- Error Handling
- Object-Oriented Programming in Nim
- Generics
- Closures, Anonymous Procs and Functional Programming
- The Effect System
- The Standard Library Tour
- File I/O, OS and Processes
- Testing and Documentation
- Nimble: Packages and Project Management
- Course Overview