effect-typeclass-design

Community

Build curried, dual APIs for typeclasses

Authormpsuesser
Version1.0.0
Installs0

System Documentation

What problem does it solve?

Effect-style typeclasses become hard to reuse when their functions aren’t consistently curried and when they don’t offer both data-first and data-last calling styles.

Core Features & Use Cases

  • Fully curried typeclass functions so users can partially apply instances for filtering and configuration-style composition.
  • Dual APIs via Function.dual to provide both pipe-friendly (data-last) and direct-call (data-first) forms for the same operation.
  • Typeclass instance first design (the instance parameter is first) to keep abstractions uniform and ergonomic across many types.

Quick Start

Implement your typeclass operations as curried functions that accept the typeclass instance first and expose a single Function.dual wrapper that supports both (self, input) and pipe-friendly (input)(self) usage.

Dependency Matrix

Required Modules

None required

Components

Standard package

💻 Claude Code Installation

Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.

Please help me install this Skill:
Name: effect-typeclass-design
Download link: https://github.com/mpsuesser/pi-effect-harness/archive/main.zip#effect-typeclass-design

Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
View Source Repository

Agent Skills Search Helper

Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.