This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-03-28
Channels
- # aws (1)
- # beginners (30)
- # boot (7)
- # cider (52)
- # clara (91)
- # cljs-dev (33)
- # cljsjs (1)
- # clojure (447)
- # clojure-brasil (3)
- # clojure-dev (16)
- # clojure-dusseldorf (5)
- # clojure-filipino (1)
- # clojure-italy (29)
- # clojure-sanfrancisco (5)
- # clojure-spec (62)
- # clojure-uk (37)
- # clojurescript (145)
- # clojurewerkz (1)
- # code-reviews (12)
- # community-development (157)
- # cursive (5)
- # datascript (1)
- # datomic (27)
- # editors (42)
- # emacs (5)
- # fulcro (31)
- # hoplon (2)
- # jobs (2)
- # keechma (1)
- # lumo (31)
- # off-topic (2)
- # om (1)
- # onyx (13)
- # parinfer (8)
- # re-frame (13)
- # reagent (32)
- # remote-jobs (4)
- # shadow-cljs (103)
- # spacemacs (15)
- # specter (10)
- # sql (1)
- # tools-deps (35)
- # unrepl (13)
@yogidevbear userdata scpripts for firstboot? but that doesn’t help you out with updates to already running instances...
btw, was looking forward to the horsham meet up tonight but turns out coincides with father-in-laws birthday so won’t be able to make it, will have to be next time.
have just finished deploying a mini clojure + clojurescript app to heroku tho, and its been a great experience 🙂 (although documentation around build and deployment a bit fragmented)
@jonrob.one no worries, hope to see you next time 🙂
And morning all
morning!
maanmaan
Hey folks i’ve probably asked this before but i’ve just started looking at: http://funcool.github.io/cats/latest/#introduction And feel like my maths is letting me down. Does anyone know a good place to go learn about the maths side of things, to help me understand it?
@guy i'm not sure coming at it from the maths side is the best approach - if you've got the maths nailed already it's probably helpful, but if you don't then my experience was that it was better to start playing with some code and reading source to get a feel for how monads, functors etc work
for some motivation @guy, look at the code-transformation that mlet
does here - http://funcool.github.io/cats/latest/#mlet , and then apply that to a more useful (in clojure) structure, like a promise - http://funcool.github.io/cats/latest/#manifold-deferred
thanks @mccraigmccraig i think you are right. I’ve used the lib before but without really know what it does and why. I feel from the maths perspective i just want to get a better depth of knowledge. But yeah you are right, if i can use it in some examples i’ll learn it better.
@guy these are pretty good: https://purelyfunctional.tv/courses/category-theory/ also worth a look: https://fluokitten.uncomplicate.org/articles/functors_applicatives_monads_in_pictures.html http://homepages.inf.ed.ac.uk/wadler/papers/marktoberdorf/baastad.pdf https://www.youtube.com/watch?v=ZhuHCtR3xq8 http://learnyouahaskell.com/functors-applicative-functors-and-monoids
alright cheers man! that looks great. I’ll try doing some coding and watching some of the videos too. I’ll report back after the long weekend as i can give it a good go then 😄
ah yeah, this is good too (i would read this after the http://purelyfunctional.tv): https://mostly-adequate.gitbooks.io/mostly-adequate-guide/ch08.html
@U61HA86AG how long did it take you to grok monads and things?
honestly i found it pretty easy; but there are two parts to learning them. there's learning how they work in the abstract, and then learning how specific monads work in the concrete (there are different kinds of monad, and they do different things, though they're all the same abstractly - think how maps, vectors and sets are all sequences, but work differently individually)
which is kind of a meme: 'once you understand monads, you lose the ability to explain them'
the thing is you've probably used monoids/functors/monads without realising what they were (they show up everywhere), so that makes them easier to learn
got ya thanks for that insight. I think for me i always feel scared with the names of things and get stuck very easily on math-sy terms
yeah the names just come from maths; the thing is they're such abstract concepts that the only way to give them precise names is to use these scary terms
there's been talk about calling Monoids, say, Concatables, but the thing is that Monoids aren't only about concatenation, so it wouldn't be as precise as the term Monoid
and these words already have well-defined meanings from mathematics, so it's like, why not use them instead of inventing our own
it's not like our industry is free of 'scary' words anyway 😛 'integer', 'floating-point', 'persistent data structure', 'algorithm', 'namespace', ...
As said the category part can be a big distraction. It’s easier to start with if you think of it as some apis for very common operations / patterns
I'd agree that the category part can be a distraction. I actually found some of the Scala functional programming tutorials and Haskell stuff an easier intro. I think the issue with cat theory in Clojure is that there are other idiomatic approaches to passing state and dealing with side effects, etc. that are sometimes easier to grasp than monadic types and not having static typing does reduce the practical value of some of this stuff. Although it's useful to understand the theory.