This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # beginners (2)
- # boot (97)
- # cider (58)
- # cljs-dev (10)
- # cljsrn (7)
- # clojure (79)
- # clojure-austin (4)
- # clojure-brasil (1)
- # clojure-france (1)
- # clojure-russia (42)
- # clojure-spec (12)
- # clojure-uk (22)
- # clojurescript (150)
- # clr (1)
- # conf-proposals (7)
- # core-matrix (2)
- # cursive (4)
- # datomic (9)
- # jobs (2)
- # klipse (28)
- # leiningen (3)
- # lumo (8)
- # nrepl (1)
- # off-topic (28)
- # om (18)
- # om-next (2)
- # perun (17)
- # planck (9)
- # rdf (1)
- # re-frame (18)
- # reagent (7)
- # ring (2)
- # rum (1)
- # specter (11)
- # test-check (3)
- # untangled (1)
- # yada (7)
If that subreddit is about the collapse of civilization, it should probably concern itself greatly with the collapse of civility.
Can't agree more. It's probably the one of the main reasons why nobody cares about Dart lang, it's better than JS in every way, created by the same team who worked on V8... but it doesn't interop with JS directly, runs on its own runtime (which is included in a variant of Chromium called Dartium) and uses its own package manager. Also one of my many excuese for still not using Haskell or erlang, they're pretty much on their own unlike Clojure.
As for Python.... It still blows my mind how such a HUGE user-base is still using a pretty much "broken" package manager. Then goes on to workaround the problem by creating virtual environments or docker images.
Ohh.... and don't even get me started on breakages in python.... It's like JS but without semver, any changes in version numbers of all your deps and the runtime could potentially break your code.
in most functional langauges, we can do something like
and it behaves as expected, in my uses of python, c ends up being empty list, because b "consumed" the iterable
(let [a (some lazy seq) b (map first a) c (map second a)]
this scares me to no end as I'm trying to do "equational reasoning", and pure-looking lines are suddenly now modifying stuff behind my back all the time
Good god, I hate trying to reload these prepaid cards. And there's no where in my county to buy a moneypak. It's looking like the only way to reload the prepaid card without having it present is a moneypak, and I can't even buy one without driving two hours. WTF?
@qqq oh yeah, mutable data.... but that's not only python. You just can't treat python like a FP language.
I'll give a $75 prepaid visa to anyone who'll give me the number of a $75 moneypak (of course, I expect the value of the moneypak to be $75 less the fees to buy one).
Can't even use the prepaid visa online to refill the damn walmart prepaid moneycard.
@akiroz: if it wasn't called map/filter, I'd be okay with it; it was just surprising that map/filter consumed iterabes
@seylerius : I can't help you; but what are moneypak, and what stupid financial red tape does this get around?
qqq: MoneyPak is a greendot thing that refills greendot-compatible prepaid debit cards. My gf has a walmart moneycard (which is greendot-compatible) and is in another state. I'm trying to put money on it.
okay, and I guess greendot's API prevents you from using the $75 prepaid to refill a moneypak card
Yep. Can't buy moneypaks online, can't refill greendot-compatible cards directly online.
@qqq I remembered Guido (python's creator) once proposed to drop lambdas, map, filter, and reduce from python 3.x in favor of list comprehensions.
reduce was successfully pulled from the standard lib because non-FP programmers were just using it as a loop.
@akiroz: between (1) not having some functions and (2) defining some functions with same name but diferent semantics from scheme, I'd strongly prefer (1)
with python, I'm constantly paranoid about: does this line really mean what it looks like it means?
Hmmm.... maybe I'm used reading JS where nothing means what they seem. When I read code, I usually need to ask myself "If I was the runtime, how would I run this code?"
@akiroz: so in ocaml, haskell, scheme, clojure, lisp, c++ stl, and even elisp, when I see (map f list) it's (1) for every element in list, run f(x) (2) keep list on changed then in python it's: well, if list is an iterable, it's now empty, f-u