Portability | portable |
---|---|
Stability | provisional |
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 Value
s.
(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.
chord :: [KeyModifier] -> a -> ChordSource