function-definer

Defines a constant binding in the current module and initializes it to a new function.

The following functions return the same values as they would if the function had been defined as a bare method with the same signature:

Calling some of the following reflective operations on a function defined with define function may be an error:

Exported from

Macro Call

define (adjectives) function (name) (parameters) => (values) (options)
(body)
end function (name)

Arguments

adjectivesGwydion Dylan allows the following adjectives: not-inline, default-inline, may-inline, inline, inline-only, movable, flushable.  The default is sealed.  See Define adjectives.
nameA binding name.
parametersA parameter list.  May be empty.
valuesA value list.  May be omitted.
bodyA method body; a series of semicolon-separated expressions.
Returns the specializers of a function.
Returns information about the arguments accepted by a function.
Returns information about the values returned by a function.
Returns the methods of a generic function.
Adds a method to a generic function.
Returns the mandatory keywords of a generic function, if any.
Returns all the methods in a generic function that are applicable to sample arguments, sorted in order of specificity.
Returns the method in a generic function that has particular specializers.
Removes a method from a generic function.
Tests if a function is applicable to sample arguments.
The common-dylan module.
Whenever possible, we have tried to keep the Dylan module pristine and unextended, preferring to add our extensions to separate modules or libraries.
The various -definer macros may be used with a number of adjectives.