00:07:23 | * | BitPuffin quit (Ping timeout: 248 seconds) |
00:25:28 | MFlamer | Does anyone have an example of using "mixin" ? I see the description in the manual, but It's not much |
00:26:19 | * | fowl quit (Quit: Leaving) |
00:50:05 | * | fowl joined #nimrod |
00:59:07 | * | EXetoC quit (Quit: WeeChat 0.4.1) |
01:15:00 | * | q66 quit (Quit: Leaving) |
01:20:15 | * | DAddYE quit (Remote host closed the connection) |
01:46:59 | * | MFlamer quit (Remote host closed the connection) |
01:54:35 | * | OrionPK quit (Quit: Leaving) |
02:00:54 | * | Associat0r quit (Quit: Associat0r) |
02:06:56 | * | dyu_ joined #nimrod |
02:08:05 | * | ltbarcly joined #nimrod |
02:08:32 | * | ltbarcly quit (Client Quit) |
02:41:41 | * | fowl quit (Ping timeout: 245 seconds) |
02:48:42 | * | fowl joined #nimrod |
03:07:51 | * | fowl quit (Ping timeout: 260 seconds) |
04:34:05 | * | MFlamer joined #nimrod |
05:07:37 | Araq | MFlamer: proper sum types ensure at compile time you don't access a field that doesn't fit the tag |
05:08:02 | MFlamer | Ah ha... |
05:08:10 | Araq | however, we got that too in 0.9.3 via the flow dependent typing |
05:08:38 | Araq | so ... our way is more flexible ;-) |
05:10:30 | MFlamer | I'm messing around with this idea of creating some light weight sum type using a flagged pointer. It could only represent 4 types, but I thought it might be cool for "Maybe or Either" types |
05:12:14 | Araq | that only works with accessor procs/templates |
05:12:22 | MFlamer | where can I findout more about this flow dependent typing? |
05:12:55 | Araq | dunno, my design has been based on a "guared SSA" representation which I read years ago |
05:13:01 | Araq | *guarded |
05:13:39 | Araq | so yes ... my design is based on an optimization framework which has been used for something entirely different |
05:14:27 | Araq | and I also got rid of the SSA representation ... |
05:14:41 | MFlamer | static single asignment? |
05:14:45 | Araq | yes |
05:16:28 | Araq | compiler/sempass2 and compiler/guards contains the algorithm |
05:17:04 | Araq | gotta go, bye |
05:18:07 | MFlamer | https://gist.github.com/mflamer/6821275 |
05:18:43 | MFlamer | alright, catch you later. |
05:30:01 | MFlamer | I was hoping I could write a macro for some sort of pattern matching on these types. |
05:32:19 | MFlamer | Type classes using boolean "int | float | (int,int)" seem like they cover some ground towards ADTs also |
05:34:30 | MFlamer | but then of course I would want to be able to define type classes for type classes...... ;-\ |
05:34:48 | * | MFlamer quit (Quit: Page closed) |
06:31:39 | * | ltbarcly joined #nimrod |
06:31:48 | * | ltbarcly quit (Client Quit) |
06:59:48 | * | Araq_ joined #nimrod |
08:43:19 | * | ltbarcly joined #nimrod |
08:43:27 | * | ltbarcly quit (Client Quit) |
09:00:14 | * | BitPuffin joined #nimrod |
09:00:43 | * | wlhlm joined #nimrod |
09:33:00 | * | Associat0r joined #nimrod |
09:33:00 | * | Associat0r quit (Changing host) |
09:33:00 | * | Associat0r joined #nimrod |
09:44:28 | * | BitPuffin quit (Ping timeout: 240 seconds) |
10:18:10 | * | Araq_ quit (Quit: ChatZilla 0.9.90.1 [Firefox 24.0/20130910160258]) |
10:41:09 | * | q66 joined #nimrod |
10:54:48 | * | ltbarcly joined #nimrod |
10:54:54 | * | ltbarcly quit (Client Quit) |
11:09:56 | * | brson joined #nimrod |
11:09:56 | * | brson quit (Client Quit) |
11:16:26 | * | brson joined #nimrod |
12:08:26 | * | BitPuffin joined #nimrod |
12:15:12 | * | MFlamer joined #nimrod |
12:43:42 | * | brson quit (Read error: Operation timed out) |
12:46:36 | * | brson joined #nimrod |
12:47:19 | * | OrionPK joined #nimrod |
12:51:12 | * | EXetoC joined #nimrod |
13:05:30 | * | brson quit (Ping timeout: 264 seconds) |
13:06:09 | * | ltbarcly joined #nimrod |
13:06:12 | * | ltbarcly quit (Client Quit) |
13:16:41 | * | BitPuffin quit (Ping timeout: 245 seconds) |
13:37:40 | * | BitPuffin joined #nimrod |
13:41:02 | * | brson joined #nimrod |
13:56:08 | MFlamer | Araq: if you had a sec to humor me, take a look at https://gist.github.com/mflamer/6821275 and let me know if you see a way to get the compiler to resolve the type |
13:56:36 | MFlamer | and I promise I'll get the table wrapped up soon.....:-) |
14:21:04 | shevy | table |
14:21:07 | shevy | for food or sex? |
14:21:21 | shevy | ahhhh |
14:21:26 | shevy | for programming... oh man |
14:21:38 | shevy | programmers are weird people :\ |
14:25:54 | * | brson quit (Ping timeout: 252 seconds) |
14:29:05 | * | MFlamer quit (Ping timeout: 250 seconds) |
15:21:02 | * | Endy joined #nimrod |
15:21:22 | * | MFlamer joined #nimrod |
15:37:09 | * | ltbarcly joined #nimrod |
15:58:44 | * | MFlamer quit (Remote host closed the connection) |
16:16:32 | * | MFlamer joined #nimrod |
16:31:59 | * | BitPuffin quit (Read error: Operation timed out) |
16:52:23 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
16:57:53 | * | EXetoC quit (Quit: WeeChat 0.4.1) |
17:22:34 | * | ltbarcly joined #nimrod |
17:28:46 | * | DAddYE joined #nimrod |
17:32:03 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
17:40:13 | * | ltbarcly joined #nimrod |
17:42:43 | Araq | MFlamer: this can't work because ': auto' means "infer return type" but it's not a way out of the static typing |
17:43:59 | Araq | also you should retrun range[0..3] for popFlags and use a case statement |
17:44:16 | Araq | instead of the much uglier if-chain |
17:45:21 | Araq | you need a getInt, getFloat etc. instead of the "generic" getyp |
17:46:58 | MFlamer | ok, thanks Araq. But that sort of defeats the purpose I guess. Could I do this with a macro? |
17:48:05 | Araq | no because you don't know the bits at compile-time, right? |
17:48:13 | Araq | if you do know them, it's easy |
17:48:33 | Araq | but then what's the point? ;-) |
17:48:50 | MFlamer | damn |
17:50:23 | Araq | you can do getyp[T](x: pointer): T but then you need to instantiate it explicitly which is like getInt |
17:50:38 | Araq | but maybe it's what you want here |
17:51:34 | MFlamer | hmm.... |
17:59:13 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
18:02:15 | * | shodan45 quit (Quit: Konversation terminated!) |
18:03:39 | * | ltbarcly joined #nimrod |
18:04:12 | * | circ-user-UG6HN joined #nimrod |
18:07:42 | * | circ-user-UG6HN quit (Remote host closed the connection) |
18:08:56 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
18:33:52 | * | dyu_ quit (Quit: Leaving) |
18:59:23 | * | Endy quit (Ping timeout: 260 seconds) |
19:05:44 | * | ltbarcly joined #nimrod |
19:18:18 | * | shodan45 joined #nimrod |
19:20:32 | * | Endy joined #nimrod |
19:23:35 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
19:46:43 | * | Boscop quit (Disconnected by services) |
19:46:46 | * | Boscop joined #nimrod |
20:06:05 | * | ltbarcly joined #nimrod |
20:17:28 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
20:27:56 | * | Endy quit (Ping timeout: 245 seconds) |
20:30:17 | * | ltbarcly joined #nimrod |
20:34:05 | * | ltbarcly quit (Client Quit) |
21:04:41 | * | BitPuffin joined #nimrod |
21:22:15 | * | ltbarcly joined #nimrod |
21:27:29 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
21:28:46 | * | ltbarcly joined #nimrod |
21:28:55 | dom96 | Hello guys. |
21:29:34 | Araq | hi dom96 |
21:40:08 | * | BitPuffin quit (Ping timeout: 240 seconds) |
21:42:10 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
21:47:13 | * | ltbarcly joined #nimrod |
21:50:05 | * | ltbarcly quit (Client Quit) |
21:50:14 | * | shodan45 quit (Quit: Konversation terminated!) |
21:55:30 | Araq | lol I forgot somebody (me?) already wrote endians.nim |
21:55:37 | Araq | and it's even in 0.9.2 |
21:55:48 | Araq | very strange... maybe I was drunk when I added it |
21:56:17 | dom96 | You added it in 2012 |
21:56:43 | Araq | even stranger. I wasn't drunk in 2012. |
21:58:42 | MFlamer | maybe you should get drunk? |
21:59:29 | Araq | good idea. brb |
22:04:50 | Araq | ok, so ... |
22:05:19 | Araq | MFlamer: are you sure atomicInc(version) doesn't suffice and you need a multi word CAS? |
22:59:17 | MFlamer | I stepped out for a min..... |
22:59:41 | MFlamer | no...I'm not sure. |
23:01:04 | MFlamer | My thought was that was the only way to ensure that the value and varsion are updated simultaniously |
23:01:47 | MFlamer | otherwise another thread could read a value before the version was incremented |
23:02:23 | MFlamer | Araq: ping |
23:02:40 | dom96 | I think he's away to sleep. |
23:02:59 | MFlamer | OK, thanks dom |
23:03:10 | MFlamer | what are you up to? |
23:03:20 | dom96 | Playing with OpenCV. |
23:03:36 | MFlamer | wrapper for NImrod? |
23:03:48 | dom96 | Yeah. |
23:03:53 | MFlamer | sweet |
23:04:03 | * | brson joined #nimrod |
23:10:11 | * | brson quit (Ping timeout: 245 seconds) |
23:12:21 | * | brson joined #nimrod |
23:55:02 | * | brson quit (Ping timeout: 240 seconds) |