Newest at the top
2025-03-09 21:12:06 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
2025-03-09 21:10:30 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 252 seconds) |
2025-03-09 21:08:08 +0100 | chewybread | (~chewybrea@user/chewybread) chewybread |
2025-03-09 21:08:08 +0100 | chewybread | (~chewybrea@c-174-181-7-135.hsd1.pa.comcast.net) (Changing host) |
2025-03-09 21:08:08 +0100 | chewybread | (~chewybrea@c-174-181-7-135.hsd1.pa.comcast.net) |
2025-03-09 21:07:56 +0100 | foul_owl | (~kerry@94.156.149.97) (Ping timeout: 252 seconds) |
2025-03-09 21:07:48 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-09 21:06:17 +0100 | gmg | (~user@user/gehmehgeh) gehmehgeh |
2025-03-09 21:06:16 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-09 21:05:37 +0100 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2025-03-09 21:04:12 +0100 | <monochrom> | Scala can furthermore add "sealed class" to the class-object version to match up the closedness of the ADT version. |
2025-03-09 21:03:49 +0100 | hattckory | (~hattckory@bras-base-toroon4524w-grc-48-184-145-138-167.dsl.bell.ca) |
2025-03-09 21:03:28 +0100 | gmg | (~user@user/gehmehgeh) gehmehgeh |
2025-03-09 21:03:06 +0100 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2025-03-09 21:02:56 +0100 | <monochrom> | The class-object version yes. The ADT version no. |
2025-03-09 21:01:58 +0100 | <EvanR> | can you even do that in ocaml |
2025-03-09 20:59:27 +0100 | <monochrom> | OK I'm jumping ship to OCaml bye guys. (No, just kidding!) |
2025-03-09 20:58:30 +0100 | <monochrom> | But this is actually telling me why other people like OOP more. "class Case1 extends T { foo() = ... }" "class Case2 extends T { foo() = ... }" is much more compatible to the explanation order I want. |
2025-03-09 20:57:54 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
2025-03-09 20:57:06 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) MyNetAz |
2025-03-09 20:56:46 +0100 | <monochrom> | A literate programming tool/environment needs that, even if we can argue how often it is used. |
2025-03-09 20:56:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-09 20:55:16 +0100 | <int-e> | I don't think a programming language needs to support the idea that code be written in the order that it's developed, one feature at a time. |
2025-03-09 20:54:21 +0100 | <EvanR> | Basic Category Theory book also doesn't have monads |
2025-03-09 20:54:08 +0100 | <EvanR> | probably for the best |
2025-03-09 20:54:01 +0100 | <monochrom> | I don't even have time to cover the Monad type class. |
2025-03-09 20:53:07 +0100 | infinity0 | (~infinity0@pwned.gg) infinity0 |
2025-03-09 20:52:16 +0100 | <monochrom> | Yeah right I'm going to use trees that grow in a course where students see Haskell for the first time! |
2025-03-09 20:51:39 +0100 | <int-e> | there's that trees that grow thing :P |
2025-03-09 20:51:25 +0100 | infinity0 | (~infinity0@pwned.gg) (Ping timeout: 252 seconds) |
2025-03-09 20:51:18 +0100 | <EvanR> | to boldly go where no definition has been split before |
2025-03-09 20:50:54 +0100 | <EvanR> | you split the definition |
2025-03-09 20:50:05 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) (Remote host closed the connection) |
2025-03-09 20:49:46 +0100 | <monochrom> | And does Haskell allow you to write like "data T = Case1; foo Case1 = ...; data T = ... | Case2; foo Case2 = ..."? |
2025-03-09 20:49:45 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-09 20:49:03 +0100 | <monochrom> | My lecture notes need that IMO. |
2025-03-09 20:48:55 +0100 | abrar | (~abrar@static-96-245-187-163.phlapa.fios.verizon.net) |
2025-03-09 20:48:48 +0100 | <monochrom> | Does Haskell even allow you to write "foo [] = 0; example1 = foo []; foo (x:xs) = x + foo xs"? |
2025-03-09 20:48:27 +0100 | abrar | (~abrar@static-96-245-187-163.phlapa.fios.verizon.net) (Quit: WeeChat 4.2.2) |
2025-03-09 20:48:05 +0100 | <EvanR> | you can't rearrange the order in the source file? |
2025-03-09 20:47:27 +0100 | <monochrom> | Edit I can say the same about almost every case of the Expr and Value types. |
2025-03-09 20:46:23 +0100 | <monochrom> | I can say the same about almost every case. |
2025-03-09 20:45:32 +0100 | <monochrom> | EvanR: https://www.cs.utoronto.ca/~trebla/CSCC24-latest/09-semantics-1.html is one of my lecture notes where IMO my order there is better than any order accepted by Haskell. For example, after explain function application and the "interp (App f e) = ..." case, it makes no sense to procrastinate walking through static vs dynamic scoping with the example "exampleScoping = ..." until after I also finish recursion "interp (Rec ...) = ..." |
2025-03-09 20:45:29 +0100 | Square | (~Square@user/square) (Ping timeout: 260 seconds) |
2025-03-09 20:45:13 +0100 | alp | (~alp@2001:861:8ca0:4940:445a:f71:bdb6:b173) |
2025-03-09 20:44:20 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2025-03-09 20:41:13 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
2025-03-09 20:40:39 +0100 | Square | (~Square@user/square) Square |
2025-03-09 20:39:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
2025-03-09 20:38:30 +0100 | ljdarj1 | ljdarj |