00:09:11 | * | Jesin joined #nim |
00:17:26 | * | johnsoft joined #nim |
00:23:11 | * | nicktick joined #nim |
00:32:30 | * | ozra joined #nim |
00:35:46 | * | ozra_ quit (Ping timeout: 240 seconds) |
00:39:31 | * | bigfondue joined #nim |
00:40:05 | * | zepolen_ quit (Remote host closed the connection) |
01:01:37 | * | ozra_ joined #nim |
01:05:02 | * | ozra quit (Ping timeout: 272 seconds) |
01:13:27 | * | pregressive quit (Remote host closed the connection) |
01:24:12 | * | biscarch quit (Ping timeout: 250 seconds) |
01:25:22 | * | vikaton quit (Ping timeout: 256 seconds) |
01:25:35 | * | solidsnack quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
01:25:46 | * | biscarch joined #nim |
01:27:04 | * | mikolalysenko quit (Ping timeout: 256 seconds) |
01:27:09 | * | vikaton joined #nim |
01:28:36 | * | mikolalysenko joined #nim |
01:29:32 | * | solidsnack joined #nim |
01:33:23 | * | solidsna_ joined #nim |
01:36:04 | * | solidsnack quit (Ping timeout: 272 seconds) |
01:36:33 | * | gokr quit (Quit: Leaving.) |
01:39:02 | * | imapiekindaguy joined #nim |
01:44:01 | * | ozra_ quit (Quit: Konversation terminated!) |
01:47:59 | * | xiongxin joined #nim |
01:54:55 | * | solidsna_ quit (Ping timeout: 240 seconds) |
01:56:54 | * | xiongxin quit (Ping timeout: 252 seconds) |
02:00:08 | * | kniteli quit (Ping timeout: 272 seconds) |
02:02:02 | * | solidsnack joined #nim |
02:06:27 | * | solidsnack quit (Ping timeout: 265 seconds) |
02:12:01 | * | Jesin quit (Quit: Leaving) |
02:31:48 | * | Sornaensis quit (Excess Flood) |
02:32:12 | * | Sornaensis joined #nim |
02:51:59 | * | zepolen joined #nim |
02:52:13 | * | kniteli joined #nim |
02:54:12 | cryzed | def-, you aren't up for a critique/review of my solution for day9 I assume? (part 1) |
02:56:32 | * | zepolen quit (Ping timeout: 255 seconds) |
03:25:50 | * | imapiekindaguy quit (Quit: Quit) |
03:51:02 | * | Jesin joined #nim |
04:30:46 | * | BitPuffin|osx quit (Ping timeout: 240 seconds) |
04:36:40 | * | jakesyl quit (Ping timeout: 260 seconds) |
04:41:19 | * | desophos_ joined #nim |
04:41:54 | * | desophos quit (Disconnected by services) |
04:41:56 | * | desophos_ is now known as desophos |
05:43:26 | * | desophos quit (Read error: Connection reset by peer) |
06:01:06 | * | kniteli quit (Ping timeout: 240 seconds) |
06:14:40 | * | exebook quit (Remote host closed the connection) |
06:16:45 | * | girvo joined #nim |
06:27:32 | * | darkf joined #nim |
06:38:37 | * | zepolen joined #nim |
06:48:33 | girvo | Hey everyone, quick q: pattern matching on types, is that a thing? I can probably write a macro myself utilising a '.kind' ADT of some description if needed |
06:49:33 | girvo | Basicaly, in the style of ML or something? |
06:49:57 | reactormonk | girvo, got ADTs via variant objects, but that's about it. |
06:50:03 | reactormonk | girvo, https://github.com/andreaferretti/patty |
06:50:24 | girvo | reactormonk: oh, that looks pretty damned close! |
06:51:36 | girvo | i'd forgotten about object variants, for my current use-case that and "case kind" should do nicely. I'll have a play with patty too |
06:51:40 | girvo | thanks reactormonk :) |
06:53:37 | * | girvo quit (Quit: leaving) |
07:47:45 | * | yglukhov joined #nim |
07:54:22 | * | gour joined #nim |
07:55:19 | * | zepolen_ joined #nim |
07:56:35 | * | zepolen quit (Ping timeout: 240 seconds) |
07:58:52 | * | Matthias247 joined #nim |
08:00:08 | * | Matthias247 quit (Read error: Connection reset by peer) |
08:24:38 | * | gokr joined #nim |
08:31:01 | * | filcuc joined #nim |
08:44:39 | * | exebook joined #nim |
09:01:56 | * | vqrs quit (Ping timeout: 272 seconds) |
09:04:31 | * | vqrs joined #nim |
09:05:45 | * | yglukhov quit (Remote host closed the connection) |
09:13:36 | * | nicktick quit (Quit: Leaving.) |
09:15:06 | * | cyraxjoe quit (Ping timeout: 240 seconds) |
09:17:18 | * | exebook quit (Remote host closed the connection) |
09:18:05 | * | Trustable joined #nim |
09:21:06 | * | DecoPerson quit (Ping timeout: 240 seconds) |
09:25:09 | * | exebook joined #nim |
09:34:47 | * | coffeepot joined #nim |
09:35:58 | * | exebook quit (Remote host closed the connection) |
09:40:36 | * | DecoPerson joined #nim |
10:03:53 | * | aziz joined #nim |
10:10:45 | * | nicktick joined #nim |
10:17:08 | * | nicktick1 joined #nim |
10:19:44 | * | nicktick quit (Ping timeout: 256 seconds) |
10:31:25 | * | jaco60 quit (Quit: Leaving) |
11:17:32 | * | thotypous quit (Ping timeout: 256 seconds) |
11:20:16 | * | exebook joined #nim |
11:22:50 | * | thotypous joined #nim |
11:38:06 | * | gokr quit (Ping timeout: 240 seconds) |
11:45:05 | * | kerze joined #nim |
12:07:40 | * | filcuc quit (Read error: Connection reset by peer) |
12:15:13 | * | gokr joined #nim |
12:18:05 | * | DecoPerson quit (Ping timeout: 260 seconds) |
12:20:48 | * | jakesyl joined #nim |
12:27:26 | * | DecoPerson joined #nim |
12:30:55 | * | jakesyl quit (Ping timeout: 265 seconds) |
12:43:38 | * | Demon_Fox quit (Quit: Leaving) |
12:45:48 | * | Gonzih joined #nim |
12:45:56 | * | Gonzih quit (Client Quit) |
12:48:26 | * | Gonzih joined #nim |
12:49:22 | * | Gonzih quit (Client Quit) |
12:50:17 | * | Gonzih joined #nim |
13:10:37 | * | ephja joined #nim |
13:11:29 | * | ephja quit (Read error: No route to host) |
13:17:49 | * | zepolen joined #nim |
13:19:44 | * | zepolen_ quit (Ping timeout: 265 seconds) |
13:21:43 | * | DecoPerson quit () |
13:21:53 | * | DecoPerson joined #nim |
13:28:45 | * | DecoPerson_ joined #nim |
13:37:57 | * | zepolen_ joined #nim |
13:40:20 | * | zepolen quit (Ping timeout: 260 seconds) |
13:47:44 | * | brson joined #nim |
13:50:15 | * | BitPuffin joined #nim |
14:08:50 | * | brson quit (Quit: leaving) |
15:02:17 | * | DecoPerson_ quit () |
15:06:10 | * | pregressive joined #nim |
15:31:57 | * | jaco60 joined #nim |
15:33:42 | * | kniteli joined #nim |
15:41:34 | * | kerze quit (Remote host closed the connection) |
15:42:27 | * | coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
15:57:08 | * | NimBot joined #nim |
16:27:57 | * | def- quit (Ping timeout: 244 seconds) |
16:47:40 | * | zepolen_ quit (Read error: Connection reset by peer) |
16:53:07 | * | zepolen joined #nim |
16:55:57 | * | krux02 joined #nim |
16:56:29 | krux02 | hello people, is there a documentation about the internals of string and seq? |
16:56:40 | reactormonk | krux02, what do you want to know? |
16:57:34 | krux02 | I would like to know if they work like c++ std::string, copying everywhere, or more like QString copy on write, or more like java, immutable, and strings are always new strings |
16:58:38 | krux02 | and what is the best way to create a long string of unknown size, if I need to append a lot. |
16:58:44 | krux02 | same with seq |
16:59:39 | krux02 | and when I pass a string to a function, does it actually copy the string? |
17:00:13 | reactormonk | Take a look at lib/system/sysstr.nim |
17:00:23 | reactormonk | handles both strings and seqs |
17:01:54 | * | boopisaway is now known as boop |
17:02:21 | krux02 | reactormonk: cant find it on github :/ |
17:03:22 | reactormonk | krux02, https://github.com/nim-lang/Nim/blob/devel/lib/system/sysstr.nim |
17:06:51 | krux02 | reactormonk: ok, that is pretty low level, and it describes how the individual operations work, but it dosn't tell how they are called |
17:07:18 | reactormonk | krux02, so you're asking if they're copied on passing? |
17:07:25 | krux02 | yes |
17:08:00 | krux02 | I mean strings are pretty easy to work with, but I like to know what actually happens |
17:09:27 | krux02 | As I have seen, strings can be changed, and if I pass a string to a function, and it it done like a c++ const reference, and I change the origin of the string, also the string in my function gets changed, and that conflicts with value type samantic |
17:09:42 | reactormonk | they're copied on assignment. |
17:10:06 | krux02 | Ok that means I have a lot of string copying if I pass around a lot of strings to functions? |
17:11:27 | reactormonk | krux02, http://nim-lang.org/docs/manual.html#ast-based-overloading-move-optimization |
17:15:11 | krux02 | reactormonk: does it mean I have to implement move optimization manually for all my functions tha take string as arguments? |
17:17:00 | reactormonk | krux02, or pass by ref |
17:17:45 | krux02 | so you think passing strings by ref in general is a good idea? |
17:18:58 | * | nicktick1 quit (Quit: Leaving.) |
17:19:45 | reactormonk | Nope. But if you have a large buffer, maybe. Honestly, I think I'd wait for Araq to get here (soon) and wait for a conclusive answer. |
17:27:51 | * | def- joined #nim |
17:28:03 | * | zepolen quit (Read error: Connection reset by peer) |
17:28:53 | * | zepolen joined #nim |
17:33:44 | * | zepolen_ joined #nim |
17:36:59 | * | zepolen quit (Ping timeout: 246 seconds) |
17:54:05 | * | zepolen joined #nim |
17:56:56 | * | zepolen_ quit (Ping timeout: 246 seconds) |
17:58:37 | * | gokr quit (Quit: Leaving.) |
18:02:23 | * | def- quit (Ping timeout: 255 seconds) |
18:11:21 | * | def- joined #nim |
18:12:23 | * | darkf quit (Quit: Leaving) |
18:20:04 | * | def- quit (Quit: -) |
18:20:21 | * | def- joined #nim |
18:23:10 | * | gour_ joined #nim |
18:25:47 | * | gour quit (Ping timeout: 255 seconds) |
18:32:55 | * | irrequietus joined #nim |
18:34:58 | Xe | why does nim prefer to use -fno-strict-aliasing when compiling code? |
18:35:08 | Xe | that is the gcc flag |
18:53:54 | * | vendethiel- joined #nim |
18:54:41 | * | vendethiel quit (Ping timeout: 246 seconds) |
19:00:55 | * | gour_ is now known as gour |
19:07:32 | * | tmm1 joined #nim |
19:26:23 | * | Matthias247 joined #nim |
19:29:29 | * | tmm1 quit (Ping timeout: 265 seconds) |
19:34:46 | * | vendethiel joined #nim |
19:35:42 | * | vendethiel- quit (Ping timeout: 272 seconds) |
19:43:38 | * | tmm1 joined #nim |
19:47:27 | krux02 | is there a way to print an ast node in a way that can be copy pasted into source to construct that ast? |
19:54:11 | * | tmm1 quit (Ping timeout: 246 seconds) |
20:08:38 | * | tmm1 joined #nim |
20:13:30 | * | tmm1 quit (Ping timeout: 260 seconds) |
20:16:07 | krux02 | is there someone here? |
20:51:42 | dom96 | krux02: I don't think so, repr() is as close as you get |
20:52:18 | dom96 | You should be able to write a proc that does that, maybe you can base it on repr() |
21:11:24 | * | BitPuffin quit (Ping timeout: 256 seconds) |
21:21:54 | * | gokr joined #nim |
21:26:49 | * | desophos joined #nim |
21:47:33 | Araq | Xe: because the C standard sucks. |
21:48:25 | Araq | in a nutshell: The C standard doesn't work people think C works and should work and so C is increasingly difficult to use as a "portable assembler" |
22:00:40 | * | gour quit (Quit: WeeChat 1.3) |
22:14:21 | * | xificurC joined #nim |
22:15:11 | * | brson joined #nim |
22:33:21 | Xe | Araq: why turn it off though? if you already have to live in a world where a compiler can reorder reads and writes of different types there's no benefit (apparently) |
22:33:54 | Araq | because we still map Nim's cast to C's cast. |
22:34:13 | Araq | well actually. we don't always. |
22:34:26 | Araq | so yeah, we can get rid of that, I guess |
22:36:00 | Xe | cool |
22:37:47 | Xe | i've gotten Nim to call to Go code |
22:37:52 | Xe | https://github.com/Xe/code/tree/master/experiments/go-nim |
22:40:42 | * | cyraxjoe joined #nim |
22:50:33 | * | xificurC quit (Quit: WeeChat 1.3) |
22:51:03 | * | zepolen_ joined #nim |
22:53:06 | * | zepolen quit (Ping timeout: 240 seconds) |
22:55:39 | Araq | cool |
22:55:58 | Xe | probably gonna blogpost that |
23:03:14 | * | BitPuffin|osx joined #nim |
23:03:58 | * | pregressive quit (Remote host closed the connection) |
23:08:17 | * | boop is now known as boopisaway |
23:09:22 | onionhammer | araq then get rid of the c back end :) |
23:15:09 | * | aziz quit (Remote host closed the connection) |
23:15:58 | * | Trustable quit (Quit: Leaving) |
23:25:40 | Araq | onionhammer: do you happen to know how Firebase works under the hood? |
23:25:50 | Araq | with websockets and stuff |
23:37:00 | * | vendethiel quit (Ping timeout: 272 seconds) |
23:51:24 | * | irrequietus quit () |