Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit f770a99

Browse filesBrowse files
avivkellerHarshithaKP
authored andcommitted
doc: add more definitions to GLOSSARY.md
Co-Authored-By: Harshitha KP <harshi46@in.ibm.com> PR-URL: #52798 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
1 parent f35b838 commit f770a99
Copy full SHA for f770a99

File tree

Expand file treeCollapse file tree

1 file changed

+152
-21
lines changed
Open diff view settings
Filter options
Expand file treeCollapse file tree

1 file changed

+152
-21
lines changed
Open diff view settings
Collapse file

‎glossary.md‎

Copy file name to clipboard
+152-21Lines changed: 152 additions & 21 deletions
  • Display the source diff
  • Display the rich diff
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,153 @@
1-
You may also need to check <https://chromium.googlesource.com/chromiumos/docs/+/HEAD/glossary.md>.
1+
# Glossary
22

3-
* CITGM: "The Canary in the Goldmine". CITGM is a simple tool for pulling down
4-
an arbitrary module from npm and testing it using a specific version of the
5-
node runtime. The Node.js project uses CITGM to smoke test our releases and
6-
controversial changes. See more details on the [CITGM repository](https://github.com/nodejs/citgm).
7-
* LGTM: "Looks good to me", commonly used to approve a code review.
8-
* PTAL: Please take a look.
9-
* RSLGTM: "Rubber-stamp looks good to me". The reviewer approving without doing
10-
a full code review.
11-
* TSC: Technical Steering Committee. Detailed info see
12-
[TSC](./GOVERNANCE.md#technical-steering-committee).
13-
* WIP: "Work In Progress" - e.g. a patch that's not finished, but may be worth
14-
an early look.
15-
* WPT: [web-platform-tests](https://github.com/web-platform-tests/wpt)
16-
* godbolt: [Compiler Explorer](https://godbolt.org/) run compilers interactively
17-
from your web browser and interact with the assembly. Was created by and is
18-
primarily administrated by Matt Godbolt.
19-
* primordials: Pristine built-ins that are not affected by prototype pollution
20-
and tampering with built-ins.
21-
* undici: An alternative HTTP client used in Node.js. See more details
22-
on the [undici repository](https://github.com/nodejs/undici).
3+
This file documents various terms and definitions used throughout the Node.js community.
4+
5+
* **ABI**: [Application Binary Interface][] - Defines the interface between two binary program modules.
6+
* **AFAICT**: As Far As I Can Tell.
7+
* **AFAIK**: As Far As I Know.
8+
* **API**: [Application Programming Interface][] - A set of rules and protocols that allows different software
9+
applications to communicate with each other. APIs are used to enable integration between different systems.
10+
* **ASAP**: As Soon As Possible.
11+
* **BE**: Big [Endian][] - A Byte Order where the largest bit comes first. The opposite of **LE**.
12+
* **Bootstrap**: Early phase in the Node.js process startup - sets up the execution environment and loads internal
13+
modules.
14+
* **CI**: [Continuous Integration][] - Development practice where code changes are frequently merged into a shared
15+
repository.
16+
* **CITGM**: Canary In The Gold Mine - A smoke test that tests the code change with popular npm packages.
17+
* **CJS**: [CommonJS][] - Standard for JavaScript modules, and in most cases, [CommonJS Modules][].
18+
* **CLDR**: [Common Locale Data Repository][] - A repository of locale data used in software engineering.
19+
* **CLI**: [Command Line Interface][] - A way to interact with a computer program using text commands.
20+
* **Code cache**: Chunk of bytes storing compiled JS code and its metadata.
21+
* **CVE**: [Common Vulnerabilities and Exposures][] - Database maintaining reported security vulnerabilities.
22+
* **Deps**: Dependencies - Upstream projects that this project depends on.
23+
* **DOM**: [Document Object Model][] - A programming interface for web documents. It represents the structure of a
24+
document as a tree of objects, allowing programmers to dynamically manipulate the content and structure of a web page.
25+
* **ECMA**: [Ecma International][] - A nonprofit standards organization that develops and publishes international
26+
standards, including **ECMA-262**.
27+
* **ECMA-262**: **Ecma**'s [specification document for **ECMAScript**][], maintained and updated by the **TC39**.
28+
* **ECMAScript**: A standard for scripting languages, including **JavaScript**.
29+
* **EOF**: [End-of-File][] - Indicates the end of a file or stream.
30+
* **EOL**: [End-of-Life][] (when used within project documents), [End-of-Line][] (when used within a program),
31+
End-of-Life is usually how this term is used.
32+
* **ESM**: [ECMAScript Module][] - The implementation of the **ECMA-262** module system.
33+
* **ETW**: [Event Tracing for Windows][] - Provides a way to trace events in Windows systems.
34+
* **FFDC**: First Failure Data Capture - Logs, traces, and dumps produced by default on program error.
35+
* **FIPS**: [Federal Information Processing Standards][] - Set of standards for use in computer systems by non-military
36+
government agencies and government contractors.
37+
* **FS**: File System.
38+
* **Godbolt**: [Compiler Explorer][] - Tool for running compilers interactively from a web browser.
39+
* **HTTP**: [HyperText Transfer Protocol][] - An application protocol for distributed, collaborative, hypermedia
40+
information systems. It is the foundation of data communication on the World Wide Web.
41+
* **ICU**: [International Components for Unicode][] - Library providing support for Unicode.
42+
* **IDE**: [Integrated Development Environment][] - A software application that provides comprehensive facilities to
43+
computer programmers for software development.
44+
* **IETF**: [Internet Engineering Task Force][] - An international community responsible for developing and promoting
45+
Internet standards.
46+
* **IIRC**: If I Recall Correctly.
47+
* **IIUC**: If I Understand Correctly.
48+
* **IMHO**: In My Humble/Honest Opinion.
49+
* **IMO**: In My Opinion.
50+
* **IPC**: [Inter-Process Communication][] - Mechanism allowing processes to communicate with each other.
51+
* **JIT**: [Just In Time][] - Method of executing computer code during runtime.
52+
* **JS**: [JavaScript][] - A high-level, interpreted programming language that conforms to the **ECMAScript**
53+
specification.
54+
* **JS/C++ boundary**: Boundary between V8's runtime and JS code execution, often crossed when calling JS functions
55+
with C++ linkage.
56+
* **JSON**: [JavaScript Object Notation][] - A lightweight data-interchange format that is easy for humans to read and
57+
write and for machines to parse and generate. It is commonly used for transmitting data between a server and a
58+
web application.
59+
* **LE**: Little [Endian][] - A Byte Order where the smallest bit comes first. The opposite of **BE**.
60+
* **LGTM/SGTM**: Looks/Sounds good to me.
61+
* **LTS**: [Long Term Support][] - Support provided for a software version for an extended period.
62+
* **MDN**: [Mozilla Development Network][] - Resource for web developers.
63+
* **MVC**: [Model-View-Controller][] - A software design pattern commonly used for developing user interfaces. It
64+
separates the application into three interconnected components: the model (data), the view (presentation), and the
65+
controller (logic).
66+
* **Native modules/addons**: Modules compiled to native code from a non-JavaScript language,
67+
such as C or C++, that expose interfaces callable from JavaScript.
68+
* **npm**: [npm][] - A package manager and registry widely used for managing dependencies in
69+
Node.js projects and for sharing code with others.
70+
* **OOB**: Out Of Bounds - Used in the context of array access.
71+
* **OOM**: Out Of Memory - Situation where a computer program exceeds its memory allocation.
72+
* **OOP**: [Object-Oriented Programming][] - A programming paradigm based on the concept of "objects," which can
73+
contain data and code to manipulate that data. OOP languages include features such as encapsulation, inheritance,
74+
and polymorphism.
75+
* **PPC**: [PowerPC][] - A type of microprocessor architecture.
76+
* **Primordials**: Pristine built-ins in JavaScript that are not affected by prototype pollution.
77+
* **Prototype Pollution**: Process in which a user mutating object prototypes affects other code.
78+
* **RAII**: [Resource Acquisition Is Initialization][] - Programming idiom used to manage resources in C++.
79+
* **REPL**: [Read Evaluate Print Loop][] - Environment for interactive programming.
80+
* **RFC**: [Request For Comments][] - A Document used in standardization processes.
81+
* **RSLGTM**: Rubber-Stamp Looks Good To Me - The reviewer approves without a full code review.
82+
* **RSS**: [Resident Set Size][] - Amount of memory occupied by a process in RAM.
83+
* **SMP**: [Symmetric Multi-Processor][] - Architecture where multiple processors share the same memory.
84+
* **Snapshot**: Chunk of bytes containing data serialized from a V8 heap.
85+
* **TBH**: To Be Honest.
86+
* **TC39**: [Ecma Technical Committee 39][], governing body over **ECMAScript**.
87+
* **TSC**: Technical Steering Committee - Governing body within a project.
88+
* **UI**: [User Interface][] - The point of interaction between a user and a computer program. It includes elements
89+
such as buttons, menus, and other graphical elements that allow users to interact with the software.
90+
* **URL**: [Uniform Resource Locator][] - A reference to a web resource that specifies its location on a computer
91+
network and the mechanism for retrieving it, typically using the HTTP or HTTPS protocol.
92+
* **UTF-8**: [Unicode Transformation Format - 8-bit][] - A variable-width character encoding widely used for
93+
representing Unicode characters efficiently in byte-oriented systems.
94+
* **V8**: [The JavaScript engine][] that powers Node.js and Chrome browser.
95+
* **Vendoring**: Integrating external software into the project by copying its code source.
96+
* **VM**: [The Node.js VM module][] - Provides a way of executing code within V8 Virtual Machine contexts.
97+
* **W3C**: [World Wide Web Consortium][] - An international community that develops standards and guidelines for
98+
various aspects of the web ecosystem.
99+
* **WASI**: [Web Assembly System Interface][] - Interface for WebAssembly.
100+
* **WASM**: Web Assembly - Binary instruction format for a stack-based virtual machine.
101+
* **WG**: Working Group - Autonomous teams in the project with specific focus areas.
102+
* **WHATWG**: [Web Hypertext Application Technology Working Group][] - Community developing web standards.
103+
* **WIP**: Work In Progress - Unfinished work that may be worth an early look.
104+
* **WPT**: [web-platform-tests][] - Test suite for web platform APIs.
105+
106+
[Application Binary Interface]: https://en.wikipedia.org/wiki/Application_binary_interface
107+
[Application Programming Interface]: https://en.wikipedia.org/wiki/Application_programming_interface
108+
[Command Line Interface]: https://en.wikipedia.org/wiki/Command-line_interface
109+
[Common Locale Data Repository]: https://en.wikipedia.org/wiki/Common_Locale_Data_Repository
110+
[Common Vulnerabilities and Exposures]: https://cve.org
111+
[CommonJS]: https://en.wikipedia.org/wiki/CommonJS
112+
[CommonJS Modules]: https://nodejs.org/api/modules.html#modules-commonjs-modules
113+
[Compiler Explorer]: https://godbolt.org/
114+
[Continuous Integration]: https://en.wikipedia.org/wiki/Continuous_integration
115+
[Document Object Model]: https://en.wikipedia.org/wiki/Document_Object_Model
116+
[ECMAScript Module]: https://nodejs.org/api/esm.html#modules-ecmascript-modules
117+
[Ecma International]: https://ecma.org
118+
[Ecma Technical Committee 39]: https://tc39.es/
119+
[End-of-File]: https://en.wikipedia.org/wiki/End-of-file
120+
[End-of-Life]: https://en.wikipedia.org/wiki/End-of-life_product
121+
[End-of-Line]: https://en.wikipedia.org/wiki/Newline
122+
[Endian]: https://en.wikipedia.org/wiki/Endianness
123+
[Event Tracing for Windows]: https://en.wikipedia.org/wiki/Event_Viewer
124+
[Federal Information Processing Standards]: https://en.wikipedia.org/wiki/Federal_Information_Processing_Standards
125+
[Hypertext Transfer Protocol]: https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
126+
[Integrated Development Environment]: https://en.wikipedia.org/wiki/Integrated_development_environment
127+
[Inter-Process Communication]: https://en.wikipedia.org/wiki/Inter-process_communication
128+
[International Components for Unicode]: https://icu.unicode.org/
129+
[Internet Engineering Task Force]: https://www.ietf.org/
130+
[JavaScript]: https://developer.mozilla.org/en-US/docs/Web/JavaScript
131+
[JavaScript Object Notation]: https://www.json.org/
132+
[Just In Time]: https://en.wikipedia.org/wiki/Just-in-time_compilation
133+
[Long Term Support]: https://en.wikipedia.org/wiki/Long-term_support
134+
[Model-View-Controller]: https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
135+
[Mozilla Development Network]: https://developer.mozilla.org/en-US
136+
[NPM]: https://www.npmjs.com/
137+
[Object-Oriented Programming]: https://en.wikipedia.org/wiki/Object-oriented_programming
138+
[PowerPC]: https://en.wikipedia.org/wiki/PowerPC
139+
[Read Evaluate Print Loop]: https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop
140+
[Request For Comments]: https://en.wikipedia.org/wiki/Request_for_Comments
141+
[Resident Set Size]: https://en.wikipedia.org/wiki/Resident_set_size
142+
[Resource Acquisition Is Initialization]: https://en.wikipedia.org/wiki/Resource_acquisition_is_initialization
143+
[Symmetric Multi-Processor]: https://en.wikipedia.org/wiki/Symmetric_multiprocessing
144+
[The JavaScript Engine]: https://en.wikipedia.org/wiki/V8_\(JavaScript_engine\)
145+
[The Node.js VM Module]: https://nodejs.org/api/vm.html
146+
[Unicode Transformation Format - 8-bit]: https://en.wikipedia.org/wiki/UTF-8
147+
[Uniform Resource Locator]: https://en.wikipedia.org/wiki/URL
148+
[User Interface]: https://en.wikipedia.org/wiki/User_interface
149+
[Web Assembly System Interface]: https://github.com/WebAssembly/WASI
150+
[Web Hypertext Application Technology Working Group]: https://en.wikipedia.org/wiki/WHATWG
151+
[World Wide Web Consortium]: https://www.w3.org/
152+
[specification document for **ECMAScript**]: https://ecma-international.org/publications-and-standards/standards/ecma-262/
153+
[web-platform-tests]: https://github.com/web-platform-tests/wpt

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.