Macaulay2 » Documentation
Packages » Macaulay2Doc » The Macaulay2 language » Thing
next | previous | forward | backward | up | index | toc

# Thing -- the class of all things

## Description

Everything in Macaulay2 is a thing. This includes numbers, strings, and lists. More complicated things such as polynomials, groups, rings, and chain complexes are implemented as hash tables. See Type for information about what types of things there are.

### Menu

- NetFile -- the class of all net files
- Boolean -- the class of boolean values
- Dictionary -- the class of all dictionaries
- Nothing -- the empty class
- Number -- the class of all numbers
- File -- the class of all files
- AtomicInt -- the class of atomic integers
- Symbol -- the class of all symbols
- Pseudocode -- the class of pseudocodes

## Types of thing:

- AtomicInt -- the class of atomic integers
- BasicList -- the class of all basic lists
- Boolean -- the class of boolean values
- Database -- the class of all database files
- Dictionary -- the class of all dictionaries
- File -- the class of all files
- Function -- the class of all functions
- FunctionBody -- the class of function bodies
- HashTable -- the class of all hash tables
- Net -- the class of all nets and strings
- NetFile -- the class of all net files
- Nothing -- the empty class
- Number -- the class of all numbers
- Pseudocode -- the class of pseudocodes
- Symbol -- the class of all symbols
- `SymbolBody` -- see symbolBody -- symbol bodies
- Task -- the class of all tasks

## Functions and methods returning a thing:

- Function Thing -- function application
- `BasicList # ZZ` -- see List # ZZ -- get value from list, hash table, database, dictionary, or string
- `HashTable # Thing` -- see List # ZZ -- get value from list, hash table, database, dictionary, or string
- List # ZZ -- get value from list, hash table, database, dictionary, or string
- `Sequence # ZZ` -- see List # ZZ -- get value from list, hash table, database, dictionary, or string
- `scan(BasicList,BasicList,Function)` -- see scan -- apply a function to each element in a list or sequence
- `scan(BasicList,Function)` -- see scan -- apply a function to each element in a list or sequence
- `scan(Thing,Function)` -- see scan -- apply a function to each element in a list or sequence
- `scan(ZZ,Function)` -- see scan -- apply a function to each element in a list or sequence
- taskResult(Task) -- retrieve the value returned by a task

## Methods that use a thing:

- `HashTable #? Thing` -- see #? -- check existence of value in a list, hash table, database, or string
- `Nothing #? Thing` -- see #? -- check existence of value in a list, hash table, database, or string
- `List * Thing` -- see * -- a binary operator, usually used for multiplication
- `Thing * List` -- see * -- a binary operator, usually used for multiplication
- `Thing =!= Thing` -- see =!= -- strict inequality
- `Thing === Thing` -- see === -- strict equality
- `Thing => Thing` -- see => -- construct an option
- `accumulate(Function,Thing)` -- see accumulate -- apply a binary operator repeatedly
- `accumulate(Function,Thing,Thing)` -- see accumulate -- apply a binary operator repeatedly
- `accumulate(Function,Thing,VisibleList)` -- see accumulate -- apply a binary operator repeatedly
- `accumulate(VisibleList,Thing,Function)` -- see accumulate -- apply a binary operator repeatedly
- `addHook(MutableHashTable,Thing,Function)` -- see addHook -- add a hook function to an object for later processing
- `append(BasicList,Thing)` -- see append -- add an element to the end of a list
- apply(Thing,Function) -- apply a function to an object with an iterator
- `applyPairs(Thing,Function)` -- see applyPairs -- apply a function to each pair in a hash table
- `assert(Thing)` -- see assert -- check whether something is true, raise an error if not
- `baseName(Thing)` -- see baseName -- the base name of a generator
- `between(Thing,VisibleList)` -- see between -- insert something between elements of a list
- `class(Thing)` -- see class -- class of an object
- `Command Thing` -- see Command -- the class of all commands
- `createTask(Function,Thing)` -- see createTask -- create a task
- `delete(Thing,BasicList)` -- see delete -- delete some elements of a list
- `describe(Thing)` -- see describe -- real description
- `dictionary(Thing)` -- see dictionary -- determine the dictionary to which a symbol belongs
- `makeDocumentTag(Thing)` -- see DocumentTag -- the class of all document tags
- `examples(Thing)` -- see examples -- list the examples in documentation
- `fold(Function,Thing)` -- see fold -- apply a binary operator repeatedly
- `fold(Function,Thing,Thing)` -- see fold -- apply a binary operator repeatedly
- `fold(VisibleList,Thing,Function)` -- see fold -- apply a binary operator repeatedly
- Function _ Thing -- attach the first argument to a function of two or more arguments
- `help(Thing)` -- see help -- view documentation nodes
- `hooks(Thing)` -- see hooks -- list hooks attached to a key
- `IndexedVariableTable _ Thing` -- see IndexedVariableTable
- `IndexedVariableTable _ Thing = Thing` -- see IndexedVariableTable
- `infoHelp(Thing)` -- see infoHelp -- view documentation in Info format
- `insert(ZZ,Thing,BasicList)` -- see insert -- copy a list, inserting an element
- `instance(Thing,Type)` -- see instance -- whether something has a certain type
- `isEmpty(Thing)` -- see isEmpty -- whether an object is empty
- `isFreeModule(Thing)` -- see isFreeModule -- whether something is a free module
- `isIdeal(Thing)` -- see isIdeal -- whether something is an ideal
- `isMember(Thing,Set)` -- see isMember -- test membership in a list or set
- `isMember(Thing,VisibleList)` -- see isMember -- test membership in a list or set
- `isModule(Thing)` -- see isModule -- whether something is a module
- `isMonomialIdeal(Thing)` -- see isMonomialIdeal -- whether something is a monomial ideal
- `isMutable(Thing)` -- see isMutable -- whether something may be modified
- `isPolynomialRing(Thing)` -- see isPolynomialRing -- whether something is a polynomial ring
- `isQuotientModule(Thing)` -- see isQuotientModule -- whether something is evidently a quotient of a free module
- `isRing(Thing)` -- see isRing -- whether something is a ring
- `isSubmodule(Thing)` -- see isSubmodule -- whether a module is evidently a submodule of a free module
- `methods(Thing)` -- see methods -- list methods
- `net(Thing)` -- see net -- format for printing, as a net
- `package(Thing)` -- see package -- get containing package
- `pairs(Thing)` -- see pairs -- list the pairs in a hash table, dictionary, or basic list
- `parent(Thing)` -- see parent -- parent type of an object
- `peek'(ZZ,Thing)` -- see peek' -- examine contents of an object
- `prepend(Thing,BasicList)` -- see prepend -- add an element to the beginning of a list
- `<< Thing` -- see printing to a file -- print to a file
- `File << Thing` -- see printing to a file -- print to a file
- `Nothing << Thing` -- see printing to a file -- print to a file
- `String << Thing` -- see printing to a file -- print to a file
- Program << Thing -- run program with input redirection
- registerFinalizer(Thing,String) (missing documentation)
- `remove(HashTable,Thing)` -- see remove -- remove an entry from a mutable hash table, list, or database
- replace(ZZ,Thing,BasicList) -- copy a list, replacing an element
- `runHooks(MutableHashTable,Thing,Thing)` -- see runHooks -- run the hook functions stored in an object
- `runHooks(Sequence,Thing)` -- see runHooks -- run the hook functions stored in an object
- `runHooks(Symbol,Thing)` -- see runHooks -- run the hook functions stored in an object
- `scanPairs(Thing,Function)` -- see scanPairs -- apply a function to the pairs in a hash table
- `schedule(Function,Thing)` -- see schedule -- schedule a task for execution
- `ScriptedFunctor ^ Thing` -- see ScriptedFunctor -- the class of all scripted functors
- `ScriptedFunctor _ Thing` -- see ScriptedFunctor -- the class of all scripted functors
- `ScriptedFunctor Thing` -- see ScriptedFunctor -- the class of all scripted functors
- select(Thing,Function) -- select elements from an object with an iterator
- `SelfInitializingType Thing` -- see SelfInitializingType -- the class of all self initializing types
- Set #? Thing -- test set membership
- Symbol _ Thing -- index variable
- Symbol _ Thing = Thing -- assignment to an indexed variable
- `SYNOPSIS(Thing)` -- see SYNOPSIS -- a standardized synopsis for use in documentation nodes
- `take(Thing,List)` -- see take -- take some elements from a list or sequence
- `take(Thing,ZZ)` -- see take -- take some elements from a list or sequence
- `toList(Thing)` -- see toList -- create a list
- `toSequence(Thing)` -- see toSequence -- convert to sequence
- truncate(InfiniteNumber,Thing) (missing documentation)
- `ultimate(Function,Thing)` -- see ultimate -- ultimate value for an iteration
- `undocumented(Thing)` -- see undocumented -- declare that something need not be documented
- `viewHelp(Thing)` -- see viewHelp -- view online documentation in a web browser
- VirtualTally _ Thing -- get a count from a tally
- `Command \\ Thing` -- see VisibleList // Function -- apply a function
- `Function \\ Thing` -- see VisibleList // Function -- apply a function
- `SelfInitializingType \\ Thing` -- see VisibleList // Function -- apply a function
- `Thing // Command` -- see VisibleList // Function -- apply a function
- `Thing // Function` -- see VisibleList // Function -- apply a function
- `Thing // SelfInitializingType` -- see VisibleList // Function -- apply a function
- `WrapperType Thing` -- see WrapperType -- a class of lists with abbreviated constructors
- ZZ : Thing -- repeat an item

## For the programmer

The object Thing is a type, with no ancestor class..

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Macaulay2Doc/ov_types.m2:544:0.