2024/05/21

Newest at the top

2024-05-21 20:12:33 +0200 <dolio> That's probably not the only reason.
2024-05-21 20:11:29 +0200 <monochrom> The fact that Haskell FFI works best if Haskell code leave OS-sanctioned stack alone (so C code can use it unconfused) so ghc-generated code uses another register and another memory area for Haskell stack.
2024-05-21 20:11:16 +0200 <mauke> lxsameer: I like direct-sqlite. no built-in support for migrations, but pretty trivial to add IMHO. depends on what you expect from a migration feature
2024-05-21 20:11:01 +0200Guest86(~Guest86@186.82.99.37)
2024-05-21 20:07:52 +0200 <monochrom> ghc-generated code looks different from gcc-generated code because of better reasons than this. Evaluation order. Heap system. Closures. How they decide to use registers.
2024-05-21 20:06:08 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-21 20:05:01 +0200 <EvanR> this calls for a closed cartesian comics on this subject
2024-05-21 20:03:53 +0200 <monochrom> And in the latter case, furthermore, "push" is narrated as "pass a parameter".
2024-05-21 20:03:50 +0200dtman34(~dtman34@2601:447:d001:ed50:ebe5:b36d:357b:8a39)
2024-05-21 20:02:54 +0200 <monochrom> If you see a "push <code address>", it can be narrated as "push return address", but it can just as well be narrated as "push address of continuation". Same difference.
2024-05-21 20:02:49 +0200 <dolio> The stack is the continuation.
2024-05-21 20:02:36 +0200 <EvanR> care to explain how they are the same
2024-05-21 20:01:38 +0200 <monochrom> I no longer distinguish continuation passing from call stack.
2024-05-21 19:54:26 +0200 <lxsameer> hey folks, what lib do you recommend for using sqlite? Supporting db migrations is a plus
2024-05-21 19:53:54 +0200lxsameer(~lxsameer@Serene/lxsameer)
2024-05-21 19:53:43 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-21 19:51:56 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-05-21 19:47:31 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-21 19:43:48 +0200Guest86(~Guest41@186.82.99.37) ()
2024-05-21 19:43:21 +0200Guest86(~Guest41@186.82.99.37)
2024-05-21 19:40:57 +0200jstolarek(~jstolarek@staticline-31-183-174-191.toya.net.pl)
2024-05-21 19:33:42 +0200rdcdr(~rdcdr@user/rdcdr)
2024-05-21 19:32:47 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 256 seconds)
2024-05-21 19:32:18 +0200 <EvanR> or lack of success
2024-05-21 19:32:06 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1 - https://znc.in)
2024-05-21 19:31:30 +0200 <EvanR> looking at core output can give clues to the success of optimizing
2024-05-21 19:27:39 +0200 <EvanR> the translation of haskell into core language is where the magic happens
2024-05-21 19:27:09 +0200 <EvanR> the core language has a simplified version of pattern matching which can be implemented like the switch statement in C
2024-05-21 19:26:54 +0200ocra8(ocra8@user/ocra8) (Quit: WeeChat 4.2.2)
2024-05-21 19:26:37 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-21 19:23:38 +0200 <d34df00d> kuribas: I'm curious then how one might compare some common haskell constructs (think even pattern matching) to what happens in other, more imperative languages.
2024-05-21 19:20:41 +0200danse-nr3(~danse-nr3@151.43.113.96)
2024-05-21 19:20:35 +0200FragByte(~christian@user/fragbyte)
2024-05-21 19:20:23 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
2024-05-21 19:20:03 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-21 19:19:46 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-05-21 19:18:39 +0200FragByte(~christian@user/fragbyte) (Quit: Quit)
2024-05-21 19:18:15 +0200Guest62(~Guest54@1.240.117.251) (Quit: Client closed)
2024-05-21 19:17:10 +0200 <EvanR> too real
2024-05-21 19:15:32 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-21 19:12:55 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de)
2024-05-21 19:12:53 +0200dtman34(~dtman34@c-75-72-163-222.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2024-05-21 19:12:20 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-05-21 19:12:15 +0200 <Rembane> Proof by flex!
2024-05-21 19:11:37 +0200chele(~chele@user/chele) (Remote host closed the connection)
2024-05-21 19:11:29 +0200 <systemfault> I bench press more so I'm right?
2024-05-21 19:10:09 +0200 <ncf> proof by intimidation
2024-05-21 19:09:39 +0200 <mauke> I use an old technique called "proof by assertion"
2024-05-21 19:09:25 +0200 <EvanR> argument of correctness, ethos pathos logos
2024-05-21 19:08:01 +0200 <ncf> that's the statement not the proof