| 00:04:54 | * | yglukhov quit (Remote host closed the connection) |
| 00:12:59 | * | arnetheduck joined #nim |
| 00:15:28 | * | fredrik92 quit (Ping timeout: 245 seconds) |
| 00:16:11 | * | fredrik92 joined #nim |
| 00:26:23 | * | brson quit (Ping timeout: 246 seconds) |
| 00:29:22 | * | brson joined #nim |
| 00:37:26 | * | stefantalpalaru quit (Quit: Leaving) |
| 00:50:54 | * | brson quit (Ping timeout: 250 seconds) |
| 00:50:57 | * | aziz quit (Remote host closed the connection) |
| 00:52:35 | * | brson joined #nim |
| 01:05:23 | * | yglukhov joined #nim |
| 01:05:37 | * | brson quit (Quit: leaving) |
| 01:06:24 | libman | Does stdlib provide the equivalent of `test -w`? |
| 01:06:32 | * | corecode joined #nim |
| 01:07:03 | libman | os FileInfo doesn't even tell me the owner user / group. |
| 01:09:09 | ftsf_ | libman, maybe using posix module |
| 01:09:50 | * | yglukhov quit (Ping timeout: 258 seconds) |
| 01:31:22 | * | Gonzih quit (Ping timeout: 250 seconds) |
| 01:37:41 | * | Gonzih joined #nim |
| 01:39:42 | * | PMunch quit (Quit: leaving) |
| 01:52:45 | * | Jesin quit (Quit: Leaving) |
| 01:53:20 | * | libman left #nim (#nim) |
| 01:55:00 | * | Jesin joined #nim |
| 01:55:48 | * | vlad1777d quit (Quit: Leaving) |
| 01:55:53 | * | fredrik92 quit (Ping timeout: 245 seconds) |
| 01:57:39 | * | fredrik92 joined #nim |
| 02:07:24 | * | couven92 quit (Quit: Client disconnecting) |
| 02:51:36 | * | kulelu88 quit (Quit: Leaving) |
| 02:53:48 | * | chemist69 quit (Ping timeout: 245 seconds) |
| 03:04:46 | * | fredrik92 quit (Ping timeout: 256 seconds) |
| 03:06:37 | * | fredrik92 joined #nim |
| 03:07:37 | * | yglukhov joined #nim |
| 03:07:58 | * | chemist69 joined #nim |
| 03:11:18 | * | EastByte quit (Ping timeout: 245 seconds) |
| 03:11:35 | * | EastByte joined #nim |
| 03:11:54 | * | yglukhov quit (Ping timeout: 250 seconds) |
| 03:17:16 | ftsf_ | hmm http://stackoverflow.com/questions/30037165/where-does-nim-search-for-modules-to-import is this accurate? specifically "Relative to the directory of the main module (again, via import dir.modname or import dir/modname if it's not in the same directory)." |
| 03:18:33 | ftsf_ | i have a src/main.nim which imports modules.foo src/modules/foo.nim imports common (src/common.nim) but this fails Error: cannot open 'common', when compiling with nim c src/main.nim |
| 03:33:12 | ftsf_ | hmm different modules with the same name but in different directories all seem to go into the one dir in nimcache with their directory removed |
| 03:33:44 | ftsf_ | eg. i have import modules/foo and import foo they both seem to become nimcache/foo.{c,o} =\ |
| 04:07:29 | * | lenstr joined #nim |
| 04:23:26 | * | dddddd quit (Remote host closed the connection) |
| 04:55:03 | * | chemist69 quit (Ping timeout: 245 seconds) |
| 05:01:46 | * | chemist69 joined #nim |
| 05:09:09 | * | yglukhov joined #nim |
| 05:13:23 | * | yglukhov quit (Ping timeout: 246 seconds) |
| 05:32:53 | * | Kingsquee joined #nim |
| 05:36:36 | * | MightyJoe is now known as cyraxjoe |
| 05:45:03 | * | fredrik92 quit (Ping timeout: 245 seconds) |
| 05:54:44 | * | fredrik92 joined #nim |
| 06:01:09 | * | nsf joined #nim |
| 06:09:45 | * | space-wi_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:14:42 | * | Varriount|Mobile joined #nim |
| 06:14:56 | Varriount|Mobile | libman: FileInfo is for OS agnostic information |
| 06:15:35 | * | space-wizard joined #nim |
| 06:28:43 | * | arnetheduck quit (Ping timeout: 260 seconds) |
| 06:40:43 | * | bjz joined #nim |
| 06:52:44 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 07:03:14 | * | circ-user-K6dJ5 joined #nim |
| 07:03:53 | * | yglukhov joined #nim |
| 07:06:05 | * | circ-user-K6dJ5 quit (Client Quit) |
| 07:06:52 | * | adeohluwa joined #nim |
| 07:07:07 | * | adeohluwa quit (Remote host closed the connection) |
| 07:08:01 | * | yglukhov quit (Ping timeout: 244 seconds) |
| 07:09:20 | * | bjz joined #nim |
| 07:17:22 | * | space-wizard quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:59:57 | * | yglukhov joined #nim |
| 08:04:47 | * | yglukhov quit (Ping timeout: 265 seconds) |
| 08:06:48 | * | rokups joined #nim |
| 08:09:52 | * | ftsf_ quit (Quit: :q!) |
| 08:38:36 | * | Andris_zbx joined #nim |
| 08:58:24 | * | shodan45 quit (Ping timeout: 250 seconds) |
| 09:05:03 | * | space-wizard joined #nim |
| 09:05:08 | euantor | ftsf_: Does `import ../common` work? |
| 09:07:51 | * | chemist69 quit (Ping timeout: 258 seconds) |
| 09:18:38 | euantor | http://nim-lang.org/docs/intern.html#coding-guidelines |
| 09:19:00 | euantor | Am I right in thinking that the point `Start types with a capital T, unless they are pointers/references which start with P.` is now obsolete? |
| 09:24:02 | * | yglukhov joined #nim |
| 09:26:08 | * | yglukhov quit (Read error: Connection reset by peer) |
| 09:26:18 | * | yglukhov joined #nim |
| 09:27:01 | * | yglukhov quit (Remote host closed the connection) |
| 09:28:53 | * | yglukhov joined #nim |
| 09:29:59 | * | bjz_ joined #nim |
| 09:30:06 | * | bjz quit (Ping timeout: 256 seconds) |
| 09:30:49 | * | brson joined #nim |
| 09:31:22 | * | brson quit (Client Quit) |
| 09:31:38 | * | brson joined #nim |
| 09:31:54 | * | byte512 joined #nim |
| 09:32:01 | * | brson quit (Client Quit) |
| 09:33:26 | * | EastByte_ joined #nim |
| 09:33:26 | * | EastByte quit (Read error: Connection reset by peer) |
| 09:34:42 | * | chemist69 joined #nim |
| 09:35:40 | * | fredrik92 quit (Quit: Client disconnecting) |
| 09:36:01 | * | couven92 joined #nim |
| 09:39:44 | yglukhov | Araq: ping. can you merge this in? https://github.com/nim-lang/Nim/pull/5110 |
| 09:41:50 | * | brechtm joined #nim |
| 09:44:05 | * | Arrrr joined #nim |
| 09:57:06 | * | Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif) |
| 09:58:47 | * | Ven joined #nim |
| 10:05:48 | * | Ven quit (Ping timeout: 256 seconds) |
| 10:06:14 | Arrrr | https://docs.python.org/3.6/whatsnew/3.6.html#pep-498-formatted-string-literals |
| 10:07:38 | * | Ven joined #nim |
| 10:10:08 | * | brechtm quit (Remote host closed the connection) |
| 10:17:01 | * | brechtm joined #nim |
| 10:24:20 | * | bjz joined #nim |
| 10:24:21 | * | bjz_ quit (Ping timeout: 244 seconds) |
| 10:40:30 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 10:49:12 | * | jh32 quit (Ping timeout: 260 seconds) |
| 10:53:18 | * | rokups quit (Quit: Connection closed for inactivity) |
| 10:59:32 | * | arnetheduck joined #nim |
| 11:11:23 | * | jh32 joined #nim |
| 11:12:44 | * | chemist69 quit (Ping timeout: 250 seconds) |
| 11:13:05 | * | brechtm quit (Remote host closed the connection) |
| 11:15:24 | * | chemist69 joined #nim |
| 11:18:04 | * | rokups joined #nim |
| 11:24:13 | * | cheatfate_ joined #nim |
| 11:27:56 | * | cheatfate quit (Ping timeout: 260 seconds) |
| 11:36:41 | * | adeohluwa joined #nim |
| 11:40:49 | * | elrood joined #nim |
| 11:53:50 | * | vlad1777d joined #nim |
| 12:00:33 | * | adeohluwa quit (Remote host closed the connection) |
| 12:39:24 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 12:47:49 | * | themagician joined #nim |
| 12:48:47 | * | PMunch joined #nim |
| 13:00:37 | * | PMunch quit (Ping timeout: 260 seconds) |
| 13:01:19 | * | dddddd joined #nim |
| 13:04:28 | * | brechtm joined #nim |
| 13:08:50 | couven92 | Just out of curiosity, why have we named the Microsoft Compiler VCC in Nim? The proper acronym used by Microsoft themselves is MSC... |
| 13:13:19 | * | PMunch joined #nim |
| 13:18:23 | * | chemist69 quit (Ping timeout: 245 seconds) |
| 13:21:59 | * | PMunch quit (Ping timeout: 246 seconds) |
| 13:23:17 | * | chemist69 joined #nim |
| 13:36:59 | * | PMunch joined #nim |
| 13:44:00 | Varriount|Mobile | couven92: Visual C(++) Compiler |
| 13:45:45 | Varriount|Mobile | And probably because it follows the "*cc" convention (gcc, icc, tcc, etc) |
| 13:46:32 | * | byte512 quit (Ping timeout: 258 seconds) |
| 13:49:37 | Varriount|Mobile | euantor: Yes. http://nim-lang.org/docs/nep1.html |
| 13:53:37 | euantor | I thought so, probably worth updating that documentation |
| 14:13:18 | * | Arrrr quit (Quit: WeeChat 1.5) |
| 14:25:25 | * | byte512 joined #nim |
| 14:25:54 | * | Varriount|Mobile quit (Ping timeout: 256 seconds) |
| 14:35:16 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
| 14:43:03 | * | arnetheduck quit (Ping timeout: 265 seconds) |
| 14:57:08 | * | Sentreen quit (Quit: WeeChat 1.4) |
| 14:59:48 | * | vlad1777d quit (Ping timeout: 250 seconds) |
| 14:59:49 | * | Sentreen joined #nim |
| 15:09:25 | * | yglukhov_ joined #nim |
| 15:13:10 | * | yglukhov quit (Ping timeout: 258 seconds) |
| 15:13:41 | * | yglukhov_ quit (Ping timeout: 244 seconds) |
| 15:24:04 | * | Andris_zbx quit (Remote host closed the connection) |
| 15:28:52 | * | vlad1777d joined #nim |
| 15:45:46 | * | corecode quit (Ping timeout: 258 seconds) |
| 16:02:31 | * | stefantalpalaru joined #nim |
| 16:04:00 | * | corecode joined #nim |
| 16:04:10 | stefantalpalaru | how can I check for the existence of a certain proc for a variable's type at compile time, without running that proc? |
| 16:08:38 | * | AckZ quit () |
| 16:08:48 | * | ibk joined #nim |
| 16:12:53 | * | byte512 quit (Ping timeout: 248 seconds) |
| 16:13:08 | * | PMunch quit (Quit: leaving) |
| 16:19:38 | * | couven92 quit (Read error: Connection reset by peer) |
| 16:21:42 | * | shodan45 joined #nim |
| 16:23:13 | flyx | stefantalpalaru: when compiles(someProc(myVar)) |
| 16:25:00 | chemist69 | hi, for a proc that is defined in system with the .magic. pragma, where can I find the actual implementation? Example: proc `mod` *(x, y: int): int {.magic: "ModI", noSideEffect.} |
| 16:25:53 | stefantalpalaru | thanks, flyx |
| 16:33:51 | * | Varriount|Mobile joined #nim |
| 16:34:28 | Varriount|Mobile | chemist69: Magic procedures are often implemented by the compiler |
| 16:35:03 | chemist69 | can I nevertheless somewhere have a look at the code? |
| 16:38:07 | Varriount|Mobile | chemist69: You can look at the compiler code, although I can't recall how the nodes are specifically processed |
| 16:38:23 | Varriount|Mobile | You can also look at the generated C code. |
| 16:39:01 | chemist69 | I am looking in the compiler subdir and have looked at the csources (if that is what you mean), but can not find my example modulo procedure. |
| 16:39:55 | * | brechtm_ joined #nim |
| 16:40:55 | Varriount|Mobile | chemist69: I don't follow |
| 16:41:16 | stefantalpalaru | it's probably in https://github.com/nim-lang/Nim/blob/devel/compiler/semfold.nim#L343 |
| 16:42:32 | elrood | chemist69, vmgen or jsgen are good candidates |
| 16:42:56 | * | brechtm quit (Ping timeout: 250 seconds) |
| 16:43:00 | Varriount|Mobile | You can also try looking in the C generation code |
| 16:43:21 | chemist69 | Varriount|Mobile: where can I find that? |
| 16:43:31 | chemist69 | stefantalpalaru: that looks promising, thank you. |
| 16:44:03 | Varriount|Mobile | chemist69: Files that have something like "cgen" in the name |
| 16:49:28 | chemist69 | thanks a lot to all for the help. |
| 16:51:02 | * | yglukhov joined #nim |
| 16:56:07 | * | couven92 joined #nim |
| 16:58:00 | * | pregressive joined #nim |
| 16:58:12 | stefantalpalaru | is there any way to get a meaningful error from the compiler when using compiles() ? |
| 16:59:08 | * | brechtm_ quit (Remote host closed the connection) |
| 16:59:09 | * | pregressive quit (Read error: Connection reset by peer) |
| 16:59:32 | * | pregressive joined #nim |
| 17:01:26 | * | Varriount|Mobile quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) |
| 17:01:45 | * | brechtm joined #nim |
| 17:02:28 | * | yglukhov quit (Remote host closed the connection) |
| 17:15:51 | * | Trustable joined #nim |
| 17:18:07 | * | brechtm quit (Remote host closed the connection) |
| 17:21:27 | * | brechtm joined #nim |
| 17:22:51 | * | AckZ joined #nim |
| 17:23:57 | * | brechtm quit (Remote host closed the connection) |
| 17:25:15 | * | brechtm joined #nim |
| 17:42:53 | * | brechtm quit (Remote host closed the connection) |
| 17:45:48 | stefantalpalaru | how come this fails? |
| 17:45:57 | stefantalpalaru | var x: int |
| 17:46:01 | stefantalpalaru | static: doAssert(compiles(x = 1)) |
| 17:46:38 | * | brechtm joined #nim |
| 17:54:15 | * | brechtm quit (Ping timeout: 260 seconds) |
| 17:55:53 | * | nsf quit (Quit: WeeChat 1.6) |
| 18:05:54 | * | dddddd quit (Remote host closed the connection) |
| 18:20:42 | dom96 | stefantalpalaru: because the variable is defined outside the static block |
| 18:21:23 | stefantalpalaru | any other way to trigger a compile time error without a static block? |
| 18:25:22 | * | libman joined #nim |
| 18:28:54 | stefantalpalaru | BTW, it also fails with the variable declaration inside the static block |
| 18:29:03 | dom96 | {.error: "message".} |
| 18:29:34 | stefantalpalaru | no, I want the compiler's error, not my own string |
| 18:30:03 | * | ibk quit (Quit: Connection closed for inactivity) |
| 18:30:36 | stefantalpalaru | something like internalErrorFlag() |
| 18:36:18 | * | Trustable quit (Remote host closed the connection) |
| 18:53:59 | * | yglukhov joined #nim |
| 19:03:17 | * | rokups quit (Quit: Connection closed for inactivity) |
| 19:18:14 | * | brson joined #nim |
| 19:20:10 | * | space-wi_ joined #nim |
| 19:23:58 | * | space-wizard quit (Ping timeout: 256 seconds) |
| 19:28:58 | * | space-wizard joined #nim |
| 19:30:46 | * | space-wi_ quit (Ping timeout: 258 seconds) |
| 19:41:36 | * | kulelu88 joined #nim |
| 19:46:23 | * | nsf joined #nim |
| 19:49:35 | * | yglukhov quit (Remote host closed the connection) |
| 19:52:45 | * | Varriount|Mobile joined #nim |
| 20:00:16 | * | brson quit (Ping timeout: 250 seconds) |
| 20:01:27 | * | yglukhov joined #nim |
| 20:07:37 | * | yglukhov quit (Ping timeout: 260 seconds) |
| 20:09:30 | * | aziz joined #nim |
| 20:16:26 | * | Trustable joined #nim |
| 20:24:14 | * | aziz quit (Remote host closed the connection) |
| 20:36:35 | * | gsingh93 quit (Quit: ZNC - http://znc.in) |
| 20:37:53 | * | gsingh93 joined #nim |
| 21:01:10 | * | Varriount|Mobile quit (Read error: Connection reset by peer) |
| 21:02:43 | * | Varriount|Mobile joined #nim |
| 21:15:49 | * | Trustable quit (Remote host closed the connection) |
| 21:24:36 | * | nsf quit (Quit: WeeChat 1.6) |
| 21:33:56 | * | Varriount|Mobile quit (Read error: Connection reset by peer) |
| 21:34:02 | * | Varriount|Phone joined #nim |
| 21:34:41 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 21:34:56 | * | Varriount|Phone joined #nim |
| 21:35:25 | * | xet7 quit (Quit: Leaving) |
| 21:36:29 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 21:36:58 | * | bjz joined #nim |
| 21:38:20 | * | Varriount|Phone joined #nim |
| 21:39:07 | * | bjz quit (Client Quit) |
| 21:39:07 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 21:40:55 | * | brechtm joined #nim |
| 21:43:26 | vlad1777d | hello to all. Are programs like "make" needed for nim? As I saw - it compiles by the only command: "nim c filename". Thank you. |
| 21:52:35 | * | bjz joined #nim |
| 21:53:15 | dom96 | vlad1777d: they are not |
| 21:53:54 | dom96 | if you create a .nimble file you can even just run 'nimble build' |
| 21:56:38 | * | brson joined #nim |
| 21:57:08 | * | chemist69 quit (Ping timeout: 245 seconds) |
| 21:59:40 | * | chemist69 joined #nim |
| 22:00:31 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 22:00:56 | * | Varriount|Phone joined #nim |
| 22:02:48 | vlad1777d | dom96, thank you =) |
| 22:02:48 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 22:03:20 | vlad1777d | I like it more and more ) |
| 22:03:38 | * | Varriount|Phone joined #nim |
| 22:04:56 | * | yglukhov joined #nim |
| 22:04:58 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 22:05:24 | dyce[m] | excuse my very weak understanding of types (i simply know the difference between dynamic and static), could someone tell me how nim is has a better type system than lets say java? |
| 22:08:03 | vlad1777d | dyce[m], why do you decided that it's better? I think that types in every static language are very similar, so I cannot tell, which one is better. |
| 22:09:05 | * | yglukhov quit (Ping timeout: 246 seconds) |
| 22:10:36 | dyce[m] | vlad1777d like for example, haskell's type system is very strong, up to the point where its doesnt need unit testing. like you can define that a some variable should be a list that is never empty rather than checking if the list is empty in your code. |
| 22:10:56 | dyce[m] | my understanding is that Nim too also have a pretty strong type system |
| 22:11:36 | vlad1777d | dyce[m], you can write such types even in Python (in __init__ method) |
| 22:12:21 | vlad1777d | dyce[m], but I'm newbie in Nim, so I cannot tell you about it's system. I read manuals, seems that it's system is general. |
| 22:18:20 | * | Varriount|Phone joined #nim |
| 22:19:10 | Varriount|Phone | vlad1777d: Nim's type system is lower-level than java or c# |
| 22:19:44 | Varriount|Phone | However it's fairly flexible, being Beyer than Java at least |
| 22:19:57 | Varriount|Phone | (No type erasure!) |
| 22:20:28 | Varriount|Phone | *better |
| 22:20:48 | Varriount|Phone | Still needs variadic generics though. |
| 22:22:29 | vlad1777d | dyce[m], above is ansver on your question |
| 22:24:28 | Varriount|Phone | dyce[m]: Basically, Nim has the standard static type system, with low level additions and good generic support |
| 22:25:01 | Varriount|Phone | There's also Concepts, which are akin to a restricted generic type |
| 22:26:00 | * | Matthias247 joined #nim |
| 22:26:52 | Varriount|Phone | Hi Matthias247 |
| 22:27:18 | Matthias247 | Hi |
| 22:40:02 | * | pregressive quit (Remote host closed the connection) |
| 22:40:38 | * | pregressive joined #nim |
| 22:44:27 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 22:44:56 | * | pregressive quit (Ping timeout: 250 seconds) |
| 22:51:43 | dom96 | dyce[m]: how do you define that a list cannot be empty in Haskell? |
| 22:54:15 | dyce[m] | dom96: im not an expert at all in haskell but heres this: https://wiki.haskell.org/Non-empty_list http://stackoverflow.com/questions/32385213/haskell-define-a-non-empty-list-datatype |
| 22:55:55 | dom96 | hrm, I wonder how that works. |
| 22:56:02 | dom96 | Thanks for the links. |
| 22:56:30 | * | Varriount|Phone joined #nim |
| 23:00:09 | * | elrood quit (Quit: Leaving) |
| 23:14:01 | dyce[m] | dom96: something like when you compile the code, it will catch anytime your list becomes empty, rather than runtime |
| 23:14:29 | dyce[m] | but dont quote me on that |
| 23:14:34 | dyce[m] | :) |
| 23:14:34 | dom96 | yes, but how can the type system express that |
| 23:14:38 | dom96 | That's what I'm wondering |
| 23:38:44 | libman | Vote for Nim - https://www.slant.co/topics/6032/~systems-programming-languages ;) |
| 23:41:35 | stefantalpalaru | aren't concepts Nim's way of implementing dependent typing? |
| 23:41:35 | * | Varriount|Phone quit (Read error: Connection reset by peer) |
| 23:41:52 | * | Varriount|Phone joined #nim |
| 23:43:16 | * | brson quit (Ping timeout: 250 seconds) |
| 23:47:02 | * | brson joined #nim |
| 23:50:03 | * | kulelu88 quit (Quit: Leaving) |