Glossary

application
A piece of software made to be run, e.g. a game, a command-line utility. Might use several libraries (see library).
array
Ordered, compact list of values. Can be indexed, sorted, etc. Usually fixed, e.g. you can't add or remove values from an array without resizing it.
class
Defines the structure (variables and methods) of an object.
compiler
Piece of software that transforms source code to a more primitive form, such as an executable. Example: rock.
container
An object that contains several values. Examples: an array, a list, a hash map, etc.
cover
Similar to a C struct. Can also contain variables and methods. Can be seen as a class variant.
function
Named or anonymous piece of code accepting a certain number of arguments and potentially returning a value.
generic type
Type argument in a class, cover, or argument definition that can correspond to any type. Useful to build reusable containers.
hash map
An association between keys and values. The SDK has a map structure as structs/HashMap.
library
A reusable piece of code composed of several modules and a usefile, made easy to be used from other ooc projects
list
An ordered list of values. Values can easily be added or removed from a list. The SDK has an array-backed list in structs/ArrayList and a linked list in structs/LinkedList.
module
An .ooc file is called a module. It can be imported by other modules. Modules are usually organized in packages.
object
An instance of a class.
package
A collection of ooc modules. Defined by the directory structure of an ooc project.
pointer
Reference to a certain part of memory. In fact, objects are pointers to the real thing.
project
A piece of software written in ooc: usually a library or an application, sometimes both. Contains modules organized in packages, and often a usefile that specifies dependencies, and how to compile the project.
rock
The main ooc compiler.
sourcepath
List of directories in which rock looks for ooc modules.
usefile
Describes the dependencies of a project, along with its name, version, and a short description. See Usefile Syntax
value
Usually either an object, a pointer, a number, or a String.
variable
Named memory slot that can contain a value.