unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* bug#26382: [PATCH 0/3] Improve documentation for monads.
@ 2017-04-06  9:15 Chris Marusich
  2017-04-06  9:28 ` bug#26382: [PATCH 1/3] monads: Use intent-revealing parameter names Chris Marusich
  0 siblings, 1 reply; 7+ messages in thread
From: Chris Marusich @ 2017-04-06  9:15 UTC (permalink / raw)
  To: 26382; +Cc: Chris Marusich

Hi,

The following patch series attempts to clarify how one is supposed to
use some of the monad-related syntax that Guix provides.  It also
documents two commonly used forms (mwhen and munless) that were
missing from the manual.

Some of this might seem obvious to someone who is already familiar
with monads.  However, since I only recently learned about monads, a
lot of these details were not obvious to me at all.  For example, I
didn't know that every expression in an mbegin needs to be a monadic
expression (despite having read the manual multiple times).  This was
especially confusing because the same is NOT true for an mlet.  I hope
these patches will help clarify for other monad newbies how this
syntax is supposed to be used.

--
Chris

Chris Marusich (3):
  monads: Use intent-revealing parameter names.
  monads, doc: Improve mwhen and munless documentation.
  monads: Improve mlet, mlet*, and mbegin documentation.

 doc/guix.texi   | 28 +++++++++++++++++++++++++---
 guix/monads.scm | 36 +++++++++++++++++++++++-------------
 2 files changed, 48 insertions(+), 16 deletions(-)

-- 
2.12.0

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-04-08 12:37 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-06  9:15 bug#26382: [PATCH 0/3] Improve documentation for monads Chris Marusich
2017-04-06  9:28 ` bug#26382: [PATCH 1/3] monads: Use intent-revealing parameter names Chris Marusich
2017-04-06  9:28   ` bug#26382: [PATCH 2/3] monads, doc: Improve mwhen and munless documentation Chris Marusich
2017-04-08 12:31     ` Ludovic Courtès
2017-04-06  9:28   ` bug#26382: [PATCH 3/3] monads: Improve mlet, mlet*, and mbegin documentation Chris Marusich
2017-04-08 12:36     ` Ludovic Courtès
2017-04-08 12:30   ` bug#26382: [PATCH 1/3] monads: Use intent-revealing parameter names Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).