Hyper Dictionary

English Dictionary Computer Dictionary Video Dictionary Thesaurus Dream Dictionary Medical Dictionary

Search Dictionary:  

Meaning of MONAD

Pronunciation:  'mânad

WordNet Dictionary
  1. [n]  a singular metaphysical entity from which material properties are said to derive
  2. [n]  an atom having a valence of one

MONAD is a 5 letter word that starts with M.


 Synonyms: monas
 See Also: 1, ace, atom, I, one, single, unity



Webster's 1913 Dictionary
\Mon"ad\, n. [L. monas, -adis, a unit, Gr. ?, ?, fr. ?
1. An ultimate atom, or simple, unextended point; something
   ultimate and indivisible.

2. (Philos. of Leibnitz) The elementary and indestructible
   units which were conceived of as endowed with the power to
   produce all the changes they undergo, and thus determine
   all physical and spiritual phenomena.

3. (Zo["o]l.) One of the smallest flangellate Infusoria;
   esp., the species of the genus Monas, and allied genera.

4. (Biol.) A simple, minute organism; a primary cell, germ,
   or plastid.

5. (Chem.) An atom or radical whose valence is one, or which
   can combine with, be replaced by, or exchanged for, one
   atom of hydrogen.

{Monad deme} (Biol.), in tectology, a unit of the first order
   of individuality.

Computing Dictionary

/mo'nad/ A technique from category theory which has been adopted as a way of dealing with state in functional programming languages in such a way that the details of the state are hidden or abstracted out of code that merely passes it on unchanged.

A monad has three components: a means of augmenting an existing type, a means of creating a default value of this new type from a value of the original type, and a replacement for the basic application operator for the old type that works with the new type.

The alternative to passing state via a monad is to add an extra argument and return value to many functions which have no interest in that state. Monads can encapsulate state, side effects, exception handling, global data, etc. in a purely lazily functional way.

A monad can be expressed as the triple, (M, unitM, bindM) where M is a function on types and (using haskell notaion):

        unitM :: a -> M a
        bindM :: M a -> (a -> M b) -> M b

I.e. unitM converts an ordinary value of type a in to monadic form and bindM applies a function to a monadic value after de-monadising it. E.g. a state transformer monad:

        type S a = State -> (a, State)
        unitS a  = \ s0 -> (a, s0)
        m `bindS` k = \ s0 -> let (a,s1) = m s0
                              in k a s1

Here unitS adds some initial state to an ordinary value and bindS applies function k to a value m. (`fun` is Haskell notation for using a function as an infix operator). Both m and k take a state as input and return a new state as part of their output. The construction

        m `bindS` k

composes these two state transformers into one while also passing the value of m to k.

Monads are a powerful tool in functional programming. If a program is written using a monad to pass around a variable (like the state in the example above) then it is easy to change what is passed around simply by changing the monad. Only the parts of the program which deal directly with the quantity concerned need be altered, parts which merely pass it on unchanged will stay the same.

In functional programming, unitM is often called initM or returnM and bindM is called thenM. A third function, mapM is frequently defined in terms of then and return. This applies a given function to a list of monadic values, threading some variable (e.g. state) through the applications:

        mapM :: (a -> M b) -> [a] -> M [b]
        mapM f []     = returnM []
        mapM f (x:xs) = f x                   `thenM` ( \ x2 ->
                        mapM f xs          `thenM` ( \ xs2 ->
                            returnM (x2 : xs2)         ))

Thesaurus Terms
 Related Terms: ace, air, an existence, atom, atomic particles, being, body, brute matter, building block, chemical element, component, constituent, creature, critter, earth, electron, element, elementary particle, elementary unit, entelechy, entity, fire, fundamental particle, hyle, hypostasis, I, individual, ion, life, material, material world, materiality, matter, meson, molecule, natural world, nature, no other, none else, nothing else, nought beside, nuclear particle, object, one, one and only, organism, person, persona, personality, physical world, plenum, proton, quark, something, soul, stuff, substance, substratum, the four elements, thing, unit, unit of being, water