TypeClasses.jl
Monoid, Functor, Applicative, Monad and more
Install / Use
/learn @JuliaFunctional/TypeClasses.jlREADME
TypeClasses.jl
TypeClasses defines general programmatic abstractions taken from Scala cats and Haskell TypeClasses.
The following interfaces are defined:
| TypeClass | Methods | Description |
| ------------- | ---------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| Functor | Base.map | The basic definition of a container or computational context. |
| Applicative | Functor &TypeClasses.ap | Computational context with support for parallel execution. |
| Monad | Applicative &TypeClasses.flatmap | Computational context with support for sequential, nested execution. |
| Semigroup | TypeClasses.combine, alias ⊕ | The notion of something which can be combined with other things of its kind. |
| Monoid | Semigroup &TypeClasses.neutral | A semigroup with a neutral element is called a Monoid, an often used category. |
| Alternative | TypeClasses.neutral & TypeClasses.orelse, alias ⊘ | Slightly different than Monoid, theorelse semantic does not merge two values, but just takes one of the two. |
Related Skills
node-connect
339.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.8kCommit, push, and open a PR
