Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,803,911 events total
2025-10-06 04:17:47 × trickard_ quits (~trickard@cpe-49-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
2025-10-06 04:18:00 trickard_ joins (~trickard@cpe-49-98-47-163.wireline.com.au)
2025-10-06 04:18:33 <dcpagan> And I need to format these field expressions to see how delimited continuations manipulate expressions.
2025-10-06 04:18:55 <dcpagan> My delimited continuation program prints this: "(* (* 3 /2) (* 5 /2))"
2025-10-06 04:19:56 <jreicher> I quite like your idea of /2, /3, etc. It's got some solid parallels. 0 is the additive identity, and we omit zero in 0-3, and omit both the zero and the operator in 3-0. 1 is the multiplicative identity, and if we omit both the 1 and the operator in 3/1, it's a solid parallel to omit the number in /3
2025-10-06 04:21:11 <dcpagan> Omitting units would require parsing 0's and 1's into their respective units, and reformatting the format to an histomorphism to peer deeper into the recursive structure.
2025-10-06 04:22:06 <EvanR> jreicher, there exists abstraction "monoid with minus operation"
2025-10-06 04:22:14 <EvanR> monus
2025-10-06 04:22:20 <dcpagan> But I primarily wrote this sandbox to grok how delimited continuations manipulate computations by designing a simple field monad to structure those computations.
2025-10-06 04:22:46 <dcpagan> Algebraically speaking, the minus operator is the right inverse additive group operator.
2025-10-06 04:23:11 <dcpagan> Divide is the right inverse partial group operator of the field.
2025-10-06 04:23:14 <jreicher> EvanR: yeah I've come across monus with Church numerals.
2025-10-06 04:23:23 <dcpagan> What's a monus?
2025-10-06 04:23:50 <jreicher> https://en.wikipedia.org/wiki/Monus
2025-10-06 04:24:38 <dcpagan> That looks like a partial obelus.
2025-10-06 04:25:39 <dcpagan> I deliberatively took out the minus and divide operators in my monad to base it on abstract algebraic terms.
2025-10-06 04:25:48 <EvanR> dennis ritchie's phd thesis? then it's canon
2025-10-06 04:26:09 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 04:26:17 <dcpagan> Which is why the lack of a sane unary prefix for the reciprocal so vexes me.
2025-10-06 04:26:44 <jreicher> When you first asked your question I grabbed my copy of Concrete Mathematics. I thought if anyone was going to be fussy about notation, Knuth would be...
2025-10-06 04:27:20 <dcpagan> I have Serge Lang's Algebra with me right now, and even he uses (^-1).
2025-10-06 04:28:48 <jreicher> Mathematicians don't usually write parsers. And I'm not joking; I think that's the real difference in what you're doing. Means you have literals for the elements.
2025-10-06 04:29:53 <Leary> dcpagan: Just write `recip` or `invert` or `inverse` and be done with it. It doesn't matter if it isn't standard if it can be understood at a glance.
2025-10-06 04:30:38 <EvanR> we have it
2025-10-06 04:30:40 <EvanR> recip
2025-10-06 04:30:42 <EvanR> enjoy
2025-10-06 04:30:50 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-10-06 04:31:25 <EvanR> pretty sure I've seen a function called "inv" somewhere
2025-10-06 04:31:40 <EvanR> saving you two characters
2025-10-06 04:34:06 litharge` joins (litharge@libera/bot/litharge)
2025-10-06 04:34:22 <jreicher> https://aplwiki.com/wiki/Reciprocal same idea, basically (fairly Iverson was also fussy about notation)
2025-10-06 04:34:29 <jreicher> ...fairly sure...
2025-10-06 04:34:33 × litharge` quits (litharge@libera/bot/litharge) (Read error: Connection reset by peer)
2025-10-06 04:34:37 <dcpagan> I recently took a glance at ISO 80000-2 and discovered that the international standard parses the solidus ("/") divide operator with a very low precedence to denote fractional notation, and split the whole expression into numerator and denominator.
2025-10-06 04:34:42 <dcpagan> https://raptros.com/blog/2019-obelus/
2025-10-06 04:34:56 <dcpagan> Standard mathematical notation is cracked.
2025-10-06 04:36:06 <EvanR> a big ass line between two expressions to denote a fraction was pioneered by the egyptians if you squint hard enough
2025-10-06 04:36:15 <dcpagan> That's nothing like how bc parses expressions.
2025-10-06 04:36:31 <EvanR> | over numeral for whatever number was the reciprocol of that number
2025-10-06 04:36:48 <EvanR> spookily similar to today's notation
2025-10-06 04:37:31 <EvanR> for some reason it wasn't proper to put anything other than one in the numerator
2025-10-06 04:38:05 <EvanR> not that that was considered "the numerator"
2025-10-06 04:38:22 <EvanR> just notation (?)
2025-10-06 04:40:37 × peterbecich quits (~Thunderbi@47-149-198-150.fdr01.slbh.ca.ip.frontiernet.net) (Ping timeout: 246 seconds)
2025-10-06 04:40:37 × Googulator30 quits (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu) (Quit: Client closed)
2025-10-06 04:40:42 Googulator4 joins (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu)
2025-10-06 04:41:31 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 04:43:51 <dcpagan> jreicher: Overloading the obelus ("÷") for the reciprocal seems like a good idea; ISO 80000-2 has deprecated its use for division, so I may as well overload it to mean reciprocal for my personal notation.
2025-10-06 04:45:31 <jreicher> Honestly I didn't know APL had that. But I was aware of Iverson's other work on notation.
2025-10-06 04:50:05 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-10-06 04:52:22 × machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 256 seconds)
2025-10-06 04:57:01 × jreicher quits (~user@user/jreicher) (Quit: In transit)
2025-10-06 04:59:09 qqe joins (~qqq@185.54.22.40)
2025-10-06 05:00:51 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 05:06:35 × myxos quits (~myxos@syn-065-025-110-175.res.spectrum.com) (Ping timeout: 245 seconds)
2025-10-06 05:07:42 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-10-06 05:10:39 myxos joins (~myxos@syn-065-025-110-175.res.spectrum.com)
2025-10-06 05:11:25 × Eoco quits (~ian@128.101.131.218) (Ping timeout: 264 seconds)
2025-10-06 05:11:34 × remexre quits (~remexre@user/remexre) (Ping timeout: 260 seconds)
2025-10-06 05:15:52 × jjhoo quits (~jahakala@user/jjhoo) (Ping timeout: 256 seconds)
2025-10-06 05:17:17 jjhoo joins (~jahakala@user/jjhoo)
2025-10-06 05:17:45 peterbecich joins (~Thunderbi@47.149.198.150)
2025-10-06 05:18:52 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 05:20:15 jreicher joins (~user@user/jreicher)
2025-10-06 05:23:32 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-10-06 05:25:59 × Googulator4 quits (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu) (Quit: Client closed)
2025-10-06 05:26:04 Googulator40 joins (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu)
2025-10-06 05:29:28 trickard_ is now known as trickard
2025-10-06 05:34:16 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 05:35:36 myxokephale joins (~myxos@syn-065-025-110-175.res.spectrum.com)
2025-10-06 05:35:36 × myxos quits (~myxos@syn-065-025-110-175.res.spectrum.com) (Read error: Connection reset by peer)
2025-10-06 05:35:38 × jreicher quits (~user@user/jreicher) (Ping timeout: 260 seconds)
2025-10-06 05:36:31 jreicher joins (~user@user/jreicher)
2025-10-06 05:38:49 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-10-06 05:44:17 remexre joins (~remexre@user/remexre)
2025-10-06 05:45:10 × qqe quits (~qqq@185.54.22.40) (Quit: leaving)
2025-10-06 05:49:25 emmanuelux_ joins (~emmanuelu@user/emmanuelux)
2025-10-06 05:49:56 poscat0x04 joins (~poscat@user/poscat)
2025-10-06 05:50:54 pavonia_ joins (~user@user/siracusa)
2025-10-06 05:51:49 × Zemy quits (~Zemy@syn-072-176-124-082.res.spectrum.com) (Ping timeout: 246 seconds)
2025-10-06 05:51:49 × poscat quits (~poscat@user/poscat) (Ping timeout: 246 seconds)
2025-10-06 05:51:51 × peterbecich quits (~Thunderbi@47.149.198.150) (Ping timeout: 256 seconds)
2025-10-06 05:52:17 × jreicher quits (~user@user/jreicher) (Ping timeout: 246 seconds)
2025-10-06 05:52:24 × pavonia quits (~user@user/siracusa) (Ping timeout: 246 seconds)
2025-10-06 05:52:43 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Ping timeout: 246 seconds)
2025-10-06 05:52:56 pavonia_ is now known as pavonia
2025-10-06 05:54:09 jreicher joins (~user@user/jreicher)
2025-10-06 05:54:12 michalz joins (~michalz@185.246.207.203)
2025-10-06 05:56:25 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds)
2025-10-06 05:57:06 chromoblob joins (~chromoblo@user/chromob1ot1c)
2025-10-06 05:58:03 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer)
2025-10-06 05:58:22 chromoblob joins (~chromoblo@user/chromob1ot1c)
2025-10-06 06:00:31 × Googulator40 quits (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu) (Quit: Client closed)
2025-10-06 06:00:42 Googulator40 joins (~Googulato@2a01-036d-0106-03fa-5967-6f2a-1e2d-f05a.pool6.digikabel.hu)
2025-10-06 06:02:11 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 06:02:31 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 246 seconds)
2025-10-06 06:02:49 chromoblob joins (~chromoblo@user/chromob1ot1c)
2025-10-06 06:06:43 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-10-06 06:17:34 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-10-06 06:21:06 sord937 joins (~sord937@gateway/tor-sasl/sord937)

All times are in UTC.