https://github.com/rossant/programming-yin-yang
A list of antonyms commonly used in programming
https://github.com/rossant/programming-yin-yang
antonyms bestpractices codequality glossary naming-conventions programming words
Last synced: 3 months ago
JSON representation
A list of antonyms commonly used in programming
- Host: GitHub
- URL: https://github.com/rossant/programming-yin-yang
- Owner: rossant
- Created: 2017-11-30T12:22:33.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-08-09T20:15:09.000Z (over 7 years ago)
- Last Synced: 2025-03-14T04:30:48.528Z (9 months ago)
- Topics: antonyms, bestpractices, codequality, glossary, naming-conventions, programming, words
- Homepage:
- Size: 10.7 KB
- Stars: 12
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# A list of antonyms commonly used in programming
> There are only two hard things in Computer Science: cache invalidation and naming things. ― Phil Karlton
Good programmers name things well. Finding the most appropriate and common terms for complex concepts and abstractions may be difficult, especially for non-native English speakers. This page proposes English words and antonyms that are commonly used in programming.
This is a work in progress, feel free to open issues and propose pull requests.
One related effort is Microsoft's list of PowerShell verbs, "Approved Verbs for PowerShell Commands", https://docs.microsoft.com/en-us/powershell/developer/cmdlet/approved-verbs-for-windows-powershell-commands
## abstract / concrete
[Abstract type](https://en.wikipedia.org/wiki/Abstract_type).
## accept / reject
## acquire / release
[Concurrent computing](https://en.wikipedia.org/wiki/Concurrent_computing).
[Acquire and release semantics](http://preshing.com/20120913/acquire-and-release-semantics/).
[Mutex](https://en.wikipedia.org/wiki/Mutual_exclusion), [semaphores](https://en.wikipedia.org/wiki/Semaphore_(programming)).
## add / remove
## allocate / free
[Memory management](https://en.wikipedia.org/wiki/Memory_management).
## allow / deny
## ancestor / descendent
[Trees](https://en.wikipedia.org/wiki/Tree_(data_structure)).
## and / or
[Boolean algebra](https://en.wikipedia.org/wiki/Boolean_algebra).
## any / all
[Quantifiers](https://en.wikipedia.org/wiki/Quantifier_(logic)).
## assemble / disassemble
[Assembly language](https://en.wikipedia.org/wiki/Assembly_language).
[Disassembler](https://en.wikipedia.org/wiki/Disassembler).
## assign / deassign
## attach / detach
## authorize / unauthorize
## balance / unbalance
## begin / end
## best / worse
## bind / unbind
[Network socket](https://en.wikipedia.org/wiki/Network_socket).
## blocking / non-blocking
## break / continue
[Control flow](https://en.wikipedia.org/wiki/Control_flow).
## client / server
[Client-server model](https://en.wikipedia.org/wiki/Client%E2%80%93server_model).
## coalesce / fragment
[Coalescing](https://en.wikipedia.org/wiki/Coalescing_(computer_science)).
[Fragmentation](https://en.wikipedia.org/wiki/Fragmentation_(computing)).
[Memory segmentation](https://en.wikipedia.org/wiki/Memory_segmentation).
[Memory management](https://en.wikipedia.org/wiki/Memory_management_(operating_systems)).
## coarse / fine
[Granular computing](https://en.wikipedia.org/wiki/Granular_computing).
[Granularity](https://en.wikipedia.org/wiki/Granularity_(parallel_computing)).
## commit / rollback
[Rollback](https://en.wikipedia.org/wiki/Rollback_(data_management)).
[Database transaction](https://en.wikipedia.org/wiki/Database_transaction).
[Version control](https://en.wikipedia.org/wiki/Version_control).
## compile / decompile
## compress / decompress
[Data compression](https://en.wikipedia.org/wiki/Data_compression).
## confirm / cancel
## conjunction / disjunction
[Logical conjunction](https://en.wikipedia.org/wiki/Logical_conjunction).
[Logical disjunction](https://en.wikipedia.org/wiki/Logical_disjunction).
[Mathematical logic](https://en.wikipedia.org/wiki/Mathematical_logic).
## connect / disconnect
## constant / variable
## construct / destruct
[Constructor (object-oriented programming)](https://en.wikipedia.org/wiki/Constructor_(object-oriented_programming)).
[Destructor](https://en.wikipedia.org/wiki/Destructor_(computer_programming)).
[Creational pattern](https://en.wikipedia.org/wiki/Creational_pattern).
## consume / produce
[Producer-consumer problem](https://en.wikipedia.org/wiki/Producer%E2%80%93consumer_problem).
## contiguous / noncontiguous
[Difference Between Contiguous and Noncontiguous Memory Allocation](https://techdifferences.com/difference-between-contiguous-and-non-contiguous-memory-allocation.html).
## continuous / discontinuous
[Continuous function](https://en.wikipedia.org/wiki/Continuous_function).
## create / destroy
## cyclic / acyclic
[Cyclic graph](https://en.wikipedia.org/wiki/Cyclic_graph).
[Directed acyclic graph](https://en.wikipedia.org/wiki/Directed_acyclic_graph).
[Cycle](https://en.wikipedia.org/wiki/Cycle_(graph_theory)).
[Cycle graph](https://en.wikipedia.org/wiki/Cycle_graph).
[Graph theory](https://en.wikipedia.org/wiki/Graph_theory).
## decidable / undecidable
[Decidability](https://en.wikipedia.org/wiki/Decidability_(logic)).
[Decision problem](https://en.wikipedia.org/wiki/Decision_problem).
## definite / indefinite
## deterministic / stochastic
[Deterministic system](https://en.wikipedia.org/wiki/Deterministic_system).
[Stochastic process](https://en.wikipedia.org/wiki/Stochastic_process).
## digital / analog
[Digital signal](https://en.wikipedia.org/wiki/Digital_signal).
[Analog signal](https://en.wikipedia.org/wiki/Analog_signal).
## direct / indirect
## direct / inverse
## dirty / clean
[Dirty data](https://en.wikipedia.org/wiki/Dirty_data)
## divide / conquer
[Divide and conquer algorithm](https://en.wikipedia.org/wiki/Divide_and_conquer_algorithm)
## download / upload
## drag / drop
## enable / disable
## enlarge / narrow
## enqueue / dequeue
## enter / leave (exit)
## expand / collapse
[Accordion (UI)](https://en.wikipedia.org/wiki/Accordion_(GUI)).
## extend / shorten
## FIFO / LIFO
[Stack (abstract data type)](https://en.wikipedia.org/wiki/Stack_(abstract_data_type))
## finite / infinite
## first / last
## fold / unfold
[Fold (higher-order function)](https://en.wikipedia.org/wiki/Fold_(higher-order_function)).
## forget / remember
## forward / backward
## free / bound
[Free variables and bound variables](https://en.wikipedia.org/wiki/Free_variables_and_bound_variables).
## freeze / unfreeze
## front / back
[Front and back ends](https://en.wikipedia.org/wiki/Front_and_back_ends).
[Multiple buffering](https://en.wikipedia.org/wiki/Multiple_buffering).
## gather / distribute
## get / set
## grant / revoke
[SQL Security and privileges](http://www.cs.toronto.edu/~nn/csc309-20085/guide/pointbase/docs/html/htmlfiles/authorizationFIN.html).
## greater / lower
## greedy (eager) / lazy
[Greedy algorithm](https://en.wikipedia.org/wiki/Greedy_algorithm).
[Lazy evaluation](https://en.wikipedia.org/wiki/Lazy_evaluation).
[Greedy and lazy quantifiers in regular expressions](https://javascript.info/regexp-greedy-and-lazy).
[Eager learning](https://en.wikipedia.org/wiki/Eager_learning).
[Lazy learning](https://en.wikipedia.org/wiki/Lazy_learning).
## group / divide
## head / tail
[14 tail and head commands in Linux/Unix](https://www.linux.com/blog/14-tail-and-head-commands-linuxunix)
[Linked list](https://en.wikipedia.org/wiki/Linked_list).
## heap / stack
[Heap data structure](https://en.wikipedia.org/wiki/Heap_(data_structure)).
[Stack (abstract data type)](https://en.wikipedia.org/wiki/Stack_(abstract_data_type)).
[Memory management](https://en.wikipedia.org/wiki/Memory_management).
## hit / miss
[Cache](https://en.wikipedia.org/wiki/Cache_(computing)).
## homogeneous / heterogeneous
## horizontal / vertical
## implicit / explicit
[Explicit and implicit methods in numerical analysis](https://en.wikipedia.org/wiki/Explicit_and_implicit_methods).
[Zen of Python](https://en.wikipedia.org/wiki/Zen_of_Python).
## import / export
## inbound / outbound
## include / exclude
## increase / decrease
## increment / decrement
## indent / dedent
[Indentation](https://en.wikipedia.org/wiki/Indentation_(typesetting)).
## inflate / deflate
[DEFLATE data compression algorithm](https://en.wikipedia.org/wiki/DEFLATE).
## initial / final
## inner / outer
## input / output
## insert (create) / delete
## intended / unintended
## internal / external
## intersection / union
[Intersection](https://en.wikipedia.org/wiki/Intersection_(set_theory)).
[Union](https://en.wikipedia.org/wiki/Union_(set_theory)).
[Set theory](https://en.wikipedia.org/wiki/Set_theory).
## join (merge) / split
[Join in SQL](https://en.wikipedia.org/wiki/Join_(SQL)).
[Joining lists and splitting strings in Python](http://www.diveintopython.net/native_data_types/joining_lists.html).
## key / value
[Key-value database](https://en.wikipedia.org/wiki/Key-value_database).
[Associative array](https://en.wikipedia.org/wiki/Associative_array).
[Attribute-value pair](https://en.wikipedia.org/wiki/Attribute%E2%80%93value_pair).
## label / unlabel
[Labeled data in machine learning](https://en.wikipedia.org/wiki/Labeled_data).
## linear / nonlinear
[Linearity](https://en.wikipedia.org/wiki/Linearity).
[Nonlinear system](https://en.wikipedia.org/wiki/Nonlinear_system).
## link / unlink
## load / dump (store)
[Load/store architecture](https://en.wikipedia.org/wiki/Load/store_architecture).
[Load-store unit](https://en.wikipedia.org/wiki/Load%E2%80%93store_unit).
## local / global
[Global variable](https://en.wikipedia.org/wiki/Global_variable).
## local / remote (distant)
## lower / upper
## major / minor
[Semantic versioning](https://semver.org/).
[Software versioning](https://en.wikipedia.org/wiki/Software_versioning).
## map / reduce
[MapReduce](https://en.wikipedia.org/wiki/MapReduce).
## master / slave
[Master/slave configuration](https://en.wikipedia.org/wiki/Master/slave_(technology)).
Note: prefer the terms *primary / secondary*.
## minimal / maximal
## named / unnamed
## next / previous
## open / close
## optimal / suboptimal
## ordered / disordered
## pack / unpack
[Pack and unpack in Perl](https://www.stat.berkeley.edu/~spector/extension/perl/notes/node87.html).
[Pack and unpack in MPI](http://mpi-forum.org/docs/mpi-2.2/mpi22-report/node84.htm).
## parent / child
[Parent process](https://en.wikipedia.org/wiki/Parent_process).
[Child process](https://en.wikipedia.org/wiki/Child_process).
[Fork](https://en.wikipedia.org/wiki/Fork_(system_call)).
[Tree data structure](https://en.wikipedia.org/wiki/Tree_(data_structure)).
[Document Object Model (DOM)](https://en.wikipedia.org/wiki/Document_Object_Model).
## passive / active
## pending / finished
## positive / negative
## postfix (suffix) / prefix
## precede / follow
## press / release
## primary / secondary
## public / private
[Access modifiers](https://en.wikipedia.org/wiki/Access_modifiers).
## push / pop
[Stack (abstract data type)](https://en.wikipedia.org/wiki/Stack_(abstract_data_type))
## push / pull
## read / write
## record / retrieve
## recover / lose
## reference / dereference
## register / unregister
## request / response
[Request-response communication](https://en.wikipedia.org/wiki/Request%E2%80%93response).
## restricted / unrestricted
## run time / compile time
[Compile time](https://en.wikipedia.org/wiki/Compile_time).
[Run time](https://en.wikipedia.org/wiki/Run_time_(program_lifecycle_phase)).
[Runtime system](https://en.wikipedia.org/wiki/Runtime_system).
## search / find
## select / deselect
## send / receive
## sequential / parallel
[Sequential algorithm](https://en.wikipedia.org/wiki/Sequential_algorithm).
[Parallel computing](https://en.wikipedia.org/wiki/Parallel_computing).
## set up / tear down
[Unit testing](https://en.wikipedia.org/wiki/Unit_testing).
## show / hide
## silent / verbose
## single / multiple
## soft / hard
## solvable / unsolvable
[Turing degree](https://en.wikipedia.org/wiki/Turing_degree).
## sort / unsort
[Sorting algorithm](https://en.wikipedia.org/wiki/Sorting_algorithm).
## source (origin) / destination
## sparse / dense
[Sparse matrix](https://en.wikipedia.org/wiki/Sparse_matrix)
## stable / unstable
[Stability in sorting algorithms](https://www.geeksforgeeks.org/stability-in-sorting-algorithms/).
[Stable-unstable semantics](https://www.cambridge.org/core/journals/theory-and-practice-of-logic-programming/article/stable-unstable-semantics-beyond-np-with-normal-logic-programs/DC9BB0EED8EBCC6D7BE30C0FA62A1BB5).
## start / stop
## stateful / stateless
[Stateless protocol](https://en.wikipedia.org/wiki/Stateless_protocol).
## static / dynamic
[Type system](https://en.wikipedia.org/wiki/Type_system).
[Static analysis](https://en.wikipedia.org/wiki/Static_analysis).
## strong / weak
[Strong and weak typing](https://en.wikipedia.org/wiki/Strong_and_weak_typing).
## sub / super
## subscribe / unsubscribe
## subset / superset
[Subset](https://en.wikipedia.org/wiki/Subset).
## superclass / subclass
[Object-oriented programming](https://en.wikipedia.org/wiki/Object-oriented_programming).
## supervised / unsupervised
[Supervised learning](https://en.wikipedia.org/wiki/Supervised_learning).
[Unsupervised learning](https://en.wikipedia.org/wiki/Unsupervised_learning).
## symmetric / asymmetric
## synchronous / asynchronous
[Synchronization](https://en.wikipedia.org/wiki/Synchronization_(computer_science)).
[Synchronous programming language](https://en.wikipedia.org/wiki/Synchronous_programming_language).
[Asynchrony](https://en.wikipedia.org/wiki/Asynchrony_(computer_programming)).
[Futures and promises](https://en.wikipedia.org/wiki/Futures_and_promises).
## top / bottom
## top-down / bottom-up
[Top-down and bottom-up design](https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design).
## total / partial
[Total order](https://en.wikipedia.org/wiki/Total_order).
[Partially ordered set](https://en.wikipedia.org/wiki/Partially_ordered_set).
## tractable / intractable
[Parameterized complexity](https://en.wikipedia.org/wiki/Parameterized_complexity).
[Computational complexity theory](https://en.wikipedia.org/wiki/Computational_complexity_theory).
## trim / expand
## true / false
[Boolean data type](https://en.wikipedia.org/wiki/Boolean_data_type).
## up / down
## validate / invalidate
[Cache invalidation](https://en.wikipedia.org/wiki/Cache_invalidation).
## value / reference
[Evaluation strategy](https://en.wikipedia.org/wiki/Evaluation_strategy).
## virtual / real
[Virtual class](https://en.wikipedia.org/wiki/Virtual_class).
[Virtual reality](https://en.wikipedia.org/wiki/Virtual_reality).
## visible / invisible
## wait / resume
[Wait system call](https://en.wikipedia.org/wiki/Wait_(system_call)).
## weighted / unweighted
[Graph](https://en.wikipedia.org/wiki/Graph_(discrete_mathematics)).
# Sources
Programming antonyms:
* [Antonym list](https://gist.github.com/maxtruxa/b2ca551e42d3aead2b3d)
Programming glossaries:
* [Dictionary of Algorithms and Data Structures (NIST)](https://xlinux.nist.gov/dads/)
* [Design and Analysis of Algorithms](https://www.ics.uci.edu/~eppstein/161/glossary.html)
* [Programming glossary](http://whatis.techtarget.com/glossary/Programming)
* [Glossary of computer programming](https://en.wiktionary.org/wiki/Appendix:Glossary_of_computer_programming)
* [Programming terms](https://www.computerhope.com/jargon/program.htm)
* [Mathematical Programming Glossary](https://glossary.informs.org/ver2/mpgwiki/index.php?title=Main_Page)
Naming things well:
* [How to name things](http://hilton.org.uk/presentations/naming) (Peter Hilton)
* [Why naming things is hard](http://hilton.org.uk/blog/why-naming-things-is-hard) (Peter Hilton)
* [How to get better at naming things](http://hilton.org.uk/blog/how-to-get-better-at-naming) (Peter Hilton)
* [Naming things](https://24ways.org/2014/naming-things/) (Paul Lloyd)
# License
[](http://creativecommons.org/publicdomain/zero/1.0/)
To the extent possible under law, [Cyrille Rossant](http://cyrille.rossant.net) has waived all copyright and related or neighboring rights to this work.