We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5bc5c45 commit f9bc1c0Copy full SHA for f9bc1c0
examples/functional/monads.p6
@@ -7,13 +7,13 @@ use v6;
7
# Perl 6: { a }
8
9
# return :: (Monad m) => a -> m a
10
-sub mreturn($a) { return { $a } }
+sub mreturn($a --> Code ) { return { $a } }
11
12
# (>>=) :: (Monad m) => m a -> (a -> m b) -> m b
13
sub mbind(
14
- Code $ma, # m a
15
- Code $f # (a -> m b)
16
- --> Code
+ Code $ma, # m a
+ Code $f # (a -> m b)
+ --> Code
17
) {
18
return {
19
my $a = $ma(); # Run m a, yielding a
@@ -100,7 +100,6 @@ sub putStrLn(Str $x) { return { say $x; Nil } }
100
my $results = sequence(@actions);
101
102
my $echo_prefixed = mbind($results, -> @results {
103
- say @results;
104
mapM(-> Str $x { putStrLn($x) }, @results);
105
});
106
$echo_prefixed();
0 commit comments