Dictionary - ChristianPresley/zig-sdk GitHub Wiki
Dictionary
This page is the project dictionary for the Style Guide. The linter zig build lint-docs reads the same files. The lists are the work of this project. They do not copy the dictionary of ASD-STE100.
Technical nouns
Nouns that name project concepts (ASD-STE100 rule 1.5, categories 15 and 19). Use one noun for one concept.
PN-1 protocol nouns
- server
- client
- host
- tool
- resource
- resource template
- prompt
- sampling
- elicitation
- root
- capability
- request
- response
- notification
- result
- error
- message
- JSON-RPC
- method
- params
- progress token
- cursor
- page
- subscription
- completion
- logging level
- annotation
- content block
- protocol version
- authorization server
- access token
- bearer token
- scope
PN-2 transport nouns
- transport
- stdio transport
- Streamable HTTP transport
- gRPC transport
- stream
- endpoint
- connection
- header
- event stream
- TLS
- port
- socket
- frame
- payload
PN-3 Zig and build nouns
- allocator
- arena
- module
- package
- build graph
- build step
- comptime
- slice
- struct
- union
- enum
- error set
- error union
- optional
- reader
- writer
- buffer
- byte
- thread
- cache
- artifact
- target
PN-4 repository and process nouns
- repository
- wiki
- wiki page
- commit
- signed commit
- GPG key
- branch
- pull request
- issue
- tag
- release
- changelog
- workflow
- job
- runner
- contributor
- maintainer
- reviewer
- bibliography
- reference
- style guide
- dictionary
Technical verbs
Verbs that name project actions (rule 1.12, category 2).
- boot
- build
- compile
- link
- run
- install
- download
- upload
- load
- save
- store
- delete
- clear
- copy
- paste
- open
- close
- enable
- disable
- validate
- encode
- decode
- serialize
- deserialize
- parse
- format
- log
- debug
- update
- upgrade
- abort
- initialize
- negotiate
- register
- subscribe
- unsubscribe
- list
- call
- invoke
- send
- receive
- cancel
- retry
- resume
- stream
- authenticate
- authorize
- redirect
- sign
- verify
- commit
- push
- pull
- merge
- rebase
- tag
- release
- support
- return
- free
- allocate
- configure
- enter
Approved verbs
General verbs that the prose of the project uses. Use the simple present, the simple past or the future of these verbs (rule 3.4).
AV-1 verbs of action
- accept
- add
- answer
- apply
- ask
- become
- change
- check
- come
- contain
- continue
- count
- cover
- declare
- define
- describe
- do
- drop
- end
- fail
- fetch
- find
- follow
- get
- give
- go
- have
- hold
- keep
- know
- let
- lose
- make
- mark
- move
- name
- need
- obey
- pass
- put
- refuse
- reject
- remove
- replace
- report
- require
- set
- show
- skip
- start
- stay
- stop
- take
- tell
- try
- use
- wait
AV-2 verbs of state
- agree
- be
- cause
- differ
- exist
- fit
- match
- mean
- own
- permit
- prevent
- see
- seem
Restricted words
Approved words that have one meaning in this project.
| Word | Meaning or replacement |
|---|---|
| support | technical verb, "provide an implementation of a protocol feature" |
| handle | prefer "process" or "receive"; "handle" is also a technical noun for an opaque identifier |
| return | technical verb for the value a function gives back |
| free | technical verb for releasing memory |
Project word list
Words that this project does not use in prose, with the replacement (rule 1.1).
| Word | Meaning or replacement |
|---|---|
| should | must (when it is a requirement) or "We recommend that" (when it is advice) |
| shall | must |
| may | can |
| ensure | make sure |
| ensures | makes sure |
| however | but |
| utilize | use |
| utilizes | uses |
| via | through, or with |
| session | (forbidden: the protocol is stateless; describe the request or the stream) |
| following | these, or that follows |
| implement | write, or provide |
| implements | provides |
Synonyms
Terms that the project does not use, with the project term (PRJ-4). One concept has one term.
| Term | Project term |
|---|---|
| plugin | extension |
| plugins | extensions |
| plug-in | extension |
| reply | response |
| replies | responses |
| invocation | call |
| invocations | calls |
| tool invocation | tool call |
| method call | request |
| rpc call | request, or gRPC call |
| multi-round-trip | multi round-trip |
| whitelist | allowlist |
| blacklist | denylist |
| filesystem | file system |
| subprocess | child process |
| subprocesses | child processes |
| web socket | WebSocket |
| websockets | WebSocket connections |
| json schema draft 2020-12 | JSON Schema 2020-12 |
| lib | library |
| repo | repository |
| config | configuration |
Phrasal verbs
Phrasal verbs that the project does not use, with a verb of one word (PRJ-5).
| Phrasal verb | Replacement |
|---|---|
| set up | configure, or prepare |
| sets up | configures, or prepares |
| find out | find |
| finds out | finds |
| carry out | do |
| carries out | does |
| look up | find |
| looks up | finds |
| point out | show |
| points out | shows |
| fill in | write |
| fills in | writes |
| fill out | complete |
| turn on | enable |
| turns on | enables |
| turn off | disable |
| turns off | disables |
| switch on | enable |
| switch off | disable |
| shut down | stop |
| shuts down | stops |
| start up | start |
| starts up | starts |
| clean up | remove, or release |
| cleans up | removes, or releases |
| hand off | give |
| hands off | gives |
| give up | stop |
| gives up | stops |
| go through | examine |
| goes through | examines |
| come back | return |
| comes back | returns |
| figure out | find |
| figures out | finds |
| time out | expire |
| times out | expires, or has no response in the time limit |
| fall back | use ... instead |
| falls back | uses ... instead |
| back off | wait |
| backs off | waits |
| pick up | get, or read |
| picks up | gets, or reads |
| end up | become |
| ends up | becomes |
| tear down | remove |
| tears down | removes |
| spin up | start |
| spins up | starts |
| wake up | wake |
| wakes up | wakes |
| log in | authenticate |
| logs in | authenticates |
| opt in | enable |
| opts in | enables |
| opt out | disable |
| opts out | disables |
US spelling
The project uses US spelling (PRJ-3). The table gives the British spelling and the US spelling.
| British spelling | US spelling |
|---|---|
| acknowledgement | acknowledgment |
| acknowledgements | acknowledgments |
| analyse | analyze |
| analysed | analyzed |
| analyses | analyzes |
| artefact | artifact |
| artefacts | artifacts |
| authorisation | authorization |
| authorise | authorize |
| authorised | authorized |
| authorises | authorizes |
| behaviour | behavior |
| behaviours | behaviors |
| cancelled | canceled |
| cancelling | canceling |
| catalogue | catalog |
| centre | center |
| colour | color |
| customise | customize |
| customised | customized |
| defence | defense |
| deserialise | deserialize |
| deserialised | deserialized |
| dialogue | dialog |
| emphasise | emphasize |
| favour | favor |
| finalise | finalize |
| finalised | finalized |
| grey | gray |
| honour | honor |
| honoured | honored |
| honours | honors |
| initialisation | initialization |
| initialise | initialize |
| initialised | initialized |
| initialises | initializes |
| judgement | judgment |
| labelled | labeled |
| labelling | labeling |
| learnt | learned |
| licence | license |
| licences | licenses |
| maximise | maximize |
| minimise | minimize |
| modelled | modeled |
| modelling | modeling |
| neighbour | neighbor |
| normalisation | normalization |
| normalise | normalize |
| normalised | normalized |
| offence | offense |
| optimisation | optimization |
| optimise | optimize |
| optimised | optimized |
| organisation | organization |
| organise | organize |
| prioritise | prioritize |
| programme | program |
| recognise | recognize |
| recognised | recognized |
| recognises | recognizes |
| sanitise | sanitize |
| sanitised | sanitized |
| serialisation | serialization |
| serialise | serialize |
| serialised | serialized |
| serialises | serializes |
| signalled | signaled |
| signalling | signaling |
| specialise | specialize |
| spelt | spelled |
| standardise | standardize |
| summarise | summarize |
| synchronise | synchronize |
| tokenise | tokenize |
| tokeniser | tokenizer |
| travelled | traveled |
| whilst | while |
| amongst | among |
Abbreviations
Abbreviations and names with a fixed case that the prose can use (PRJ-2). A sentence can start with a name of this list that starts with a lowercase letter (PRJ-1).
| Abbreviation | Meaning |
|---|---|
| API | application programming interface |
| ASCII | the 7-bit character set of RFC 20 |
| CR | carriage return, the ASCII control character 0x0D |
| DEL | delete, the ASCII control character 0x7F |
| LF | line feed, the ASCII control character 0x0A |
| NUL | null, the ASCII control character 0x00 |
| CIMD | client ID metadata document, a client registration method of MCP |
| DCR | dynamic client registration (RFC 7591) |
| DNS | Domain Name System |
| HPACK | the header compression format of HTTP/2 (RFC 7541) |
| HTML | HyperText Markup Language |
| HTTP | Hypertext Transfer Protocol |
| HTTP/2 | version 2 of HTTP (RFC 9113) |
| HTTPS | HTTP over TLS |
| ID | identifier |
| IP | Internet Protocol |
| JSON | JavaScript Object Notation |
| JSON-RPC | the remote procedure call protocol that MCP uses |
| JWK | JSON Web Key |
| JWKS | JSON Web Key Set |
| JWS | JSON Web Signature |
| JWT | JSON Web Token |
| MCP | Model Context Protocol |
| MRTR | multi round-trip request |
| PKCE | proof key for code exchange (RFC 7636) |
| POSIX | the portable operating system interface |
| RPC | remote procedure call |
| SEP | specification enhancement proposal of MCP |
| SSE | server-sent events |
| TCP | Transmission Control Protocol |
| URI | uniform resource identifier |
| URL | uniform resource locator |
| UTC | Coordinated Universal Time |
| UTF-8 | the 8-bit encoding of Unicode |
| UTF-16 | the 16-bit encoding of Unicode |
| GET | the HTTP method that reads a resource |
| GIF | Graphics Interchange Format |
| JPEG | the image format of the Joint Photographic Experts Group |
| MIME | Multipurpose Internet Mail Extensions, the media type system |
| PNG | Portable Network Graphics |
| POST | the HTTP method that sends a request body |
| SVG | Scalable Vector Graphics |
| UI | user interface |
| YAML | the data format of the skill frontmatter |
| ECMA | Ecma International, the publisher of ECMA-262 |
| BSD | the Berkeley Software Distribution family of operating systems |
| AEAD | authenticated encryption with associated data |
| AEGIS | a family of AEAD algorithms on the AES round function (draft-irtf-cfrg-aegis-aead) |
| AES | Advanced Encryption Standard |
| ALPN | application-layer protocol negotiation (RFC 7301) |
| CA | certificate authority |
| CRL | certificate revocation list (RFC 5280 section 5) |
| CVE | an entry in the Common Vulnerabilities and Exposures list |
| DER | Distinguished Encoding Rules of ASN.1 |
| DPoP | Demonstrating Proof of Possession, the sender constraint of OAuth access tokens (RFC 9449) |
| ASN.1 | Abstract Syntax Notation One |
| ECDSA | elliptic curve digital signature algorithm |
| ES256 | ECDSA with P-256 and SHA-256 |
| GCM | Galois/Counter Mode |
| HMAC | hash-based message authentication code |
| HS256 | HMAC with SHA-256 |
| IV | initialization vector |
| OCSP | Online Certificate Status Protocol (RFC 6960) |
| PEM | the text form of keys and certificates (RFC 7468) |
| PS256 | RSA-PSS with SHA-256 |
| PSS | the probabilistic signature scheme of RSA |
| RS256 | RSA PKCS #1 version 1.5 signature with SHA-256 |
| RSA | the Rivest-Shamir-Adleman public key algorithm |
| SEC1 | the elliptic curve private key format of SECG |
| SASL | Simple Authentication and Security Layer (RFC 4422) |
| SHA | Secure Hash Algorithm |
| SNI | server name indication |
| SPIFFE | Secure Production Identity Framework for Everyone, a standard for workload identities |
| TLS | Transport Layer Security |
| CRT | the Chinese remainder theorem form of an RSA private key |
| EMSA-PSS | the encoding method of RSASSA-PSS (RFC 8017) |
| ES384 | ECDSA with P-384 and SHA-384 |
| ID-JAG | identity assertion JWT authorization grant |
| JAG | JWT authorization grant, in ID-JAG |
| JOSE | JSON Object Signing and Encryption |
| KEM | key encapsulation mechanism |
| MGF1 | the mask generation function of RSA-PSS (RFC 8017) |
| ML-KEM | the module-lattice key encapsulation mechanism (FIPS 203) |
| ML-KEM-768 | the ML-KEM parameter set of security category 3 |
| RS384 | RSA PKCS #1 version 1.5 signature with SHA-384 |
| RS512 | RSA PKCS #1 version 1.5 signature with SHA-512 |
| RSASSA | RSA signature scheme with appendix (RFC 8017) |
| PKCS1 | PKCS #1, in names such as RSASSA-PKCS1-v1_5 |
| X25519MLKEM768 | the hybrid TLS key exchange group of ML-KEM-768 and X25519 (RFC 10024) |
| XOR | the exclusive or operation |
| ASD | the association that publishes ASD-STE100 |
| ASD-STE100 | the specification of Simplified Technical English |
| CI | continuous integration |
| CPU | central processing unit |
| GPG | GNU Privacy Guard |
| GR | a general rule of the project profile, in rule ids such as STE-GR-6 |
| IETF | Internet Engineering Task Force |
| PRJ | a project rule, in rule ids such as PRJ-1 |
| README | the first page of the repository |
| RFC | request for comments, a document of the IETF |
| SDK | software development kit |
| STE | Simplified Technical English |
| US | United States |
| VS | Visual Studio, in the name VS Code |
| WHATWG | Web Hypertext Application Technology Working Group |
| gRPC | the remote procedure call framework that the gRPC transport uses |
| stdio | standard input and standard output |
| zig-sdk | the name of this project |
| curl | the command line HTTP client |
| openssl | the command line tool of OpenSSL |
| npx | the package runner of Node.js |
| macOS | the operating system of Apple computers |
Participles as adjectives
Past participles that tell a state after "is" or "are" (rule 3.6).
- closed
- connected
- disabled
- enabled
- expired
- finished
- gone
- installed
- limited
- malformed
- signed
Approved -ing words
Technical nouns and adjectives that end in -ing (rule 3.5).
ING-1 technical nouns: the name of a process or of a thing
- backtracking
- binding
- bindings
- buffering
- building
- caching
- decoding
- encoding
- finding
- findings
- framing
- hardening
- heading
- headings
- logging
- mapping
- matching
- meaning
- mirroring
- nesting
- padding
- polling
- processing
- rebinding
- routing
- sampling
- setting
- settings
- signing
- spelling
- spoofing
- stapling
- streaming
- tampering
- testing
- tooling
- versioning
- warning
- warnings
ING-2 technical adjectives: a state or a position
- existing
- incoming
- leading
- missing
- outgoing
- pending
- remaining
- trailing
ING-3 words that end in -ing but are not -ing forms of a verb
- anything
- bring
- during
- everything
- nothing
- ring
- something
- spring
- string
- strings
- thing
- things