Introduction
User Guide
1.
Installation
Syntax Cheatsheet
2.
Basics
2.1.
Comments
Guides
3.
From Beginner to Intermediate
3.1.
Basics
3.1.1.
The Hello World Program
3.1.2.
Compiling the Program
3.1.3.
Comments in Flint
3.1.4.
Indentation in Flint
3.2.
Variables and Types
3.2.1.
Primitive Types
3.2.2.
Variables
3.2.3.
Inferred Typing
3.2.4.
Operators
3.2.5.
Type Casting
3.2.6.
String Interpolation
3.3.
Control Flow
3.3.1.
The bool Type
3.3.2.
Boolean Operations
3.3.3.
Branching
3.3.4.
Loops
3.3.5.
Enums
3.3.6.
Switch
3.4.
Functions
3.4.1.
What is a Function?
3.4.2.
Adding Parameters
3.4.3.
Returning Values
3.4.4.
Recursion
3.4.5.
Returning Multiple Values
3.4.6.
Groups
3.5.
Data: The Core of Flint
3.5.1.
Declaring Data Modules
3.5.2.
Default Values
3.5.3.
Nested Data
3.5.4.
Using Data in Functions
3.5.5.
Tuples
3.5.6.
Multi-Types
3.6.
Arrays & Ranges
3.6.1.
Introduction to Arrays
3.6.2.
Iterating Over Arrays
3.6.3.
Strings
3.6.4.
Multidimensional Arrays
3.6.5.
Enhanced for Loop
3.6.6.
CLI Arguments
3.6.7.
The range Type
3.6.8.
Access Patterns
3.6.9.
Multidimensional Access Patterns
3.7.
Imports
3.7.1.
The use Clausel
3.7.2.
Circular Dependencies
3.7.3.
Import Aliasing
3.8.
Core Modules
3.8.1.
print
3.8.2.
read
3.8.3.
assert
3.8.4.
filesystem
3.8.5.
env
3.8.6.
system
3.9.
Entities, Func & Links
3.9.1.
Monolithic Entities: The Basics
3.9.2.
Func Modules: Modularizing Behavior
3.9.3.
From Monolithic to Modular Entities
3.9.4.
Using Multiple Data and Func Modules
3.9.5.
Introducing Links
3.9.6.
Extending Entities
4.
From Intermediate to Expert
4.1.
Optionals & Variants
4.2.
Error Sets
4.3.
Callables & Variable Persistence
4.4.
Pipes
4.5.
Composing Functions
4.6.
Paralellism
5.
From Expert to Master
5.1.
Concurrency & shared data
5.1.1.
Understanding Concurrency
5.1.2.
Flint's Concurrency Features
5.1.3.
Shared Data
5.2.
Generics
5.3.
Compile-Time Evaluation
5.4.
Blueprints
5.5.
Interoperability
5.6.
Advanced Memory Concepts (DIMA)