00:06:31 | * | Trixar_za is now known as Trix[a]r_za |
00:08:55 | * | q66 quit (Quit: Quit) |
01:13:50 | * | JStoker quit (Excess Flood) |
01:35:21 | * | JStoker joined #nimrod |
02:24:20 | * | ccssnet joined #nimrod |
06:35:44 | * | tmp__ joined #nimrod |
06:38:42 | * | tmp__ quit (Client Quit) |
10:53:52 | * | Trix[a]r_za is now known as Trixar_za |
11:10:45 | * | XAMPP quit (Read error: Connection reset by peer) |
11:10:53 | * | XAMPP joined #nimrod |
11:10:54 | * | XAMPP quit (Changing host) |
11:10:54 | * | XAMPP joined #nimrod |
11:17:55 | * | Boscop quit (Disconnected by services) |
11:22:18 | * | zahary quit (Read error: Connection reset by peer) |
11:22:58 | * | zahary joined #nimrod |
11:23:48 | * | zahary quit (Client Quit) |
11:24:00 | * | zahary joined #nimrod |
11:44:02 | * | Trixar_za is now known as Trix[a]r_za |
12:18:39 | * | Boscop joined #nimrod |
12:39:08 | * | Boscop quit (Disconnected by services) |
13:39:23 | * | Boscop joined #nimrod |
14:45:58 | * | Boscop quit (Disconnected by services) |
14:46:01 | * | q66 joined #nimrod |
14:47:06 | * | q66 quit (Remote host closed the connection) |
14:49:32 | * | q66 joined #nimrod |
15:46:17 | * | Boscop joined #nimrod |
15:48:00 | * | Boscop quit (Client Quit) |
17:01:46 | * | XAMPP quit (Ping timeout: 246 seconds) |
17:27:45 | * | Guest68794 joined #nimrod |
17:54:04 | * | Guest68794 is now known as XAMPP |
17:54:08 | * | XAMPP quit (Changing host) |
17:54:08 | * | XAMPP joined #nimrod |
18:11:13 | * | Boscop joined #nimrod |
18:35:36 | * | ekselkiu joined #nimrod |
18:36:00 | Araq | hi ekselkiu |
18:36:09 | ekselkiu | Hello Araq |
18:36:34 | Araq | I came to the conclusion that abstract interpretation is too hard :-/ |
18:36:43 | ekselkiu | lol |
18:37:16 | ekselkiu | Thing is, if you're using it for correctness (like a type system), it needs to be intuitive for the programmer. |
18:37:38 | Araq | perhaps ;-) |
18:37:55 | Araq | however, tooling can patch over anything |
18:38:11 | Araq | C# taught me that a language's complexity does not matter |
18:38:19 | ekselkiu | Uhuhuh. |
18:38:26 | Araq | as long as the tooling is good and it stays memory safe :P |
18:39:16 | ekselkiu | If the type checking is all heuristic, and even if it produces nice error messages, the programmer still needs to understand what the compiler accepts and what it doesn't, in order to correct a problem. |
18:39:21 | ekselkiu | Otherwise it's just guessing. |
18:39:37 | ekselkiu | Which is very frustrating. (Why yes, I have used ATS. How did you know? :P) |
18:40:08 | Araq | I wasn't really serious ;-) |
18:42:09 | Araq | I haven't used ATS. Does that happen often? |
18:43:40 | * | ryderblue joined #nimrod |
18:44:11 | Araq | I remember someone saying that strings in ATS suck as you need to prove index out of bounds can't happen |
18:44:15 | Araq | or something like that |
18:53:33 | * | ryderblue quit (Remote host closed the connection) |
19:07:39 | ekselkiu | No. Strings suck in ATS because there are three different types of them. String literals are of type "string", and most functions in atslib take "string", but type "string" is not linear, which means a lot of the functions in atslib are unsafe if you're not using the garbage collector. |
19:08:31 | ekselkiu | The linear string type and string container type are better, but few functions use them. |
19:09:37 | ekselkiu | But I think that can be solved with better library design. |
19:36:14 | * | ryderblue joined #nimrod |
19:44:09 | * | ryderblue quit (Remote host closed the connection) |
19:52:26 | * | ryderblue joined #nimrod |
20:48:18 | * | ryderblue quit (Remote host closed the connection) |
20:51:44 | * | ryderblue joined #nimrod |
21:11:42 | * | fowl quit (Quit: Leaving) |
21:39:39 | * | ryderblue quit (Remote host closed the connection) |
22:01:00 | * | ryderblue joined #nimrod |
22:03:04 | * | ryderblue quit (Remote host closed the connection) |
22:03:58 | * | ryderblue joined #nimrod |
22:04:27 | Araq | so how will annotate the stdlib with the new tags? |
22:05:03 | Araq | *who |
22:08:28 | * | ryderblue quit (Remote host closed the connection) |
22:08:58 | * | ryderblue joined #nimrod |
22:10:15 | * | ryderblue quit (Client Quit) |
22:53:29 | * | ekselkiu quit (Ping timeout: 260 seconds) |
23:07:39 | reactormonk | Araq, no "easy contributions" part in the wiki |
23:07:56 | Araq | reactormonk: what do you mean? |
23:08:20 | reactormonk | Araq, is it an easy job? |
23:09:30 | Araq | except for FTime I think so |
23:10:24 | Araq | proc readLine(...) {.tags: FReadIO.} # simple, hu? |
23:11:36 | reactormonk | no propagation frrom the primitives here? |
23:12:13 | Araq | indeed there is propagation |
23:12:31 | Araq | readLine is a primitive though |
23:12:36 | Araq | well ok, not really ;-) |
23:13:38 | reactormonk | I remember that code :-P |
23:14:45 | Araq | changing the nick is evil :P |
23:15:29 | reactormonk | >:) |
23:18:13 | reactormonk | Araq, well, can't you go and grep for importc stuff |
23:18:40 | Araq | sure I can |
23:19:06 | Araq | and I guess it'll be faster than moaning about someone else's work |
23:19:39 | reactormonk | how about renaming that to `import` btw? |
23:20:01 | * | dom96 quit (*.net *.split) |
23:20:18 | Araq | used to cause problems as 'import' as a keyword |
23:20:28 | Araq | but should be possible now |
23:29:18 | * | dom96 joined #nimrod |
23:31:05 | Araq | I have to sleep now, good night |