<< 25-05-2015 >>

00:02:22Quoratry uploading it to somewhere else?
00:02:32Quoraone of those free shared hosting places maybe
00:03:28StrikecarlJust did, pomf.se didnt 404
00:03:38Strikecarlbut pretty sure pomf.se deletes the file after x amount of time
00:03:39Strikecarlwhich i don't want.
00:03:50TEttingerhm?
00:03:58TEttingerthere's a sister site to pomf.se that deletes
00:04:05TEttingerI don't think pomf.se does
00:05:00StrikecarlSounds good.
00:05:53CrocodickAraq: do we really want to see all the hints for nimble paths?
00:05:58TEttingeruguu is the one that deletes after a day
00:06:13Strikecarlty TEttinger
00:06:27Crocodickthe only way to disable them are to disable the hint with direct --hint to the compiler
00:06:50Crocodickor directly in $nim/config/nim.cfg
00:07:24Crocodickit doesnt work in the others nim.cfg
00:09:32*Strikecarl quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
00:15:46*dgym quit (Quit: Page closed)
00:18:34ozraIs it possible to make two identical pattern matches, one with {noSideEffect} on an arg, the other without? for different term rewritings...
00:20:33fowlCrocodick: I think the hints for nimble paths are good, you can have multiple versions of a package installed and that shows which is going to be used
00:21:06dhasenanI can't wait for autoderef to be on bydefault.
00:21:12Crocodickfowl: mmm i mean it just show all the paths
00:21:20Crocodickit doesnt tell you which are used
00:21:29fowlCrocodick: they're all available
00:22:10Crocodickyes, i just dont see why you would need to see them every compilation
00:22:14*boydgreenfield quit (Quit: boydgreenfield)
00:22:20Crocodickif you dont install any new one, its always the same
00:22:43Crocodickhaving 3 pages of text in your console every time is no fun imo
00:22:52Araqozra: yeah should be possible
00:23:01dtscodeIf only there was a way to clear the console...
00:23:11AraqCrocodick: yeah but I don't know what to do about it
00:23:15Crocodicki dont want to clear it, i want to see diffs
00:23:40dtscodeIf only there was a way to `diff`
00:24:03CrocodickAraq: what about disabled them in the nim.cfg by default around the @if nimbabel: and reenabling them after?
00:24:15Crocodickdisabling*
00:24:28ozraAraq: Is it specified that noSideEffect is tried first, then the other?
00:25:15CrocodickAraq: like so -> http://pastebin.com/raw.php?i=KHjrf06T it works
00:25:40Araqozra: no, thats not necessary
00:27:39*kumul joined #nim
00:27:44ozraAraq: How so? A more efficient optimization can be written with a non-side-effectful, while the other has to cache it in a var first, as to not execute statemets multiple times before doing magic things.. So the nosideeff should have precedance in matching, no?
00:28:01*gokr quit (Ping timeout: 264 seconds)
00:30:26Araqozra: yes, sorry I misread your question
00:30:36Araqso yeah that should just work
00:31:40ozraOk, thanks.
00:31:55Crocodickdtscode: so you dont have spam filter on your email?
00:32:32dtscodeCrocodick: Of course
00:32:39dtscodeerrr, Of course I do
00:32:45dtscodeWhat would that have to do with anything
00:32:56Crocodicksame reason i want to be able to disable 3 pages of unhelpful information
00:33:28dtscodeNim isn't giving you advertisments for dick enlargement pills...
00:33:49Crocodickits as usefull to me
00:33:55Crocodickthe pill might help tho
00:34:46dtscodelolwut?
00:35:08dtscodeEmail Spam filter talk belongs in -offtopic
00:35:23Crocodickyou bring it up?
00:35:29dtscode<Crocodick> dtscode: so you dont have spam filter on your email?
00:35:50Crocodickson, i was making a point about the path spam
00:36:13Crocodickwhy is nim --verbose:1 by default? and not :3?
00:36:26Crocodickinformation overload
00:36:28dtscodeDon't call me son; It was a piss poor point; Its not spam
00:36:56Crocodickits useless information to output each compilation if you dont explicitly need it
00:37:27dtscodeIts not useless. And who says you don't need it
00:37:34Crocodicki do
00:37:48Crocodickwho says you dont need dick enlargment pill?
00:38:28ozraAraq: Thinking about it, is there a matching precedance order list somewhere for all the different param constraints, and plain par?
00:39:05dtscodeI don't care if you say it. That doesn't make the information irrelevant
00:39:42Araqozra: these are all matched the same. T{prop} is prefered over T and that's about it
00:40:01Crocodickthats why options exists, same reason the default verbosity for nim is 1 and not 3
00:40:11dtscodelolwut?
00:40:29Crocodickreading comprehension?
00:40:32Araqdtscode, Crocodick please calm down a bit.
00:40:43dtscodeAraq: Sure
00:41:00Araqdtscode: Crocodick has a point, it's rather annoying information when you don't need it.
00:41:46AraqCrocodick: dtscode has a point, the idea of caching some messages that "obviously have already been seen before" has no place in the compiler
00:43:04ozraAraq: ok.
00:43:06Crocodicki just want a working option :P
00:43:10AraqCrocodick: OnO wanted to work on making the compiler less verbose per default
00:43:18ozraI thought the spam analogy was pretty good, haha.
00:43:41*gsingh93 joined #nim
00:44:58ozraUnless there are warnings or errors it should pretty much be silent unless asked for more... huh?
00:46:46Araqdunno. I don't believe in silent programs. :P too often stuff simply crashes or doesn't work.
00:47:15dtscodeAraq: Wha??? Against the unix philosophy?
00:47:39ozraOne thing though: is seems like errors aren't written to stderr, but stdout - or am I wrong?
00:47:54Araqdon't let me get started, dtscode ...
00:48:14Araqozra: yeah so that >errors.txt works.
00:48:16dtscode:3
00:51:47Crocodickyes but with that "2> error 1> output" doesnt work ;)
00:52:02ozraAraq: Most bashes you can just &>errors.txt to do that. That is seriously breaking tooling when errors can't be separated in output. A simple case as my "watch-make" util. any change in src dir auto compiles, stderr is intercepted and posited as a notification that pops up, that way I don't have to leave the editor. worls with most 'pilers. This should be changed.
00:52:35AraqCrocodick: yes, but we have no output, we produce a file instead.
00:52:54dtscodeThats still output :p
00:53:06dtscodeIts just not on stdout, or rather, it didn't stay there
00:53:21Araqso I can use > instead of -o for GCC?
00:53:40dtscodeNo.
00:53:54Crocodickis there a way to declare something in nim.cfg
00:53:57Crocodicklike d:xxx
00:54:07AraqCrocodick: -d:xxx
00:54:17flaviuIf you just want the compiler to stfu, you can use --verbosity:0 --hints:off. I do that sometimes.
00:54:20Crocodickin a nim.cfg?
00:55:00*kumool joined #nim
00:55:01Araqozra: "separated in output"? there is no other output produced, only compiler messages.
00:55:32Crocodickaraq, i was just kidding about the stderr
00:55:44Crocodickmarked by the ";)"
00:56:27ozraAraq: Compiler messages. Output. Me want errors on stderr. Like that. Yikes, I have to get some sleep, haha.
00:58:46Araqozra: iirc with the --stdout switch the compiler uses stderr instead ...
00:58:46*kumul quit (Ping timeout: 264 seconds)
01:02:40CrocodickAraq: anyway i fixed it in my $nim/config/nim.cfg like this http://pastebin.com/raw.php?i=QcB954UB
01:02:47ozraOk, I'll play around with it tomorrow, I think I need to have a smoke and wind down for bed now. Thanks for the help here.. I've done some minor doc edits, will glance through a bit tomorrow and see if I stumble on some obvious typos or so too before PR..
01:02:48Crocodick-d:nimblepathhints if i want to see them
01:03:05Crocodickaka almost never
01:03:08AraqCrocodick: does that actually work?
01:03:12Crocodickyes
01:03:39Araqnice. I thought it cannot work :P
01:03:48Crocodicki was surprised too lol
01:04:23Araqwhy does the config still have babelpath? we should get rid of that
01:04:26Crocodicklooks like you guyz actually add the paths while parsing the config or whatever
01:04:41Araqindeed :P
01:05:19Crocodickthats what i thought when i saw that the paths are added before the 'hits config file used..'
01:05:28Crocodickhint*
01:05:33Crocodickprobably 2 passes
01:07:01*dddddd quit (Ping timeout: 264 seconds)
01:07:31*Pisuke joined #nim
01:10:21*MyMind quit (Ping timeout: 276 seconds)
01:20:29*sepisoad_ joined #nim
01:24:50*vendethiel quit (Ping timeout: 272 seconds)
01:25:30*boydgreenfield joined #nim
01:25:36*sepisoad_ quit (Ping timeout: 272 seconds)
01:29:53CrocodickAraq: before going to bed, i just want to say congratulation for nim! It might not be perfect, but its a pretty good start for a general programming language, compared to everything else out there.
01:30:05Crocodickif we could only get pattern matching now :P
01:30:42Crocodickand immutability option on ref .. and i kid, i kid ;) , good night
01:34:24reactormonkAraq, how would you implement pattern matching syntax wise?
01:38:46*Demos joined #nim
01:39:54ozraDamn, the smoke got me wound up instead.. @reactormonk, @Araq. Depending on what pattern matching you're refering too, I can recommend having a look at the language Agda and its operator pattern definition syntax.
01:40:26reactormonkozra, it's gonna be a macro from what I've heard
01:42:51*kumool quit (Ping timeout: 276 seconds)
01:43:12*darkf joined #nim
01:43:15Crocodicki wish idris was more popular
01:44:19Crocodickit looks so much nicer than haskell with its effect system
01:46:20reactormonkCrocodick, I think araq likes his effects system too
01:46:36ozrareactormonk: I'll take agda notation mixed with nimish here for an example: `_+_ (a, b: int) = a + b`, or even `if _ then _ else _(a: bool, b, c: expr) -> if a: b else c`
01:47:10reactormonkozra, put it inside dumpTree:\n<code> and see if it compiles - if it does, it's valid nim syntax
01:48:09*BitPuffin|osx quit (Ping timeout: 256 seconds)
01:48:21ozraAh, no, it's not. I just posed an example of how the pattern matching part would be with agda syntax. mixed with nim syntax, to show how it'd look if adopted, I mean.
01:54:17ozraThere's this one example in the manual I don't get. It's about 'move optimization'. `t[idx] = key; t[idx] = val;`. What's up with that??
01:56:57ozraAlso: "string{lit|`const`}" - why is const backticked?
01:57:16reactormonkbecause you insert it - that's the way templates work
02:00:41ozraI mean, the double assignment too t[idx]. Eh, I'm not following..
02:00:56reactormonkthat I don't know, link?
02:01:38ozraMmmm.. I'll look. I'm reading from print out..
02:01:54flaviuhttp://nim-lang.org/docs/manual.html#ast-based-overloading-move-optimization
02:02:22ozraAh, you beat me :)
02:03:03flaviuI think it should be something like `t[idx].key = key; t[idx].val = val`
02:03:44flaviuhttps://github.com/Araq/Nim/blob/master/lib/pure/collections/tables.nim#L73-L79
02:04:22*gsingh93 quit (Ping timeout: 252 seconds)
02:04:52reactormonkflaviu, mind PRing that?
02:05:16flaviusure
02:07:09flaviuhttps://github.com/Araq/Nim/pull/2787
02:07:31*pregressive joined #nim
02:07:46ozraI'm going over the docs here, while I'm new so I have fresh eyes, I've gotten though more than half, so I can fix it from here, so I don't have merge conflicts?
02:08:04reactormonkozra, well, fuck.
02:08:07reactormonksure, not a problem.
02:08:10reactormonkflaviu, sorry, reverting.
02:08:28ozraMostly fixed typos. And then some wordings here and there. I think you will like it.
02:08:39ozraYou're fast flaviu!!
02:08:39reactormonkozra, kk, reverted
02:09:08flaviuozra: I've been doing this for a while :P
02:09:10ozrareactormonk: cool. I got a new burst of wnergy, so I think I'll get it done before sleep...
02:09:51ozraflaviu: Then you got some vacation this time ;) I see this as a good opportunity for me to learn it faster also :)
02:12:58*strcmp1 quit (Remote host closed the connection)
02:14:08ozraThen also: "string{lit|`const`}" - why is the const constraint backticked??
02:15:05flaviuwell, it's possible to have do let `const` = 123
02:15:13flaviuI'd assume it's to simplify the parser.
02:15:44*strcmp1 joined #nim
02:16:25ozraHmm, but why is 'const' ticked, but not 'lit' for instance?
02:17:08ozrabecause it also is a keyword?
02:18:31flaviulit is not a keyword.
02:18:36flaviuConst is.
02:20:05ozrayeah. can that be it? So if constraints lit, sideeffect, etc are used - plain, if constraints like let,const,result, etc are used they must all be ticked??
02:20:32flaviuWell, result isn't a keyword, but yes.
02:20:47ozraAh, no, but "kind of magic"..
02:21:01ozraOk.
02:21:15flaviuyes, it is magical, but `var result` or `proc result(...)` is perfectly legal
02:21:47*Demon_Fox joined #nim
02:21:49ozraHmm.. it just feels very off that constraints couldn't be expressed straight up...
02:24:31flaviuI guess it could be considered a leaked implementation detail of the compiler.
02:27:10ozraHmm, I'm not following exactly? The constraints are clearly listed in the man?
02:28:42flaviuThere would be no ambiguity in parsing if let and const did not have to be quoted in the constraints.
02:29:04flaviuBut because of the way the compiler works, the parser gets confused when it sees them there.
02:31:14ozraOk. That's on my personal todo list to fix then ;)
02:38:36*kumool joined #nim
02:39:36ozraThe manual refers to "the upcoming nimfix tool"... It's done right?
02:40:06reactormonkyup
02:40:12ozracool
02:42:58*kumool quit (Ping timeout: 256 seconds)
02:46:43ozraDo the "destructor pragma: see override pragma instead", and subsequent "override pragma: see type bound operations instead" need to be in the man? As a noob, it's all new, is there anyone in the target audience that may need that intell??
02:49:02reactormonkmanual is more of a complete guide
02:51:13ozraOk, I'll just change the "multiple redirect" then.
02:52:16reactormonk^^
02:52:26reactormonkrecursion: see recursion
02:57:20*vendethiel joined #nim
03:04:52ozrahaha
03:07:21VarriountI'm actually sad that more people don't read the entire manual. It's not like it's overly verbose or anything.
03:07:33VarriountThen again, I like reading.
03:22:41*ddl_smurf quit (Quit: ddl_smurf)
03:28:55*taesoo quit (Ping timeout: 250 seconds)
03:34:47ozraI made a PR for the doc changes. Hope I got it right. Haven't worked with the github stuff much before, since I've been proprietary coding most my life for cash, and then there's been private git servers.. Github seems to rule.
03:35:20ozraVarriount: Yeah, I'm the same. Reading is better then sunshine for my peace of mind.
03:36:38reactormonkozra, hm. no editor that does line wrap at 80 chars?
03:37:22reactormonkdoesn't really matter imo
03:38:01ozrareactormonk: Ah, sorry - i softwrap. You want it hardwrapped?
03:38:13reactormonkozra, the rest of it is
03:38:20reactormonkmight as well keep doing it
03:38:39ozraOk, I'll fix it.
03:38:52reactormonkbut otherwise looks good to me
03:40:21ozraOk. cool. Might take me a few minutes, I've just switched editor, can't believe I haven't seen sublime before. Was the nim highlighter that lead me there, haha. I'll just find the right tool...
03:44:48*vendethiel quit (Ping timeout: 272 seconds)
03:49:12*gsingh93 joined #nim
04:04:33ozrareactormonk: Ok, I think it's all set now.
04:05:09*boydgreenfield quit (Quit: boydgreenfield)
04:13:32*boydgreenfield joined #nim
04:22:35*endragor joined #nim
04:30:05*boydgreenfield quit (Quit: boydgreenfield)
04:33:16*Jesin quit (Ping timeout: 255 seconds)
04:44:10*dhasenan quit (Remote host closed the connection)
04:44:27*dhasenan joined #nim
04:51:32*Jesin joined #nim
04:52:44reactormonkozra, neat
04:53:10*Jesin quit (Remote host closed the connection)
05:02:36*Demos quit (Read error: Connection reset by peer)
05:03:00*BlaXpirit joined #nim
05:15:53ozraglad to help, and learn.
05:19:58*strcmp2 joined #nim
05:20:16*ozra quit (Ping timeout: 246 seconds)
05:22:44*strcmp1 quit (Ping timeout: 245 seconds)
05:24:13*filcuc joined #nim
05:25:29*vendethiel joined #nim
05:27:51*pregressive quit (Remote host closed the connection)
05:29:58*filcuc quit (Quit: Konversation terminated!)
05:31:26*dtscode is now known as PaulMaudib
05:32:47*jbomo left #nim (#nim)
05:41:39*BlaXpirit quit (Quit: Quit Konversation)
06:24:07*intra joined #nim
06:32:00*IronY is now known as sadasdas
06:32:06*sadasdas is now known as IronY
06:35:13*strcmp2 quit (Ping timeout: 264 seconds)
06:42:22*gokr joined #nim
06:45:16*PaulMaudib is now known as dtscode
06:59:55*boydgreenfield joined #nim
07:04:38ggVGcuhm, which repo is the main one for nim.vim?
07:04:43ggVGcthe original nimrod.vim is 5 years old
07:04:47ggVGcand there are several forks
07:05:43*endragor_ joined #nim
07:08:38*endragor quit (Ping timeout: 244 seconds)
07:17:08*boydgreenfield quit (Quit: boydgreenfield)
07:19:50*endragor_ quit (Remote host closed the connection)
07:21:46*vendethiel quit (Ping timeout: 256 seconds)
07:25:51*mihailp joined #nim
07:27:02*Sembei joined #nim
07:27:41*Sembei quit (Client Quit)
07:27:46*mihailp left #nim (#nim)
07:33:44*OnO joined #nim
07:45:57*gsingh93 quit (Quit: Connection closed for inactivity)
07:59:50*ddl_smurf joined #nim
08:01:11*ddl_smurf quit (Client Quit)
08:03:42*johnsoft quit (Ping timeout: 256 seconds)
08:03:57*johnsoft joined #nim
08:10:37*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:13:41AraqggVGc: zah's ?
08:14:53*endragor joined #nim
08:17:50*vendethiel joined #nim
08:23:19ggVGcAraq: yeah that's the one I'm using now
08:24:04Araqdoes that support nimsuggest?
08:33:26ggVGchow do I actually write a new instance to memory allocated with alloc?
08:41:48*vendethiel quit (Ping timeout: 265 seconds)
08:42:04*strcmp1 joined #nim
08:51:11Araqcast the pointer
08:51:12*vendethiel joined #nim
08:53:10ggVGcah right
08:53:17ggVGcthat was a pretty silly question
08:59:47*ddl_smurf joined #nim
09:02:16*endragor_ joined #nim
09:04:06*Matthias247 joined #nim
09:05:17*endragor quit (Ping timeout: 258 seconds)
09:06:26*endragor_ quit (Ping timeout: 244 seconds)
09:07:47*TEttinger quit (Ping timeout: 264 seconds)
09:12:52*[CBR]Unspoken quit (Remote host closed the connection)
09:16:04*ingsoc joined #nim
09:27:52*BlaXpirit joined #nim
09:28:19*Demon_Fox quit (Quit: Leaving)
09:36:38*vendethiel quit (Ping timeout: 246 seconds)
09:38:54*vendethiel joined #nim
09:51:16*intra quit (Ping timeout: 258 seconds)
09:59:29*milosn quit (Quit: leaving)
10:02:03*vendethiel quit (Ping timeout: 276 seconds)
10:04:46*vendethiel joined #nim
10:06:00*xificurC quit (Quit: WeeChat 1.2)
10:10:40*gunn joined #nim
10:22:01*sepisoad_ joined #nim
10:25:05*intra joined #nim
10:28:37*vendethiel quit (Ping timeout: 264 seconds)
10:53:04*vendethiel joined #nim
10:54:39*akiradeveloper joined #nim
10:56:50*dddddd joined #nim
10:57:58*sepisoad_ quit (Quit: Leaving)
11:04:20*gunn quit (Quit: Textual IRC Client: www.textualapp.com)
11:07:20*BitPuffin|osx joined #nim
11:09:28*Kingsquee quit (Quit: Konversation terminated!)
11:16:47*vendethiel quit (Ping timeout: 264 seconds)
11:19:48*jonathon joined #nim
11:21:04*vendethiel joined #nim
11:22:16jonathonhi, slightly noobish question, what's the best way of dealing with a 'nil' in a record with a NULL field in db_mysql ? e.g. say I generate a Pupil object "var p = Pupil(id: parseInt(record[0]), first: record[1], last: record[2], class: parseInt(record[3]))" but one of those is NULL nim fails with 'attempt to read from nil?'
11:24:07jonathoni could do an 'if record[0] != nil' but it seems inefficient to do it four times
11:24:27Araqjonathon: helper proc?
11:25:07jonathonAraq: yup, i think you're right
11:25:16jonathonmaking sure i hadn't missed something built in!
11:25:19Araqproc toInt(x: string): int = (if x.isNil: -1 else: x.parseInt)
11:27:47jonathonthat'll do nicely, thank you!
11:32:33*strcmp1 quit (Ping timeout: 240 seconds)
11:33:08jonathonis there a way of passing nil to an object constructor, so e.g. if class is NULL the Pupil object doesn't care it doesn't have a class? actually, i could just have a default value of 0 and not have class in the constructor at all...
11:33:17jonathonway to answer my own question :)
11:34:27*Trustable joined #nim
11:36:58*jonathon quit (Quit: Quit)
11:38:18*akiradeveloper quit (Remote host closed the connection)
11:41:26*banister joined #nim
11:41:32*banister quit (Client Quit)
11:42:00*endragor joined #nim
11:42:22*banister joined #nim
11:47:44*Ven joined #nim
11:50:52*thotypous quit (Quit: WeeChat 1.2)
11:51:14*thotypous joined #nim
12:15:46*BlaXpirit quit (Quit: Quit Konversation)
12:19:42*endragor quit (Remote host closed the connection)
12:24:12*endragor joined #nim
12:26:17*akiradeveloper joined #nim
12:33:41*gokr_ joined #nim
12:33:52*endragor quit (Remote host closed the connection)
12:33:58fowlI'm working on a new composition framework that lets you define dynamic components and static components (Nim types)
12:44:24*gokr_ quit (Ping timeout: 245 seconds)
12:44:53*gokr_ joined #nim
12:56:17*wan quit (Quit: WeeChat 1.2)
13:05:41*gokr_ quit (Read error: Connection reset by peer)
13:05:58gokrfowl: Hum?
13:18:28*tamtaradam joined #nim
13:21:28tamtaradamHello everyone! Can someone explain to me what is "dynamic dispatch" and what diffs than procs and methods in nim. May be someone know some articles about this. In offical documentation i found very small information about this themes,
13:23:58Araqtamtaradam: just don't use dynamic dispatch :P
13:24:03*Gordin joined #nim
13:24:50gokrtamtaradam: I write about it in my OO article series at http://goran.krampe.se/category/nim
13:25:49gokrBasically procs resolve statically (what comile time types you have for your arguments) and methods resolve during runtime (what types your arguments *actually* have when the call is about to be made).
13:26:39*strcmp1 joined #nim
13:27:48tamtaradamGordin, thank you. I will read it.
13:28:42tamtaradamGokr, it means, that compiler don`t know wat types of arguments i will send to method?
13:29:56gokrtamtaradam: Basically it means that you may have a variable of type ref Fruit (that can hold Apples and Oranges) and when you make the call - what do you actually have? At compile time we don't know, at runtime we do.
13:31:03gokrSo at compile time - the compiler just sees that ok, the argument here is a Fruit, and it picks a proc based on that. But if its a method we refer to - then the compiler will insert code that does the final resolution of which method to call - at runtime.
13:31:38gokrA shorter answer is "yes". ;)
13:34:13*Guest58846 joined #nim
13:35:42Guest58846hi all. how build-bot determines the tests result? `./koch tests` return code looks like always success. I opened issue about it on tracker https://github.com/Araq/Nim/issues/2793
13:36:20tamtaradamThank you, gokr. You very good explainer :)
13:37:35gokrtamtaradam: You can see more code and talk regarding methods in part III of the OO articles. Feel free to give me feedback on the whole series though.
13:38:46gokrI think the gist of it is that Nim offers several mechanisms (regular static resolution of procs, generics, methods, concepts) and... it may be a bit confusing to decide what to use.
13:39:55*Guest58846 is now known as avsej
13:40:24*avsej is now known as Guest11785
13:40:54*Guest11785 is now known as avsej_
13:40:57*avsej_ quit (Changing host)
13:40:57*avsej_ joined #nim
13:47:26*jsjoberg_ quit (Quit: WeeChat 0.4.1)
13:48:10ddddddgokr, I think you have a typo in """out before the end of 2014""" at /nim-and-super/.
13:48:42gokrok...
13:49:33gokrAh :)
13:49:49gokrIt kinda shows that I started writing that post way before publishing it :)
13:50:14gokrOr perhaps I was actually ... thinking of 1.0
13:50:28gokryeah, think so
13:54:28gokrdddddd: I am fixing that paragraph, in fact, procCall was included in 0.11.2.
13:54:50*saml_ joined #nim
13:54:52pigmejreactormonk: so that nimsuggest issue was quite trivial?
13:55:14ddddddThanks, gokr.
14:05:39AraqGuest95994: I don't know. I usually look at the results
14:14:55*ozra joined #nim
14:22:18*BlaXpirit joined #nim
14:24:00*jj2baile quit (Ping timeout: 276 seconds)
14:24:40*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:26:33*taesoo joined #nim
14:26:38*jj2baile joined #nim
14:28:48*[CBR]Unspoken joined #nim
14:32:15*milosn joined #nim
14:33:37*kumul joined #nim
14:39:14*xificurC joined #nim
14:44:40*gokr quit (Quit: Leaving.)
14:49:25*akiradeveloper quit (Remote host closed the connection)
14:51:30*gokr_ joined #nim
14:52:38*gokr joined #nim
14:56:01*gokr_ quit (Ping timeout: 258 seconds)
14:58:27avsej_Araq, but for automation tools, like RPM builder, I want to know if the package considered stable or not
14:59:20avsej_there is a %check macro in rpmspec, where people usually put something like `make test` which can return non-zero code if something broken, and so whole package build will be failed
14:59:25*avsej_ is now known as avsej
15:00:09*taesoo quit (Ping timeout: 240 seconds)
15:01:01Araqthe package is considered stable when it's actually built from a release
15:01:58avsej:) I meant stable enough to try it
15:02:14Araqit's always stable enough to try it
15:02:15flaviuavsej: As a workaround, `./koch test; return 1` :P
15:02:38Araqnobody cares about failiing tests because you happen to not have installed Boehm's GC
15:03:07avsejthat's is good observation, thank you
15:03:22avsejis it possible to run tests from json.nim for example?
15:03:31avsejusing ./koch command
15:04:10flaviuYou could probably set up a shell script to go through all the modules in lib/pure/ and compile and run them.
15:04:36Araqflaviu: that's what "tester cat lib" does
15:05:13avseji tried `cat json` but it does not work, at least does not fail like when I run everything
15:05:44Araqbut i don't get it. so when "nim c logging" fails, you claim the installation is worthless for everybody? but chances are high that I don't use this module
15:06:51avsejwhat the point of having test suite then?
15:07:05Araqit's for *development* not *installation*.
15:07:26shevydoes nim have a "standalone" logo? ruby has a logo like this http://goo.gl/kqVb8g, python has a logo like that https://goo.gl/odpc1v
15:07:42strcmp1a crown..
15:07:50shevya jester's crown?
15:07:53shevy:-)
15:07:58strcmp1a king's
15:08:06strcmp1it was named after a king at first
15:08:09flaviushevy: https://github.com/nim-lang/assets/tree/master/Art
15:08:25AraqI never run any tests after installation, it makes no sense. Instead I *use* the installed program and will see soon enough wether it works for what I want it to do, or whether it doesn't.
15:08:26shevyhehe
15:08:42shevywell "nim" as a word is better I think; only 3 chars; and it can mean "nimble" and "nimrod" now :D
15:09:11shevyflaviu I see, thanks
15:09:14flaviushevy: You probably want one either logo-monochrome-black or logo-simple
15:09:52shevyyeah I think I'll go with the favicon.ico one actually; I wanted to have a favicon for the tabs in my firefox, it helps me identify what is where when there are many tabs
15:09:55avseji'm trying to build rpm repository so that I will always have recent binary build installed which passes the test suite, so I can use stdlib with some confidence
15:10:26flaviuAraq: contributors.txt seems to be missing quite a few names
15:10:41avsejAraq, regarding GC, all I need is to install gc headers and all? is there any specific version requirements?
15:10:55avsejI haven't seen it in readme and it didn't complain during the build
15:10:57flaviuPerhaps it'd be a better idea to tell people to use git shortlog -s -n instead?
15:11:12Araqavsej: not my point.
15:11:33Araqboehm is an optional GC that you can use via --gc:boehm.
15:11:41Araqnow of course we do have tests for that
15:12:02avsejthat's clear, but I can see some other tests failing
15:12:27avsejin general library like json, should not care if compiler linked with gc or not, right
15:13:35Araqright
15:14:31*gsingh93 joined #nim
15:14:42Araqbut if you want *some* testing, nothing beats bootstrapping
15:16:41avsejdoes anybody works on fixing Linux-x86_64 tests at the moment?
15:16:50avsejthey broken for a couple of weeks already
15:16:50*d33tah quit (Ping timeout: 246 seconds)
15:16:58avsejI have 64bit and tests failing here
15:17:52shevyhmm... nimrod-0.9.2.tar.xz was 4.3M in size ... nim-0.11.2.tar.xz is 2.5M in size
15:18:07Araq"broken" in what sense?
15:18:11*xcombelle joined #nim
15:19:11avsejbadge in readme says "Retry"
15:19:24avsejthere are a lot of pending builds without any state
15:19:36ozraHi folks
15:19:36avsejseems like the build slave is offline or something like this
15:20:04avsejAraq, http://buildbot.nim-lang.org/builders/linux-x64-builder
15:20:06*gokr_ joined #nim
15:20:57Araqgokr_: your builder is offline
15:21:15avsejwell not couple of weeks, 10 days
15:21:54*gokr quit (Ping timeout: 245 seconds)
15:22:37*vendethiel quit (Ping timeout: 264 seconds)
15:23:34avsejAraq, btw exit code issue also applicable to buildbot
15:23:35avsejhttp://buildbot.nim-lang.org/builders/linux-x32-builder/builds/432/steps/Run%20Testament/logs/stdio
15:23:47avsejyou see? test errors, but status is green
15:24:17avsejin general buildbot is only testing compilation
15:25:01Araq"test errors"? *some* tests are not green.
15:25:49avsejso failed test does not mean build failure, correct?
15:26:09flaviuAll of `koch test cat lib` is green for me.
15:26:11*vendethiel joined #nim
15:27:01avsejflaviu, even json?
15:27:16flaviuyep, json is green.
15:27:19Araqand for instance 'sexp.nim' is a new test. reactormonk hasn't made it green yet. This is the nature of a development version.
15:27:32*saml_ quit (Quit: Leaving)
15:27:37avsejit is failing here https://gist.github.com/avsej/cd9c0bce92abb19296a9
15:28:04Araqthat too is a new test
15:28:58avsejokay, so you guys are actually reading test reports, and track all new tests. you super, I want to be like you :) in my experience I usually read reports if something fails
15:29:00flaviuavsej: What commit are you on? I'm on 71561be.
15:29:08ozraTrying to aquaint myself with the nim source. identifiers can have Unicode chars, right? So, why is arg to "cmpIgnoreStyle" cstring? What am I missing.
15:29:16avsej4702b5f5c
15:29:46avsejflaviu, updated, let me try it once again
15:30:05flaviuhuh, 4702b5f5c works for me.
15:30:09avsejno, json still fails
15:30:16avsejflaviu, what os are you using
15:30:40flaviuLinux x86_64
15:30:44flaviuYou?
15:30:47avsejme too
15:30:49avsejfedora 21
15:30:52pigmejavsej: csources ?
15:30:55pigmejI have fedora also
15:30:57pigmejand works
15:31:02pigmejavsej: what gcc?
15:31:12pigmejgcc (GCC) 4.9.2 20150212
15:31:13avsej'15724e2e1f3e7749d508dfcd995e84fea2850802'
15:31:26avsej4.9.2 20150212
15:31:56*anthgur joined #nim
15:32:04Araqozra: cstring can deal with utf-8 just fine
15:32:15flaviuavsej: Is your working tree dirty? I can't even find that test that's failing.
15:33:02avsejno, it is not dirty. I also curious why it does not put some caller in the stack trace
15:33:10avsejsystem.nim(2285) sysFatal
15:33:10avsejError: unhandled exception: peekLine(ss) == "uick brown fox jumped over the lazy dog." [AssertionError]
15:33:14avsejthis is last line
15:33:25flaviuAh, I see. I have to pass `-d:testing` to get it to fail.
15:34:51avsejI used ./koch tests
15:35:23flaviuSo the problem is that the streams tests are being run at the same time as the json tests.
15:35:25avsejthere no "brown fox" in the whole project
15:35:41*egrep quit (Quit: Restarting...)
15:35:59ozraAraq: Silly me, ofc. they've made the encoding c-string compat! Thanks.
15:36:16avsejflaviu, how it that possible?
15:36:49avsejtests are running in parallel and using shared memory?
15:36:51flaviuavsej: streams has "when defined(testing)", not "when isMainModule and defined(testing)"
15:37:18*milosn quit (Read error: Connection reset by peer)
15:37:21flaviuActually, I'm not sure what the point of "defined(testing)" is.
15:37:28*milosn joined #nim
15:38:06avsejbut i didn't defined testing explicitly
15:38:40avsejflaviu, btw json test fails standalone
15:38:43flaviubut I think ./koch tests does it for you.
15:38:47avsejhttps://gist.github.com/avsej/cd9c0bce92abb19296a9
15:39:06flaviuavsej: That flag is defined at compile time, not runtime.
15:39:20flaviurecompile json manually without the flag
15:40:14*brson joined #nim
15:40:35avsejafter recompilation it works
15:40:47gokr_Araq: Will check builder when I am back home
15:41:00Araqgokr_: sure no worries
15:41:22*darkf quit (Quit: Leaving)
15:41:44*egrep joined #nim
15:41:52flaviuBlaXpirit: Are you in here?
15:41:57avsejso you guys running test slaves on your home computers?
15:41:58BlaXpirithi
15:42:09flaviuHow does defined(testing) work?
15:42:28*taesoo joined #nim
15:42:42BlaXpiritnim test suite defines it and runs everything in stdlib
15:42:47BlaXpiritor something like that
15:43:16BlaXpiritflaviu, https://github.com/Araq/Nim/pull/2583
15:43:23Araqavsej: things were much better when we still had "nimbuild"
15:44:00avsejwhat is nimbuild?
15:44:00flaviuBlaXpirit: Ah, I see.
15:44:28flaviuavsej: custom CI tool for nim.
15:44:41flaviuWell, for the nim compiler and stdlib
15:44:50pigmejavsej: s/is/was/g
15:45:36avsej:)
15:45:40Araqflaviu: it's just another --define
15:46:10avsejAraq, so on release tag, tests should pass?
15:46:23flaviuAraq: Yep, but I wasn't sure how it worked. I didn't realize that some modules in the stdlib had example code behind when isMainModule
15:47:53*Ven joined #nim
15:47:55Araqavsej: they should but don't. but that's just because I'm too lazy to mark the failing tests as "disabled".
15:49:09xcombellehey I did my first real program in nim and it was fun
15:49:48pigmejxcombelle: what is this ?
15:50:17xcombellepigmej, what do you mean ?
15:50:26Araqmarking failing tests as "disabled" sucks because then they stay disabled for good. we need some alternative marker
15:51:09Araqsomething like "failing acknowledged, but keep trying"
15:51:16pigmejthe program xcombelle :)
15:51:25flaviuAraq: Reenable all disabled tests after every release.
15:51:45xcombelleit's the basics for an IA which play go
15:52:17Araqflaviu: perhaps
15:52:31flaviuOr maybe you're looking for regression tracking. Tooling could be made to do that.
15:52:36xcombellebut I don't know if it will be sucessful
15:54:03xcombelleThe only point which don't look good in my program is that apparently for default object constructor and object variant constructor, the fields names are mandatory
15:54:29avsejAraq, and propagate failures as error code to be use by external tools
15:54:42avsejlike buildbot or my package builder :)
15:56:00*jbomo joined #nim
15:56:08*vmeson joined #nim
15:56:48*justicefries joined #nim
15:57:40flaviureadLine*(s: Stream, line: var TaintedString): bool and proc readLine*(s: Stream): TaintedString have different implementations.
15:57:56avsejyou have very strange .gitignore https://github.com/Araq/Nim/blob/devel/.gitignore#L1-L3
15:58:11avsejag (the_silver_searcher) goes crazy
15:58:14flaviuavsej: yep.
15:58:17avsejit ignores everything
15:58:22flaviuI've been meaning to send in a PR to ag.
15:58:46flaviuTry using ack for now.
15:58:49avseji would love to test your patch
15:58:55avsejpt works
15:59:18avsejbut my emacs integrated with ag, i lazy to reconfigure it now :)
15:59:22flaviuavsej: Well, it hasn't been written yet :P
15:59:32avsejping me if you will
16:01:28*tamtaradam quit (Ping timeout: 246 seconds)
16:27:12*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:29:49*OnO quit (Quit: My iMac has gone to sleep. ZZZzzz…)
16:32:13*shevy left #nim ("I'll be back ... maybe")
16:35:50*Jesin joined #nim
16:37:51*kumul quit (Quit: Leaving)
16:40:58*OnO joined #nim
16:42:22ozraAnyone, off the top of the head know why I get this: "lib/system.nim(2590, 7) Error: invalid pragma: discardable" ? The only mods I've made to compiler-src is add some echo's to examine the flow a bit..
16:43:19*Senketsu quit (Read error: Connection reset by peer)
16:43:20ozra(I get it when running the modded compiler)
16:43:44*Senketsu joined #nim
16:48:16*gokr joined #nim
16:51:53ozraAraq: does above error ring a bell for you, ie something common? Just trying to get my head around the compiler a bit..
16:54:50*BitPuffin|osx quit (Ping timeout: 246 seconds)
16:58:26*boydgreenfield joined #nim
17:00:22avsejis there index of all procs from stdlib?
17:04:58ozraflaviu: I'm stuck here trying to get to know the compiler.. Do you have any idea what the error could mean above? Also, I now removed some of the echo's, and get: "tests/system/alloc.nim(4, 1) Error: undeclared identifier: 'assert'" - these seemingly wildly unrelated errors (when running the compiler on a very simple test source) confuse me. Is it some simple stupid thing?
17:06:22flaviuozra: What happens if you use stdout.write instead?
17:07:06flaviuI think that echo needs some additional machinery that isn't available in certain sections.
17:07:09Trustable Hello guys, I have a question: How can I sort a table? What are the parameter types for the cmp proc? What means x,y: (A, B)?
17:07:55flaviuavsej: http://nim-lang.org/docs/theindex.html
17:09:09*anthgur quit (Quit: My Mac has gone to sleep. ZZZzzz…)
17:09:48ozraflaviu: Aha, ok, I'll try that. Is GC stuff of limits in compiler, something to think about?
17:09:56ozra_off_
17:10:19flaviuozra: yep, the GC is probably going to be tricky to work with.
17:10:31flaviuYou can't allocate GC'd memory in the GC :P
17:11:06*gsingh93 quit (Ping timeout: 256 seconds)
17:11:30ozraflaviu: Though, now I've commented out all my mods and still get the assert error - when running it, not when compiling the compiler..
17:11:59flaviuSounds like progress :)
17:12:08flaviuLook at git diff, see if you've missed something.
17:12:22ozraconfused.. I've probably done something stupid.. I'll diff.. I'm using ./koch temp for compiling the piler - is that the right procedure?
17:13:05flaviuThat's fine for testing, but make sure to run ./koch boot before sending a PR.
17:13:16flaviuYou want to make sure you haven't broken bootstrapping.
17:13:31avsejflaviu, is there some public link which points to THEINDEX?
17:14:14flaviuavsej: http://nim-lang.org/documentation.html#search-options
17:15:36*boydgreenfield quit (Quit: boydgreenfield)
17:16:07ozraflaviu: totally. I'm just playing around now, I aim to go mayhem on it just to get a fuller understanding of its internals, and then wipe my playground, but right now, I'm just trying to add in traces to get the flow. Hmm, I'm running "./compiler/nim c tests/my_small_test.nim" - is there a problem with running nim this way? What about stdlib path etc.?
17:16:15avsejthanks
17:16:45*Ven joined #nim
17:17:14*kumul joined #nim
17:17:32*Ven quit (Client Quit)
17:18:15flaviuozra: I don't see why that would be a problem. Keep in mind that koch temp outputs a bin/nim_temp.
17:25:23*boydgreenfield joined #nim
17:26:51ozraAhaaaa! That's it. haha. so I should use "bin/nim_temp", not "compiler/nim"!
17:27:16ozraNah, same thing.. assert..
17:30:23*banister quit (Read error: Connection reset by peer)
17:30:43*banister joined #nim
17:34:48*bassa quit (Read error: Connection reset by peer)
17:35:37*bassa joined #nim
17:36:35dhasenanWhen will I learn? I updated to the latest revision of nim-devel without recording what revision I was on before.
17:42:07*boydgreenfield quit (Quit: boydgreenfield)
17:42:42*pregressive joined #nim
17:43:15flaviudhasenan: reflog!
17:43:38dhasenanOr identifying the actual problem: that I wasn't building Nim right.
17:47:22*filcuc joined #nim
17:47:59*banister quit (Ping timeout: 264 seconds)
17:54:17*gokr quit (Quit: Leaving.)
17:57:14*Demon_Fox joined #nim
17:57:36flaviuavsej: ping! https://github.com/flaviut/the_silver_searcher/tree/libgit2-gitignore
17:58:10flaviuIt depends on libgit2, and I can't figure out autotools so you'll have to use `CFLAGS=' -lgit2' ./configure` to configure.
17:59:26ozraShould "csources" be put in .gitignore??
17:59:50flaviuactually, never mind. Looks like I messed up that patch.
18:00:53ozraflaviu: I get untracked mods on csources.. How to handle in a good fashion?
18:01:27flaviuozra: I just ignore them.
18:01:42*banister joined #nim
18:01:51flaviuThey don't show up when I stage files for some reason, so it doesn't get in the way.
18:01:54ozraHmm, so I just push even though it's in the commit message?
18:03:25flaviuIt shows up as an unstaged entry in my commit message.
18:03:47flaviuhttps://gist.github.com/anonymous/2ec6a109f33f7c8d425e
18:04:18ozraOk. Then I'm good. Thanks
18:06:03ozradom96: If you're around, I fixed the commented stuff in the PR
18:06:21dom96ozra: Thanks. I'll take a look at it later. Busy at the moment.
18:06:27ozraCool.
18:09:36sdw_I'm having some trouble getting nimble to work. I'm trying to compile and run a glfw3 example: https://github.com/rafaelvasco/nimrod-glfw
18:09:38avsejflaviu, I configured emacs to use platinum searcher which seems like handling this issue https://github.com/monochromegane/the_platinum_searcher/blob/master/gitignore.go
18:09:45sdw_But I get this error: main.nim(1, 14) Error: cannot open 'glfw3'
18:10:07flaviuavsej: Well, I fixed my broken commit too.
18:10:20sdw_If I compile with nim.exe will it automatically figure out what nimble packages I'm trying to use?
18:10:23*sdw_ is now known as sdw
18:10:24*sdw quit (Changing host)
18:10:24*sdw joined #nim
18:10:27*UberLambda joined #nim
18:10:32flaviupt looks cool though
18:11:36avsejflaviu, written in go and seems like challenge for nim :)
18:13:42avsejflaviu, why nimbuild has been shutdown?
18:15:06ozraflaviu: Do you have a tip: If I want to work on some optimizations on the compiler, and hence need to test changes with -O3 etc.. how would I go about it best? ./koch temp would create an un-optimized compile right?
18:15:19ozra(so I get benchmarks right)
18:15:20flaviuavsej: It stopped working and no one had time to fix it.
18:16:19*boopisaway is now known as boop
18:16:27flaviuozra: Well, koch is open source. Feel free to change it to do whatever is most convenient.
18:16:52flaviusee lines 339..346.
18:17:49ozraAh, yes. Just to clarify, I'm completely fresh to nim, so that's why I am asking, just want to get into the flow fast, and if there are some common ways of going about things, I can get up to speed with them. Ok. Thanks. What build file rebuilds koch if I may ask? (avoiding a little digging ;)
18:20:02flaviuozra: Recompile koch with nim, as you would any other file.
18:20:36ozraRight, silly me. Thanks for the help man (or woman (or dog))
18:22:13sdwIf I change the line to import src/glfw3 then it works. So I guess it's a packaging issue. Is this a bug with the nimrod-glfw project or with nimble?
18:24:06flaviusdw: Definitely a bug with nimrod-glfw.
18:24:17avsejAraq, flaviu will you accept such patch https://github.com/Araq/Nim/pull/2797
18:25:03flaviuavsej: I'm the wrong person to ask, I think you'll have to wait until Araq comes along to get a response to that.
18:25:41avsejin what TZ are you guys btw?
18:26:39flaviuAraq is in Germany, dom96 the UK, Varriout and myself in the US
18:26:57avsejcool. I'm in Belarus (UTC+3)
18:27:15flaviuquite a few people in here are from Europe
18:28:40strcmp1europa here too
18:28:48strcmp1we're taking over
18:34:40*pregressive quit (Remote host closed the connection)
18:37:16federico3Dublin here, but I'm in SF atm
18:40:39strcmp1thats crazy federico3, i'm from dublin too
18:41:19*BlaXpirit quit (Quit: Quit Konversation)
18:42:00federico3wtf?! We have to grab a coffee/pint sometimes
18:42:05*xcombelle quit (Remote host closed the connection)
18:42:40federico3(2 Nim users in Dublin... Nim is more popular than ever)
18:42:51strcmp1yeah, its quite the coincidence :)
18:44:02avsejso the biggest user group in dublin? :)
18:44:24*Jehan_ joined #nim
18:45:43strcmp1ha probably, if there ever was a nim meetup here id definitely go
18:45:46*anthgur joined #nim
18:47:18federico3if we reach 3 we can call it Nim World Conference 2015
18:50:15*anthgur quit (Ping timeout: 258 seconds)
18:55:58dom96federico3: strcmp1: I'm in Belfast :O
18:56:09*bassa quit (Read error: Connection reset by peer)
18:56:42*bassa joined #nim
18:56:54dom96Sounds like we need to set up some sort of Nim programmer's world map.
18:58:01*UberLambda quit (Quit: Leaving)
19:03:35*kumul quit (Ping timeout: 264 seconds)
19:03:36*bassa quit (Read error: Connection reset by peer)
19:03:40Araqavsej: your PR looks good but now I wonder if that should be the default instead ...
19:03:52*bassa joined #nim
19:04:08*filcuc quit (Ping timeout: 276 seconds)
19:06:39avsejAraq, from conversation with you couple of hours ago I figured out that usually you don't care :)
19:06:47avsejmoreover there are failing cases right now
19:06:51Araqbut meh, it's the same problem again
19:07:02dtscodeAre you guys serious about the world map?
19:07:39dom96dtscode: I am.
19:07:43avsejand probably the way how you develop it will be influenced. like people first commit failing tests, and then fix the implementation
19:07:48dtscode:D I have an idea!
19:07:57dom96dtscode: You going to make one?
19:08:01avsejso this is why i did it optional
19:08:04dtscodeNo
19:08:10dtscodeBut I have an idea for one
19:08:15avsejAraq, what problem you mean?
19:08:18Araqavsej: yeah, but "optional and unusable" is not an improvement
19:08:18dom96Sounds like a fun Jester project actually.
19:08:30*dtscode left #nim ("Leaving")
19:08:37*dtscode joined #nim
19:08:38Araqavsej: the old nimbuild would give us the *diff* between test runs
19:08:51Araqwhich is exactly what we're interested in
19:09:02avsejthis is why you put results into sqlite?
19:09:10Araqaye
19:09:26avsejbut fail/pass general result also usable
19:10:09avsejand if it will be mandatory, my PR will be blocked while we have failing tests in the development branch
19:10:11*gokr_ quit (Read error: Connection reset by peer)
19:10:43Araqavsej: IME keeping this stuff 100% accurately up to date is unreasonably expensive
19:11:04avsejthat's true
19:11:06Araqyou can do these stunts when you're Rust with a couple of million dollars behind its development
19:11:45avsejbut as OS user I'd like to have a bit more frequent update development channel, not really daily but more often than official releases.
19:12:24Araqand the diff gives you the same information for free with no additional maintenance costs
19:12:44avsejnot really
19:13:13avsejI configured yum-cron on my system so that I can assume I have rather fresh ruby/python etc
19:13:21avsejand I'd like the same for nim
19:13:34avsejbut with some confidence
19:13:41Araqmake the tester smarter then
19:13:45dom96dtscode: What's your idea?
19:13:57avsejAraq, what do you mean?
19:14:03*biscarch quit (Quit: Connection closed for inactivity)
19:14:05avsejmy package need only green/red status
19:14:19Araqstart with "category lib is critical but other tests are not"
19:14:33avsejit is simple
19:14:51avsej./koch tests --pedantic lib
19:14:58Araqyes but with your current PR it's always red.
19:15:07Araqnot much use in that.
19:15:15avsejno, --pedantic is false b
19:15:16Araqoh I see
19:15:18avsejby default
19:15:45dtscodedom96: Oh sorry. was helping with some c++ code
19:16:29avsejso there might be three channels: stable, dev (--pedantic all), unstable (--pedantic lib)
19:16:31Araqavsej: so you restrict your checks to the "lib" category?
19:17:00avsejright now I'm going to help with fixing lib tests, because they also will be red :)
19:17:05dtscodeSo you have a form or a map or something on the site, and users can enter where they are, but to prevent spam a bit, they have to get a verification code from something like IRC (I'm stealing all of this from Linux Mint but oh well)
19:17:11*gokr joined #nim
19:22:26Araqavsej: well your attitude is refreshing. I commented on your PR.
19:24:34avsejfixed
19:24:49*OnO quit (Quit: My iMac has gone to sleep. ZZZzzz…)
19:26:07*OnO joined #nim
19:27:14*OnO quit (Client Quit)
19:31:48*shodan45 joined #nim
19:33:32dom96dtscode: I think a cooler way would be to integrate with Github
19:33:39Araqavsej: so ... did you test your PR? :P
19:34:03dtscodedom96: Ah fair enough
19:36:33*johnsoft quit (Ping timeout: 250 seconds)
19:36:42*intra quit (Ping timeout: 272 seconds)
19:36:53avsejAraq, yes, but I think I will quit with QuitFailure instead of number of failures because number might be wrapped and become zero :)
19:37:40Araqyeah that's a good idea
19:40:06*filcuc joined #nim
19:41:10federico3dom96, dtscode: it sounds like a "<country_name> <city_name> <nickname>" CSV file would suffice. I wonder if there's any quick way to render the map
19:42:41dom96federico3: But yeah. I played with the idea of creating a Nim user group here in Belfast, if you would be willing to travel to it then I would totally set it up.
19:42:52avsejAraq, okay. now I'm ready. tested and code looks good to me
19:43:04Araqavsej: already merged ...
19:44:22*TEttinger joined #nim
19:45:01*Ven joined #nim
19:46:45avsejfederico3, maybe something with d3js? http://datamaps.github.io/
19:47:21avsejAraq, what the difference between master and devel branches?
19:47:21federico3I was hoping in something more ready to use
19:47:52Araqavsej: devel is for development, master is stable
19:48:03Araqtell me you made your PR against devel ...
19:48:19Araqah yeah
19:48:25avsej:)
19:48:28avsejfederico3, http://geojson.io/
19:48:37avsejand then put it in to gist on github
19:50:06avsejfederico3, looks like this https://gist.github.com/avsej/a403811cb6eae5ad4416
19:54:16avsejlooks like geojson backend of github is not accessible at the moment. but http://geojson.io/ accessible and allows to share in variety forms
20:01:02avsejAraq, another PR https://github.com/nim-lang/csources/pull/17
20:01:50Araqavsej: ok, can we get rid of the git submodule thing already?
20:02:29*BitPuffin|osx joined #nim
20:02:39avsejwhat do you mean? I don't know. As far as I see you have added it recently
20:02:57Araqyeah but i was drunk when I merged that
20:03:03avsej:)
20:03:38avsejah, okay whatever. I just don't like the git tells me that I have modified files
20:03:53avsejit if will be checkout by the build script, it is okay
20:04:06avsejas far as it will be in .gitignore in the nim repo
20:05:29dom96Araq: yeah, remove git submodule
20:05:43dom96it will break as soon as the C Source repo is reset
20:07:21avsejor you can set submodule to c2c13f5a60dc635d1a9746e630cfb127348430cb
20:07:30avsejnow it will also satify me :)
20:15:23*brson quit (Ping timeout: 265 seconds)
20:18:27federico3avsej: that's brilliant
20:22:45*vmeson quit (Ping timeout: 246 seconds)
20:25:47ozraavsej: I'm in sweden (+1)
20:25:50avsejwhat the reason of rendering stacktrace like streams.nim(459) versus streams.nim:459? The latter is quite copy-pasteable in gdb for example
20:27:20ozraAnyone save me some digging while I'm learning?: will 'cstring(someNimString)' make a copy or a wild and crazy ref/ptr?
20:28:29Araqavsej: nim uses filename(line, colum) cause that's what borland/FPC etc also use
20:28:51Araqozra: no copy is made
20:29:02avsejAraq, are you using borland?
20:29:11Araqnot anymore
20:29:20avsej:) time to change?
20:29:51Araqno, file:line:col is ugly as fuck
20:30:37ozraAraq: sweet.
20:30:59Araq(x, y) is a coordinate, :x:y is nothing.
20:32:51avsejis your editor able to jump to such location?
20:37:56ozraDon't like deviations from commonly used formattings when there's no real reason and all it does it makes life harder ( f:r:c vs f(r,c) )
20:37:57federico3avsej: ...but it's nothe enough
20:39:57Araqavsej: yes it is
20:41:51avsejwhat editor do you use?
20:46:57gokrozra: Sweden? Where?
20:52:54avsejAraq, is there description of strange escape codes like this https://github.com/Araq/Nim/blob/devel/lib/pure/streams.nim#L256
20:52:57avsej\c and \L
20:53:15avsejare they \r and \n?
20:53:17AraqCR and LF?
20:53:34avsejalso because of borland?
20:53:54avsejor from what language?
20:54:26*dhasenan quit (Read error: Connection reset by peer)
20:55:23AraqI think these are my own inventions
20:56:03avsejokay is there full list of escape codes?
20:56:05*dhasenan joined #nim
20:56:13*dhasenan quit (Remote host closed the connection)
20:57:18Araqis there a language manual?
20:58:22*kumul joined #nim
21:00:04avsejfound it
21:00:32avseji thought that newline is a linefeed
21:00:41avsejisn't it the same in nim?
21:00:50*dhasenan joined #nim
21:01:20avsejin the table they are in the different rows http://nim-lang.org/docs/manual.html#lexical-analysis-string-literals
21:03:09avsejtest.nim(2, 22) Error: \n not allowed in character literal
21:03:26avsejdoes it mean that \n is alias for windows new line?
21:05:14avsejAraq, ?
21:05:14*kumul quit (Ping timeout: 245 seconds)
21:05:40Araqavsej: on windows it's CR-LF on unix it's LF
21:06:44avsejso it should be avoided in nim if I would like to write portable program?
21:07:05avsejbecause files created on windows might not be readable on linux
21:07:15avsejor nim handles it under the covers?
21:07:37avsejif so why streams written like this to read line? https://github.com/Araq/Nim/blob/devel/lib/pure/streams.nim#L256
21:08:07ozragokr: Lysinge, outside of Örebro
21:08:31gokrozra: Nice, I am 30 km north of Stockholm, Åkersberga
21:08:34Araqavsej: to ensure that Nim can read files which use whatever line ending
21:08:44ozraHej pårej! haha
21:08:49gokrTjaba ;)
21:09:41avsejthat's clear, but what is the use case of "\n"?
21:09:47ozragokr: Är det du som skrivit bloggen om Nim OOP btw?
21:10:00*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:10:02ozraswedish:off
21:10:03flaviuhmm, so with a certain amount of indirection, "\n" != "\n".
21:10:09gokrozra: You mean goran.krampe.se? Yep
21:10:21def-avsej: to write a newline that actually works on your system
21:10:26*banister quit (Read error: Connection reset by peer)
21:10:44ozragokr: Alright. Thanks for the articles!
21:11:02gokrozra: I wrote those articles while I was exploring if Nim could do "regular OO" in a decent enough way. I came to the conclusion, that yes, it can.
21:11:11avsejdef-, when you need to write new line? when writing to the socket? on the other end might be linux, writing to file? that again could be read by linux
21:11:12gokrozra: And then we hired Araq ;)
21:11:47avsejwriting to terminal? but this could be handled by driver of terminal (i guess)
21:11:53ozragokr: Haha, ok. Awesome, for Nim dev, or mixture. I like hearing there's funding supporting it :)
21:12:12avsejusage of \n makes program not very portable, doesn't it?
21:12:37gokrozra: Yeah, we are working Nim into our codebase - and so far so good.
21:12:42ozraavsej: agree, sound scary..
21:12:47avsejin other languages \n is linefeed, \r is carriage return
21:12:57avsejand you can combine them for windows
21:13:12federico3dom96, strcmp1, avsej: being able to find Nim users in the same city is more important than a fancy map. I suggest a wiki page where people can list their name after a <country>, <city> header. We might be able to parse it and build a map in future
21:13:57flaviuI think that federico3 is right.
21:13:58avsejfederico3, maybe just add Country, City field on forum profile?
21:14:31ozragokr: I'm investigating it atm, but it's hard to keep a cool head. I'm gonna implement a system from the ground up that's iojs + primarily c++11, and got about a year to do it.. And so I wanted to take the opportunity to not have to use C++ (16 years of pain, haha). Still uncertain about the stability of Nim. But I reeeally want to use it.
21:14:48flaviuavsej: I think it's better to do it all one page.
21:15:20ozragokr: What sw you producing?
21:15:44flaviuWhile it'd work if it was added to forum profiles, its more useful to query it as "find all the people in this city".
21:16:16ozrafederico3: easier to search ;)
21:16:26gokrozra: Our company is www.3dicc.com
21:16:41gokrWebsite kinda sucks, but the system is way cool.
21:16:49federico3avsej: I don't have a forum profile
21:17:12Araqavsej: \n does the right thing.
21:18:40flaviugokr: Yes, it does: https://i.imgur.com/GVI4kpY.png :)
21:18:44federico3somebody please add a "login with github" feature to the forum :)
21:18:55ozragokr: fancy :)
21:20:48gokrSome of the movies from inside the system is more telling: https://www.youtube.com/channel/UCy6O-Qk7G6xq4quYTO_jFPg
21:21:11gokrThe system is the direct descendant from Teleplace/OpenQwaq/Croquet
21:28:21avsejhow can I create empty string of 100 characters?
21:28:45*banister joined #nim
21:28:48avsejfound it
21:30:31ozragokr: Interesting stuff. I've been glancing a bit at MIT's learning/combat, AI PTSD shrink, etc. 3D based concepts. Way to go!
21:31:15gokrThe immediate side product from us "going with Nim" is the Urhonimo project
21:31:22*filcuc quit (Quit: Konversation terminated!)
21:31:35gokrozra: https://github.com/3dicc/Urhonimo
21:32:23ozragokr: Hey perhaps you should complete your blog series with the use of the class template/macro, for interestees that would like a smaller jump from language X..
21:33:03gokrozra: Mmm... not sure its such a big deal. And its not "official" yet either.
21:33:28gokrozra: More interesting though is the work from fowl - super and his interfaces.
21:34:20ozragokr: cool I 'll check it out later - in the middle of compiler hacking (if I'm gonna use I need to modify it ;) - I'm dependant on a hoard of private ad-hoc transpilers now, which nim could probably replace a bunch of. Plus it looks almost on the spot as my toy-lang spec, haha)
21:34:49ozrapet-lang I mean..
21:34:55ozrafar from toy
21:35:06gokrozra: It is indeed a very fun language - with lots of cool stuff in it.
21:36:39avsejAraq, are you here? https://github.com/Araq/Nim/pull/2799
21:37:22*shodan45 quit (Quit: Konversation terminated!)
21:38:12avsejone of those bugs, exposed by failing unit tests
21:39:06avsejnow ./koch tests --pedantic category lib is green
21:39:16avsejthat json bug was also because of streams
21:51:53*ingsoc quit (Quit: Leaving.)
21:55:07*boydgreenfield joined #nim
21:56:08*Jehan_ quit (Quit: Leaving)
21:56:32*boop is now known as boopisaway
22:00:22Araqhow so? json doesn't use peekLine
22:07:44*boopisaway is now known as boop
22:12:20flaviuAraq: A flaw in the guard for the tests in streams.nim.
22:29:24*vendethiel quit (Ping timeout: 252 seconds)
22:40:02*vendethiel joined #nim
22:45:32*boydgreenfield quit (Quit: boydgreenfield)
22:51:17*boop is now known as boopisaway
22:52:35*brson joined #nim
22:54:48*dtscode quit (Ping timeout: 258 seconds)
22:57:08*boydgreenfield joined #nim
22:58:35dom96federico3: do it
22:59:37*Matthias247 quit (Read error: Connection reset by peer)
23:00:05federico3dom96: do what?
23:00:35dom96federico3: wiki page listing where Nim users live :)
23:00:55federico3ok
23:02:51*vendethiel quit (Ping timeout: 258 seconds)
23:07:45*dtscode joined #nim
23:10:29federico3https://github.com/Araq/Nim/wiki/UserGroups please add yourself
23:11:53ozrasince int is same width as platform pointers, all int's on my mach is 64bit, which is overkill, slower and uses more memory. What's the rationale of this decision?
23:12:13dom96federico3: nice
23:12:51ozraAnyone know?
23:13:09*brson quit (Quit: leaving)
23:13:28Crocodickits worse with floats imo, with ints you can just truncate, with floats its completly different representation
23:13:40*boydgreenfield quit (Quit: boydgreenfield)
23:16:57*vendethiel joined #nim
23:30:01*jrenner1 joined #nim
23:30:20jrenner1how do I add a string to a seq[string]?
23:30:41jrenner1using mySeq.add("test") I am getting a type mismatch error
23:31:28flaviujrenner1: Can we see your code?
23:32:20jrenner1sure
23:32:41*akiradeveloper joined #nim
23:33:14jrenner1let animals: seq[string] = newSeq[string](0)
23:33:16jrenner1animals.add("hello")
23:33:32jrenner1test.nim(4, 8) Error: type mismatch: got (seq[string], string)
23:33:44flaviuanimals is not mutable.
23:33:51strcmp1let makes animals immutable, try using 'var'.
23:34:28strcmp1if you're new (like me), i found this to be a decent guide: https://nim-by-example.github.io/getting_started/
23:34:54flaviujrenner1: http://nim-lang.org/docs/system.html#add,seq[T],T
23:35:10flaviuNote how the definition is `proc add[T](x: var seq[T]; y: T)`
23:36:48strcmp1specifically this part: https://nim-by-example.github.io/variables/
23:39:25*vendethiel quit (Ping timeout: 256 seconds)
23:50:25*Kingsquee joined #nim
23:55:51*kumul joined #nim
23:56:56*Siecje joined #nim
23:59:24*dtscode quit (Ping timeout: 264 seconds)