off-topic

https://github.com/clojurians/community-development/blob/master/Code-of-Conduct.md Clojurians Slack Community Code of Conduct. Searchable message archives are at https://clojurians-log.clojureverse.org/
2020-10-23T02:08:47.459600Z

Looking at some old branches, almost 11 years ago to the day I port clojures reader from java to this ridiculous huge letfn expression on clojure and munged the ant build to build clojure once with the java LispReader, then compile my lisp reader, and then rebuild clojure using my version

๐Ÿ‘ 2
bronsa 2020-10-23T10:05:20.469Z

that's pretty cool

2020-10-23T02:12:34.463700Z

https://github.com/hiredman/clojure/tree/readerIII which I then spent some time talking about in the interview for my first clojure job(first programing job), which I did on a burner prepaid phone sitting on a curb in an empty parking lot because the bus wouldn't have gotten me home after work in time for the call

5
๐Ÿฆœ 1
dhd 2020-10-23T03:36:40.464100Z

Thank you very much!!

plexus 2020-10-23T06:56:19.465800Z

This seems like a great project, but it hasn't reached its goal yet, and only 4 more days to go... https://www.kickstarter.com/projects/messagenotunderstood/message-not-understood?ref=thanks-copy

โœ… 2
michele mendel 2020-10-23T07:25:47.466900Z

I backed it, because i want to see this movie. Also shared on FB and LI.

valtteri 2020-10-23T16:51:57.473700Z

Thanks for pointing this out!

valtteri 2020-10-25T12:46:05.020700Z

Now theyโ€™ve reached the goal ๐Ÿ™‚

๐Ÿฆœ 3
plexus 2020-10-23T06:56:59.466100Z

> By interviewing the people who helped invent what today we call personal computing, this film will provide a perspective that is commonly absent from popular discussions about the role of computing in society. Many of these pioneers have long taken issue with the direction their inventions have taken. During these tumultuous times, it is crucial to get their take while we still can -- to grasp the futures they originally envisioned and to hear their view on the present.

plexus 2020-10-23T06:57:42.466300Z

I'm not in any way affiliated with this project, but I did just back it and hope they make it. This kind of content/discourse is sorely needed IMO.

dominicm 2020-10-23T06:57:54.466500Z

I was researching this myself a little lately. I watched an old bbc documentary on the web. The web does not match the goals. At all.

plexus 2020-10-23T06:58:27.466700Z

and not just the web...

2020-10-23T20:51:11.479900Z

It is my belief (perhaps wrong) that Java GCs will only throw OutOfMemoryException if the total memory occupied by live objects is over the configured max heap size. That is, if there are objects that cannot be reached from the root set, no matter how fast your application might be trying to allocate new objects, the GC will do a last ditch run to free up any dead objects it can before failing a request. Does that sound correct?

2020-10-23T20:52:25.481300Z

Also, I guess if I am using YourKit to analyze the heap after the OOM exception has already been thrown from trying to evaluate a form in a Clojure REPL, and the next REPL prompt has been shown after that occurred, it might be at that time that there is a bunch of objects that were live just before the OOM, but after the exception is thrown, they are no longer reachable?

2020-10-23T20:52:44.481700Z

e.g. because they were only live in the context of the code that was running, and after the exception, they are now dead.

2020-10-23T20:53:53.483700Z

And finally, if most of the memory is occupied with objects having classes clojure.lang.Cons and clojure.lang.LazySeq, does YourKit or some other tool make it possible to determine where in the code most of those allocations are occurring?

code star 8 2020-10-23T20:54:15.484400Z

Anyone recommend any VIM or Spacemacs plugins for Live Code Share? Atom and Visual Studio Code are not good

code star 8 2020-10-23T20:54:44.485100Z

Atom is osx only. VSC needs latest osx version.

2020-10-23T21:13:46.485200Z

if the lazy seq has not been realized yet it will have a reference to a fn that is invoked when it is forced, fn's are usually pretty easy to map back to where they came from

2020-10-23T21:14:44.485400Z

good idea. thx

2020-10-23T21:15:18.485600Z

hopefully it won't be hard to find an unrealized one, but I guess in situations like this it might be that 99+% of them will be.

alexmiller 2020-10-23T21:46:33.487100Z

You can take heap snapshots in yourkit and diff them, and also backtrack where objects of a particular type are allocated

alexmiller 2020-10-23T21:46:59.487800Z

Between the two, itโ€™s usually not that hard to see memory leaks

2020-10-23T21:51:19.488Z

Is there some term in the YourKit docs I can use to learn more about this "backtrack where objects of a particular type are allocated"?