Vocabulary index
Factor handbook

Prev:Libraries
Next:Article index


Vocabulary tags
Vocabulary authors

Children from resource:core
VocabularySummary
alienC library interface
arraysFixed-size arrays
assocsAssociative structure protocol
byte-arraysEfficient fixed-length byte arrays
byte-vectorsGrowable byte arrays
checksumsChecksum protocol and implementations
classesObject system implementation
combinatorsComplex conditionals (cond, case) and generalized dataflow combinators (cleave, spread)
compilerFactor's optimizing machine code compiler
continuationsCapturing and restorating continuations, catching errors
definitionsDefinition protocol and cross-referencing
destructorsObject destructors
effectsStack effects as first-class data types
frySyntax for pictured partial application and composition
generalizationsGeneralized stack shufflers and combinators to arbitrary numbers of inputs
genericGeneric word implementation
graphsDirected graphs
growableLow-level implementation of vectors and string buffers
hash-setsSet structure with constant-time addition and removal
hashtablesAssociative structure with expected constant time lookup
initStartup and initialization hooks
ioStream protocol
kernelData and control flow, basic object protocol
layoutsLow-level in-memory object layout introspection
lexerFactor source code lexer
localsEfficient named local variables and lexical closures
macrosUtility for defining compiler transforms
makeSequence construction utility
mathArithmetic
memoizeMemoization
memoryHeap introspection support
namespacesDynamically-scoped variables
parserFactor source code parser
quotationsCode quotations, essentially executable fixed-size arrays
rangesVirtual sequence consisting of a range of numbers
sbufsGrowable string buffers
sequencesSequence protocol, combinators and utilities
setsSet-theoretic operations on sequences
slotsLow-level object introspection support
sortingMerge sort for sequences
source-filesSupport for tracking loaded source files
splittingSplitting sequences and grouping sequence elements
stringsFixed-size character arrays
summaryGeneric word for converting an object into a brief one-line string
syntaxStandard Factor syntax
systemOS and CPU queries and other system-level tasks
vectorsGrowable arrays
vocabsVocabularies are collections of words loaded from a source file
wordsWords are the fundamental units of code


Children from resource:basis
VocabularySummary
alienC library interface
asciiASCII character classes
atkAtk binding
base64Base64 encoding/decoding (RFC 3548)
biassocsBidirectional assocs
binary-searchFast searching of sorted arrays
bit-arraysFixed-size bit arrays
bit-setsEfficient bitwise operations on bit arrays
bit-vectorsGrowable bit arrays
bitstreamsReading sequences of bits from a byte stream
bloom-filtersBloom filters
bootstrap
boxesAn abstraction for enforcing a mutual-exclusion invariant
cacheAn associative mapping whose entries expire after a while
cairoCairo graphics library binding
calendarOperations on timestamps and durations
cborSupport for Concise Binary Object Representation (CBOR)
channelsCommunicating Sequential Processes
checksumsChecksum protocol and implementations
circularVirtual sequence presenting a rotation of an underlying sequence
classesObject system implementation
cocoaObjective C/Cocoa bridge
colorsColors as a first-class data type
columnsVirtual sequence view of a matrix column
combinatorsComplex conditionals (cond, case) and generalized dataflow combinators (cleave, spread)
command-lineCommand line argument parsing
compilerFactor's optimizing machine code compiler
compression
concurrency
constructorsUtility to simplify tuple constructors
core-foundationBinding to Mac OS X CoreFoundation library
core-graphicsBinding to Mac OS X Core Graphics library
core-textBinding for Mac OS X Core Text library
couchdb
cpu
crypto
csvCSV parser
cuckoo-filtersCuckoo filters
dbRelational database abstraction layer
debuggerPrinting errors, inspecting tracebacks, restarts
definitionsDefinition protocol and cross-referencing
delegateDelegation and mimicking on top of the Factor object system
dequesDouble-ended queue protocol and common operations
disjoint-setsAn efficient implementation of the disjoint-set data structure
dlistsDouble-linked lists/deques
dns
documentsMutable structure for storing a plain text document being edited in memory
editorsEditor integration
endianUtilities for working with big-endian and little-endian data
englishEnglish language
environmentEnvironment variables
escape-strings
etc-hostsParsing the /etc/hosts file
evalAd-hoc evaluation of strings of code
farkupSimple markup language for generating HTML
fixups
fontsFonts as a first-class data type
formattingFormat data according to a specified format string
ftpCommon code shared by FTP client and server
functorsFirst-class syntax
furnaceFurnace web framework
game
gdk2Gdk binding
gioGIO binding
gir
glibGLib binding
globsUnix shell-style glob pattern matching
gmoduleGModule binding
gobjectGObject binding
gobject-introspectionGObjectIntrospection support
groupingGrouping sequence elements into subsequences
gtk2Gtk binding
hash-setsSet structure with constant-time addition and removal
hashtablesAssociative structure with expected constant time lookup
heapsMaxheap and minheap implementations of priority queues
helpOnline help system
hintsSyntax sugar for the Factor compiler's specializer hints facility
htmlHTML utilities
httpCommon code shared by HTTP client and server
imagesBitmap images
ini-fileParses INI configuration files.
inspectorTerminal-based object viewer and editor
interpolateInterpolating variable values into strings
interval-mapsInterval maps for disjoint closed ranges
interval-sets
inverseInvertible quotations
ioStream protocol
iokitBindings to Apple IOKit device interface
ip-parser
jsonJSON reader and writer
lcsLevenshtein distance and diff between sequences
libcManual memory management for interfacing with C
linked-assocsAssocs that yield items in insertion order
linked-setsSets that yield items in insertion order
linux
listenerTerminal-based interactive code evaluator
listsImplementation of lisp-style linked lists
literalsExpression interpolation into sequence literals
localsEfficient named local variables and lexical closures
loggingLogging framework with support for log rotation and machine-readable logs
matchML-style pattern matching
mathArithmetic
memoizeMemoization
method-chainsBEFORE: and AFTER: syntax for extending methods in class hierarchies
mime
mirrorsView any object as an association mapping slots to values
modelsObservable slots which can be composed in various ways
msgpackSupport for msgpack protocol.
multilineMultiline string literals
named-tuplesUse tuples like both sequences and assocs
nibble-arraysSpace-efficient arrays of 4-bit values
nmakeGeneralization of make for constructing several sequences simultaneously
ntpClient for NTP protocol
oauth1
oauth2
openglOpenGL binding
opensslOpenSSL binding
packPacking and unpacking binary data
pangoPango binding
pegParsing expression grammar and packrat parser
persistent
porter-stemmerPorter stemming algorithm
presentGeneric word for converting objects to strings for human consumption
prettyprintFactor source code prettyprinter
promisesLazy thunks
protocols
quoted-printableQuoted printable encoding/decoding
quoting
randomRandom number generator protocol and implementations
refsReferences to keys and values in assocs
regexpRegular expressions
reservoir-sampling
resolv-conf
retries
romanRoman numerals library
search-dequesDouble-ended queues with sub-linear membership testing
seePrinting loaded definitions as source code
sequencesSequence protocol, combinators and utilities
serializeBinary serialization of arbitrary object graphs
shuffleAdditional shuffle words
simple-flat-fileParsing simple text files
simple-tokenizerSimple string tokenizer
slotsLow-level object introspection support
smtpSending mail via SMTP
sortingMerge sort for sequences
source-filesSupport for tracking loaded source files
specialized-arraysArrays of unboxed primitive C types
specialized-vectorsVectors of unboxed primitive C types
splittingSplitting sequences and grouping sequence elements
stack-checkerStack effect inference
stringsFixed-size character arrays
suffix-arraysSuffix arrays
syndicationRSS 1.0, 2.0 and Atom feed parser
system-infoQuery the operating system for hardware information in a platform-independent way
threadsCo-operative threading
timersOne-time and recurring timers for relative time offsets
tomlParsers for Tom's Obvious, Minimal Language (TOML).
tools
trFast character-to-character translation of ASCII strings
tuple-arraysEfficient arrays of tuples with value semantics for elements
typedStrongly-typed word definitions
uiFactor's graphical user interface framework
unicodeUnicode support
unixBindings to library and system calls found on Unix-like systems
unrolled-listsDeque implementation with constant-time insertion and removal at either end, and better space efficiency than a double-linked list
urlsTools for working with URLs (uniform resource locators)
uuSupport for uuencoding and uudecoding.
uuidGenerates UUID's.
validatorsValue validation for the web framework
vectorsGrowable arrays
vlistsPersistent sequence implementation optimizing the case where there is no sharing
vmLayout of the C vm structure
vocabsVocabularies are collections of words loaded from a source file
webbrowserOpen URLs in your web browser
windowsMicrosoft Windows XP/Vista/7 API bindings
wrapWord wrapping
x11X11 Xlib and GLX bindings
xdgXDG Base Directory Specification
xmlXML reader and writer
xml-rpcXML RPC client and server
xmode


Children from resource:extra
VocabularySummary
24-game
7guis
99-bottles
L-system
alienC library interface
anagrams
annotationsCode annotation comment syntax
arraysFixed-size arrays
asn1ASN.1 parser
assocsAssociative structure protocol
audioFramework for reading and playing back audio
aws
backblaze
backoff
backticksBacktick process syntax
backtrackSimple non-determinism
bankBank account simulator for compound interest calculated daily and paid monthly
bareBARE (https://baremessages.org) encoding/decoding.
base16Base 16 encoding/decoding (RFC 3548)
base24Base24 encoding/decoding
base32Base 32 encoding/decoding (RFC 3548)
base32-crockfordDouglas Crockford's Base 32 encoding/decoding
base32hexBase 32 encoding/decoding with Extended Hex Alphabet (RFC 4648)
base36Base36 encoding/decoding
base58Base58 encoding/decoding
base62Base62 encoding/decoding
base85Base85 encoding/decoding
base91Base91 encoding/decoding
bech32Bech32 encoding/decoding
benchmarkVarious benchmarks to test Factor's optimizer
bencodeSupport for bencoding.
binhexEncoding and decoding of BinHex 4.0 files
bitcoin
bitlyWrapper for bit.ly URL shortening web service
bittorrentBitTorent protocol for peer-to-peer file sharing.
boidsArtificial life program simulating the flocking behaviour of birds
boolean-exprSimple boolean expression evaluator and simplifier
boyer-mooreBoyer-Moore string search algorithm
brain-flakA Brain-flak to Factor compiler
brainfuckBrainfuck programming language.
broadcast-server
bsonBSON (http://en.wikipedia.org/wiki/BSON) reader and writer
bubble-chamber
build-from-source
build-support
bunnyStanford Bunny OpenGL demo
c
cairo-demo
cairo-gadgetsUI gadget for rendering graphics with Cairo
cairo-samples
calendarOperations on timestamps and durations
capCreating and displaying screenshots of Factor
certs
cgiSupport using Factor in CGI scripts
changer
checksumsChecksum protocol and implementations
chess960
chipmunk
chrome-tools
classesObject system implementation
cli
clutterClutter binding
codebase-analyzer
codebook
color-pickerColor picker gadget demo
color-picker-gameColor picker game
color-table
colorsColors as a first-class data type
combinatorsComplex conditionals (cond, case) and generalized dataflow combinators (cleave, spread)
command-loopGeneric line-oriented command interpreter.
compilerFactor's optimizing machine code compiler
compression
containers
contributorsContributor patch counts from git
coroutinesCoroutines implementation
countriesCountry-specific codes including ISO 3166-1
cpu
crontabParser for crontab files
crypto
csexpCsexp (https://www.wikiwand.com/en/Canonical_S-expressions) reader and writer
ctagsCtags generator
cuda
cuesheetParsing cue sheet (cue files)
curlBindings to libcurl
cursesncurses binding
cursors
dbRelational database abstraction layer
dbfParsers for various dBase database files
decimals
demos
descriptiveDescriptive errors generated automatically for specially defined words
diceRandom dice rolls (with modifiers)
did-you-mean
digraphsSimple directed graph implementation for topological sorting
discord
docker
drunken-bishopDrunken bishop visual checksum algorithm
duckdb
dwarf
ecdsaElliptic Curve Digital Signature Algorithm (OpenSSL realisation)
echo-server
elevateCross-platform API for elevated permissions
elfConstants and structs related to the ELF object format.
emojify
enigmaEnigma cipher machine
envAccess environment variables via the assoc protocol
euler
fastcgi
fftwBindings to FFTW3.
file-monitorCommand-line file change monitor
file-picker
file-serverCommand-line HTTP file server
fjscA 'subset of Factor' to Javascript compiler
flamegraph
flip-textTurns text upside-down.
fluids
format-using
freetypeFreeType text rendering library binding
fuelFUEL turns Emacs into a rich, interactive development environment for Factor,
furnaceFurnace web framework
game
game-of-lifeConway's Game of Life
gamelib
gap-bufferGap buffer data structure
gdbmGNU DataBase Manager
geminiGemini client
generatorsGenerators implementation
geo-ipIP address geolocation using database from http://software77.net/cgi-bin/ip-country/
geobytesCity, country, region database using database from http://www.geobytes.com/GeoWorldMap.zip
geohashGeohash geocoding system.
gesture-loggerGadget which logs all received gestures, for debugging
gilded-rose
gir
git
github
glfw
gml
golden-sectionGolden section demo
google
gopherGopher client
gpuHigh-level OpenGL-based GPU resource management and rendering library
graphviz
gravatarWrapper for the Gravatar service.
grid-meshes
groupingGrouping sequence elements into subsequences
gstreamerGStreamer binding
gtk-samples
hacker-news
hamurabiPort of the HAMURABI.BAS game
hashcashHashcash implementation
hello-uiGraphical hello world demo
hello-unicodeModern "Hello world" which demonstrates various Unicode scripts
hello-worldTextual hello world demo
helpOnline help system
hetzner
hipkuEncoding IPv4/IPV6 addresses as haiku
htmlHTML utilities
html5
http2
icfp
id3
ifaddrs
imagesBitmap images
imapReading mailboxes using IMAP
infixSupport for infix notation in Factor programs
ioStream protocol
irc
iso-codes
itunes
jamshredA simple 3d tunnel racing game
jsonJSON reader and writer
key-handlers
key-logger
koszulLie algebra cohomology
lcd7-segment LCD clock demo
ldcache
leb128LEB128 (Little Endian Base 128) encoding support
libclang
libtls
libudevBindings to libudev
libusbBindings to libusb
lintFinds potential mistakes in code
lisppasteXML-RPC interface to http://paste.lisp.org
listsImplementation of lisp-style linked lists
literateLiterate programming techniques
llvm
log-viewerSimple log file watcher demo using io.monitors
logic
long-urlsExpand short urls.
lru-cacheLeast Recently Used (LRU) cache
luaFFI bindings to the Lua programming language.
machine-learning
machoConstants and structs related to the Mach object format.
magiclibmagic binding
managed-server
markov-chainsMarkov chain processes.
marvel
masonContinuous build system for Factor
mathArithmetic
mazeMaze generator demo
mediawiki
memcachedProvides access to memcached, a high-performance, distributed memory object caching system.
memoryHeap introspection support
merger
metarMETAR and TAF weather parsers
midiReading and writing MIDI files
minesweeperMinesweeper game
model-viewer
modelsObservable slots which can be composed in various ways
modern
monadsHaskell-style monads
moneyUtility for calculating money with rationals
mongodbMongoDB Factor integration
morseConverts between text and morse code, and plays morse code.
msxml-to-csvConverting MSXML to comma separated values demo
multi-methodsExperimental multiple dispatch implementation
multisets
namespacesDynamically-scoped variables
native-thread-test
neheNeHe OpenGL tutorials ported to Factor
noise
notifications
npm
numbers-gameNumber guessing game demo
nurbsNURBS curve evaluation
odbcODBC (Open DataBase Connectivity) binding
oggOgg media library binding
openaiOpenAI API
openalOpenAL 3D audio library binding
openclHigh-level vocabulary for using OpenCL
openglOpenGL binding
pair-methodsOrder-insensitive double dispatch generics
pair-rocketH{ "foo" => 1 "bar" => 2 } style literal syntax
pairsAssoc implementation optimized for a single key/value pair
papier
parser-combinatorsHaskell-style lazy parser combinators
partial-continuationsPartial continuations - breset/bshift
path-findingA* path-finding algorithm
pcrelibpcre binding
pcre2libpcre2 binding
pdfCreating PDF files
pegParsing expression grammar and packrat parser
periodic-tablePeriodic table gadget demo
persistency
picomathImplementation of picomath.org small math functions
pingUses ICMP to test the reachability of a network host.
pokerPoker hand evaluator
pong
pop3Retrieve mail via POP3
process-autopsy
processing
progress-bars
project-eulerProject Euler example solutions
proquintProquint encoding/decoding
punycodePunycode and Internationalized Domain Names
pythonPython interface
qtkit
quadtreesQuadtree spatial indices
quiz
qwPerlish syntax for literal arrays of whitespace-delimited strings (qw{ foo bar })
randomRandom number generator protocol and implementations
raygui
raylibBindings for Raylib 4.5
readlinelibreadline bindings
readline-listenerA listener that uses libreadline.
recipesDatabase backed recipe sharing
redditReddit API
redisWords for communicating with the Redis key-value database
reports
rlglBindings for rlgl
robohashRobohash!
robots
rocksdb
rolesMixins for tuples
roms
rosetta-code
rot13Rot13 demo
rpnSimple RPN calculator
ryuFloat to string conversion
s3Amazon S3 Wrapper
scryfall
semver
sequencesSequence protocol, combinators and utilities
setsSet-theoretic operations on sequences
shapefilesParsers for ESRI Shapefiles
shell
site-watcher
slidesBare-bones tools for giving presentations and demonstrations with the Factor UI
slotsLow-level object introspection support
smalltalk
snake-game
sodiumThe Sodium crypto library
solr
sortingMerge sort for sequences
soundexPhonetic algorithm for indexing names by sound
spellingPeter Norvig's spelling corrector
spheresDraw pixel-perfect spheres using GLSL shaders
spider
splittingSplitting sequences and grouping sequence elements
spotlight
stack-as-data
stream
string-server
subrip-subtitles
successor
sudokuSudoku solver demo
sudokusgraphical sudoku solver
svgParsers for SVG data
syntaxStandard Factor syntax
synthSimple sound synthesis using OpenAL.
syslogSyslog protocol
tar
taxes
tensors
terminal
terminfoReads terminfo database files
terrainWalk around on procedurally generated terrain
tetrisGraphical Tetris game
text-analysisPerform analysis on English text.
text-to-pdfText-to-PDF converter.
text-to-speechText-to-speech utility
tftp
time
time-server
tinyvgParsers for the TinyVG image format
tldrtldr pages (simplified and community-driven man pages)
tnetstringsReader and writer for "tagged netstrings"
tokencase
tokyo
tools
totpRFC 6238 Time-Based One-Time Passwords
trails
treesBinary search trees
tty-serverConnect to a Factor listener through telnet
turingTuring machine simulator
twitterWrapper for Twitter web service
txonTXON (http://www.hxa.name/txon/) reader and writer
tzinfoParsing timezone files.
uiFactor's graphical user interface framework
ulidUniversally Unique Lexicographically Sortable Identifier
unicodeUnicode support
units
usa-cities
variables
variantsSyntax and combinators for manipulating algebraic data types
verbal-expressionsHuman-readable regular expressions
vinVIN (Vehicle Identification Number)
visionectVisionect Server Management API
vocabsVocabularies are collections of words loaded from a source file
vulkan
wake-on-lanWake-on-LAN support
wasm
webapps
webkit-demoA simple example showing usage of the Cocoa WebKit framework from Factor
websites
wikipediaWikipedia
window-controls-demoOpen windows with different control sets
windowsMicrosoft Windows XP/Vista/7 API bindings
wipeErase files by overwriting contents with random data
wolfram-alphaQuery API for Wolfram Alpha
wordlet
wordtimerMicrosecond precision code timer/profiler.
xkcdComics from the http://xkcd.com website
yahooYahoo! search example using XML
yaml
yencEncoding and decoding of the yEnc format
youtubeWrapper for YouTube.com API.
z-algorithmZ algorithm for pattern preprocessing
zealot
zeromqBindings to 0MQ (zeromq).
zimParsers for the ZIM file format
zoneinfo


Children
VocabularySummary
accessors
multiple-board-demo
scratchpad