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/
vemv 2021-01-28T00:19:38.169200Z

Is the predictable response time shortcoming simply due to GC or sth else?

2021-01-28T00:20:15.169400Z

not just gc, but the degree to which nearly everything you do in clojure uses gc

πŸ‘€ 1
2021-01-28T00:21:35.169600Z

but yes, gc

vemv 2021-01-28T00:26:17.169900Z

Thanks! I've long wondered if that can be addressed somehow without boiling the oceans. Perhaps if one didn't use clojure.core, and similarly refrained from using most libs out there, one could get a Java-with-clojure-syntax? e.g. (refer-clojure :only []) and for every function you intend to pull/reimplement, review carefully if suits the perf budget

2021-01-28T00:27:10.170100Z

it's hard, because the core design features that make clojure (and most lisps) so elegant tend to increase gc pressure

πŸ‘ 1
2021-01-28T00:28:07.170400Z

there was an old lisp, which attempted to offer lispy syntax / macros without the overhead of gc, I had some fun playing with it for a while but in the end it was just writing c with a weird syntax... let me see if I can recall the name

2021-01-28T00:31:02.170600Z

there are old things like https://www.cs.utexas.edu/users/hunt/research/hash-cons/hash-cons-papers/BakerLinearLisp.pdf which attempt to basically bake in reference counting

2021-01-28T00:31:03.170800Z

it was lush "lisp user shell" http://lush.sourceforge.net/

2021-01-28T00:31:58.171100Z

back in the day I saw some discussion of "cons free code" for tight loops in common lisp - writing cons free (or really "new" free) in clojure would be an interesting exercise

2021-01-28T00:33:07.171300Z

but you have kind of a stack, gc'ed languages aren't known for predictable response times -> the jvm is not known for predictable response times -> clojure is not known for predictable response times

2021-01-28T00:33:30.171500Z

G1 has made things a lot better on the jvm (and for clojure too)

2021-01-28T00:35:30.171700Z

and to some(small) degree I think C has started to grapple with predictable response times

2021-01-28T00:35:53.171900Z

that's true, and it also reminds me of another source of unpredictability - many algorithms that the jvm optimize amortized time, which trades occasional larger pauses (eg. reallocating a buffer) for throughput

2021-01-28T00:36:10.172100Z

and sometimes the pause length is a bigger problem than the lower throughput was

2021-01-28T00:36:56.172300Z

(many c / c++ libs do a lot of those same average case / worst case tradeoffs, but not as aggressively as the jvm that I know of)

2021-01-28T00:37:03.172500Z

because while gc is part of it, it is really sort of the tower of abstractions you build on, each layer tends to amplify sources of unpredictability, and C and modern hardware are not as close as they once were

πŸ’― 1
2021-01-28T00:45:32.172800Z

there was a talk at a conj a while back "clojure: programming with hand tools", which I very much enjoyed which kind of focused on the idea of building things out of simple stuff. but I remember after the talk someone(maybe aphyr?) tweeted something like(I really don't recall the exact words) "if these guys think the jvm is simple I got news for you"

alexmiller 2021-01-28T01:52:15.173900Z

there are some cases where you might use Clojure to generate the code in a different language that needs some of those above :) (certainly I've seen people do that)

πŸ‘ 4
Michael Nardell 2021-01-28T02:00:28.175200Z

Slowly approaching the point in learning Clojure where, in the words of David Bowie "You know you know you know you know"

pavlosmelissinos 2021-01-28T11:13:12.189200Z

Extremely off-topic but I'm in the market for a new mouse, any recommendations? I've been struggling a bit with online reviews: they seem to be skewed in favor of gamers (good for them, I guess!). Here are my requirements: β€’ reliable and comfortable/ergonomic β€’ gaming or not, I don't care β€’ average size or bigger (I can't stand the small ones) β€’ weight is not an issue (within reason) β€’ I'm mostly a palm gripper with some fingertip grip thrown in (rarely) but I can adjust if need be β€’ either right-hand or ambidextrous is fine β€’ <60€ (but I can go beyond that for exceptional cases) β€’ easy to clean edit: Not a Mac user! (I need Linux compatibility)

jcburley 2021-02-07T19:46:20.149300Z

If a trackball is an option at all, consider a LARGE one; I’ve used these for seemingly decades, including at work (Microsoft and later Bloomberg LP) where I had to get β€œpermission”, and absolutely love them: https://store.kensington.com/products/kensington-expert-trackball-mouse-k64325?variant=31422431002673&amp;gclid=Cj0KCQiAvP6ABhCjARIsAH37rbRV3v2CASuh98iXUwihUKr_ZaVuOob2F_zhyJD9DjkrD4_PFaJHhQsaAvPGEALw_wcB

2021-02-07T20:13:33.149800Z

I think I had one of those! It was really nice.

πŸ‘ 1
dharrigan 2021-01-28T11:15:12.190Z

I've been using a "MX Anywhere 2S" for quite a while. I love it so much, I have several, so I don't have to go hunting for one when on the move...

πŸ‘Œ 3
2021-01-28T11:16:05.190100Z

https://www.apple.com/shop/product/MJ2R2LL/A/magic-trackpad-2-silver may be even bigger off-topic )

πŸ™ 1
raspasov 2021-01-28T11:16:59.190400Z

I used to use this for many years (now just use the macbook trackpad after they made it bigger, it works well enough for me) https://www.amazon.com/Razer-DeathAdder-Gaming-Mouse-Programmable/dp/B082G5SPR5/ref=sr_1_1?dchild=1&amp;keywords=Deathadder&amp;qid=1611832522&amp;s=electronics&amp;sr=1-1

πŸ™ 1
raspasov 2021-01-28T11:17:17.190600Z

(no gaming, just used it for work)

borkdude 2021-01-28T11:18:06.190900Z

I use the Apple mouse. Works for me. I want one which I can use with both hands, not a specific left or right handed one, but if it would be asymmetrical I would have to get a left handed

πŸ™ 1
slipset 2021-01-28T11:21:23.191100Z

Apple mouse

pavlosmelissinos 2021-01-28T11:21:50.191300Z

Thank you all! @delaguardo @borkdude Ah I'm not a Mac user, sorry, I should have led with that... Are your recommendations compatible with other OSes? Linux in particular. @raspasov I've heard that Razer has reliability issues so I'm a bit skeptical πŸ˜•

2021-01-28T11:24:22.191600Z

Yes, they are compatible

πŸ‘ 1
mpenet 2021-01-28T11:25:58.191800Z

I'd suggest a trackball, mx ergo in particular

πŸ™ 1
mpenet 2021-01-28T11:26:22.192Z

works fine on linux

dharrigan 2021-01-28T11:30:54.192800Z

I'm an Arch user, the MX Anywhere 2S works great. Also works great with my mac mini m1.

πŸ™ 2
orestis 2021-01-28T12:25:01.193600Z

Also check out the MX Master by logitech. Built like a brick and very comfortable.

βž• 2
πŸ™ 2
theonlysinjin 2021-01-28T13:08:55.194100Z

It’s a little harder on linux, but I love the extra buttons on the mouse and bind them to window management. Like maximise / minimise / move to next desktop. I use BetterTouchTool on Mac, but a little more manual on linux

πŸ‘Œ 1
vemv 2021-01-28T13:15:33.195Z

anyone has a Clojurian friend at Puppetlabs? I have a question related to their offering (not job related)

dharrigan 2021-01-28T13:19:01.195100Z

I've mapped some of the buttons on my MX using SteerMouse on my mac. That works well too πŸ™‚ On Linux I use xbindkeys to remap buttons πŸ™‚

1
caumond 2021-01-28T13:44:05.195800Z

@delaguardo, I have a magic mouse right now. Between magic mouse and your magic trackpad, I'm not sure to see which one better suit in which situation?

2021-01-28T14:05:10.196200Z

This is personal but magic mouse was not design for my palm) too sharp edges. Also I'm using track pad in combination with hhkb keyboard and I can put track pad right in front of me not on the left side

2021-01-28T15:27:55.198200Z

I can back Logitech MX Master mice. I have MX Master 3 and it’s an absolute joy to use after having used the Magic Mouse for 5+ years. I won’t go back

2021-01-28T16:48:56.199200Z

Been using a Logitech MX Ergo Plus for the past year-ish. It’s been my favorite mouse to date, one note is that it is a trackball so not ideal for gaming.

2021-01-28T16:58:35.199400Z

I don't game at all, and use a more traditional trackball (top mounted ball) between the sides of a split keyboard. this lets me use the track ball with either hand, and means I never have to switch between mouse grip and keyboard - every mouse movement is a simple swipe. very similar to using a track pad actually.

chepprey 2021-01-28T17:08:10.199700Z

Linux user here. Recently got a Logitech M-U0007 corded mouse. Cheap, works perfectly. Nice resolution sensor and smooth mouse wheel, eliminated all my jittering problems from my 2004 Dell mouse:laughing: Worked 100% out of the box, even the 2 specialty side buttons (browser back/forward). Right hand grip, sized for average adult hand.

lread 2021-01-28T18:25:34.200600Z

I’m personally not a fan of the Apple magic mouse, I found myself making too many accidental clicks and swipes and gestures. I switched to a Logitech MX Master and find it suits me much better.

2021-01-28T18:41:08.201800Z

MX Master and MX Revolution for many years. I would totally recommend them.

Max 2021-01-28T19:40:15.202100Z

I used https://www.amazon.com/Anker-Wireless-Vertical-Ergonomic-Optical/dp/B00BIFNTMC for years. Pros: very cheap, vertical grip is easier on my wrist RSI, bluetooth USB dongle never unpairs, a few extra buttons that you can map to different functions if you use bettertouchtool or usb overdrive or w/e. Currently I’m just using the built-in trackpad on my mac laptop with an exernal keyboard attached, and I’ve found that the additional friction to use the mouse helps me rely on the keyboard more, which ends up being even better for my RSI.

pithyless 2021-01-28T20:52:36.202700Z

@pavlos My daily driver is the Microsoft Sculpt mouse. It was bundled with my Sculpt keyboard and sounds like it may tick a lot of your requirements.

πŸ‘ 1
sova-soars-the-sora 2021-01-28T22:17:37.203100Z

i did meet a couple cool cats from puppet at a clojure conj...