fmt

fmt (third-person singular simple present fmts, present participle fmting, simple past and past participle fmted)

fmts (present singular third-person)
fmting (participle present)
fmted (participle past)
fmted (past)


type class

type classes (plural)
typeclass (alternative)

A type class is defined with a trait that defines the abstraction. It can have any extension (instance) methods, as well as type-level members, meaning across instances.

2021, Dean Wampler, chapter 5, in Programming Scala, 3rd edition, O'Reilly, →ISBN:

(programming) A type system construct that supports ad hoc polymorphism (independent of the type hierarchy), first pioneered in Haskell.


delimited continuation

en-noun

delimited continuation (plural delimited continuations)

So named because they capture only a portion of the call stack.

An interesting alternative, which addresses some of the modularity problems, is a delimited''' continuation; for example, a delimited''' continuation might capture just a portion of the evaluation stack, up to a delimiter that works a bit like long-label, and turn it into a function.

2022, Norman Ramsey, Programming Languages: Build, Prove, and Compare, Cambridge University Press, →ISBN, page 243:

functional programming
functional programming

(functional programming) A continuation that returns a value and can be composed.


multistring

The AIM screen name of person as a multistring with two labels: kABAIMWorkLabel, and kABAIMHomeLabel

2003, Michael Beam, James Davidson, Cocoa in a Nutshell:

Multistring values are relatively simple to edit.

2006, Guy Hart-Davis, Mastering Windows XP Home Edition, page 320:

After that, two possibilities are offered: the first is to recover a string by thresholding the multistring and the second is to transform the Pattern Recognition algorithm that uses the median to use multistrings instead of strings.

2008, Niels da Vitoria Lobo, Takis Kasparis, Michael Georgiopoulos, Structural, Syntactic, and Statistical Pattern Recognition, page 432:

(programming, data structures) A data structure that represents multiple text strings.


kangaroo code

Sometimes, especially when working on large projects or with multiple programmers, it can become hard to avoid kangaroo code, that is, code that jumps from function to function and even jumps around within the same class.

2016, J. F. DiMarzio, The Debugger's Handbook, page 25:

(programming, slang, rare) Poorly structured program code consisting of many jumps.


KVO

KVO, on the other hand, is a mixed bag. It can be useful, and it can cause trouble. It's implemented in a highly magical way, and some of its usage is quite awkward.

2014, Rob Napier, Mugunth Kumar, iOS 7 Programming Pushing the Limits, John Wiley & Sons, →ISBN, page 406:

(programming, Apple platforms) Initialism of key-value observing.


pseudostatement

LL-Q1860 (eng)-Flame, not lame-pseudostatement.wav

If the label of a BEGIN pseudostatement is missing, the preceding and following cards are tested for clues: […]

1972, Bary W. Pollack, Compiler Techniques, page 287:

(programming) A construct resembling a statement that is not a true statement.


UFCS

Nim's default import behavior allows flexible Uniform Function Call Syntax (UFCS) and operator overloading.

2017, Dominik Picheta, Nim in Action, Simon and Schuster, →ISBN:

Uniform Function Call Syntax
w:Uniform Function Call Syntax

(programming) Initialism of Uniform Function Call Syntax.


DevEx

[…] ensure that the platform teams have a focus on user experience (UX) and particularly developer experience (DevEx).

2019, Matthew Skelton, Manuel Pais, Team Topologies: Organizing Business and Technology Teams for Fast Flow, IT Revolution, →ISBN:

developer experience
developer experience#English

(programming) Abbreviation of developer experience.


Squiggol

Blend of squiggly + ALGOL, from the “squiggly” symbols it uses.

The overall goal of Squiggol is to calculate programs from their specifications in the way a mathematician calculates solutions to differential equations, or uses arithmetic to solve numerical problems.

1991 June, Erik Meijer, Maarten Fokkinga, Ross Paterson, “Functional programming with bananas, lenses, envelopes and barbed wire”, in Proceedings of the 5th ACM conference on Functional programming languages and computer architecture, Berlin, Heidelberg: Springer-Verlag, →DOI, →ISBN, pages 124–144:

(functional programming, humorous) The Bird–Meertens formalism.


if-then

if-thens (plural)
if/then (alternative)
if–then (alternative)

List Formatter makes properly-spaced & indented listings with page breaks; each statement on new line, if-thens and loops called out; a great de-bugger!

Storing (closed) predicate definitions in this form (if all the predicates are so stored, and there never were any cuts or if-thens in the first place, we have the well-known "completion" of a logic program) makes the coding of source-level tools simpler.

1985, 1985 Symposium on Logic Programming: July 15-18, 1985; Sheraton Boston Hotel Boston, Mass., IEEE Computer Society Press, →ISBN, page 71:

1. The problem is well bounded, 2. There are many empirical if/thens that lead to a correct solution, 3. The total number of if/thens is sufficient to bring you close to a right answer (Mazur 1987).

1989 December, David W. Long, Michael R. Wagner, “Insect Pest Management Expert Systems in Multiresource Management of Ponderosa Pine”, in Multiresource Management of Ponderosa Pine Forests: Nov. 14 - 16, 1989, Flagstaff, Arizona (General Technical Report RM-185), page 260:

Many if-thens will degrade vector performance below that of a scalar version that computes only the correct branch.

1992, Donald L. DeAngelis, Louis J. Gross, editors, Individual-Based Models and Approaches in Ecology: Populations, Communities and Ecosystems, Chapman and Hall, →ISBN, pages 154–155:

Think of this process as programming with pictures, complete with loops, pauses, if-thens, and so on.

Finally, they use descriptions and statements from set theory to provide material for flowcharting problems that contain multiple decisions (nested if-thens).

2000, Harold J. Rood, Logic and Structured Design for Computer Programmers, Brooks/Cole, →ISBN, page ix:

Simple statements (like assignments and if-thens) are executed serially.

2001, Mark Guzdial, Squeak: Object-Oriented Design with Multimedia Applications, Prentice Hall, →ISBN, page 35:

But I think that the badge system is very motivating, and if one of your goals is to get students to become more proficient in the programming, then this is certainly a way to do that. Because you set not a very high bar toward attaining these things and some of them I think are quite challenging – you know, doing the ones for lists, and the if-thens, and all that.

2004, Jim, quotee, “Co-Evolution of Design and Pedagogy Online”, in Sasha A. Barab, Rob Kling, James H. Gray, editors, Designing for Virtual Communities in the Service of Learning (Learning in Doing: Social, Cognitive and Computational Perspectives), Cambridge University Press, →ISBN, page 253:

However, you can neither create multiple if-thens that execute simultaneously, nor create a rule based on a file’s Kind—so this utility’s utility is limited (November 2003).

Have you noticed any similarities between “programming” a mechanical system and writing software? / The logical problems are absolutely the same. In the mechanical and in the computer, there are equivalents of variables and if-thens.

2005 February, Make: Technology on Your Time, volume 01, O’Reilly Media, Inc., →ISBN, page 160:

There’s some recursive programming in her that gives more weight to associative and metaphorical thinking than to logical if-thens.

2012, Kim Stanley Robinson, 2312, Hachette, →ISBN:

(programming) A conditional statement; a line of code that specifies a Boolean condition to check and a statement to execute when that Boolean evaluates to true.


BEAM

Elixir is a functional, dynamic language built on top of Erlang and the Erlang VM (BEAM).

2016, Kenny Ballou, Learning Elixir, Packt Publishing Ltd, →ISBN, page 1:

Bogdan's Erlang Abstract Machine
w:BEAM (Erlang virtual machine)

(programming, Erlang) Acronym of Bogdan's Erlang Abstract Machine.


bottom type

A new notion to many Java developers will be the idea that a class hierarchy can have common bottom types. These are types that are subtypes of all types. Scala's types Null and Nothing are both bottom types.

2017, Toby Weston, Scala for Java Developers: A Practical Primer, Apress, →ISBN, page 25:

(type theory, programming) The type that is a subtype of all other types.


carry-lookahead

A simpler scheme is to connect the carry-ins and carry-outs of the units in a ripple chain. This approach is most common in chip design because the wiring for the carry-lookahead tree is hard to design and area-consuming.

2004, Wayne Wolf, FPGA-Based System Design:

(programming) A command that checks whether there will be a carry (bit or digit that is carried in an addition operation) for the current digit in an ongoing addition operation.


alloc

en-verb

alloc (third-person singular simple present alloc's, present participle alloc'ing, simple past and past participle alloc'ed)

alloc's (present singular third-person)
alloc'ing (participle present)
alloc'ed (participle past)
alloc'ed (past)

If you simply use alloc then init, you can't check for the existence of the object before it gets alloc'ed. If you use a single +new method (or something similar), then you can check for the existence of the object before it gets allocated in memory.

1994 June 12, Eric M Hermanson, “Re: +new vs. +alloc -init”, in comp.sys.next.programmer (Usenet):

Alloc enough space for any possible padding.

2001, John Viega, Gary R. McGraw, Building Secure Software:

Among the things this analyzer is capable of detecting is simple memory leaks. For example, it can find an object you alloc'ed but forgot to release.

2011, Stephen G. Kochan, Programming in Objective-C, page 413:

Could not alloc enough memory

2012, Helmut J. Helpenstein, CAD Geometry Data Exchange Using STEP, page 86:

Generally, the data ins the stack should not be changed, a simple packing would choose to push such information into the stack (to alloc a new space on the stack).


SoA

(programming) Initialism of structure of arrays.


trace scheduling

(programming) An optimization technique for compilers that rearranges traces (instruction sequences) according to their frequency of execution, and inserts additional code to compensate for any effects of the rearrangement.


back pointer

back pointers (plural)
back-pointer (alternative)
backpointer (alternative)

(programming) A pointer that reciprocates another structure's pointer to its own containing structure, typically found in doubly linked lists and trees.


call-with-current-continuation

en-noun

call-with-current-continuation (countable and uncountable, plural call-with-current-continuations or calls-with-current-continuation)

call-with-current-continuations (plural)
calls-with-current-continuation (plural)

(programming) In Scheme, a procedure that captures the current continuation to pass it as an argument to another continuation.


enbugging

From en- + bug + -ing, coined as an opposite to debugging.

(programming, humorous, rare) The introduction of bugs into a program.


template metaprogramming

(programming) A form of metaprogramming in which templates are used by a compiler to generate temporary source code, which is then merged with the rest of the source code and recompiled.


service worker

(Internet, programming) A scriptable network proxy in a web browser that manages network requests for a web page.


nano-COM

(programming) The use of a very small subset of the Component Object Model, focused exclusively on the Application Binary Interface (ABI) aspects that enable function and method calls across independently compiled modules.


Parsons problem

Parsons problem (plural Parsons problems)

A kind of computer programming puzzle in which the respondent is asked to choose from a selection of source code fragments in order to construct a program that will solve a given problem.


DBSCAN

(programming) Initialism of density-based spatial clustering of applications with noise, a data clustering algorithm.


programming socks

LL-Q1860 (eng)-Flame, not lame-programming socks.wav

(Internet slang) Particularly feminine thigh-highs, facetiously touted as a way to improve one's programming by transfemmes and femboys in the computing community.


FOIT

(web development) Initialism of flash of invisible text.


xBase

Chosen to avoid lawsuits over the unauthorized use of the proprietary name dBASE. See x (“an unknown variable or placeholder”).

programming language
programming language

(programming) Any programming language that derives from, or is a clone of, the dBASE system.


xvalue

(programming) A value representing an object near the end of its lifetime whose resources can be reused, typically by moving them.


locale-aware

(computing, programming) The automatic detection of a user's language and country settings, thereby supplying the corresponding content at the same URLs.


fixme

(programming, colloquial) A comment explaining that a section of code requires fixing in some way.


fencepost error

fencepost error (plural fencepost errors)

(programming) An off-by-one error arising from the fencepost problem.


Allman style

Named after American computer programmer Eric Paul Allman (born 1955).

(programming) An indentation style for source code in which the brace associated with a control statement is placed on the following line, indented to the same level as the control statement. Statements within the braces are indented to the next level.


autovivification

(programming) The process of autovivifying.


autovivify

en-verb

autovivify (third-person singular simple present autovivifies, present participle autovivifying, simple past and past participle autovivified)

autovivifies (present singular third-person)
autovivifying (participle present)
autovivified (participle past)
autovivified (past)

(programming) In the Perl programming language, to create an array or hash automatically when a previously undefined value is dereferenced.


language server

en-noun

language server (plural language servers)

(programming) A server, implemented in software, that provides language-related services to client applications such as source code editors, based on the text being edited and the actions taken by the human editor.


prvalue

Short for pure rvalue. According to Bjarne Stroustrup, coined by ISO/IEC JTC 1/SC 22 in 2010.

(programming) An rvalue that is not an xvalue.


rvalue reference

rvalue reference (plural rvalue references)

(programming) In C++, a reference which is bound to an rvalue.


referenceness

(programming, rare) The quality of being a reference or a reference type.


binding time

binding time (countable and uncountable, plural binding times)

(programming) The point in time when symbolic references to data are converted into physical machine addresses.

(programming) The point in time when a variable is assigned its type in a programming language.


assembly time

assembly time (countable and uncountable, plural assembly times)

(programming) The amount of time required for a computer to translate symbolic computer language into instructions of a machine language.


wakelock

wakelocks (plural)
wake lock (alternative)

(programming) A lock that can be acquired by software for the purpose of preventing the mobile device from going into a locked standby state during a particular operation.


deoptimizer

(programming) A process or algorithm that deoptimizes.


Atwood's Law

Coined by American software developer, author, blogger and entrepreneur Jeff Atwood in 2007 (see quotation below).

coinage

This was later codified in a more formal W3C document, The Rule of Least Power. I propose a corollary to this rule, which in the spirit of recent memes, I'll call Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.

2007 July 17, Jeff Atwood, “The Principle of Least Power”, in Coding Horror, archived from the original on 2024-02-07:

Since that time, web developers have produced nearly every type of application, including full-blown, cloud-based office suites (see Zoho.com), social APIs like Facebook's JavaScript SDK, and even graphically intensive video games. ¶ All of this is serving to prove Atwood's Law (http://bit.ly/1pFCjtR): "Any application that can be written in JavaScript, will eventually be written in JavaScript."

2014, Eric Elliott, Programming JavaScript Applications, Sebastopol, C.A.: O'Reilly, →ISBN, page 2:

(programming, humorous) A tongue-in-cheek "law" of software development stating that "any application that can be written in JavaScript, will eventually be written in JavaScript."


rest operator

From rest (“that which remains”), as it is often used to provide the last few arguments to a function call.

(programming) An operator that collapses a number of individual values into an array.


spread operator

en-noun

spread operator (plural spread operators)

The spread operator causes the elements of a collection to be treated as individual parameters to functions that accept a variable number of arguments.

2021, David Greenhalgh, Josh Skeen, Andrew Bailey, Kotlin Programming: The Big Nerd Ranch Guide:

(programming) An operator that expands an array or similar data structure into its individual elements.


rest parameter

(programming) A final parameter to a function, allowing it to accept an indefinite number of arguments as an array.


spread syntax

(programming) The use of the spread operator in source code.


polymorphic iteration

polymorphic iteration (countable and uncountable, plural polymorphic iterations)

When we write methods that take iterators as parameters, we are using polymorphic iteration.

2004, Eric Freeman, Elisabeth Robson, Bert Bates, Head First Design Patterns: A Brain-Friendly Guide, page 347:

The results described here provide the foundations for a series of results, including the definition of a linear version of Gödel's system Τ with a decidable typing system for polymorphic iteration.

2007, Sandra Alves, Maribel Fernández, Mário Florido, Ian Mackie, “Linear Recursive Functions”, in Hubert Comon-Lundh, Claude Kirchner, Hélène Kirchner, editor, Rewriting, Computation and Proof, page 184:

Use the Iterator pattern to provide a uniform interface for traversing different aggregate structures (that is, to support polymorphic iteration).

2011, Amnon H. Eden, Codecharts: Roadmaps and blueprints for object-oriented programs, page 145:

(computing, programming) The use of an iterator class or interface to enable traversal over the members of any type of collection for which there is a corresponding descendant of that iterator by code which need not know the type of the collection.


varint

This is the case with the number of inputs in a normal transaction, so using varints helps to save space.

2019, Jimmy Song, Programming Bitcoin: Learn How to Program Bitcoin from Scratch, O'Reilly, →ISBN, page 91:

(programming) Clipping of variable-length integer.


slugify

en-verb

slugify (third-person singular simple present slugifies, present participle slugifying, simple past and past participle slugified)

slugifies (present singular third-person)
slugifying (participle present)
slugified (participle past)
slugified (past)

The slugify filter will slugify the given string: […]

2020, Nigel George, Mastering Django, GNW Independent Publishing, page 68:

(programming, uncommon) To transform (a string) into a slug.


Joda-Time

Derives from a four letter name, beginning with the letter j whose domain name was available at the time. It is not an acronym.

Several alternative Date replacement packages emerged, including the simple and sensible Date4J and the more comprehensive Joda-Time package.

2001, Ian F. Darwin, Java Cookbook, page 617:

Joda time is a complete alternative to the JDK date and time classes and seeks to replace them.

Joda-Time is a powerful open source library well known and used in the market that works with time, dates, and chronology:

2014, Rodrigo Turini, Practical Java 8 - Lambdas, Streams and New Resources:

Later the decision was made to integrate Joda-Time or something similar to it into Java's core libraries

2015, Terrill Brett Spell, Pro Java 8 Programming, page 94:

The design of these classes was inspired by the Joda-Time library, which is a popular open-source date and time library for Java.

2023, Cybellium Ltd, Mastering Java, page 156:

(computing, software, programming) A widely used date and time processing library.


referand

(programming, rare) A referent; that which is referred to.


Boehm collector

en-noun

Boehm collector (plural Boehm collectors)

(programming) A kind of mark-and-sweep garbage collector .


empty string

From empty (“containing no elements”) + string (“ordered sequence of text characters”).

com

(programming) A string with a length of zero.


Time Simulator

(computing, programming) A stack-based simulation language.


Time Complex Simulator

(computing, programming) A complex and arithmetic version of the Time Simulator language.


aspectualize

en-verb

aspectualize (third-person singular simple present aspectualizes, present participle aspectualizing, simple past and past participle aspectualized)

aspectualizes (present singular third-person)
aspectualizing (participle present)
aspectualized (participle past)
aspectualized (past)

The mixin and aspect code generators in JULIA provide a lightweight, flexible yet efficient means to aspectualize components.

2004, Eric Bruneton, Thierry Coupaye, Matthieu Leclercq, Vivien Quema, Jean-Bernard Stefani, Ivica Crnkovic, “An Open Component Model and Its Support in Java”, in Component-Based Software Engineering:

Many works are dedicated to aspectualize component models.

2010, Abdelhakim Hannousse, Gilles Ardourel, Re/mi Douence, “Views for Aspectualizing Component Models”, in Bram Adams, Michael Haupt, Daniel Lohmann, editor, Proceedings of the 9th Workshop on Aspects, Components, and Patterns for Infrastructure Software, page 25:

(programming) To use as an implementation for aspects.


stack-based

(computing, programming) Of data, utilizing one piece of data from atop the stack, and returning data back atop the stack.


time parameter

(programming) A parameter that represents time.


system time

en-noun

system time (countable and uncountable, plural system times)

(computing, programming) The passage of time of a computer system, including the passing of days on the calendar.


coding time

coding time (countable and uncountable, plural coding times)

(programming) The amount of time required from the first commit, to a branch, eventually the submission of a pull request.


date-time

(programming) Of or pertaining to the datetime variable or data type.


overcomment

en-verb

overcomment (third-person singular simple present overcomments, present participle overcommenting, simple past and past participle overcommented)

overcomments (present singular third-person)
overcommenting (participle present)
overcommented (participle past)
overcommented (past)

(transitive, programming) To annotate (code) with too many comments.


undercomment

undercomment (third-person singular simple present undercomments, present participle undercommenting, simple past and past participle undercommented)

undercomments (present singular third-person)
undercommenting (participle present)
undercommented (participle past)
undercommented (past)

LL-Q1860 (eng)-Flame, not lame-undercomment.wav

(transitive, programming) To annotate (code) with too few comments.


superalgorithm

(programming) An algorithm made up of lesser algorithms (subalgorithms).


vararg

(programming) Any of the arguments to a variadic function.


subject-oriented

(computing, programming) Of or pertaining to a software paradigm in which the state (fields) and behavior (methods) of objects are not seen as intrinsic to the objects themselves, but are provided by various subjective perceptions ("subjects") of the objects.


hack up

hack up (third-person singular simple present hacks up, present participle hacking up, simple past and past participle hacked up)

hacks up (present singular third-person)
hacking up (participle present)
hacked up (participle past)
hacked up (past)

(transitive, programming) To quickly and simply create (a piece of code).


language-oriented

(programming) Of or pertaining to a software development technique that involves creating a new programming language to solve problems, in which the programmer treats a language as a software building block.


data-oriented

software engineering
software engineering

(programming) Of or pertaining to a software engineering approach that focuses on data as the central point of an application.


component-oriented

(programming, software engineering) Of or pertaining to a software development approach that focuses on building components that are loosely-coupled and reusable.


attribute-oriented

(programming, software engineering) Of or pertaining to a technique that adds metadata, or attributes, to program code, which affect the system's semantics.


agent-oriented

(programming, software engineering) Of or pertaining to a programming paradigm where the construction of the software is centered on the concept of externally specified software agents.


process-oriented

(programming, software engineering) Of or pertaining to a programming paradigm that separates the concerns of data structures and the concurrent processes that act upon them.


prototype-oriented

object-oriented programming
object-oriented programming

(programming, software engineering) Of or pertaining to a style of object-oriented programming that uses existing objects as prototypes to reuse behavior.


role-oriented

computer programming
computer programming

(programming, software engineering) Of or pertaining to a form of computer programming which aims at expressing objects in terms that are analogous to a human conceptual understanding of the world.


C family

en-noun

C family (usually uncountable, plural C families)

(programming) Any one of the several programming languages which share significant features of the C programming language.


LLL

low-level language
low-level language#English

(programming) Initialism of low-level language.


-lang

From lang, itself a shortened form of language.

"One of the biggest ones to point out is that async runtimes are still a bit unclear," noted Thomas. He also said the learning curve was difficult, which chimes with top obstacles to Rust adoption revealed in Rustlang's most recent survey of developers.

2020 April 30, Liam Tung, “Microsoft: Why we used programming language Rust over Go for WebAssembly on Kubernetes app”, in ZDNET, archived from the original on 2024-06-30:

Threat actors are increasingly shifting to "exotic" programming languages such as Go, Rust, Nim, and Dlang that can better circumvent conventional security protections, evade analysis, and hamper reverse engineering efforts.

2021 July 27, Ravie Lakshmanan, “Hackers Turning to 'Exotic' Programming Languages for Malware Development”, in The Hacker News, archived from the original on 2024-05-20:

I don't mind people saying Golang. Once. In a title or a tag or something. So search engines can find it. Once. Once. Fucking once.

[2021 October 8, u/theclapp, “What's up with people not liking the term "golang"?”, in Reddit, r/golang, archived from the original on 2024-08-11:

For the Golang community, it didn't help that the language came out of Google, an advertising platform with accessories.

2023 May 17, Thomas Claburn, “Google Go language goes with opt-in telemetry”, in The Register, archived from the original on 2024-08-02:

Vlang's simplicity and performance are promising, but its novelty results in a lack of comprehensive libraries and the small community. The language is also under constant changes which may cause instability and compatibility issues.

2023 July 26, Alex Lashkov, “The New Wave of Programming Languages: Pony, Zig, Crystal, Vlang, and Julia”, in Hackaday, archived from the original on 2024-07-08:

The researchers noted that DLang is an uncommon choice for writing malware, but a shift towards newer languages and frameworks is one that's been accelerating over the last few years – in malware coding as in the larger programming world.

2023 December 11, Connor Jones, “Memory-safe languages so hot right now, agrees Lazarus Group as it slings DLang malware”, in The Register, archived from the original on 2024-08-02:

programming languages
programming language#Noun

(programming, informal) Combining with the names of programming languages, especially those which may be confused with common English words.


HKT

higher-kinded type
higher-kinded type#English

(programming) Initialism of higher-kinded type.


Lubarsky's law of cybernetic entomology

The origin of the name Lubarsky in this connection is unknown.

(programming) The humorous observation that any given program always contains at least one more bug.


copartition

copartitions (plural)
co-partition (alternative)

(programming) A partition of data streams such that the data in each of the streams has the same partition configuration.


copartition

en-verb

copartition (third-person singular simple present copartitions, present participle copartitioning, simple past and past participle copartitioned)

copartitions (present singular third-person)
copartitioning (participle present)
copartitioned (participle past)
copartitioned (past)
co-partition (alternative)

(programming, of partitioned data streams) To ensure that two streams of partitioned data have matching partition configurations.


docroot

Another common use of docroots gives people private web sites on a web server. A typical convention maps URIs whose paths begin with a slash and tilde (/~) followed by a username to a private document root for that user. The private docroot is often the folder called public_html inside that user's home directory, but it can be configured differently (Figure 5-10).

2002, David Gourley, Brian Totty, HTTP: The Definitive Guide, Beijing, Sebastopol, C.A.: O'Reilly, →ISBN, page 122:

(web development) A folder located on a web server which contains all of a website's pages.


niebloid

From Niebler + -oid, named after Eric Niebler.

If your libraries should provide customization points, it's probably a good idea to implement them using niebloids.

2021 April 23, Adrian Ostrowski, Piotr Gaczkowski, Software Architecture with C++, Packt, →ISBN, page 172:

The niebloids suppress ADL by not being functions. Only functions have overloads to be resolved.

2022 April 14, Bo Persson, “ambiguous reference to 'find' in std and std::ranges namespaces”, in comp.lang.c++ (Usenet):

(programming) An entity that can be called as a function but which is not visible to argument-dependent name lookup.


precedence rule

en-noun

precedence rule (plural precedence rules)

(computing theory, programming) A set of rules specifying the order in which parts of an expression are parsed, especially when parentheses are not present.


option type

(programming) A polymorphic type that represents encapsulation of an optional value.


barrel file

The first thing you want to do to build your framework is export the functions that you want to expose to the developer using it from the src/index.js barrel file. Whatever you export from this file makes the public API of the framework.

2024, Ángel Sola Orbaiceta, Build a Frontend Web Framework (From Scratch), Shelter Island, N.Y.: Manning Publications Co., →ISBN, page 111:

(programming) A JavaScript or TypeScript module which does nothing except import various files and then export them together, for the convenience of other developers who only need to know about and work with that single barrel file.


curly bracket language

curly bracket language (plural curly bracket languages)

curly-bracket language
curly-bracket language#English

(programming) Alternative form of curly-bracket language.


curly braces language

curly braces language (plural curly braces languages)

curly-braces language
curly-braces language#English

(programming) Alternative form of curly-braces language.


curly brace language

curly brace language (plural curly brace languages)

curly-brace language
curly-brace language#English

(programming) Alternative form of curly-brace language.


drawcall

(computer graphics, programming) The sending of a command to the graphics API.


prototype-based scripting language

prototype-based scripting language (usually uncountable, plural prototype-based scripting languages)

prototype-based scripting languages (plural)

(computing, programming) A programming language that uses prototypes to allow objects to inherit properties and methods from other objects.


if-then-else

(programming) A statement that executes different code based on whether a condition is true or false.


nowdoc

now + doc, modelled on earlier heredoc, with now as another adverb indicating presence.

(programming) In the PHP programming language, a kind of here document that does not interpolate variables.


scrutinee

The reason that simpl doesn't make progress here is that it notices that, after tentatively unfolding bar m, it is left with a match whose scrutinee, m, is a variable, so the match cannot be simplified further.

2024, Benjamin C. Pierce et al., Logical Foundations (Software Foundations):

(functional programming) The expression that is matched against a pattern matching construct.


binary blob

You put up with the closed hardware because it performs well, and it supports the standard software, development tools, and APIs that keep the computing world spinning. For others, it's anathema—if you can't see the source code for these "binary blobs," they are inherently untrustworthy and should be used sparingly or not at all.

2022 January 31, Andrew Cunningham, “Review: MNT Reform laptop has fully open hardware and software—for better or worse”, in Ars Technica, archived from the original on 2024-09-28:

(programming, often derogatory) A piece of software which is only available as a binary file (as opposed to being open-source), thus making the program very difficult to audit or modify.


off-by-one bug

off-by-one error
off-by-one error#English

(programming) Synonym of off-by-one error.


facet name

(computing, programming) A technical name that identifies a facet in code, such as in a shortcode.


HTTP verb

(programming, Internet) A HTTP method; any of a predefined set of words (such as GET, OPTIONS or POST) that are part of an HTTP request and indicate the desired action to be performed on a given resource.


direct buffer

(computing, programming) A portion of native memory that is shared with Java and can be used for direct reads.


non-direct buffer

non-direct buffer (plural non-direct buffers)

(computing, programming) A buffer whose underlying data is a byte array that is allocated in the Java heap area.


OBOE

(programming) Initialism of off-by-one error.


PLINQ

(programming, .NET) Acronym of Parallel Language Integrated Query.


semicoroutine

Each incarnations needs some block structure information (static and dynamic link, display or such like), a return label, n+1 label variables for the activation points of the cooperation (in the "semicoroutine" case) and of the n coprocedures and the space needed for parameters and locals.

1974, Information Processing (IFIP transactions: Computer science and technology), Unesco, page 409:

C# 2.0 added semi-coroutine functionality through the iterator pattern and yield keyword.

2024, Vaskaran Sarcar, Parallel Programming with C# And . NET: Fundamentals of Concurrency and Asynchrony Behind Fast-Paced Applications, Apress, →ISBN, page 359:

(programming) A type of coroutine with limited control over its execution flow that can yield values multiple times, suspending its execution and allowing the caller to resume it later. However, unlike full coroutines, semicoroutines do not specify where the execution will continue after yielding; control is always returned to the caller.


membar

The crucial thing to remember about memory visibility is that the perceived *sequence* of two operations is not guaranteed to be the same as seen from two different threads unless membars are used to guarantee it.

2003 September 25, Mike Mowbray, “Threads and initialization only once”, in comp.programming.threads (Usenet):

(systems programming) A memory barrier (an instruction that enforces an ordering constraint on memory operations issued before and after it).


metaprogrammable

(programming) Having support for metaprogramming.


procedure call

(computing, programming) A statement that invokes a procedure in a program.


incrementalize

en-verb

incrementalize (third-person singular simple present incrementalizes, present participle incrementalizing, simple past and past participle incrementalized)

incrementalizes (present singular third-person)
incrementalizing (participle present)
incrementalized (participle past)
incrementalized (past)

(programming, transitive) To make (an operation) incremental, using results from previous iterations instead of performing a complete recalculation every time.


golflang

Clipping of golfing language. By surface analysis, golf + -lang.

esoteric programming language
esoteric programming language

(programming) An esoteric programming language designed for code golf.


embeddable programming

(programming) The use of programming languages to create software for embedded systems.


hidden code

(computing, programming) Code that is embedded in software or another system and is disguised to make it difficult to detect.


programming style

en-noun

programming style (countable and uncountable, plural programming styles)

(programming) The conventions and patterns used in writing source code, resulting in a consistent and readable codebase.


CPython

reference implementation
reference implementation

(programming) A reference implementation of the Python programming language, written in both C and Python.


outcase

(programming, rare) A condition that allows code to break out of a recursive routine.


MVI

(computing, programming) Initialism of Model–View–Intent.


cross-thread

(programming) Occurring across more than one thread of execution.


tibble

Playful alteration of table, from a pronunciation of "tbl" as an acronym.

(data science, R programming, colloquial) A type of data frame with more user-friendly features.

data science; R programming; data science; R programming


CoffeeScript

(programming) A programming language that compiles to JavaScript.


vibe coding

Coined by Slovakian-Canadian AI researcher Andrej Karpathy in February 2025 (see quotation).

coinage

There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.

[2025 February 2, @karpathy [Andrej Karpathy], Twitter, archived from the original on 2025-02-03:

Not all of my vibecoding experiments have been successful. I've been struggling for weeks to build an "inbox autopilot" tool capable of responding to my emails automatically, in my writing style. I've encountered roadblocks when trying to integrate A.I. work flows into apps like Google Photos and iOS Voice Memos, which aren't designed to play well with third-party add-ons.

2025 February 27, “Not a Coder? With A.I., Just Having an Idea Can Be Enough.”, in The New York Times, New York, N.Y.: The New York Times Company, →ISSN, →OCLC, archived from the original on 2025-03-14:

With all this vibe coding going on, we had to turn to an expert for some input. Simon Willison, an independent software developer and AI researcher, offered a nuanced perspective on AI-assisted programming in an interview with Ars Technica. "I really enjoy vibe coding," he said. "It's a fun way to try out an idea and prove if it can work."

2025 March 5, Benj Edwards, “Will the future of software development run on vibes?”, in Ars Technica, archived from the original on 2025-03-15:

large language model
large language model#Noun

(programming, neologism) A method of programming in which a developer generates source code by repeatedly prompting a large language model, and has a very limited awareness of how the code actually functions.


vibecode

en-verb

vibecode (third-person singular simple present vibecodes, present participle vibecoding, simple past and past participle vibecoded)

vibecodes (present singular third-person)
vibecoding (participle present)
vibecoded (participle past)
vibecoded (past)

You don’t have to know how to code to vibecode — just having an idea, and a little patience, is usually enough.

large language model
large language model

(intransitive, programming) To program by repeatedly prompting a large language model rather than understanding how the code functions.

lập trình theo cảm hứng

to program by repeatedly prompting a large language model


vibe coder

Who are the vibe coders?

AI coding assistant Cursor reportedly tells a 'vibe coder' to write his own damn code

2025 March 14, Julie Bort, “(article title)”, in TechCrunch, archived from the original on 2025-03-15:

(programming, neologism) Someone who generates source code by repeatedly prompting a large language model, and has a very limited awareness of how the code actually functions; someone who engages in vibe coding.


reentrantly

Also, just like MySpinLock in the previous section, SpinLock cannot be acquired reentrantly.

2010, Trey Nash, Accelerated C# 2010, [Berkeley, C.A.]: Apress, →ISBN, page 385:

Connections from the amygdala to long-term memory and working memory and attention circuits are also reentrantly engaged, facilitating retrieval of semantic and episodic memories of the threat.

2015, Joseph LeDoux, Anxious: The Modern Mind in the Age of Anxiety, London: Oneworld Publications, →ISBN, page 229:

(chiefly programming) In a reentrant manner (in various senses).


out of process

(computing, programming) Of a component or a server, operating in a separate process space from the calling application.


little language

en-noun

little language (plural little languages)


signature-compatible

(programming) Of two functions or methods, having the same number and types of parameters, and the same return type, allowing one to be used in place of the other.


return type

(programming) A specification of the data type of the value that a function or method returns to its caller.


cache busting

(web development) The practice of serving a file with modified URLs to prevent browsers from confusing it with locally cached files.


richlet

(programming) A small Java program that creates all the necessary components for a given page in response to a user's request.


sysroot

From sys (“system”) + root (“the highest directory of a directory structure”).

af

The toolchain also comes with a matching sysroot for the target device because it needs access to various headers and libraries necessary to run on the target architecture. The sysroot is generated from the root filesystem and uses the same metadata configuration.

2016, Alexandru Vaduva, Alex Gonzalez, Chris Simmonds, Linux: Embedded Development, Birmingham, Mumbai: Packt Publishing Ltd., →ISBN, page 146:

(programming) A directory containing all the header files, configuration files and libraries required to build a program, often used in cross-compilation.


writemask

A destination element is not updated with the result of the operation if the corresponding writemask bit is not set. Instead, the destination element value must be preserved (merging-masking) or it must be zeroed out (zeroing-masking).

2025 March, Intel 64 and IA-32 Architectures Software Developer's Manual, volume 1, page 15-9:

(programming) A bitmask which controls which bits are written to a memory location during some operation.


subleaf

When CPUID executes with EAX set to 07H and the input value of ECX is invalid (see leaf 07H entry in Table 1-17), the processor returns 0 in EAX/EBX/ECX/EDX. In subleaf 0, EAX returns the maximum input value of the highest leaf 7 sub-leaf, and EBX, ECX & EDX contain information of extended feature flags.

2025 March, Intel 64 and IA-32 Architectures Software Developer's Manual, volume 2A, page 3-257:

(programming, x86) A particular value of the ECX register when a program runs the CPUID instruction within a certain leaf (the value of EAX); each subleaf represents a specific category of information returned about the processor.


wild pointer

dangling pointer
dangling pointer#English

(programming) Synonym of dangling pointer.


C-style comment

en-noun

C-style comment (plural C-style comments)

(programming) A (possibly multiline) comment enclosed by the symbol sequences /* and */.


Cnile

it's almost 2023 and cniles still can't handle generics. bit sad innit?

Cniles will literally create this abomination rather then^([sic]) just using a language with OOP support

2024 March 10, @NoctreSharp, Twitter, archived from the original on 2025-05-18:

I've dealt with a lot of Cniles in my time who have dismissed the importance of pattern matching for general programming, but then pointed to projects that rely heavily on custom pattern matching esolangs for their operation.

2024 June 29, u/dostosec, “Why ml/ocaml are good for writing compilers”, in Reddit, r/Compilers, archived from the original on 2025-05-18:

I have a theory that the only reason why Rustaceans hate Crust is because it actually democratizes Rust. "No, I spent so much time learning how to fight the Borrow Checker and these god damn Cniles just put unsafe everywhere!!!". Get with the times Luddites!

2025 May 15, @tsoding, Twitter, archived from the original on 2025-05-18:

(Internet slang, programming, derogatory) A C programmer, especially one who dismisses newer programming languages.


retroware

retroware (usually uncountable, plural (nonstandard) retrowares)

/ˈɹɛt.ɹəʊˌwɛə/

/ˈɹɛt.ɹoʊˌwɛɹ/

/ˈɹet.ɹəʉˌweː/

/ˈɹet.ɹəʉˌweə̯/

/ˈɾɛʈ.ɾoːˌwɛːʳ/

Blend of retro + software /hardware, or from retro- (“old-fashioned or old-school”) + -ware (“software”). First attested in 1995, but in common usage only as of the 21st century.

etydate

Microsoft itself has shown only two games for Win 95: Fury3, a Descent-like flight sim, and Return of Arcade, another retroware disk.

1995 June 28, Rob Pegoraro, “Behind the Screens”, in The Washington Post, archived from the original on 2025-05-22:

The March issue of Wired looks at retroware, the growing use of older computers, in an article by Mark Frauenfelder titled “Never Say Die”.

2000 March 10, “Other voices”, in The Houston Chronicle:

p.s. My source for the ESC/P2 are old retroware/retro-computing software and the data will be coming out of 8-bit system emulators.

2005 February 27, David, “Input=ESC/P2; Output=tiff... Any drivers/software?”, in comp.periphs.printers (Usenet), retrieved 2025-05-22:

(computing, informal, programming, software) Old software/hardware.


cell-oriented programming

(programming) A programming paradigm where the fundamental unit of computation is a self-contained cell that can process and store data and communicate with other cells.


data-driven programming

(programming) A programming paradigm where data, rather than explicit control flow logic, guides a program's behavior.


macroroutine

(programming) A macroscale or large-scale routine.

(programming) A routine implemented using one or more macros.


microroutine

(programming) A microscale routine, one written in microcode.


intent filter

An intent filter declares that this application component is capable of handling or processing a specific type of intent when it matches the filter's criteria.

2012, Lauren Darcey, Shane Conder, Android Wireless Application Development, Volume I, page 132:

(computing, programming) A declaration within an application's manifest file that specifies the types of intents (messages) that a component is capable of handling.


manifest file

(computing, programming) A file containing metadata for a group of accompanying files that are part of a set or coherent unit.