| Portability | portable |
|---|---|
| Stability | provisional |
Sindre.Lib
Description
Library routines and helper functions for the Sindre programming language.
- stdFunctions :: forall im. MonadBackend im => FuncMap im
- ioFunctions :: forall im. (MonadIO im, MonadBackend im) => FuncMap im
- ioGlobals :: MonadIO im => Map Identifier (im Value)
- class (MonadBackend im, MonadSindre im m) => LiftFunction im m a where
- class KeyLike a where
- chord :: [KeyModifier] -> a -> Chord
Documentation
stdFunctions :: forall im. MonadBackend im => FuncMap imSource
A set of pure functions that can work with any Sindre backend.
Includes the functions length, abs, substr, index, match,
sub, gsub, tolower, and toupper.
ioFunctions :: forall im. (MonadIO im, MonadBackend im) => FuncMap imSource
A set of impure functions that only work in IO backends.
Includes the system function.
ioGlobals :: MonadIO im => Map Identifier (im Value)Source
Global variables that require an IO backend. Includes the
ENVIRON global.
class (MonadBackend im, MonadSindre im m) => LiftFunction im m a whereSource
A class making it easy to adapt Haskell functions as Sindre
functions that take and return Values.
Methods
Instances
| (Mold a, LiftFunction im m b, MonadSindre im m) => LiftFunction im m (a -> b) | |
| (Mold a, MonadSindre im m) => LiftFunction im m (m im a) |
Convenience class for writing Chord values.
Methods
chord :: [KeyModifier] -> a -> ChordSource