An open API service providing repository metadata for many open source software ecosystems.

GitHub topics: algebraic-effects

dry-rb/dry-effects

Algebraic effects in Ruby

Language: Ruby - Size: 807 KB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 118 - Forks: 21

effekt-lang/effekt

A language with lexical effect handlers and lightweight effect polymorphism

Language: Scala - Size: 21.2 MB - Last synced at: 2 days ago - Pushed at: 2 days ago - Stars: 392 - Forks: 38

rcardin/yaes

An experimental effect system in Scala that tracks effects through context functions

Language: Scala - Size: 390 KB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 96 - Forks: 6

hnaderi/edomata

Production ready event-driven automata for Scala, Scala.js and scala native

Language: Scala - Size: 3.42 MB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 95 - Forks: 10

vchlin/corofx

Typed effect handlers for C++20 using coroutines.

Language: C++ - Size: 94.7 KB - Last synced at: 6 days ago - Pushed at: 6 days ago - Stars: 15 - Forks: 1

fused-effects/fused-effects

A fast, flexible, fused effect system for Haskell

Language: Haskell - Size: 6.4 MB - Last synced at: 5 days ago - Pushed at: 4 months ago - Stars: 661 - Forks: 52

thefrontside/effection

Structured concurrency and effects for JavaScript

Language: TypeScript - Size: 13.2 MB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 728 - Forks: 34

briancavalier/fx-ts

Computational environments and effects for TypeScript

Language: TypeScript - Size: 2.17 MB - Last synced at: 7 days ago - Pushed at: over 2 years ago - Stars: 62 - Forks: 7

koka-ts/koka-stack

Koka-Stack is a monorepo containing several packages that provide algebraic effects and domain-driven development capabilities for TypeScript applications.

Language: TypeScript - Size: 728 KB - Last synced at: 12 days ago - Pushed at: 12 days ago - Stars: 0 - Forks: 0

nythrox/effects.js

Algebraic effects in javascript with scoped handlers, multishot delimited continuations, stack safety, do notation and higher-order effects

Language: JavaScript - Size: 272 KB - Last synced at: 7 days ago - Pushed at: almost 3 years ago - Stars: 106 - Forks: 8

koka-lang/koka

Koka language compiler and interpreter

Language: Koka - Size: 47.4 MB - Last synced at: 16 days ago - Pushed at: 16 days ago - Stars: 3,608 - Forks: 184

suned/stateless

Statically typed, purely functional effects for Python.

Language: Python - Size: 126 KB - Last synced at: 15 days ago - Pushed at: over 1 year ago - Stars: 90 - Forks: 2

koka-ts/koka

Lightweight 3kB Effect-TS alternative library based on Algebraic Effects

Language: TypeScript - Size: 279 KB - Last synced at: 9 days ago - Pushed at: about 1 month ago - Stars: 53 - Forks: 3

Snowflyt/tinyeffect

A tiny TypeScript library for handling side effects in a unified way using algebraic effects, offering a type-safe approach for async operations, error handling, dependency injection, and more.

Language: TypeScript - Size: 1.52 MB - Last synced at: 26 days ago - Pushed at: 5 months ago - Stars: 30 - Forks: 1

liphe/delisp

A statically typed Lisp dialect with algebraic effect system compiling to Javascript

Language: TypeScript - Size: 4.3 MB - Last synced at: 5 days ago - Pushed at: over 2 years ago - Stars: 42 - Forks: 1

marcinzh/enterprise

Serve HTTP using Algebraic Effects and Handlers

Language: Scala - Size: 79.1 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 6 - Forks: 0

chester-lang/chester

Trying to make a practical possibly unsound dependently typed language with algebraic effects

Language: Scala - Size: 59.3 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 8 - Forks: 1

thefrontside/continuation

Delimited Continuations for JavaScript

Language: TypeScript - Size: 68.4 KB - Last synced at: 10 days ago - Pushed at: over 1 year ago - Stars: 35 - Forks: 3

marcinzh/turbolift

Algebraic Effects for Scala 3

Language: Scala - Size: 1.99 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 79 - Forks: 2

doeixd/effectively

An effect system for TypeScript inspired by algebraic effects.

Language: TypeScript - Size: 1.15 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 42 - Forks: 1

orsinium-labs/eff

Python library to work with algebraic effects

Language: Python - Size: 4.88 KB - Last synced at: about 1 month ago - Pushed at: almost 5 years ago - Stars: 80 - Forks: 2

olion-lang/olion

A programming language with Algebraic Effects on WASI

Size: 21.5 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 1 - Forks: 0

gabryon99/kotlin-effects

A Kotlin library implementing algebraic effect handlers.

Language: Kotlin - Size: 574 KB - Last synced at: 6 days ago - Pushed at: almost 2 years ago - Stars: 8 - Forks: 0

RedPRL/asai

🩺 A library for compiler diagnostics

Language: OCaml - Size: 1.17 MB - Last synced at: about 1 month ago - Pushed at: 7 months ago - Stars: 47 - Forks: 2

brianberns/AlgEff

Algebraic effects

Language: F# - Size: 126 KB - Last synced at: 5 days ago - Pushed at: 11 months ago - Stars: 83 - Forks: 5

tiny-bow/ribbon-language

Ribbon programming language

Language: Zig - Size: 3.11 MB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 17 - Forks: 0

vic/fx.go

An Algebraic Effect System for Golang.

Language: CSS - Size: 1.15 MB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 2 - Forks: 0

vic/fx-rs

Rust Algebraic Effects System - modeled after https://github.com/vic/fx.go

Language: Rust - Size: 199 KB - Last synced at: 18 days ago - Pushed at: about 2 months ago - Stars: 8 - Forks: 0

marcinzh/beam

Streams using Algebraic Effects and Handlers

Language: Scala - Size: 56.6 KB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 2 - Forks: 0

Nymphium/ruff

ONE-SHOT Algebraic Effects for Ruby!

Language: Ruby - Size: 231 KB - Last synced at: 9 days ago - Pushed at: about 1 month ago - Stars: 23 - Forks: 1

RedPRL/algaeff

🦠 Reusable components based on algebraic effects

Language: OCaml - Size: 698 KB - Last synced at: 23 days ago - Pushed at: 25 days ago - Stars: 51 - Forks: 1

Hihaheho/Desk 📦

🔮 The application platform for your cyberpunk desk

Language: Rust - Size: 1.7 MB - Last synced at: 4 days ago - Pushed at: almost 2 years ago - Stars: 111 - Forks: 10

phenax/algebraic-effects

Manage side-effects in your javascript application cleanly with algebraic effects

Language: TypeScript - Size: 2.92 MB - Last synced at: about 13 hours ago - Pushed at: over 2 years ago - Stars: 209 - Forks: 11

dhil/phd-dissertation

A summary of my activities during the past four years

Language: TeX - Size: 6.01 MB - Last synced at: 3 months ago - Pushed at: 11 months ago - Stars: 29 - Forks: 0

RedPRL/algaett

🦠 An experimental elaborator for dependent type theory using effects and handlers

Language: OCaml - Size: 620 KB - Last synced at: about 2 months ago - Pushed at: almost 2 years ago - Stars: 37 - Forks: 0

js2xxx/reffect

Yet another Rust algebraic effect library using generators

Language: Rust - Size: 215 KB - Last synced at: 3 months ago - Pushed at: 3 months ago - Stars: 18 - Forks: 0

tonix-tuft/react-suspense-async-effect

A library to perform asynchronous effects in React following the Suspense API principles providing asynchronous curried functions with a synchronous feel.

Language: JavaScript - Size: 6.5 MB - Last synced at: 18 days ago - Pushed at: over 2 years ago - Stars: 2 - Forks: 1

effectsjs/effectsjs

Algebraic Effects in Javascript

Language: JavaScript - Size: 8.16 MB - Last synced at: 6 days ago - Pushed at: over 2 years ago - Stars: 48 - Forks: 1

3Shain/algebraic-effects-ts

Multi-shot CPS typed algebraic effects and handlers, in typescript.

Language: TypeScript - Size: 25.4 KB - Last synced at: about 2 hours ago - Pushed at: almost 2 years ago - Stars: 18 - Forks: 0

macabeus/js-proposal-algebraic-effects

📐Let there be algebraic effects in JS

Language: JavaScript - Size: 5.77 MB - Last synced at: 15 days ago - Pushed at: over 4 years ago - Stars: 178 - Forks: 3

thalesmg/campinas

Experimental delimited continuations library for Elixir using shift / reset

Language: Elixir - Size: 21.5 KB - Last synced at: 11 days ago - Pushed at: about 4 years ago - Stars: 2 - Forks: 0

Nymphium/nloge

Logger with eio

Language: OCaml - Size: 387 KB - Last synced at: 2 months ago - Pushed at: 4 months ago - Stars: 7 - Forks: 1

yallop/effects-bibliography

A collaborative bibliography of work related to the theory and practice of computational effects

Size: 212 KB - Last synced at: 5 months ago - Pushed at: 5 months ago - Stars: 1,027 - Forks: 87

marcinzh/daae

Debug as an Effect (DaaE)

Language: Scala - Size: 64.5 KB - Last synced at: 5 months ago - Pushed at: 5 months ago - Stars: 9 - Forks: 0

duke13137/freer-simple

Language: Haskell - Size: 567 KB - Last synced at: 3 months ago - Pushed at: 5 months ago - Stars: 2 - Forks: 1

thma/PolysemyCleanArchitecture

Showcasing how the Polysemy library can be used to implement a REST application conforming to the guidelines of the Clean Architecture model.

Language: Haskell - Size: 1.6 MB - Last synced at: 4 months ago - Pushed at: over 1 year ago - Stars: 193 - Forks: 16

wasabi315/eff-ts

Effect handlers using JS/TS Generators

Language: TypeScript - Size: 63.5 KB - Last synced at: 4 months ago - Pushed at: about 1 year ago - Stars: 3 - Forks: 0

ocaml-multicore/ocaml-multicore 📦

Multicore OCaml

Language: OCaml - Size: 171 MB - Last synced at: 5 months ago - Pushed at: over 2 years ago - Stars: 763 - Forks: 68

valkyrie-language/valkyrie-document

A language about virtual kontinuation

Language: Mathematica - Size: 473 KB - Last synced at: 4 months ago - Pushed at: 9 months ago - Stars: 26 - Forks: 0

fp4ts/fp4ts

Zero-dependency, purely functional library for effectful programming in Typescript

Language: TypeScript - Size: 8.96 MB - Last synced at: 29 days ago - Pushed at: over 2 years ago - Stars: 27 - Forks: 1

TejasQ/basically-react-suspense

An attempt to explain React Suspense to myself.

Language: JavaScript - Size: 10.7 KB - Last synced at: 5 months ago - Pushed at: almost 6 years ago - Stars: 29 - Forks: 1

Nymphium/eff.lua

ONE-SHOT Algebraic Effects for Lua!

Language: Lua - Size: 71.3 KB - Last synced at: 2 months ago - Pushed at: 6 months ago - Stars: 49 - Forks: 0

omentic/cio

A structural effect handlers library for Racket

Language: Racket - Size: 25.4 KB - Last synced at: 6 months ago - Pushed at: 6 months ago - Stars: 5 - Forks: 0

marcinzh/spot

Cats Effect instances for Turbolift

Language: Scala - Size: 20.5 KB - Last synced at: about 1 month ago - Pushed at: 6 months ago - Stars: 0 - Forks: 1

hx-lang/hx

an effect handler-oriented programming language

Language: OCaml - Size: 81.1 KB - Last synced at: 7 months ago - Pushed at: 7 months ago - Stars: 5 - Forks: 0

Ekdohibs/joujou

A compiler from a small functional language to C. Especially features algebraic effects and handlers with multishot continuations, and a static type system with inference of types and effects, with subtyping.

Language: OCaml - Size: 509 KB - Last synced at: 5 months ago - Pushed at: over 6 years ago - Stars: 89 - Forks: 4

jaredly/j3

Another attempt to realize my programming language

Language: JavaScript - Size: 60.2 MB - Last synced at: 4 months ago - Pushed at: 7 months ago - Stars: 23 - Forks: 0

ENvironmentSet/hyogwa

Natural 🌿 effect system that fits TypeScript

Language: TypeScript - Size: 193 KB - Last synced at: 28 days ago - Pushed at: about 1 year ago - Stars: 59 - Forks: 2

fused-effects/fused-effects-parser

Parsing w/ fused-effects inspired by trifecta

Language: Haskell - Size: 568 KB - Last synced at: 4 months ago - Pushed at: 8 months ago - Stars: 5 - Forks: 0

fused-effects/fused-effects-readline

A readline-like effect and carrier for fused-effects using haskeline

Language: Haskell - Size: 143 KB - Last synced at: 9 days ago - Pushed at: 8 months ago - Stars: 6 - Forks: 2

anoojpatel/metaxu

A self-hosted low-level functional-style programming language 🌀

Language: Python - Size: 567 KB - Last synced at: 8 months ago - Pushed at: 8 months ago - Stars: 3 - Forks: 0

nilern/fell

Freer monad for Clojure(Script)

Language: Clojure - Size: 81.1 KB - Last synced at: 4 months ago - Pushed at: over 4 years ago - Stars: 7 - Forks: 0

Nymphium/eff.go

One-shot algebraic effects for Golang

Language: Go - Size: 28.3 KB - Last synced at: 2 months ago - Pushed at: about 1 year ago - Stars: 7 - Forks: 0

tonyg/racket-effects

Delimited-continuation-based effects for Racket

Language: Racket - Size: 16.6 KB - Last synced at: about 6 hours ago - Pushed at: over 6 years ago - Stars: 7 - Forks: 1

moleike/evidence

Effect Handlers in Scala, Evidently

Language: Scala - Size: 66.4 KB - Last synced at: 9 months ago - Pushed at: 9 months ago - Stars: 1 - Forks: 0

CoNarrative/framework-x

A reasonable programming framework.

Language: JavaScript - Size: 8.14 MB - Last synced at: 28 days ago - Pushed at: over 2 years ago - Stars: 18 - Forks: 2

ribbon-lang/rir

Ribbon intermediate representation

Language: Zig - Size: 46.9 KB - Last synced at: 10 months ago - Pushed at: 10 months ago - Stars: 0 - Forks: 0

RedPRL/yuujinchou

👹 A library for hierarchical names and lexical scoping

Language: OCaml - Size: 1000 KB - Last synced at: 4 months ago - Pushed at: 11 months ago - Stars: 25 - Forks: 4

Tomatosoup97/freak

Free as in beer, free as in algebra. Language with (co)algebraic effects and (co)handlers

Language: TeX - Size: 6.45 MB - Last synced at: 5 months ago - Pushed at: almost 5 years ago - Stars: 8 - Forks: 0

Nymphium/lambdaeff

λeff, λ calculus + algebraic effects

Language: Haskell - Size: 167 KB - Last synced at: 3 months ago - Pushed at: about 3 years ago - Stars: 4 - Forks: 0

Zeta611/effect_based_interpreter

🪄 A modular interpreter using effects and effect handlers

Language: OCaml - Size: 4.88 KB - Last synced at: 3 months ago - Pushed at: over 1 year ago - Stars: 3 - Forks: 0

alesiong/effects-ocaml

Algebraic effects examples in OCaml

Language: OCaml - Size: 3.91 KB - Last synced at: 6 months ago - Pushed at: about 1 year ago - Stars: 0 - Forks: 0

zhxxch/EffectfulCode

algebraic effects for F#

Language: F# - Size: 23.4 KB - Last synced at: 6 months ago - Pushed at: about 1 year ago - Stars: 0 - Forks: 0

digital-fabric/affect

Algebraic effects for Ruby

Language: Ruby - Size: 23.4 KB - Last synced at: 6 days ago - Pushed at: almost 4 years ago - Stars: 79 - Forks: 5

danr/koka-slides

Talk about Leijen's "Type Directed Compilation of Row-Typed Algebraic Effects"

Language: TypeScript - Size: 10.7 KB - Last synced at: 5 months ago - Pushed at: almost 8 years ago - Stars: 5 - Forks: 0

JonasHoefer/scoped-effects-agda

An implementation of scoped algebraic effects and handlers in Agda.

Language: TeX - Size: 13.7 MB - Last synced at: about 1 year ago - Pushed at: over 4 years ago - Stars: 11 - Forks: 0

marietta112/OCaml-and-Algebraic-Effect-Handlers

Using OCaml 5.1.0 to express monitors in Runtime Verification using algebraic effects and handlers.

Language: OCaml - Size: 62.5 KB - Last synced at: over 1 year ago - Pushed at: over 1 year ago - Stars: 0 - Forks: 0

facet-lang/facet

a functional programming language with algebraic effects and handlers

Language: Haskell - Size: 9.97 MB - Last synced at: about 1 year ago - Pushed at: over 3 years ago - Stars: 81 - Forks: 1

alissa-tung/eff 📦

Unusable Resource-dependent algebraic effects library in Idris 2.

Language: Idris - Size: 10.7 KB - Last synced at: over 1 year ago - Pushed at: over 4 years ago - Stars: 2 - Forks: 1

dallonf/causelang

A proof-of-concept programming language inspired by algebraic effects. Fully deterministic!

Language: Kotlin - Size: 2.18 MB - Last synced at: 5 months ago - Pushed at: 5 months ago - Stars: 5 - Forks: 0

maciejpirog/cpp-effects

Effect handlers in C++

Language: C++ - Size: 249 KB - Last synced at: over 1 year ago - Pushed at: almost 2 years ago - Stars: 113 - Forks: 10

fuunnx/performative-ts

Algebraic effects inspired, composable, minimalist and typed injection library

Language: TypeScript - Size: 241 KB - Last synced at: about 2 years ago - Pushed at: over 4 years ago - Stars: 3 - Forks: 0

effect-handlers/wasm-effect-handlers 📦

WebAssembly specification, reference interpreter, and test suite with effect handlers extension.

Language: WebAssembly - Size: 9.56 MB - Last synced at: about 2 years ago - Pushed at: about 3 years ago - Stars: 33 - Forks: 2

robrix/ui-effects

An experiment towards a UI programming model inspired by algebraic effects.

Language: Haskell - Size: 578 KB - Last synced at: 4 months ago - Pushed at: over 8 years ago - Stars: 30 - Forks: 1

broom-lang/broom

A programming language with first-class modules and algebraic effects.

Language: OCaml - Size: 2.23 MB - Last synced at: about 2 years ago - Pushed at: almost 3 years ago - Stars: 10 - Forks: 1

ebresafegaga/tina

Tina, a programming language with typed algebraic effects and handlers.

Language: OCaml - Size: 8.9 MB - Last synced at: over 2 years ago - Pushed at: about 4 years ago - Stars: 5 - Forks: 1

lagunoff/typescript-freer 📦

Extensible Effects in typescript

Language: TypeScript - Size: 42 KB - Last synced at: over 2 years ago - Pushed at: over 6 years ago - Stars: 7 - Forks: 1

dmitriz/tiny-cps 📦

Tiny goodies for Continuation-Passing-Style functions (OLDER VERSION), use instead the NEWER `cpsfy`

Language: JavaScript - Size: 561 KB - Last synced at: 9 days ago - Pushed at: over 5 years ago - Stars: 16 - Forks: 0

d-plaindoux/Effekts 📦

User defined effects for Kotlin multiplatform

Language: Kotlin - Size: 152 KB - Last synced at: over 2 years ago - Pushed at: over 4 years ago - Stars: 9 - Forks: 3

dhil/hank

a research programming language based on handlers

Language: OCaml - Size: 65.4 KB - Last synced at: 5 months ago - Pushed at: over 6 years ago - Stars: 1 - Forks: 0

kituyiharry/montecarlo

Monte Carlo PI estimation using OCaml-multicore primitives

Language: OCaml - Size: 6.84 KB - Last synced at: over 2 years ago - Pushed at: almost 3 years ago - Stars: 0 - Forks: 0

AtticusKuhn/js-algebraic-effects

Free Monads and Algebraic Effects implemented in vanilla javascript

Language: JavaScript - Size: 697 KB - Last synced at: 5 months ago - Pushed at: about 3 years ago - Stars: 2 - Forks: 0

lukeg101/MScProjectPublic

Masters Thesis, University of Oxford. Research project combining Calculating Compilers and Algebraic Effects using Haskell, supervised by Jeremy Gibbons. Presented work at the International Conference on Functional Programming Student Research Competition and the 7th South of England Regional Programming Languages Seminar.

Language: Haskell - Size: 167 KB - Last synced at: 4 months ago - Pushed at: over 7 years ago - Stars: 8 - Forks: 0

kubukoz/classy-playground

A playground project for examples of using MTL with classy lenses

Language: Scala - Size: 7.81 KB - Last synced at: 5 days ago - Pushed at: almost 7 years ago - Stars: 0 - Forks: 0

Related Keywords
algebraic-effects 94 functional-programming 23 effects 19 effect-handlers 14 ocaml 10 typescript 10 haskell 9 compiler 7 scala 7 programming-language 7 effect-system 6 handlers 5 algebraic-effect-handlers 5 continuations 4 coroutines 4 monad 4 delimited-continuations 4 computational-effects 4 javascript 4 concurrency 3 effect 3 koka 3 lisp 3 racket 3 side-effects 3 ruby 3 interpreter 3 algebraic-data-types 3 cats 3 continuation-passing-style 3 proposal 2 runtime 2 babel 2 dependent-types 2 object-oriented-programming 2 react 2 asynchronous 2 effect-handler-oriented-programming 2 monads 2 continuation 2 typelevel 2 ocaml-library 2 rust 2 type-inference 2 dependency-injection 2 webassembly 2 abilities 2 error-handling 2 compilers 2 cqrs 2 python 2 delimited-continuation 2 ddd 2 async-await 2 state-management 2 domain-driven-design 2 swagger-documentation 1 swagger-ui 1 testability 1 warp 1 cats-effect 1 multicore 1 type-system 1 derivation 1 first-class-continuations 1 category-theory 1 higher-kinded-types 1 calculating-compilers 1 eff 1 free-monads 1 lua 1 ehop 1 ocaml-multicore 1 kotlin-multiplatform 1 cps 1 control-flow 1 logger 1 tagless-final 1 bibliography 1 freer-monads 1 algebraic 1 mtl 1 architecture 1 classy-lenses 1 clean-architecture 1 hexagonal-architecture 1 cats-mtl 1 io-monad 1 onion-architecture 1 persistence-layer 1 polysemy 1 polysemy-effects 1 polysemy-library 1 ports-and-adapters 1 servant 1 sqlite 1 bidirectional-typechecking 1 intermediate-representation 1 type-class 1 row-polymorphism 1