2025/05/08

Newest at the top

2025-05-08 22:35:49 +0200Frostillicus(~Frostilli@pool-71-174-119-56.bstnma.fios.verizon.net) (Ping timeout: 245 seconds)
2025-05-08 22:28:57 +0200dofsyl^(~dofsyl@50.168.231.214)
2025-05-08 22:28:22 +0200Frostillicus(~Frostilli@pool-71-174-119-56.bstnma.fios.verizon.net)
2025-05-08 22:27:59 +0200dofsyl^(~dofsyl@50.168.231.214) (Ping timeout: 244 seconds)
2025-05-08 22:27:57 +0200Frostillicus(~Frostilli@pool-71-174-119-56.bstnma.fios.verizon.net) (Remote host closed the connection)
2025-05-08 22:27:54 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-08 22:22:30 +0200dofsyl^(~dofsyl@50.168.231.214)
2025-05-08 22:13:49 +0200ttybitnik(~ttybitnik@user/wolper) ttybitnik
2025-05-08 22:13:05 +0200takuan(~takuan@d8D86B601.access.telenet.be) (Remote host closed the connection)
2025-05-08 22:09:15 +0200Frostillicus(~Frostilli@pool-71-174-119-56.bstnma.fios.verizon.net)
2025-05-08 22:06:45 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla
2025-05-08 22:00:47 +0200rvalue-rvalue
2025-05-08 21:58:38 +0200 <EvanR> hell yeah
2025-05-08 21:55:00 +0200 <EvanR> wow
2025-05-08 21:54:55 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 272 seconds)
2025-05-08 21:53:53 +0200 <[exa]> I knew a guy who did type inference in the C code as the preprocessing step, can't find the thesis now tho
2025-05-08 21:53:51 +0200rvalue-(~rvalue@user/rvalue) rvalue
2025-05-08 21:52:24 +0200 <[exa]> EvanR: for gcc, see the note below here https://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html
2025-05-08 21:51:17 +0200acidjnk(~acidjnk@p200300d6e71c4f49f4d0e34d1c0f8686.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2025-05-08 21:51:04 +0200acidjnk_new(~acidjnk@p200300d6e71c4f4911c235e3ddcab2f1.dip0.t-ipconnect.de) acidjnk
2025-05-08 21:46:42 +0200 <tomsmeding> https://hackage.haskell.org/package/record-dot-preprocessor ctrl-F for "use this magic"
2025-05-08 21:46:30 +0200 <EvanR> cool
2025-05-08 21:46:14 +0200 <tomsmeding> ghc can be
2025-05-08 21:44:49 +0200 <EvanR> can gcc be told to use a different preprocessor
2025-05-08 21:44:46 +0200manwithluck(~manwithlu@2a09:bac1:5b80:20::49:f6) manwithluck
2025-05-08 21:44:23 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2025-05-08 21:44:10 +0200 <tomsmeding> so if I confuse them, GHC yells at me
2025-05-08 21:44:10 +0200 <EvanR> the blog post related to datatype99 "What's the point of the C preprocessor, actually?" is kind of inspiring. And makes me think, what if you had a different preprocessor entirely
2025-05-08 21:44:03 +0200 <tomsmeding> and reverse-mode in a highly typed way where adjoints (cotangents) and primal values have _distinct types_
2025-05-08 21:43:43 +0200 <tomsmeding> I write two kinds of AD code: dual-numbers forward mode where I just use "x" and "dx", and the code is simple enough anyway that it's all clear
2025-05-08 21:43:21 +0200 <tomsmeding> ah, I think I see why I don't have problems with this
2025-05-08 21:42:56 +0200 <Athas> No, it's a bigger problem for forward mode (where we use a _tan suffix).
2025-05-08 21:42:48 +0200 <tomsmeding> with conventional meaning of "'", naming an adjoint of x as x' doesn't even make much sense
2025-05-08 21:42:31 +0200 <tomsmeding> and furthermore, is an adjoint really a derivative of a thing?
2025-05-08 21:42:15 +0200 <tomsmeding> the ' notation for derivatives is not helpful in the context of AD anyway, because it carries much too little information about with respect to what you're actually differentiating
2025-05-08 21:41:42 +0200 <tomsmeding> funny, I've never even thought about this being a problem
2025-05-08 21:41:10 +0200 <Athas> https://github.com/diku-dk/futhark/blob/master/src/Futhark/AD/Rev.hs#L5-L8
2025-05-08 21:41:03 +0200 <tomsmeding> I see -- yes, "dx" is what I use
2025-05-08 21:40:33 +0200 <Athas> In Haskell it is common to use the name x' for some variable derived from x, but that doesn't mean x' is the mathematical derivative of x, but when implementing AD you _do_ need a naming convention for that.
2025-05-08 21:40:03 +0200 <tomsmeding> just make it dx instead
2025-05-08 21:39:14 +0200 <sprout> derivative naming?
2025-05-08 21:38:17 +0200 <tomsmeding> how do variable naming conventions make implementing AD harder?
2025-05-08 21:37:44 +0200tomsmedingdoesn't get
2025-05-08 21:37:20 +0200 <Athas> tomsmeding: the most difficult part of implementing AD in Haskell is that the usual x' convention becomes confusing.
2025-05-08 21:36:59 +0200 <Athas> Not sure. It may be something as trivial as most programmers don't like writing documentation, so they don't.
2025-05-08 21:36:53 +0200 <tomsmeding> I have to prevent myself so often from writing "we can derive xyz equations" when talking about AD
2025-05-08 21:35:57 +0200 <[exa]> ("differentiated" not as in AD now! :D )
2025-05-08 21:35:26 +0200 <[exa]> Athas: well the question then is what happened that differentiated these
2025-05-08 21:31:22 +0200ljdarj1ljdarj
2025-05-08 21:31:22 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds)