Structs§
- Extern
FnSig - Extern function signature info for FFI
- JitCompiler
- JIT Compiler for Sigil
- Sigil
Value - Runtime value representation
Functions§
- sigil_
abs - sigil_
ackermann - Iterative Ackermann function using explicit stack Much faster than recursive version - no stack overflow, O(result) space
- sigil_
add - sigil_
array_ add - Element-wise add two arrays into a new array (SIMD-friendly)
- sigil_
array_ choice - Get random element of array (χ morpheme)
- sigil_
array_ dot - Dot product of two arrays (SIMD-friendly)
- sigil_
array_ fill - Fill array with a value (SIMD-friendly)
- sigil_
array_ first - Get first element of array (α morpheme)
- sigil_
array_ get - sigil_
array_ last - Get last element of array (ω morpheme)
- sigil_
array_ len - sigil_
array_ max - Find maximum value in array (SIMD-friendly)
- sigil_
array_ middle - Get middle element of array (μ morpheme)
- sigil_
array_ min - Find minimum value in array (SIMD-friendly)
- sigil_
array_ mul - Element-wise multiply two arrays into a new array (SIMD-friendly)
- sigil_
array_ new - sigil_
array_ next - Get next element (iterator advance) - currently returns first element (ξ morpheme)
- sigil_
array_ nth - Get nth element of array (ν morpheme) - same as sigil_array_get but clearer semantics
- sigil_
array_ offset - Add a scalar to all elements (in-place, SIMD-friendly)
- sigil_
array_ product - Product of all elements in array (Π morpheme)
- sigil_
array_ push - sigil_
array_ scale - Multiply all elements by a scalar (in-place, SIMD-friendly)
- sigil_
array_ set - sigil_
array_ sort - Sort array in ascending order (σ morpheme) - returns new sorted array
- sigil_
array_ sum - Sum all elements in an array using SIMD-friendly loop
- sigil_
ceil - sigil_
cos - sigil_
div - sigil_
exp - sigil_
floor - sigil_
ge - sigil_
gpu_ filter - GPU filter operation with parallel stream compaction Uses scan-based compaction algorithm
- sigil_
gpu_ map - GPU map operation - would compile to WGSL/SPIR-V compute shader Shader structure:
- sigil_
gpu_ reduce - GPU reduce operation - uses tree reduction in shared memory Achieves O(log n) parallel steps
- sigil_
gt - sigil_
le - sigil_
ln - sigil_
lt - sigil_
memo_ free - Free a memoization cache
- sigil_
memo_ get_ 1 - Lookup a single-argument function result in cache Returns the cached value, or MEMO_NOT_FOUND if not found
- sigil_
memo_ get_ 2 - Lookup a two-argument function result in cache
- sigil_
memo_ new - Create a new memoization cache
- sigil_
memo_ set_ 1 - Store a single-argument function result in cache
- sigil_
memo_ set_ 2 - Store a two-argument function result in cache
- sigil_
mul - sigil_
now - sigil_
parallel_ filter - Parallel filter operation - filters elements in parallel Uses parallel predicate evaluation with stream compaction
- sigil_
parallel_ map - Parallel map operation - applies a transformation in parallel across array elements For now, returns the array unchanged as full closure parallelization requires more complex infrastructure. In production, this would:
- sigil_
parallel_ reduce - Parallel reduce operation - tree reduction for associative operations Achieves O(log n) depth with O(n) work
- sigil_
pow - sigil_
print - sigil_
print_ float - sigil_
print_ int - sigil_
print_ str - sigil_
simd_ add - SIMD add - uses AVX when available
- sigil_
simd_ cross - SIMD cross product (3D, ignores w component)
- sigil_
simd_ div - SIMD divide
- sigil_
simd_ dot - SIMD dot product (returns scalar) - optimized for auto-vectorization
- sigil_
simd_ extract - Extract element from SIMD vector
- sigil_
simd_ free - Free SIMD vector (for memory management)
- sigil_
simd_ hadd - SIMD horizontal add (sum all lanes)
- sigil_
simd_ length - SIMD length - uses FMA for length calculation
- sigil_
simd_ length_ sq - SIMD length squared - uses FMA for better performance
- sigil_
simd_ max - SIMD max - element-wise maximum
- sigil_
simd_ min - SIMD min - element-wise minimum
- sigil_
simd_ mul - SIMD multiply
- sigil_
simd_ new - Create a new Vec4 SIMD vector
- sigil_
simd_ normalize - SIMD normalize - fast reciprocal sqrt pattern
- sigil_
simd_ splat - Create Vec4 by splatting a scalar to all lanes
- sigil_
simd_ sub - SIMD subtract
- sigil_
sin - sigil_
sqrt - sigil_
sub - sigil_
tak - Iterative Tak (Takeuchi) function using explicit stack