Codish Lexicon
One word for one meaning, One meaning for one word,
Symmetric opposites, Comprehensive classes.
A dictionary of computer programming names.
aka — transitive relation: also known as. "a.k.a." generally means that the present spelling is better (for orthogonality, consistency with a metaphore, whim, or fancy), but another spelling would make sense coming from precedent in another language or linguisitic inferrence. opposite: see ✍
see — transitive relation: the meaning of another name better represents the meaning implied by a given name. opposite: aka ✍
name — a string used to look up a variable in a context python: file: file name.† aka: nomen, term, word ✍
term — see: name, expression ✍
string — an ordered, though not sorted, collection of characters. is: linear collection seuss: text aka: word ✍
context — a stack of scopes. see: continuation mentioned: closure, def, format, lexical scope, name, var ✍
file
— a region of physical memory, moderated by the os, that contains text that one can read, write, and exec. python: file(name[, mode[, buffering]])
attr — an attribute of an object. a setable and getable value associated with a symbol or name in an object. in some languages, attributes are either private, protected, or public. distinct: item python: property c++: member aka: member, property related: pair ✍
bar — the second nominal meta syntactic variable name. is: meta syntactic related: foo, baz, qux, quux ✍
baz — the third nominal meta syntactic variable name. is: meta syntactic related: foo, bar, qux, quux ✍
codish — a hypothetical pragmatic language where name choices are made to satisfy modern programmers, where precedent is favored and orthogonality, symmetry, majority, reason are applied to settle inconsistencies among existing languages and to fill voids where languages do not set precedent, but invention and personal preference are applied sparingly. related: seuss mentioned: distinct, extend, hsv, set ✍
distinct — as distinguished from. In codish and seuss, there is only one meaning for each name, but in natural languages, there are often many meanings for a word and many words for a meaning. If the name does not match the definition you were expecting, it's likely that the princess is in another castle. distinct pertains to names that could infer the given meaning, but have been disambiguated. ✍
enclosure — a closure that is immediately applyed for the purpose of capturing names in a scope without polluting the surrounding name domain. related: closure ✍
flop — seuss: opposite: flip the fourth nominal meta syntactic variable name in the british tradition. is: meta syntactic related: wibble, wobble, wubble opposite: flip ✍
foo — the first nominal meta syntactic variable name. is: meta syntactic related: bar, baz, qux, quux ✍
free var — a variable that has no corresponding name in the lexical scope. a free variable usually refers to a built in var as part of the language. in javascript, free variables may refer to attributes of the global object. aka: free variable related: var ✍
keyword — a name that is reserved by a language, that cannot be used as a variable name in any scope. distinct: global ✍
lexical — pertaining to names. aka: lexical scope ✍
overload — a feature of some object oriented languages with static class systems that allows different function attributes to have the same name but a different pattern of classes for their arguments. related: pattern matching, pattern matching, parameterized types php: enable property and method call overloading for a class &dagger. distinct: override, polymorphism ✍
override — in object oriented programming, to provide a function attr with the same name or symbol as a function attr of a super class, changing the behavior of its family. related: polymorphism distinct: overload aka: overridden ✍
pertains — a transitive relation that represents whether a name is relevant in a given context. ✍
polymorphism — concept: pertains to objects in where a function attribute with a particular symbol or name always satisfies the requirements of a particular interface, class, or duck class, but may do so in different ways with different functions. the facility for providing overriden function attributes. pertains: object oriented programming distinct: overload, pattern matching, parameterized types related: override aka: polymorphic ✍
quux — the fifth nominal meta syntactic variable name. further meta syntactic variables may be constructed with additional "u" characters. is: meta syntactic related: foo, bar, baz, qux ✍
qux — the fourth nominal meta syntactic variable name. is: meta syntactic related: foo, bar, baz, quux ✍
record — a compound data structure, composed of consistently ordered or named attributes or items. see: tuple, object, class ✍
scope — an object that associates symbols or names with values for a block of code and can include a ref to another scope to defer to if a symbol does not exist, conceptually forming a stack with the current scope at the head. related: function aka: lexical scope distinct: local mentioned: closure, context, def, enclosure, global, keyword, stateful, var ✍
seuss — a hypothetical idealistic language where name choices are made to satisfy children, where precedent is rejected in favor of mnemonic orthogonality and symmetry. related: codish mentioned: distinct, fore, set ✍
struct — a compound data structure, composed of consistently ordered or named attributes. see: tuple, object, class ✍
structure — a compound data structure, composed of consistently ordered or named attributes. see: tuple, object, class ✍
tuple
— a linear collection of fixed length. tuples are generally used for records or structures where the value at each index has a particular meaning, but no name, distinguishing it from an object or class of objects (haskell) (python). includes: nuple, single, duple, triple, quadruple, quintuple, sextuple, septuple, octuple, nonuple, decuple, undecuple, duodecuple python: tuple()
| length | name |
|---|---|
| 0 | nuple |
| 1 | single |
| 2 | duple |
| 3 | triple |
| 4 | quadruple |
| 5 | quintuple |
| 6 | sextuple |
| 7 | septuple |
| 8 | octuple |
| 9 | nonuple |
| 10 | decuple |
| 11 | undecuple |
| 12 | duodecuple |
| 13 | tredecuple |
| 14 | quattuordecuple |
| 15 | quindecuple |
| 16 | sexdecuple |
| 17 | septendecuple |
| 18 | octodecuple |
| 19 | novemdecuple |
| 20 | vigenuple |
| 21 | unvigenuple |
| 22 | duovigenuple |
| 23 | trevigenuple |
| 24 | quattuorvigenuple |
| 25 | quinvigenuple |
| 26 | sexvigenuple |
| 27 | septenvigenuple |
| 28 | octovigenuple |
| 29 | novemvigenuple |
| 30 | trigenuple |
| 31 | untrigenuple |
| 32 | duotrigenuple |
| 33 | tretrigenuple |
| 34 | quattuortrigenuple |
| 35 | quintrigenuple |
| 36 | sextrigenuple |
| 37 | septentrigenuple |
| 38 | octotrigenuple |
| 39 | novemtrigenuple |
| 40 | quadragenuple |
| 41 | unquadragenuple |
| 42 | duoquadragenuple |
| 43 | trequadragenuple |
| 44 | quattuorquadragenuple |
| 45 | quinquadragenuple |
| 46 | sexquadragenuple |
| 47 | septenquadragenuple |
| 48 | octoquadragenuple |
| 49 | novemquadragenuple |
| 50 | quinquagenuple |
| 51 | unquinquagenuple |
| 52 | duoquinquagenuple |
| 53 | trequinquagenuple |
| 54 | quattuorquinquagenuple |
| 55 | quinquinquagenuple |
| 56 | sexquinquagenuple |
| 57 | septenquinquagenuple |
| 58 | octoquinquagenuple |
| 59 | novemquinquagenuple |
| 60 | sexagenuple |
| 61 | unsexagenuple |
| 62 | duosexagenuple |
| 63 | tresexagenuple |
| 64 | quattuorsexagenuple |
| 65 | quinsexagenuple |
| 66 | sexsexagenuple |
| 67 | septensexagenuple |
| 68 | octosexagenuple |
| 69 | novemsexagenuple |
| 70 | septuagenuple |
| 71 | unseptuagenuple |
| 72 | duoseptuagenuple |
| 73 | treseptuagenuple |
| 74 | quattuorseptuagenuple |
| 75 | quinseptuagenuple |
| 76 | sexseptuagenuple |
| 77 | septenseptuagenuple |
| 78 | octoseptuagenuple |
| 79 | novemseptuagenuple |
| 80 | octogenuple |
| 81 | unoctogenuple |
| 82 | duooctogenuple |
| 83 | treoctogenuple |
| 84 | quattuoroctogenuple |
| 85 | quinoctogenuple |
| 86 | sexoctogenuple |
| 87 | septoctogenuple |
| 88 | octooctogenuple |
| 89 | novemoctogenuple |
| 90 | nonagenuple |
| 91 | unnonagenuple |
| 92 | duononagenuple |
| 93 | trenonagenuple |
| 94 | quattuornonagenuple |
| 95 | quinnonagenuple |
| 96 | sexnonagenuple |
| 97 | septennonagenuple |
| 98 | octononagenuple |
| 99 | novemnonagenuple |
| 100 | centuple |
| 200 | bicentuple |
| 300 | tricentuple |
| 400 | quadricentuple |
| 500 | quincentuple |
| 600 | sexcentuple |
| 700 | septemcentuple |
| 800 | octocentuple |
| 900 | novemcentuple |
| 1,000 | millenuple |
| 2,000 | bimillenuple |
| 3,000 | trimillenuple |
| 4,000 | quadrimillenuple |
| 5,000 | quinmillenuple |
| 6,000 | sexmillenuple |
| 7,000 | septemmillenuple |
| 8,000 | octomillenuple |
| 9,000 | novemmillenuple |
| 10,000 | decemmillenuple |
var — variable. an attr of a scope that maps a name as a key to a value. syntactically, uttering the name of a variable is an expression that evaluates to the value corresponding to the given name in the current context. related: free var, literal, verbatim distinct: def aka: variable mentioned: export, import, keyword ✍
wibble — the first nominal meta syntactic variable name in the british tradition. is: meta syntactic related: wobble, wubble, flop ✍
wobble — the second nominal meta syntactic variable name in the british tradition. is: meta syntactic related: wibble, wubble, flop ✍
wubble — the third nominal meta syntactic variable name in the british tradition. is: meta syntactic related: wibble, wobble, flop ✍
expression — an element of a program's syntax, typically used to express stateless computation through function application (apply), including algebraic operators. aka: term mentioned: destructure, eval, heap array, literal, lvalue, return, statement, whether ✍
symbol — a unique key for the value of an attr on an object. symbols can be used to accelerate attribute lookup, and to provide a way to avoid name collisions for interface implementations. symbols can be integers with a non-unique string representation. aka: word mentioned: aliaser, del attr, get attr, override, polymorphism, scope, semantics, set attr, syntax ✍
int
— a magnitude-limited integer. a constructor or transitive function for an integer type that may convert strings to integers in a given radix or default to 10, or round floating point or decimal numbers with floor. a linear ordered collection of bits of fixed length. if iterating an integer as a bit vector is supported by a language, it starts from the little end, the lowest magnitude, bit 0. related: floor, ceil classes: nyble, byte, signed, unsigned, int16, int32, int64, uint16, uint32, uint64 python: int(x[, base])
long
— c: usually an int32. a class of int that has a length that is ge the default int length. opposite: short python: long(x[, base])
linear collection — a collection for storage and retrieval of values in a 1-dimensional domain. linear collections can be ordered, sorted, or unordered. linear collections can be unique or nonunique. linear collections may be mappings. interfaces: list, bag, dict, queue, deque, stack implementations: array, chain, tree, hash array, heap array, trie classes: bag, string is: collection mentioned: bague, hash ✍
| ordered | nonunique | list, deque, queue, stack | |
| ordered | nonunique | mapping | ordered multi dict |
| ordered | unique | ordered bag | |
| ordered | unique | mapping | ordered dict |
| sorted | nonunique | sorted multi bag | |
| sorted | nonunique | mapping | sorted multi dict |
| sorted | unique | sorted bag | |
| sorted | unique | mapping | sorted dict |
| unordered | nonunique | multi bag | |
| unordered | nonunique | mapping | multi dict |
| unordered | unique | bag | |
| unordered | unique | mapping | dict |
Some collections are defined by the subset of the collection interface that they implement. By declaring the subset of a collection interface that you intend to use, you provide performance optimization opportunities for the underlying implementation. For example, if you only use push and pop, the implementation can be chain with nearly instantaneous storage and retrieval.
| push | pop | shift | unshift | random access | interface |
|---|---|---|---|---|---|
| push | pop | shift | unshift | random access | list |
| push | pop | shift | unshift | deque | |
| push | shift | queue | |||
| push | pop | stack |
order — mentioned: ancestors, children, concat, descendants, fifo, heap array, int, lexicographic, record, seq, stable, string, struct, structure, uniq ✍
collection — a class of compound objects that contain and organize values. attrs: len, has, get, set, reset, getset, put, del, cut, insert, remove, discard, empty, erase classes: linear collection, planar collection, spatial collection seuss: que classes: dict related: compound ✍
char — a character in text, associated with a codepoint number of arbitrary precision, albeit from the ascii, unicode, or any other charset. a transitive function that coerces numbers and chars to chars. c: often stored in a wchar_t int class. aka: character, chr distinct: byte, character classes: letter ✍
| charset | bit length |
|---|---|
| ascii | 7 |
| eascii | 8 |
| ucs2 | 16 |
| ucs4 | 32 |
| utf8 | 8-32 |
| utf16 | 16-32 |
attrs — a collection of attr for an object's attributes. is analogous to items on a dict. in javascript, attrs and items are the same except for arrays and strings. aka vars in python. aka: symbols, vars ✍
begins — returns whether an ordered linear collection, like a string, begins with the same values in another ordered collection. python: startswith aka: starts with opposite: ends aka: startswith related: end pertains: ordered ✍
©2009 Kris Kowal
Codish Lexicon by Kris Kowal is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.
