Skip to content

Latest commit

 

History

History
154 lines (151 loc) Β· 11.5 KB

glossary.md

File metadata and controls

154 lines (151 loc) Β· 11.5 KB

Glossary

This file documents various terms and definitions used throughout the Node.js community.

  • ABI: Application Binary Interface - Defines the interface between two binary program modules.
  • AFAICT: As Far As I Can Tell.
  • AFAIK: As Far As I Know.
  • API: Application Programming Interface - A set of rules and protocols that allows different software applications to communicate with each other. APIs are used to enable integration between different systems.
  • ASAP: As Soon As Possible.
  • BE: Big Endian - A Byte Order where the largest bit comes first. The opposite of LE.
  • Bootstrap: Early phase in the Node.js process startup - sets up the execution environment and loads internal modules.
  • CI: Continuous Integration - Development practice where code changes are frequently merged into a shared repository.
  • CITGM: Canary In The Gold Mine - A smoke test that tests the code change with popular npm packages.
  • CJS: CommonJS - Standard for JavaScript modules, and in most cases, CommonJS Modules.
  • CLDR: Common Locale Data Repository - A repository of locale data used in software engineering.
  • CLI: Command Line Interface - A way to interact with a computer program using text commands.
  • Code cache: Chunk of bytes storing compiled JS code and its metadata.
  • CVE: Common Vulnerabilities and Exposures - Database maintaining reported security vulnerabilities.
  • Deps: Dependencies - Upstream projects that this project depends on.
  • DOM: Document Object Model - A programming interface for web documents. It represents the structure of a document as a tree of objects, allowing programmers to dynamically manipulate the content and structure of a web page.
  • ECMA: Ecma International - A nonprofit standards organization that develops and publishes international standards, including ECMA-262.
  • ECMA-262: Ecma's specification document for ECMAScript, maintained and updated by the TC39.
  • ECMAScript: A standard for scripting languages, including JavaScript.
  • EOF: End-of-File - Indicates the end of a file or stream.
  • EOL: End-of-Life (when used within project documents), End-of-Line (when used within a program), End-of-Life is usually how this term is used.
  • ESM: ECMAScript Module - The implementation of the ECMA-262 module system.
  • ETW: Event Tracing for Windows - Provides a way to trace events in Windows systems.
  • FFDC: First Failure Data Capture - Logs, traces, and dumps produced by default on program error.
  • FIPS: Federal Information Processing Standards - Set of standards for use in computer systems by non-military government agencies and government contractors.
  • FS: File System.
  • Godbolt: Compiler Explorer - Tool for running compilers interactively from a web browser.
  • HTTP: HyperText Transfer Protocol - An application protocol for distributed, collaborative, hypermedia information systems. It is the foundation of data communication on the World Wide Web.
  • ICU: International Components for Unicode - Library providing support for Unicode.
  • IDE: Integrated Development Environment - A software application that provides comprehensive facilities to computer programmers for software development.
  • IETF: Internet Engineering Task Force - An international community responsible for developing and promoting Internet standards.
  • IIRC: If I Recall Correctly.
  • IIUC: If I Understand Correctly.
  • IMHO: In My Humble/Honest Opinion.
  • IMO: In My Opinion.
  • IPC: Inter-Process Communication - Mechanism allowing processes to communicate with each other.
  • JIT: Just In Time - Method of executing computer code during runtime.
  • JS: JavaScript - A high-level, interpreted programming language that conforms to the ECMAScript specification.
  • JS/C++ boundary: Boundary between V8's runtime and JS code execution, often crossed when calling JS functions with C++ linkage.
  • JSON: JavaScript Object Notation - A lightweight data-interchange format that is easy for humans to read and write and for machines to parse and generate. It is commonly used for transmitting data between a server and a web application.
  • LE: Little Endian - A Byte Order where the smallest bit comes first. The opposite of BE.
  • LGTM/SGTM: Looks/Sounds good to me.
  • LTS: Long Term Support - Support provided for a software version for an extended period.
  • MDN: Mozilla Development Network - Resource for web developers.
  • MVC: Model-View-Controller - A software design pattern commonly used for developing user interfaces. It separates the application into three interconnected components: the model (data), the view (presentation), and the controller (logic).
  • Native modules/addons: Modules compiled to native code from a non-JavaScript language, such as C or C++, that expose interfaces callable from JavaScript.
  • npm: npm - A package manager and registry widely used for managing dependencies in Node.js projects and for sharing code with others.
  • OOB: Out Of Bounds - Used in the context of array access.
  • OOM: Out Of Memory - Situation where a computer program exceeds its memory allocation.
  • OOP: Object-Oriented Programming - A programming paradigm based on the concept of "objects," which can contain data and code to manipulate that data. OOP languages include features such as encapsulation, inheritance, and polymorphism.
  • PPC: PowerPC - A type of microprocessor architecture.
  • PTAL: Please Take A Look.
  • Primordials: Pristine built-ins in JavaScript that are not affected by prototype pollution.
  • Prototype Pollution: Process in which a user mutating object prototypes affects other code.
  • RAII: Resource Acquisition Is Initialization - Programming idiom used to manage resources in C++.
  • REPL: Read Evaluate Print Loop - Environment for interactive programming.
  • RFC: Request For Comments - A Document used in standardization processes.
  • RSLGTM: Rubber-Stamp Looks Good To Me - The reviewer approves without a full code review.
  • RSS: Resident Set Size - Amount of memory occupied by a process in RAM.
  • SMP: Symmetric Multi-Processor - Architecture where multiple processors share the same memory.
  • Snapshot: Chunk of bytes containing data serialized from a V8 heap.
  • TBH: To Be Honest.
  • TC39: Ecma Technical Committee 39, governing body over ECMAScript.
  • TSC: Technical Steering Committee - Governing body within a project.
  • UI: User Interface - The point of interaction between a user and a computer program. It includes elements such as buttons, menus, and other graphical elements that allow users to interact with the software.
  • URL: Uniform Resource Locator - A reference to a web resource that specifies its location on a computer network and the mechanism for retrieving it, typically using the HTTP or HTTPS protocol.
  • UTF-8: Unicode Transformation Format - 8-bit - A variable-width character encoding widely used for representing Unicode characters efficiently in byte-oriented systems.
  • V8: The JavaScript engine that powers Node.js and Chrome browser.
  • Vendoring: Integrating external software into the project by copying its code source.
  • VM: The Node.js VM module - Provides a way of executing code within V8 Virtual Machine contexts.
  • W3C: World Wide Web Consortium - An international community that develops standards and guidelines for various aspects of the web ecosystem.
  • WASI: Web Assembly System Interface - Interface for WebAssembly.
  • WASM: Web Assembly - Binary instruction format for a stack-based virtual machine.
  • WG: Working Group - Autonomous teams in the project with specific focus areas.
  • WHATWG: Web Hypertext Application Technology Working Group - Community developing web standards.
  • WIP: Work In Progress - Unfinished work that may be worth an early look.
  • WPT: web-platform-tests - Test suite for web platform APIs.