Newest at the top
| 2025-12-01 13:16:03 +0100 | <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 13:15:22 +0100 | <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 13:14:22 +0100 | <lortabac> | :) |
| 2025-12-01 13:14:19 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9c00:2cdd:fe3f:e613) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-12-01 13:14:16 +0100 | <mniip> | many such cases in python |
| 2025-12-01 13:14:12 +0100 | <mniip> | don't you love when the static typechecker disagrees with the runtime typechecker |
| 2025-12-01 13:13:58 +0100 | <lortabac> | statically they are all the same type |
| 2025-12-01 13:13:58 +0100 | <dminuoso> | Sure, but that differentiation is only useful in the context of a type theory class at uni. |
| 2025-12-01 13:13:38 +0100 | <lortabac> | "unityped" is "dynamically typed" from the point of view of static type checking |
| 2025-12-01 13:12:05 +0100 | <dminuoso> | The presence of a static type system does not invalidate runtime assertions or checks either. |
| 2025-12-01 13:11:29 +0100 | <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 13:10:45 +0100 | <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 13:09:40 +0100 | <lortabac> | isn't unityped what dynamically-typed languages usually are? That is what they were criticising |
| 2025-12-01 13:06:39 +0100 | <lortabac> | a completely untyped system would probably be unusable |
| 2025-12-01 13:06:06 +0100 | <mniip> | unityped perhaps? |
| 2025-12-01 13:04:29 +0100 | <lortabac> | if you don't check them at runtime you end up with segmentation faults |
| 2025-12-01 13:03:24 +0100 | <lortabac> | the point of types is also to provide a meaning to the raw bytes |
| 2025-12-01 13:02:40 +0100 | larsivi | (~larsivi@2001:2020:8341:7f8b:6585:e3fb:fff4:fe3f) |
| 2025-12-01 13:02:03 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
| 2025-12-01 13:01:06 +0100 | comerijn | (~merijn@77.242.116.146) merijn |
| 2025-12-01 12:56:05 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2025-12-01 12:55:03 +0100 | fp1 | (~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 244 seconds) |
| 2025-12-01 12:49:55 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 2025-12-01 12:46:12 +0100 | qqe | (~qqq@213.87.150.45) (Read error: Connection reset by peer) |
| 2025-12-01 12:45:35 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2025-12-01 12:43:09 +0100 | trickard_ | (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 2025-12-01 12:42:55 +0100 | trickard | (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-12-01 12:37:09 +0100 | traxex | (traxex@user/traxex) (Ping timeout: 260 seconds) |
| 2025-12-01 12:36:10 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
| 2025-12-01 12:31:22 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2025-12-01 12:25:24 +0100 | qqe | (~qqq@213.87.150.45) |
| 2025-12-01 12:24:53 +0100 | qqe | (~qqq@185.54.20.98) (Ping timeout: 260 seconds) |
| 2025-12-01 12:24:34 +0100 | <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 12:23:51 +0100 | fp1 | (~Thunderbi@2001:708:20:1406::1370) fp |
| 2025-12-01 12:19:55 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 2025-12-01 12:19:21 +0100 | qqe | (~qqq@185.54.20.98) |
| 2025-12-01 12:17:55 +0100 | qqe | (~qqq@185.54.20.98) (Ping timeout: 240 seconds) |
| 2025-12-01 12:17:32 +0100 | gustrb | (~gustrb@user/gustrb) (Quit: gustrb) |
| 2025-12-01 12:15:13 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2025-12-01 12:10:48 +0100 | <kuribas> | I also think the term is pretty bad. |
| 2025-12-01 12:10:32 +0100 | <kuribas> | It generally means lack of static typing, or at least static types that are completely optional. |
| 2025-12-01 12:09:57 +0100 | <kuribas> | You don't like the term? |
| 2025-12-01 12:09:44 +0100 | <kuribas> | What do you mean? |
| 2025-12-01 12:09:13 +0100 | qqe | (~qqq@185.54.20.98) |
| 2025-12-01 12:06:33 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-12-01 12:05:51 +0100 | Googulator24 | (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) |
| 2025-12-01 12:05:50 +0100 | Googulator50 | (~Googulato@2a01-036d-0106-4ad8-d9ec-010d-f188-ffcb.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-01 12:03:20 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 2025-12-01 12:02:34 +0100 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2025-12-01 12:02:06 +0100 | fgarcia | (~lei@user/fgarcia) fgarcia |