Core FOBS: A hybrid functional and object-oriented language
We describe a computer language that is a hybrid between functional and object-oriented languages. The language is based on a simple structure called a FOB (functional-object), capable of being used as a function, or accessed as an object. FOBS is a dynamically typed, referentially transparent language, designed for use as a universal scripting language. An extensive library is integral to the language. The library implements the primitive types and provides an interface to the external environment, allowing scripting actions to be carried out. FOBS is structured as an extended language, that is reduced to a core language by macro expansion. Our paper provides an introduction to the core language, a brief discussion of the extended language, and formal specifications of syntax and semantics for the core. The formal semantic description for FOBS is somewhat unusual for a scripting language. However, this description ensures that the FOBS semantics is well-specified, allowing programmers to write well understood programs, increasing program reliability.
hybrid functional object-oriented