Programming The main programming language in Engee is Julia. This section provides full documentation of Julia. Manual Variables Integers and Floating-Point Numbers Mathematical Operations and Elementary Functions Complex and Rational Numbers Strings Functions Control Flow Scope of Variables Types Methods Constructors Conversion and Promotion Interfaces Modules Documentation Metaprogramming Single- and multi-dimensional Arrays Missing Values Networking and Streams Parallel Computing Asynchronous Programming Multi-Threading Multi-processing and Distributed Computing Running External Programs Calling C and Fortran Code Handling Operating System Variation Environment Variables Embedding Julia Code Loading Profiling Stack Traces Performance Tips Workflow Tips Style Guide Frequently Asked Questions Noteworthy Differences from other Languages Unicode Input Command-line Interface Base Essentials Collections and Data Structures Mathematics Numbers Strings Arrays Tasks Multi-Threading Constants Filesystem I/O and Network Punctuation Sorting and Related Functions Iteration utilities C Interface C Standard Library StackTraces SIMD Support Standard Library ArgTools Artifacts Base64 CRC32c Dates Delimited Files Distributed Computing Downloads File Events Future Interactive Utilities Lazy Artifacts LibCURL Dynamic Linker LibGit2 Linear Algebra Logging Markdown Memory-mapped I/O NetworkOptions Pkg Printf Profiling Random Numbers The Julia REPL Serialization SHA Shared Arrays Sockets Sparse Arrays Statistics Tar Unit Testing TOML Unicode UUIDs Developer Documentation Reflection and introspection Documentation of Julia’s Internals Initialization of the Julia runtime Julia ASTs More about types Memory layout of Julia Objects Eval of Julia code Calling Conventions High-level Overview of the Native-Code Generation Process Julia Functions Base.Cartesian Talking to the compiler (the :meta mechanism) SubArrays isbits Union Optimizations System Image Building Package Images Working with LLVM printf() and stdio in the Julia runtime Bounds checking Proper maintenance and care of multi-threading locks Arrays with custom indices Module loading Inference Julia SSA-form IR EscapeAnalysis Static analyzer annotations for GC correctness in C code Garbage Collection in Julia Developing Reporting and analyzing crashes (segfaults) gdb debugging tips Using Valgrind with Julia Sanitizer support Instrumenting Julia with DTrace, and bpftrace Building Julia Building Julia (Detailed) Linux macOS Windows FreeBSD ARM (Linux) Binary distributions Engee system objects Breakpoints in scripts Software script management