00:08:22 | * | desophos joined #nim |
00:08:24 | * | brson_ joined #nim |
00:11:40 | * | brson quit (Ping timeout: 252 seconds) |
00:27:51 | * | brson_ quit (Ping timeout: 240 seconds) |
00:28:47 | * | mcc joined #nim |
00:29:58 | * | brson joined #nim |
00:52:38 | * | brson quit (Quit: leaving) |
00:52:45 | * | brson joined #nim |
01:13:31 | * | ozra joined #nim |
01:17:43 | * | benwbooth quit (Read error: Connection reset by peer) |
01:18:22 | * | benwbooth joined #nim |
01:22:11 | * | brson quit (Quit: leaving) |
01:22:57 | * | jivank quit (Ping timeout: 244 seconds) |
01:23:19 | * | jivank joined #nim |
01:26:03 | * | chemist69_ joined #nim |
01:29:10 | * | chemist69 quit (Ping timeout: 250 seconds) |
03:00:32 | * | edub4rt quit (Remote host closed the connection) |
04:16:30 | * | brson joined #nim |
05:05:23 | * | brson quit (Quit: leaving) |
05:07:51 | * | BitPuffin|osx quit (Ping timeout: 240 seconds) |
05:20:04 | * | jefuss joined #nim |
05:34:47 | * | nsf quit (Quit: WeeChat 1.5) |
05:42:51 | * | ozra quit (Ping timeout: 240 seconds) |
06:03:28 | * | jefuss quit (Ping timeout: 250 seconds) |
06:36:50 | * | chemist69_ quit (Ping timeout: 250 seconds) |
06:41:59 | * | chemist69_ joined #nim |
06:56:52 | * | mcc quit (Quit: Connection closed for inactivity) |
07:10:50 | * | GangstaCat joined #nim |
07:14:32 | * | akamaus joined #nim |
07:17:20 | * | der-landgraf quit (Quit: WeeChat 1.5) |
07:17:53 | * | der-landgraf joined #nim |
07:30:24 | * | yglukhov joined #nim |
07:41:32 | cheatfate | Does somebody can explain me what is `shallowCopy` for? |
07:58:06 | Araq | it only copies the underlying pointers |
07:58:10 | Araq | it doesn't deep copy |
08:05:13 | * | kingofoz quit (Ping timeout: 252 seconds) |
08:05:36 | * | kingofoz joined #nim |
08:10:34 | cheatfate | Araq, and increases refs for parent? |
08:11:05 | Araq | yes, it still performs the correct write barrier |
08:15:42 | * | GangstaCat quit (Quit: Leaving) |
08:22:54 | * | gunn joined #nim |
08:28:24 | * | yglukhov quit (Remote host closed the connection) |
08:30:18 | * | TheLemonMan joined #nim |
08:39:49 | * | fastrom joined #nim |
09:05:40 | * | Demon_Fox quit (Quit: Leaving) |
09:09:42 | * | pafmaf joined #nim |
09:23:40 | * | yglukhov joined #nim |
09:28:03 | * | yglukhov quit (Ping timeout: 240 seconds) |
09:45:14 | * | TheLemonMan quit (Quit: "It's now safe to turn off your computer.") |
09:53:14 | * | BitPuffin|osx joined #nim |
09:58:20 | * | BitPuffin|osx quit (Ping timeout: 272 seconds) |
10:28:00 | * | TheLemonMan joined #nim |
10:30:31 | * | kingofoz quit (Ping timeout: 240 seconds) |
10:31:38 | * | kingofoz joined #nim |
10:36:58 | * | BitPuffin|osx joined #nim |
10:59:14 | * | chemist69_ quit (Ping timeout: 258 seconds) |
11:02:59 | * | chemist69_ joined #nim |
11:20:48 | * | TheLemonMan quit (Quit: "It's now safe to turn off your computer.") |
11:21:08 | * | PMunch joined #nim |
11:25:46 | * | yglukhov joined #nim |
11:28:11 | * | ephja joined #nim |
11:29:45 | * | onionhammer quit (Ping timeout: 250 seconds) |
11:30:17 | * | yglukhov quit (Ping timeout: 260 seconds) |
11:46:10 | * | xet7 quit (Quit: Leaving) |
12:00:25 | * | saml_ joined #nim |
12:14:11 | * | yglukhov joined #nim |
12:17:15 | * | ndh joined #nim |
12:27:28 | Araq | guys, check this out, via nimscript you can patch files in a nimble package :-) |
12:27:51 | Araq | so no need to get the stdlib right for v1, you can always patch it ;-) |
12:38:09 | ndh | is there any way to wrap currentSourcePath() in a something i can call? i'd like to define a proc F in a module that uses currentSourcePath() but has it evaluated in the file that F was called from. is that possible? |
12:40:09 | federico3 | what is tests/dll/libnimrtl.dylib ? |
12:41:18 | federico3 | looks like a build artifact - it shouldn't be in the release tarball |
12:42:26 | Araq | federico3: indeed, but the next version won't have it |
12:42:42 | federico3 | :( |
12:42:45 | Araq | we switched from whitelisting to blacklisting for the installer :P |
12:43:06 | federico3 | you mean the other way around? |
12:43:31 | Araq | no. whitelisting meant we forgot files |
12:43:50 | Araq | now we error to have to many files instead |
12:43:56 | Araq | seems better |
12:44:33 | * | BitPuffin|osx quit (Ping timeout: 240 seconds) |
12:44:33 | federico3 | :( how about an exact list instead? |
12:44:50 | Araq | that's called "whitelisting" |
12:44:56 | Araq | it's not maintainable. |
12:45:04 | Araq | we tried it. |
12:45:22 | federico3 | "whitelisting meant we forgot files" |
12:47:13 | ndh | and couldn't you use out of source builds to prevent including too many build artifacts? of course you'd still have to specify/copy the artifacts you want to include. |
12:47:35 | Araq | I fail to see your point. |
12:48:57 | ndh | yea nevermind, doesn't seem like a problem worth thinking about |
12:49:33 | ndh | Araq: did you see my question above regarding currentSourcePath()? |
12:49:46 | Araq | yeah but I don't understand your question |
12:51:42 | ndh | ok. so i'd like to use a function F() in a file A.nim. F() is defined in some module X.nim and is supposed to call currentSourcePath(). But since F() is called in A.nim i want to work with the string "A.nim", not "X.nim". |
12:52:26 | ndh | so i want something like a C macro that is evaluated in the file that it is expanded in. |
12:57:31 | Araq | so make F() a template |
12:57:44 | jeffc | ndh: Use a template: https://gist.github.com/Jeff-Ciesielski/66cace2a24777034e27ccdb3585ea4a8 |
12:58:13 | ndh | ok i'll try, thanks |
12:58:13 | jeffc | Hah, beat me to it Araq ;) |
12:58:59 | Araq | jeffc: I hope you're aware that you can make 'printf' typesafe in Nim via macro+getType |
12:59:27 | jeffc | I wasn't, will have to dig into that |
12:59:41 | ephja | https://bitbucket.org/lyro/strfmt |
13:00:22 | jeffc | I'm really digging Nim for firmware. Seriously: distinct pointers make life so much better |
13:04:51 | Araq | you can also play with "regionized" pointers |
13:05:02 | Araq | not sure if they are worth it though |
13:08:04 | Araq | so ... the docgen has the option to generate JSON but I wonder why. Seems to be just as easy to parse HTML back into a tree representation to do more transformations. Any opinions? |
13:08:32 | ndh | any reason why currentSourcePath doesn't work in the template but instantiationInfo().filename does? |
13:08:48 | ndh | template csf*(): void = |
13:08:53 | dom96 | Araq: JSON is far easier to parse. |
13:09:44 | ndh | https://gist.github.com/haferburg/46f6c36b9b6cf64bccc1c45a7dc6f008 |
13:09:59 | Araq | dom96: JSON ends up decribing a *document* tree though, something which HTML was designed for |
13:10:30 | jeffc | ndh: currentSourcePath is relying on being at the top level of the module |
13:10:45 | dom96 | Araq: meh, I guess. As long as the HTML doesn't have any quirks. |
13:11:04 | Araq | and if you have "Text here" in the JSON what does it become later on? "<b>Text here</b"? or instead {"bold": "Text here"} ? |
13:11:22 | jeffc | ndh: it's actually wrapping instantiationInfo(-1) (which gives the context of the calling template |
13:11:24 | Araq | seems really underspecified |
13:11:38 | dom96 | Araq: btw I think a good feature for the doc gen would be the ability to move exported procedures under arbitrary headings. |
13:11:47 | dom96 | that way we can organise the system docs nicely |
13:12:01 | dom96 | by putting the GC_* procs under a "Garbage Collector procedures" heading |
13:12:12 | ndh | jeffc: and i would want -2 here? |
13:12:13 | dom96 | the FFI types under a "FFI" heading etc |
13:12:17 | Araq | I'm working on the navigation |
13:12:27 | Araq | your idea seems good too. |
13:12:59 | Araq | but I like to have multiple tabs, so that the navigation can group by type, by section or whatever |
13:13:01 | jeffc | ndh: Yep |
13:14:08 | dom96 | Araq: I think a drop down would be better. If you implement my idea, you could have a drop down and whatever order you pick the procs under each heading are ordered that way. |
13:14:42 | dom96 | If the author of the module goes to the trouble of creating explicit headings then they should be respected all the time. |
13:15:53 | dom96 | or you could add other drop down options that don't respect it... but at some point there will be too much complexity |
13:17:28 | dom96 | bbl |
13:22:24 | * | yglukhov quit (Remote host closed the connection) |
13:31:20 | * | yglukhov joined #nim |
13:35:46 | * | yglukhov quit (Ping timeout: 252 seconds) |
13:38:12 | * | fastrom quit (Quit: Leaving.) |
13:38:27 | * | TheLemonMan joined #nim |
14:16:15 | * | yglukhov joined #nim |
14:18:40 | * | akamaus quit (Read error: Connection reset by peer) |
14:29:41 | * | yglukhov quit (Remote host closed the connection) |
14:30:09 | * | Trustable joined #nim |
14:48:57 | * | yglukhov joined #nim |
14:50:29 | * | ozra joined #nim |
14:56:52 | * | saml_ quit (Remote host closed the connection) |
14:57:26 | federico3 | if "nim doc" was able to produce asciidoc/rst/markdown it could be very handy for updating README files on github |
14:59:10 | * | ozra quit (Remote host closed the connection) |
15:00:56 | Araq | how do I generate RST? hope the doc system understands ".. code-block:: nim"? |
15:01:34 | Araq | what if the shitty Python based Nim lexer is not up to date? hint: it's not. |
15:01:45 | * | nsf joined #nim |
15:02:32 | Araq | asciidoc/rst/markdown are all horrible to generate, they have been create as human writable languages |
15:03:05 | Araq | HTML is much easier to generate. |
15:09:27 | * | onionhammer joined #nim |
15:31:24 | * | chemist69_ quit (Ping timeout: 258 seconds) |
15:48:34 | * | chemist69_ joined #nim |
16:02:25 | * | PMunch quit (Quit: leaving) |
16:04:15 | ndh | what is the canonical way to map a path to the parent directory's name? x("/a/b/c.txt") -> "b" |
16:08:38 | ndh | s.splitFile.dir.??? |
16:20:26 | EastByte | http://nim-lang.org/docs/os.html#parentDir,string |
16:21:29 | EastByte | and you can use extractFilename() afterwards |
16:23:10 | EastByte | oh well, I haven't seen splitFile before |
16:33:09 | kier_ | the PR i'm about to submit currently contains tests that fail due to a currently open compiler bug. Is it better practice for me to remove those tests and re-add them when the bug is fixed, or leave them in? |
16:38:16 | * | kier_ quit (Quit: Reconnecting) |
16:38:22 | * | kier joined #nim |
16:38:22 | * | fastrom joined #nim |
16:57:06 | ndh | EastByte: thanks, didn't realize extractFilename would work for directories |
17:08:10 | Araq | kier: don't submit failing tests. disable them in 'when false' or something |
17:17:40 | kier | Araq: thanks, will do |
17:21:31 | * | desophos quit (Ping timeout: 240 seconds) |
17:46:39 | * | TheLemonMan quit (Ping timeout: 246 seconds) |
17:52:01 | * | TheLemonMan joined #nim |
17:54:01 | * | ndh quit (Quit: Page closed) |
18:27:04 | * | ldleworker joined #nim |
18:27:12 | ldleworker | Why does it say I can't send to #nim-offtopic |
18:27:58 | Araq | troll protection. |
18:28:31 | ldleworker | ah because webchat? |
18:37:04 | dom96 | oh, i'll remove that |
18:37:43 | dom96 | done |
18:44:44 | federico3 | is tuple unpacking not supported in a for loop e.g. for (a, b) in @[...] ? |
18:49:54 | Araq | we had to remove it because generics iirc. it's bad when it is not always resolved to 'pairs' |
18:50:35 | * | roose joined #nim |
18:51:07 | * | roose quit (Client Quit) |
18:51:52 | * | nsf quit (Quit: WeeChat 1.5) |
18:56:23 | federico3 | can I pass an array constructor as a parameter? I would be very handy to be able to write foo(a={key:val, x:y}) |
19:02:55 | federico3 | a: varargs[(string, string)] does the trick :) |
19:21:21 | * | desophos joined #nim |
19:23:31 | Varriount | Hi everyone. |
19:23:45 | Varriount | Araq: How would you feel about a disphelper port? |
19:23:51 | Varriount | Or wrapper. |
19:26:55 | Araq | started working on it, but got distracted. |
19:27:22 | Araq | for years I tried to make people write a disphelper port ... but people are so confused by its #defines |
19:36:47 | * | TheLemonMan quit (Quit: "It's now safe to turn off your computer.") |
19:40:27 | Varriount | Araq: It helps if you selectively use a C preprocessor on bits of the file first. |
19:41:15 | Araq | well you can just ignore 80% of the code, as usual |
19:50:11 | * | xet7 joined #nim |
20:04:14 | * | yglukhov quit (Remote host closed the connection) |
20:13:58 | Varriount | Araq: The tricky part is finding the definitions of all the base COM types. |
20:14:13 | Varriount | For example, IDispatch |
20:16:29 | * | yglukhov joined #nim |
20:17:21 | * | yglukhov quit (Remote host closed the connection) |
20:21:36 | * | yglukhov joined #nim |
20:32:02 | cheatfate | Varriount, are u still here? |
20:32:08 | Varriount | Yes |
20:32:57 | cheatfate | i have installed ST3 and problem with automatic space indent not working |
20:34:21 | Varriount | Could you explain a bit more? |
20:34:31 | * | yglukhov quit (Remote host closed the connection) |
20:38:54 | Varriount | cheatfate: Do you mean that ST3 isn't indenting the line when pressing enter? |
20:39:15 | Varriount | Is the syntax of the file set correctly? |
20:39:50 | cheatfate | ok, if i create new file and save it as .nim it will not setup "2 spaces indent" and "indent using spaces" automatically for some reason |
20:40:02 | cheatfate | there also one more line coloring plugin for nim |
20:40:09 | cheatfate | which get it works properly |
20:40:55 | Varriount | cheatfate: That's not even a current feature. I don't know of any plugin that does that. |
20:41:18 | Varriount | There's no programmatic way to set the tab/space count that I know of. |
20:43:52 | * | pafmaf quit (Read error: Connection reset by peer) |
20:44:04 | Varriount | Of course, I could be wrong. ST3 documentation isn't the best. |
20:45:55 | cheatfate | https://github.com/fenekku/Nimrod-Sublime-Syntax/blob/master/Nimrod/Nimrod.sublime-settings |
20:46:56 | Varriount | Hm. Well I can add that. |
20:49:11 | Varriount | cheatfate: Done. I pushed a new tag as well, so it should be picked up by those using Package Control. |
20:49:22 | cheatfate | ok i will update |
20:51:42 | * | yglukhov joined #nim |
20:57:31 | cheatfate | Varriount, https://gist.github.com/cheatfate/a70fc9a8a70eb5ca9979ea172b3cdd5c |
21:03:13 | Varriount | Fixed |
21:03:42 | * | xet7 quit (Ping timeout: 260 seconds) |
21:03:51 | Varriount | *sigh*, it's a sign of the raging popularity of NimLime that I only get told about that problem a week after the release. |
21:08:07 | Varriount | cheatfate: Anything else? |
21:08:14 | cheatfate | nothing more |
21:13:24 | * | xet7 joined #nim |
21:14:46 | cheatfate | Varriount, i think your patch get even more errors |
21:15:39 | cheatfate | debug_print still showing |
21:15:51 | cheatfate | cannot import name debug_print... |
21:21:30 | cheatfate | looks like now i'm totaly break my nimlime |
21:21:43 | cheatfate | it even not made check on save anymore |
21:23:21 | * | xet7 quit (Quit: Leaving) |
21:23:45 | * | Jesin joined #nim |
21:28:56 | cheatfate | Varriount, i have reinstalled it and still not working... at all even after restart |
21:35:58 | cheatfate | Ok now i have installed from you repository and it still cannot be installed... |
21:39:08 | * | xet7 joined #nim |
21:42:53 | * | yglukhov quit (Remote host closed the connection) |
22:03:22 | * | xet7 quit (Quit: Leaving) |
22:18:32 | Varriount | cheatfate: You are still getting that error? |
22:38:00 | Varriount | cheatfate: I've just done multiple fresh installs, and haven't gotten any errors. |
22:49:57 | * | zodiak joined #nim |
22:50:22 | * | zodiak_ quit (Read error: Connection reset by peer) |
22:50:47 | * | zodiak_ joined #nim |
22:53:01 | * | Trustable quit (Remote host closed the connection) |
22:54:33 | * | zodiak quit (Ping timeout: 240 seconds) |
22:56:16 | * | zodiak joined #nim |
22:58:51 | * | zodiak_ quit (Ping timeout: 240 seconds) |
23:06:27 | * | fastrom quit (Quit: Leaving.) |
23:21:11 | * | desophos quit (Ping timeout: 240 seconds) |
23:41:19 | * | SShrike joined #nim |
23:55:40 | * | kulelu88 joined #nim |
23:55:40 | * | kulelu88 quit (Changing host) |
23:55:40 | * | kulelu88 joined #nim |