Logs: liberachat/#haskell
| 2025-08-31 22:39:03 | × | jbalint quits (~jbalint@2600:6c44:117f:e98a:40bb:52ad:62b8:5122) (Server closed connection) |
| 2025-08-31 22:39:15 | → | jbalint joins (~jbalint@2600:6c44:117f:e98a:40bb:52ad:62b8:5122) |
| 2025-08-31 22:40:24 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2025-08-31 22:50:42 | → | potatoespotatoes joins (~quassel@130.44.147.204) |
| 2025-08-31 22:50:42 | × | potatoespotatoes quits (~quassel@130.44.147.204) (Changing host) |
| 2025-08-31 22:50:42 | → | potatoespotatoes joins (~quassel@user/potatoespotatoes) |
| 2025-08-31 22:50:50 | × | bpavuk quits (~bpavuk@217.196.163.190) (Changing host) |
| 2025-08-31 22:50:50 | → | bpavuk joins (~bpavuk@user/bpavuk) |
| 2025-08-31 22:51:35 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-08-31 22:52:02 | → | jreicher joins (~user@user/jreicher) |
| 2025-08-31 22:54:26 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 2025-08-31 22:56:36 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-08-31 22:58:14 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 260 seconds) |
| 2025-08-31 23:02:37 | × | bpavuk quits (~bpavuk@user/bpavuk) (Remote host closed the connection) |
| 2025-08-31 23:04:24 | × | trickard_ quits (~trickard@cpe-53-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-08-31 23:04:37 | → | trickard_ joins (~trickard@cpe-53-98-47-163.wireline.com.au) |
| 2025-08-31 23:07:21 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-08-31 23:07:36 | × | Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Ping timeout: 244 seconds) |
| 2025-08-31 23:08:30 | × | potatoespotatoes quits (~quassel@user/potatoespotatoes) (Ping timeout: 256 seconds) |
| 2025-08-31 23:08:54 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Quit: Leaving) |
| 2025-08-31 23:12:13 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2025-08-31 23:13:17 | → | amadaluzia joins (~amadaluzi@user/amadaluzia) |
| 2025-08-31 23:13:35 | → | arandombit joins (~arandombi@2603:7000:4600:ffbe:b5b3:70e:3a9c:ead) |
| 2025-08-31 23:13:35 | × | arandombit quits (~arandombi@2603:7000:4600:ffbe:b5b3:70e:3a9c:ead) (Changing host) |
| 2025-08-31 23:13:35 | → | arandombit joins (~arandombi@user/arandombit) |
| 2025-08-31 23:15:36 | × | trickard_ quits (~trickard@cpe-53-98-47-163.wireline.com.au) (Ping timeout: 248 seconds) |
| 2025-08-31 23:16:07 | → | trickard_ joins (~trickard@cpe-53-98-47-163.wireline.com.au) |
| 2025-08-31 23:16:08 | → | ljdarj1 joins (~Thunderbi@user/ljdarj) |
| 2025-08-31 23:18:29 | × | amadaluzia quits (~amadaluzi@user/amadaluzia) (Quit: ZNC 1.9.1 - https://znc.in) |
| 2025-08-31 23:19:48 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds) |
| 2025-08-31 23:19:48 | ljdarj1 | is now known as ljdarj |
| 2025-08-31 23:21:23 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) |
| 2025-08-31 23:23:09 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-08-31 23:24:05 | × | ftzm quits (~ftzm@085080231172.dynamic.telenor.dk) (Server closed connection) |
| 2025-08-31 23:24:29 | → | ftzm joins (~ftzm@085080231172.dynamic.telenor.dk) |
| 2025-08-31 23:25:16 | <jreicher> | sajenim: No, I think Haskell is quite bad as a first language. I don't think anything with such an expressive type system should be a first language. |
| 2025-08-31 23:27:59 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-08-31 23:28:42 | → | twb joins (~twb@user/twb) |
| 2025-08-31 23:28:55 | <EvanR> | disagree |
| 2025-08-31 23:29:17 | <EvanR> | I wish I had types in retrospect, in many situations |
| 2025-08-31 23:29:29 | <twb> | Dumb question: when https://hackage.haskell.org/package/base64 talks about "optics" and "lenses", what does it mean? I've only seen "lens" in the context of augeas (an ocaml-y thing) configuration file parsers. |
| 2025-08-31 23:29:33 | <monochrom> | Soon it will no longer matter. Prompt engineering will be the first and only language, like it or not. |
| 2025-08-31 23:29:37 | <EvanR> | lol |
| 2025-08-31 23:30:08 | <EvanR> | as soon as the AI code behind the scenes is written in "prompt" |
| 2025-08-31 23:30:17 | <twb> | https://hackage.haskell.org/package/optics-0.1/docs/Optics.html#g:2 loosk relevant |
| 2025-08-31 23:31:06 | <monochrom> | Oh, Python not boostrapping itself in practice hasn't stopped a whole lot of people form using it as their first and only language. |
| 2025-08-31 23:31:16 | <jreicher> | EvanR: FWIW I only hold this opinion for a first programming language. Later languages (and any serious work) should be typed. |
| 2025-08-31 23:31:28 | <EvanR> | "my first and only language" vs "the only first and only language" |
| 2025-08-31 23:32:00 | <monochrom> | Sure. Let me fix my sentence then! |
| 2025-08-31 23:32:09 | <twb> | jreicher: "not typed" meaning weakly typed like bash and php, or *literally* untyped, so true, 1, "" and identity: x -> x are all literally identical |
| 2025-08-31 23:32:12 | <monochrom> | Soon it will no longer matter. Prompt engineering will be the first and only language for most people, like it or not. |
| 2025-08-31 23:32:25 | <EvanR> | I feel like we're already there |
| 2025-08-31 23:32:53 | <EvanR> | people using free LLMs dwarfs programmers |
| 2025-08-31 23:33:33 | <twb> | oh you mean "prompt engineering" as in LLM grifts, not "engineers who work quickly and efficiently" |
| 2025-08-31 23:33:56 | <jreicher> | twb: I feel like it's a pretty thin line between untyped and types as weak as bash or PHP. |
| 2025-08-31 23:34:38 | <twb> | jreicher: my general rule is that weakly typed code is OK if it's only going to run once |
| 2025-08-31 23:34:42 | × | trickard_ quits (~trickard@cpe-53-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-08-31 23:34:50 | <twb> | so e.g. I do not replace bash with ghci for interactive login shell |
| 2025-08-31 23:34:55 | → | trickard_ joins (~trickard@cpe-53-98-47-163.wireline.com.au) |
| 2025-08-31 23:35:04 | <twb> | But I wouldn't write scripts in it that were good enough to commit in git |
| 2025-08-31 23:35:10 | <jreicher> | twb: My rules is weakly typed code is OK if it's OK for it to not work. :) |
| 2025-08-31 23:35:17 | <twb> | yeah exactly |
| 2025-08-31 23:35:47 | <jreicher> | And that's pretty much why it's OK for a first programming language. |
| 2025-08-31 23:35:52 | <twb> | and also anything over 80 bytes long must be strongly typed |
| 2025-08-31 23:36:06 | <jreicher> | Writing something that doesn't work is a valuable learning experience. |
| 2025-08-31 23:36:17 | × | sprotte24 quits (~sprotte24@p200300d16f15cf0019f42a7dc19cb9cd.dip0.t-ipconnect.de) (Quit: Leaving) |
| 2025-08-31 23:36:20 | <monochrom> | I write typed code in my head, then perform type erasure when I spit out shell scripts or Lisp or Prolog or... |
| 2025-08-31 23:37:02 | <monochrom> | On the upside, since the form just has to be in my head, it can be any arbitrarily undecidable dependent typing. |
| 2025-08-31 23:37:11 | <monochrom> | s/form/former/ |
| 2025-08-31 23:37:24 | <jreicher> | You could even do nondeterministic code that way. :p |
| 2025-08-31 23:37:37 | <EvanR> | PHP, python, etc, is write only code |
| 2025-08-31 23:37:39 | <EvanR> | ruby |
| 2025-08-31 23:37:46 | <monochrom> | Perl |
| 2025-08-31 23:38:10 | <monochrom> | I feel like Python is not too badly write-only. |
| 2025-08-31 23:38:55 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-08-31 23:39:02 | <twb> | monochrom: you can declaim types in lisp |
| 2025-08-31 23:39:18 | <twb> | CL is "static typing later" not "static typing never" |
| 2025-08-31 23:39:58 | <monochrom> | Not bothering. Lisp has other things that repel me. I will just use Haskell or Javascript. |
| 2025-08-31 23:40:25 | <EvanR> | or the frankenlanguage purescript xD |
| 2025-08-31 23:41:01 | <monochrom> | That whole "function binding vs variable binding" business. Perl repels me for the same reason. |
| 2025-08-31 23:44:32 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-08-31 23:55:00 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-01 00:07:34 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 272 seconds) |
| 2025-09-01 00:09:17 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 2025-09-01 00:09:51 | trickard_ | is now known as trickard |
| 2025-09-01 00:19:55 | × | Raito_Bezarius quits (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) (Ping timeout: 245 seconds) |
| 2025-09-01 00:30:41 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) (Ping timeout: 248 seconds) |
| 2025-09-01 00:32:44 | × | peterbecich quits (~Thunderbi@syn-172-222-149-049.res.spectrum.com) (Ping timeout: 260 seconds) |
| 2025-09-01 00:33:42 | → | Raito_Bezarius joins (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) |
| 2025-09-01 00:40:54 | × | xff0x quits (~xff0x@2405:6580:b080:900:cd2b:541b:f532:66b1) (Ping timeout: 260 seconds) |
| 2025-09-01 00:41:33 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) |
| 2025-09-01 00:53:14 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) |
| 2025-09-01 00:58:59 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-09-01 01:03:38 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds) |
| 2025-09-01 01:08:13 | → | weary-traveler joins (~user@user/user363627) |
| 2025-09-01 01:12:28 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-01 01:14:23 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) |
| 2025-09-01 01:17:12 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-09-01 01:18:48 | × | acidjnk quits (~acidjnk@p200300d6e71719025429e9a94047f281.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 2025-09-01 01:23:09 | → | mange joins (~mange@user/mange) |
All times are in UTC.