Displaying 1 to 20 from 24 results

plt - Programming Language Theory

  •    CSS

Finding a path to enlightenment in Programming Language Theory can be a tough one, particularly for programming practitioners who didn't learn it at school. This resource is here to help. Please feel free to ping me or send pull requests if you have ideas for improvement. Note that I've attempted to order the books in order of most "tackleable". So the idea is to read books from top to bottom. As always, it depends on your background and inclinations. It would be nice to provide multiple paths through this material for folks with different backgrounds and even folks with different goals. However, for now, it is what it is.

milewski-ctfp-pdf - Bartosz Milewski's 'Category Theory for Programmers' unofficial PDF and LaTeX source

  •    TeX

This is an unofficial PDF version of "Category Theory for Programmers" by Bartosz Milewski, converted from his blogpost series. Conversion is done by scraping the blog with Mercury Web Parser to get a clean HTML content, modifying and tweaking with Beautiful Soup, finally, converting to LaTeX with Pandoc. See scraper.py for additional information.

arrow - Functional companion to Kotlin's Standard Library

  •    Kotlin

Λrrow is a library for Typed Functional Programming in Kotlin. Arrow aims to provide a lingua franca of interfaces and abstractions across Kotlin libraries. For this, it includes the most popular data types, type classes and abstractions such as Option, Try, Either, IO, Functor, Applicative, Monad to empower users to write pure FP apps and libraries built atop higher order abstractions.

quiver - A modern commutative diagram editor for the web.

  •    Javascript

quiver is a modern, graphical editor for commutative and pasting diagrams, capable of rendering high-quality diagrams for screen viewing, and exporting to LaTeX via tikz-cd. Creating and modifying diagrams with quiver is orders of magnitude faster than writing the equivalent LaTeX by hand and, with a little experience, competes with pen-and-paper.

category-theory-programmers - Notes on category theory in the context of (functional) programming


This document contains notes on category theory in the context of (functional) programming. Originally they were lecture notes for a seminar hosted at Centrum Wiskunde & Informatica, the national research centre for mathematics and computer science in the Netherlands. The main reason for compiling these notes is to provide a way to gain familiarity with concepts of category theory (and other branches of mathematics) that apply in a broad sense to the field of functional programming. The notes are written in Markdown, and pandoc is used to generate the document. Running make inside the doc directory should result in an (updated) pdf, granted that pandoc, pandoc-citeproc and a LaTeX environment are installed.

category-theory - A formalization of category theory in Coq for personal study and practical work

  •    Coq

This development encodes category theory in Coq, with the primary aim being to allow representation and manipulation of categorical terms, as well realization of those terms in various target categories. Core Theory, covering topics such as categories, functors, natural transformations, adjunctions, kan extensions, etc.

fluokitten - Category theory concepts in Clojure - Functors, Applicatives, Monads, Monoids and more.

  •    Clojure

Fluokitten is a Clojure library that implements category theory concepts, such as functors, applicative functors, monads, monoids etc. in idiomatic Clojure. There is a lot of documentation and tutorials at Fluokitten Website. Please make sure to check it out.

zio-prelude - A lightweight, distinctly Scala take on functional abstractions, with tight ZIO integration

  •    Scala

ZIO Prelude is an alternative approach to functional abstractions in Scala, which throws out the classic functor hierarchy in favor of a modular algebraic approach that is smaller, easier to understand and teach, and more expressive. The library has a small research-stage package (zio.prelude.fx) that provides abstraction over expressive effect types like ZIO and ZPure.

categories - Categories parametrized by morphism equality, in Agda

  •    Agda

Categories parametrized by morphism equality, in Agda

cain - Category theory applied to functional programming (undergraduate project)

  •    TeX

We study some of the applications of category theory to functional programming, particularly in the context of the Haskell functional programming language, and the Agda dependently typed functional programming language and proof assistant. More specifically, we describe and explain the concepts of category theory needed for conceptualizing and better understanding algebraic data types and folds, functors, monads, and parametrically polymorphic functions. With this purpose, we give a detailed account of categories, functors and endofunctors, natural transformations, monads and Kleisli triples, algebras and initial algebras over endofunctors, among others. In addition, we explore all of these concepts from the standpoints of categories and programming in Haskell, and, in some cases, Agda. In other words, we examine functional programming through category theory.

purescript-ctprelude - A Prelude with names from category theory

  •    PureScript

An educational Prelude for PureScript with names from category theory. This module is mainly intended for educational purposes. For some applications, see the file test/Main.purs. It demonstrates how to use CTPrelude to prove isomorphisms between types, such as a ⊕ a ≅ Two ⊗ a or a few of the above.

bow - Bow is a library for Typed Functional Programming in Swift.

  •    Swift

Bow is a library for Typed Functional Programming in Swift. If you want to contribute to this library, you can check the Issues to see some of the pending task.

functional-examples - Examples with Functional JavaScript, following Professor Frisby's course

  •    Javascript

Heavily annotated examples from the awesome videos Professor Frisby Introduces Composable Functional JavaScript, see also the discussion on Reddit and on Hacker News. See also the wonderful e-book Professor Frisby's Mostly Adequate Guide to Functional Programming by the same author (See also https://github.com/MostlyAdequate/mostly-adequate-guide for the updates).

cat - A formalization of category theory in cubical Agda

  •    Agda

This project aims to formalize some parts of category theory using cubical agda — an extension to agda permitting univalence. To learn more about this read the docs. This project draws a lot of inspiration from the HoTT-book.

ctrs - Category Theory in Rust

  •    Rust

I intend for each minor version to roughly correspond to one added chapter of documentation. I won't bump the major version until I get to the second Milewski course, and later the third, etc. Note: This crate is more like a journal or notebook than a functional library; Import at your own discretion.

purify - Functional programming library for TypeScript - https://gigobyte.github.io/purify/

  •    TypeScript

Purify is a library for functional programming in TypeScript. It's purpose is to allow developers to use popular patterns and abstractions that are available in most functional languages. It is also Fantasy Land conformant. Elegant and developer-friendly API - purify's design decisions are made with developer experience in mind. Purify doesn't try to change how you write TypeScript, instead it provides useful tools for making your code easier to read and maintain without resolving to hacks or scary type definitions.

functional-structures-refactoring-kata - Starting code and proposed solution for Functional Structures Refactoring Kata

  •    CSharp

This refactoring kata aims to let you practice with one of the main functional programming building block: Functional Structures. The starting code (provided in different languages) implements a use case with an imperative approach. Your mission is to remove every effects (aka computational context) within the applyDiscount function with the power of Functional Structures.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.