Skip to content
Projects
Groups
Snippets
Help
Loading...
See what's new at GitLab
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Switch to GitLab Next
Sign in / Register
Toggle navigation
T
typeslogicscats.gitlab.io
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
1
Merge Requests
1
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
TypesLogicsCats
typeslogicscats.gitlab.io
Commits
decdfdba
Commit
decdfdba
authored
Aug 31, 2019
by
Alan H
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix small type error in functor-applicative,-monad post
parent
4817013b
Pipeline
#79587323
passed with stage
in 5 minutes and 25 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1 addition
and
1 deletion
+1
-1
posts/functor-applicative-monad.md
posts/functor-applicative-monad.md
+1
-1
No files found.
posts/functor-applicative-monad.md
View file @
decdfdba
...
@@ -120,7 +120,7 @@ operator. The code `let+ x = a and+ y = b in c`{.ocaml} desugars into
...
@@ -120,7 +120,7 @@ operator. The code `let+ x = a and+ y = b in c`{.ocaml} desugars into
`map`
{.ocaml} with its arguments reversed, then it would have type
`map`
{.ocaml} with its arguments reversed, then it would have type
`('a * 'b) t -> (('a * 'b) -> 'c) -> 'c t`
{.ocaml} in this context, as the
`('a * 'b) t -> (('a * 'b) -> 'c) -> 'c t`
{.ocaml} in this context, as the
lambda in the desugaring takes a pair as an input. Therefore,
`(and+)`
{.ocaml}
lambda in the desugaring takes a pair as an input. Therefore,
`(and+)`
{.ocaml}
must have type
`'a t
*
'b t -> ('a * 'b) t`
{.ocaml} for it to define an
must have type
`'a t
->
'b t -> ('a * 'b) t`
{.ocaml} for it to define an
applicative. So, applicatives are about "preserving" the product.
applicative. So, applicatives are about "preserving" the product.
Given:
Given:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment