# Intro This section deals with the following specifications * Specification of generic functions applicable in the Simantics framework * Specification of functions attached to types (methods) * Specification of functions with side-effects (operations or commands) * Automatically generated code based on semantic model about functions (stubs) ## Specification * Functions are objects implementing the interface `org.simantics.scl.runtime.function.Function`. * We have a type `Value` (?) that can be adapted to an SCL value (in particular to a function). * We have a relation `HasType` (?) Value -> String that specifies the SCL type of the value * Operations are functions that return an object implementing `WriteResult`.