Logs: liberachat/#haskell
| 2025-12-01 11:24:34 | <jreicher> | No. I mean that the entire point of types is to facilitate a check that picks up errors before they happen at runtime. If you're doing that at runtime, then you're not doing any better than an untyped system. |
| 2025-12-01 11:24:53 | × | qqe quits (~qqq@185.54.20.98) (Ping timeout: 260 seconds) |
| 2025-12-01 11:25:24 | → | qqe joins (~qqq@213.87.150.45) |
| 2025-12-01 11:31:22 | → | merijn joins (~merijn@77.242.116.146) |
| 2025-12-01 11:36:10 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
| 2025-12-01 11:37:09 | × | traxex quits (traxex@user/traxex) (Ping timeout: 260 seconds) |
| 2025-12-01 11:42:55 | × | trickard quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-12-01 11:43:09 | → | trickard_ joins (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 2025-12-01 11:45:35 | → | merijn joins (~merijn@77.242.116.146) |
| 2025-12-01 11:46:12 | × | qqe quits (~qqq@213.87.150.45) (Read error: Connection reset by peer) |
| 2025-12-01 11:49:55 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 2025-12-01 11:55:03 | × | fp1 quits (~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 244 seconds) |
| 2025-12-01 11:56:05 | → | merijn joins (~merijn@77.242.116.146) |
| 2025-12-01 12:01:06 | → | comerijn joins (~merijn@77.242.116.146) |
| 2025-12-01 12:02:03 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
| 2025-12-01 12:02:40 | → | larsivi joins (~larsivi@2001:2020:8341:7f8b:6585:e3fb:fff4:fe3f) |
| 2025-12-01 12:03:24 | <lortabac> | the point of types is also to provide a meaning to the raw bytes |
| 2025-12-01 12:04:29 | <lortabac> | if you don't check them at runtime you end up with segmentation faults |
| 2025-12-01 12:06:06 | <mniip> | unityped perhaps? |
| 2025-12-01 12:06:39 | <lortabac> | a completely untyped system would probably be unusable |
| 2025-12-01 12:09:40 | <lortabac> | isn't unityped what dynamically-typed languages usually are? That is what they were criticising |
| 2025-12-01 12:10:45 | <lortabac> | for context, I was replying to "if you are doing [checks] at runtime, then you are not doing any better than an untyped system" |
| 2025-12-01 12:11:29 | <dminuoso> | I think the unityped/dynamically-typed differentiation is a kind of disjoint argument because they arise from fundamental different assumptions. At the core, both "type systems in the type theoretic sense" and "runtime tag checking" are both intended to prevent certain abnormal behaviors during runtime. |
| 2025-12-01 12:12:05 | <dminuoso> | The presence of a static type system does not invalidate runtime assertions or checks either. |
| 2025-12-01 12:13:38 | <lortabac> | "unityped" is "dynamically typed" from the point of view of static type checking |
| 2025-12-01 12:13:58 | <dminuoso> | Sure, but that differentiation is only useful in the context of a type theory class at uni. |
| 2025-12-01 12:13:58 | <lortabac> | statically they are all the same type |
| 2025-12-01 12:14:12 | <mniip> | don't you love when the static typechecker disagrees with the runtime typechecker |
| 2025-12-01 12:14:16 | <mniip> | many such cases in python |
| 2025-12-01 12:14:19 | × | tromp quits (~textual@2001:1c00:3487:1b00:9c00:2cdd:fe3f:e613) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-12-01 12:14:22 | <lortabac> | :) |
| 2025-12-01 12:15:22 | <dminuoso> | One of the established rough description is that the type systems intention is to filter out as many bad programs, while filtering out as few good programs as possible. The false positive/negative rate is not perfect in any language. |
| 2025-12-01 12:16:03 | <dminuoso> | As long as the type checker in python saves me more time on average than it wastes on account being wrong, its useful. |
| 2025-12-01 12:33:23 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 2025-12-01 12:38:24 | → | tromp joins (~textual@2001:1c00:3487:1b00:9c00:2cdd:fe3f:e613) |
| 2025-12-01 12:39:29 | <kuribas> | jreicher: So you don't like the term... |
| 2025-12-01 12:39:53 | <kuribas> | jreicher: But dynamic language proponents don't think of types in terms of type theory. |
| 2025-12-01 12:40:15 | <kuribas> | For example a type may be a class, which is a runtime entity. |
| 2025-12-01 12:43:10 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 2025-12-01 12:54:44 | × | yin quits (~zero@user/zero) (Ping timeout: 260 seconds) |
| 2025-12-01 12:54:58 | → | yin joins (~zero@user/zero) |
| 2025-12-01 12:55:54 | × | trickard_ quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Ping timeout: 260 seconds) |
| 2025-12-01 12:58:07 | → | ttybitnik joins (~ttybitnik@user/wolper) |
| 2025-12-01 12:58:47 | → | trickard_ joins (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 2025-12-01 13:05:10 | Googulator24 | is now known as Googulator |
| 2025-12-01 13:10:04 | → | fp1 joins (~Thunderbi@2001:708:20:1406::10c5) |
| 2025-12-01 13:13:56 | × | Googulator quits (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-01 13:14:16 | → | Googulator joins (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) |
| 2025-12-01 13:18:37 | × | fp1 quits (~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 246 seconds) |
| 2025-12-01 13:19:16 | × | karenw quits (~karenw@user/karenw) (Ping timeout: 244 seconds) |
| 2025-12-01 13:22:08 | × | X-Scale quits (~ARM@6.67.114.89.rev.vodafone.pt) (Ping timeout: 240 seconds) |
| 2025-12-01 13:25:04 | × | larsivi quits (~larsivi@2001:2020:8341:7f8b:6585:e3fb:fff4:fe3f) (Ping timeout: 260 seconds) |
| 2025-12-01 13:25:46 | → | fp1 joins (~Thunderbi@2001:708:20:1406::1370) |
| 2025-12-01 13:34:37 | × | trickard_ quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-12-01 13:35:30 | × | Googulator quits (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-01 13:35:42 | → | Googulator joins (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) |
| 2025-12-01 13:37:08 | → | trickard_ joins (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 2025-12-01 13:37:39 | → | X-Scale joins (~ARM@6.67.114.89.rev.vodafone.pt) |
| 2025-12-01 13:38:43 | × | fp1 quits (~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 265 seconds) |
| 2025-12-01 13:42:31 | × | turlando_ quits (~turlando@user/turlando) (Ping timeout: 244 seconds) |
| 2025-12-01 13:42:45 | → | turlando joins (~turlando@user/turlando) |
| 2025-12-01 13:45:48 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
| 2025-12-01 13:47:10 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 244 seconds) |
| 2025-12-01 13:47:45 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 2025-12-01 13:50:05 | → | haritz joins (~hrtz@140.228.70.141) |
| 2025-12-01 13:50:05 | × | haritz quits (~hrtz@140.228.70.141) (Changing host) |
| 2025-12-01 13:50:05 | → | haritz joins (~hrtz@user/haritz) |
| 2025-12-01 13:54:10 | → | __monty__ joins (~toonn@user/toonn) |
| 2025-12-01 13:54:11 | × | __monty__ quits (~toonn@user/toonn) (Client Quit) |
| 2025-12-01 13:54:49 | × | comerijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 2025-12-01 13:57:36 | → | __monty__ joins (~toonn@user/toonn) |
| 2025-12-01 14:06:14 | → | merijn joins (~merijn@77.242.116.146) |
| 2025-12-01 14:10:18 | × | vgtw_ quits (~vgtw@user/vgtw) (Ping timeout: 256 seconds) |
| 2025-12-01 14:10:45 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
| 2025-12-01 14:13:05 | → | vgtw joins (~vgtw@user/vgtw) |
| 2025-12-01 14:13:45 | → | merijn joins (~merijn@77.242.116.146) |
| 2025-12-01 14:16:20 | × | infinity0 quits (~infinity0@pwned.gg) (Quit: WeeChat 4.6.3) |
| 2025-12-01 14:17:00 | → | infinity0 joins (~infinity0@pwned.gg) |
| 2025-12-01 14:20:44 | → | spew joins (~spew@user/spew) |
| 2025-12-01 14:31:39 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2025-12-01 14:35:09 | → | ephemient joins (uid407513@user/ephemient) |
| 2025-12-01 14:36:16 | → | fgarcia joins (~lei@user/fgarcia) |
| 2025-12-01 14:39:06 | → | sindu joins (~sindu@2.148.32.207.tmi.telenormobil.no) |
| 2025-12-01 14:45:01 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 2025-12-01 14:49:04 | × | spew quits (~spew@user/spew) (Quit: WeeChat 4.7.2) |
| 2025-12-01 14:49:14 | × | trickard_ quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-12-01 14:49:28 | → | trickard_ joins (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 2025-12-01 14:51:17 | × | Inline quits (~inlinE@2001-4dd3-7fc8-0-8721-eee6-e05a-14dd.ipv6dyn.netcologne.de) (Remote host closed the connection) |
| 2025-12-01 14:54:51 | → | Square joins (~Square@user/square) |
| 2025-12-01 14:56:46 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2025-12-01 14:57:26 | → | gmg joins (~user@user/gehmehgeh) |
| 2025-12-01 14:58:31 | × | Square2 quits (~Square4@user/square) (Ping timeout: 240 seconds) |
| 2025-12-01 15:02:03 | → | Inline joins (~inlinE@2001-4dd3-7fc8-0-2be-fec0-ba58-7d11.ipv6dyn.netcologne.de) |
| 2025-12-01 15:11:26 | × | jzargo quits (~jzargo@user/jzargo) (Read error: Connection reset by peer) |
| 2025-12-01 15:11:47 | → | spew joins (~spew@user/spew) |
| 2025-12-01 15:16:18 | → | jzargo joins (~jzargo@user/jzargo) |
| 2025-12-01 15:16:37 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 2025-12-01 15:20:29 | × | tromp quits (~textual@2001:1c00:3487:1b00:9c00:2cdd:fe3f:e613) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-12-01 15:26:36 | → | tromp joins (~textual@2001:1c00:3487:1b00:9c00:2cdd:fe3f:e613) |
| 2025-12-01 15:29:06 | × | ttybitnik quits (~ttybitnik@user/wolper) (Quit: Fading out...) |
All times are in UTC.