All Projects → sebinsua → Ramda Debug

sebinsua / Ramda Debug

🐏 Debugging for Ramda.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Ramda Debug

Ramda Extension
🤘Utility library for functional JavaScript. With ❤️ to Ramda.
Stars: ✭ 139 (+23.01%)
Mutual labels:  ramda, functional-programming
Performance Analysis Js
Map/Reduce/Filter/Find Vs For loop Vs For each Vs Lodash vs Ramda
Stars: ✭ 532 (+370.8%)
Mutual labels:  ramda, functional-programming
Rambdax
Extended version of Rambda
Stars: ✭ 148 (+30.97%)
Mutual labels:  ramda, functional-programming
List
🐆 An immutable list with unmatched performance and a comprehensive functional API.
Stars: ✭ 1,604 (+1319.47%)
Mutual labels:  ramda, functional-programming
Rambda
Faster and smaller alternative to Ramda
Stars: ✭ 1,066 (+843.36%)
Mutual labels:  ramda, functional-programming
Zebras
Data analysis library for JavaScript built with Ramda
Stars: ✭ 192 (+69.91%)
Mutual labels:  ramda, functional-programming
Lambda
🔮 Estudos obscuros de programação funcional
Stars: ✭ 297 (+162.83%)
Mutual labels:  ramda, functional-programming
Ramda Adjunct
Ramda Adjunct is the most popular and most comprehensive set of functional utilities for use with Ramda, providing a variety of useful, well tested functions with excellent documentation.
Stars: ✭ 550 (+386.73%)
Mutual labels:  ramda, functional-programming
Inferno Most Fp Demo
A demo for the ReactJS Tampa Bay meetup showing how to build a React+Redux-like architecture from scratch using Inferno, Most.js, reactive programmning, and various functional programming tools & techniques
Stars: ✭ 45 (-60.18%)
Mutual labels:  ramda, functional-programming
Bugz
🐛 Composable User Agent Detection using Ramda
Stars: ✭ 15 (-86.73%)
Mutual labels:  ramda, functional-programming
Dash
Functional programming library for PHP. Inspired by Underscore, Lodash, and Ramda.
Stars: ✭ 84 (-25.66%)
Mutual labels:  ramda, functional-programming
Ramtuary
Ramda + Ramda Fantasy + Sanctuary REPL 🌿
Stars: ✭ 72 (-36.28%)
Mutual labels:  ramda, functional-programming
Imlazy
😴 Functional programming with lazy immutable iterables
Stars: ✭ 89 (-21.24%)
Mutual labels:  ramda, functional-programming
Clear Config
Scala FP configuration library with a focus on runtime clarity
Stars: ✭ 108 (-4.42%)
Mutual labels:  functional-programming
Scala Trace Debug
Macro based print debugging. Locates log statements in your IDE.
Stars: ✭ 110 (-2.65%)
Mutual labels:  debug
Functionaljava
Functional programming in Java
Stars: ✭ 1,472 (+1202.65%)
Mutual labels:  functional-programming
Church
⛪️ Church Encoding in JS
Stars: ✭ 107 (-5.31%)
Mutual labels:  functional-programming
Ddd On Scala
DDD sample implementation by Scala.
Stars: ✭ 113 (+0%)
Mutual labels:  functional-programming
Masala Parser
Javascript Generalized Parser Combinators
Stars: ✭ 110 (-2.65%)
Mutual labels:  functional-programming
Pattern Matching Ts
⚡ Pattern Matching in Typescript
Stars: ✭ 107 (-5.31%)
Mutual labels:  functional-programming

ramda-debug Build Status npm version

🐏 Debugging for Ramda.

Aims to ease observability when coding in a point-free programming style hopefully making it easier to spot errors.

See also tap-debug for a more human-readable debug function.

var R = require('ramda');
var look = require('ramda-debug');

R = look.wrap(R);

var getTypes = look.fov(function getTypes(fruits) {
  var getType = R.prop('type');
  var mapTypes = R.map(getType);

  return mapTypes(fruits);
});

getTypes([ { 'type': 'fruit' } ]);

Example The type signatures emitted are type signatures constructed from runtime usage of a function. The intention is that if a function is being used incorrectly the type signature will also be incorrect and that this can be noticed. Unfortunately it means that polymorphism will not be apparent.

Usage

By default debugging is not enabled.

look(fn)

A function can be passed in and a wrapped function that can emit debug information on execution will be returned.

Any function can be wrapped using this.

wrap(library)

An object of functions may be passed in and an object or wrapped functions will be returned.

Any object of functions can be wrapped using this and not just Ramda.

fov(fn)

This returns a function that provides a field of view within a function by proxying into fn and switching debugging on while it is being executed.

enable(enabled)

Switch debugging to this boolean value.

on()

Switch debugging on.

off()

Switch debugging off.

Installation

npm install [--save] ramda-debug;
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].