hemanth / functional-programming-jargon

Jargon from the functional programming world in simple terms!
http://git.io/fp-jargons
MIT License
18.57k stars 1.02k forks source link

additional terms #20

Open moimikey opened 8 years ago

moimikey commented 8 years ago

Hi,

I'd be more than happy to submit some pull requests on these various terms. I'd much rather get an opinion first before starting on a PR:

hsavit1 commented 8 years ago

@moimikey - this would be a fantastic if you could define these!

I would add natural transformations and morphisms as well to this list

moimikey commented 8 years ago

awesome. will do :+1:

moimikey commented 8 years ago

@hsavit1 there's that fine line between functional programming paradigms and concepts that we use daily, vs. all and everything under category theory. this list could grow or get chopped down. i'll obviously crop and add and crop some more:

hsavit1 commented 8 years ago

@moimikey agreed, we wouldn't want to "scare" anyone away from functional programming with overwhelming dictionary of category theory terms (and no examples)

on the other hand, I'd love to educate more programmers on category theory concepts. They were insanely helpful for me when learning Haskell for the first time.

hemanth commented 8 years ago

@moimikey Sorry for the late reply, please feel free to do the PRs!

Thank you!

jethrolarson commented 8 years ago

Functor is already in.

This is turning into a dictionary fast but maybe that's still okay. Some of the topics kind of deserve their own pages. Especially when it comes to defining why they're useful. I could see a page dedicated to morphisms.

It's hard to summarize monad in a paragraph and one or two examples don't illuminate, for example.

hemanth commented 8 years ago

@jethrolarson We could start a wiki in this repo, maybe?

hemanth commented 8 years ago

@jethrolarson Interested?

flip111 commented 7 years ago

polymorphism

stereobooster commented 7 years ago

immutability and functional data structures

hemanth commented 7 years ago

profunctors as well.

stereobooster commented 7 years ago

totality e.g. no effects at all. Exceptions and divergence as effects, but not side effects, e.g. "pure" function can have it. And side effects is IO and non-determinism.

stereobooster commented 6 years ago

scopes as soon as programing language has symbols it has to deal with scopes. Basically it can ignore them and make one global scope. Or choose functions as scopes and visibility of higher-call stack scopes (hello closures). Or lexical scopes, or module scopes. It is also to choose different models of scopes for different types of symbols.

Language without symbols - simple lambda calculus. One global scope - lambda calculus extended with symbols or assembly language.

tfausak commented 6 years ago

Thanks for the great resource! Is this where I can report bugs on this post? If so:

capture

jethrolarson commented 6 years ago

functional.works-hub.com is not maintained by this repo. They copied the readme and didn't compile the markdown properly. I'm not sure who you should bug.