Programming with Nex

Index

Terms and concepts, linked to where they are introduced or explained in the book.

A
Accumulation, loops
Aliases, module
Anonymous functions
Arithmetic
Array[T]
Arrays
accessing elements
modifying elements
growing and shrinking
common operations
building with loops
and functions
preconditions on
arrays of maps
Assignment
await, await_any, await_all
B
Base case, recursion
Booleans
Breakpoints
Built-in functions, global
C
case expression
Channels
buffered and unbuffered
closing
Channel[T]
Char
Classes
designing well
inheritance and polymorphism
generic classes
syntax reference
Closed hierarchies, sealed classes
Command-query separation
Comments
Comparison expressions
Compilation target
Concurrency
Console
Constraints, type
Constructors
Contracts, Design by
and inheritance
as documentation
and tests
convert expression
Cursors
D
Debugger
Deferred classes
Detachable types
E
Enumerations
Errors and exceptions
vs. preconditions
writing robust code
syntax reference
Exercises, solutions to
Expressions
F
Fail fast
Fields
detachable
once fields
File access
from ... until ... do loop
Forward declarations
Functions
as contracts
pure functions
type signatures
syntax reference
G
Generic classes
multiple type parameters
and inheritance
H
HTTP and network services
I
if statement
import vs. intern
Infinite loops
Inheritance
and contracts
and generics
multiple inheritance
intern statement
how it resolves files
Integer
Interoperability
Invariants
loop invariants
relation to pre/postconditions
J
"java" blocks, with
L
Lexical basics
Loops
loop contracts
across loop
repeat loop
M
Maps
adding and updating entries
removing entries
querying
maps of arrays
Map[K, V]
Matching, pattern
Methods
operators and methods
overriding
Modules
Mutual recursion
N
Naming classes
Nested structures
Nil
O
Off-by-one errors
old keyword
Operators
precedence
Optional arguments, overloading
Option type
Overriding methods
P
Parameters and arguments
Pattern matching see Matching
Polymorphism
Postconditions
Preconditions
Process
Pure functions
Q
Querying a map
R
Real numbers
Recursion
on lists
vs. loops
Refinement types
REPL
Rescue blocks
Result type
Retrying
S
Sealed classes see Closed hierarchies
select statement
Set[T]
spawn
Stack[T]
Standard library
Strings
operations
concatenation
String type
Superclass calls
T
Tasks
checking task state
Task[T]
Testing
a test harness in Nex
testing contracts
this reference
Timeouts
Trees, tree-shaped data
traversing
searching
Type annotations and conversion
Types
U
Uniform access
Unions
V
Variables
W
Watchpoints
when expression