Vocabulary | Summary |
hashtables.identity | Hashtables keyed by object identity (eq?) rather than by logical value (=) |
lexer | Factor source code lexer |
Vocabulary | Summary |
alien.libraries | |
alien.parser | Utilities used in implementation of alien parsing words |
classes.struct | Tuple-like access to structured raw memory |
cpu.x86.assembler | x86 assembler |
cpu.x86.assembler.operands | x86 registers and memory operands |
cpu.x86.sse | |
game.input | Cross-platform joystick, gamepad, and raw keyboard input |
game.input.dinput | DirectInput backend for game.input |
game.input.iokit | IOKit HID Manager backend for game.input |
game.input.scancodes | Scan code constants for HID keyboards |
grouping | Grouping sequence elements into subsequences |
images.loader.cocoa | Image loading using macOS's native Cocoa APIs |
iokit | Bindings to Apple IOKit device interface |
iokit.hid | HID Manager bindings |
literals | Expression interpolation into sequence literals |
math.floats.env | IEEE 754 floating-point environment querying and control (exceptions, rounding mode, and denormals) |
math.floats.half | Half-precision float support for FFI |
math.matrices | Matrix arithmetic |
math.vectors.conversion | Conversion, packing, and unpacking of SIMD vectors |
opengl | OpenGL binding |
opengl.capabilities | Testing for OpenGL versions and extensions |
opengl.debug | Helper words for breaking and interactively manipulating OpenGL applications |
opengl.framebuffers | Rendering to offscreen textures using the GL_EXT_framebuffer_object extension |
opengl.gl.windows | |
opengl.gl.x11 | |
opengl.gl3 | Forward-compatible subset of OpenGL 3.1 |
opengl.shaders | OpenGL Shading Language (GLSL) support |
sequences.complex | Virtual sequence wrapper to convert real pairs into complex values |
sequences.complex-components | Virtual sequence wrapper to convert complex values into real value pairs |
sequences.product | Cartesian products of sequences |
sequences.unrolled | Unrolled fixed-length sequence iteration |
tools.deploy.embed | Embed a Factor image into a VM to create a single standalone executable file |
tools.deprecation | Tracking usage of deprecated words |
tools.profiler.sampling | Sampling profiler |
tools.test.fuzz | |
typed | Strongly-typed word definitions |
ui.pixel-formats | Cross-platform OpenGL context pixel format specifiers |
unix.signals | Signal handling |
vocabs.metadata | Managing vocabulary author, tag and summary information |
windows.com | COM interface |
windows.com.syntax | Parsing words for defining COM interfaces |
windows.com.wrapper | Wrap Factor objects with implementations of COM interfaces |
windows.directx.dinput | DirectInput bindings |
windows.dragdrop-listener | Drop files onto listener window |
windows.dwmapi | Windows Vista Desktop Window Manager API functions |
windows.ole32 |
Vocabulary | Summary |
alien.data.map | Combinators for mapping over packed binary data |
alien.fortran | GNU Fortran/G77/F2C alien interface |
alien.handles | Generate integer handle values to allow Factor object references to be passed through the FFI |
annotations | Code annotation comment syntax |
audio | Framework for reading and playing back audio |
audio.engine | Audio playback engine |
audio.loader | Read PCM audio data from uncompressed audio files |
audio.vorbis | Ogg Vorbis audio streaming for audio.engine |
bunny | Stanford Bunny OpenGL demo |
classes.struct.vectored | Derive a tuple of specialized arrays from a struct class |
classes.tuple.change-tracking | Tuple classes that keep track of when they've been modified |
codebook | |
cuda.demos.prefix-sum | |
cursors | |
env | Access environment variables via the assoc protocol |
game.input.demos.joysticks | Demonstrate gamepad and joystick input |
game.input.demos.key-caps | Graphical keyboard diagram |
game.loop | Game loop |
game.models.half-edge | Iterators for half-edge geometry structures |
game.worlds | World class that integrates game loop and game input |
gpu | High-level OpenGL-based GPU resource management and rendering library |
gpu.buffers | Buffers in GPU memory |
gpu.demos.bunny | Stanford Bunny with shader effects |
gpu.demos.raytrace | Real-time GPU-accelerated raytracing of reflective spheres |
gpu.framebuffers | Render targets for GPU operations |
gpu.render | Execution of GPU jobs |
gpu.shaders | GPU programs that control vertex transformation and shading |
gpu.shaders.prettyprint | |
gpu.state | GPU state manipulation |
gpu.textures | Multidimensional image data in GPU memory |
gpu.util | Miscellaneous functions useful for GPU library apps |
gpu.util.wasd | Scaffolding for demo scenes that can be explored using FPS-style controls |
images.atlas | Tool for generating an atlas image from an array of images |
images.viewer.prettyprint | Prettyprint image objects as images |
io.encodings.detect | Heuristic auto-detection of text encodings and binary files |
math.affine-transforms | Affine transforms for two-dimensional vectors |
math.blas.ffi | Low-level bindings to the Basic Linear Algebra Subroutines (BLAS) library |
math.blas.matrices | BLAS level 2 and 3 matrix-vector and matrix-matrix operations |
math.blas.vectors | BLAS level 1 vector operations |
math.matrices.extras | Matrix arithmetic - extra and miscellaneous words |
math.matrices.simd | SIMD accelerated 4x4 matrix math |
math.vectors.homogeneous | Homogeneous coordinate math |
memory.piles | Preallocated raw memory blocks |
memory.pools | Preallocated pools of tuple objects |
nurbs | NURBS curve evaluation |
opengl.demo-support | Common support for OpenGL demos |
pair-methods | Order-insensitive double dispatch generics |
pair-rocket | H{ "foo" => 1 "bar" => 2 } style literal syntax |
qtkit | |
quadtrees | Quadtree spatial indices |
qw | Perlish syntax for literal arrays of whitespace-delimited strings (qw{ foo bar }) |
roles | Mixins for tuples |
sequences.inserters | Direct the output of map-as, filter-as, etc. combinators into existing growable sequences |
sequences.n-based | Sequence adaptor to treat a sequence as an n-based assoc |
sequences.squish | Sequence flattening with parameterized descent predicate |
slots.macros | Macro interface to accessors |
spheres | Draw pixel-perfect spheres using GLSL shaders |
svg | Parsers for SVG data |
terrain | Walk around on procedurally generated terrain |
Wrapper for Twitter web service | |
variants | Syntax and combinators for manipulating algebraic data types |
vocabs.git | |
window-controls-demo | Open windows with different control sets |