Learn R Programming

rmonad (version 0.7.0)

A Monadic Pipeline System

Description

A monadic solution to pipeline analysis. All operations -- and the errors, warnings and messages they emit -- are merged into a directed graph. Infix binary operators mediate when values are stored, how exceptions are handled, and where pipelines branch and merge. The resulting structure may be queried for debugging or report generation. 'rmonad' complements, rather than competes with, non-monadic pipeline packages like 'magrittr' or 'pipeR'. This work is funded by the NSF (award number 1546858).

Copy Link

Version

Install

install.packages('rmonad')

Monthly Downloads

41

Version

0.7.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Zebulun Arendsee

Last Published

February 14th, 2020

Functions in rmonad (0.7.0)

get_dependency_matrix

Get dependencies of local variables on inputs
x_to_monad

Conversions to monads
plot.Rmonad

Render an Rmonad graph
infix

Infix operators
make_cacher

Make Cacher object
null_as_error

Make NULL values an error
second

Given two arguments, return the second
size

Return the number of nodes in the workflow
loop

Apply an rmonad pipeline function to each element in a rmonad bound list
void_cache

Represent a value that has not been set
gff

Data for GFF processing vignette
clear_cache

Clear cached values and delete temporary files
reexports

Objects exported from other packages
views

Get a list of Rmonad objects matching the given tag
viewID

Move head to this id
view

Set the head of an Rmonad to a particular tag
viewIDs

Return a list of Rmonad objects at these positions
print.Rmonad

Rmonad print generic function
memory_cache

Store a value in memory
make_recacher

Make a function that takes an Rmonad and recaches it
no_cache

Represent a value that has been deleted
is_rmonad

Determine whether something is an Rmonad object
missues

Tabulates all errors, warnings and notes
mtabulate

Make tabular summary of a pipeline
false_as_error

Make NULL values an error
tag

Set the tag of an Rmonad object
splice_function

Take a monadic bind operation's result and splice histories
rmonad

rmonad: handling pipes, errors, and everything with monads
first

Given two arguments, return the first
true

Return true for all input
report

Convert a pipeline to Rmarkdown
nothing

Do nothing
toss

Take input and do nothing with it
rmonad_checkers

Vectorized existence checkers for public Rmonad fields
rmonad_getters

Vectorized getters for public Rmonad fields
esc

Returns the value a monad holds
extract_metadata

Extract docstring and meta data from an anonymous function
const

Ignore the first input, return the second
crunch

Cache all large values that are stored in memory
bind

Apply f to the contents of a monad and merge messages
apply_rewriters

Apply rewriters to an Rmonad
add_transitive_edges

Find inputs to a nest
fail_cache

Represent a dummy value for a node downstream of a failing node
false

Return false for all input