<<04-08-2012>>

00:09:13*q66 quit (Read error: Connection reset by peer)
00:09:56*q66 joined #nimrod
00:15:31*Boscop quit (Disconnected by services)
00:15:56*Bosc0p joined #nimrod
00:25:36*Bosc0p is now known as Boscop
00:25:36*Boscop quit (Changing host)
00:25:36*Boscop joined #nimrod
00:28:10*Boscop quit (Disconnected by services)
00:28:37*Bosc0p joined #nimrod
00:28:42*Bosc0p is now known as Boscop
00:28:44*Boscop quit (Changing host)
00:28:44*Boscop joined #nimrod
00:28:58*Boscop is now known as Bosc0p
02:13:45*q66 quit (Quit: Leaving..)
07:31:52*XAMPP_ joined #nimrod
07:34:33*XAMPP quit (Ping timeout: 244 seconds)
08:05:13*Bo5cop joined #nimrod
08:08:49*Bosc0p quit (Ping timeout: 272 seconds)
08:18:28*Bosc0p joined #nimrod
08:20:51*Bo5cop quit (Ping timeout: 272 seconds)
09:49:09dom96shevy: Should have reminded me before I went to sleep :P
09:49:27dom96fowl: Do you not get a traceback?
09:50:16dom96shevy: hrm. ok, something in the spirit of fowl's error. Probably most commonly this error occurs if you forget to initialise a sequence and then you try to add stuff to it.
09:50:42dom96You can initialise a sequence by simply assigning @[] to it
09:50:52dom96var s: seq[string] = @[]
09:55:13Araqhrm 'find usages' needs some hack:
09:55:26Araqif we have this:
09:55:34Araqvar x = 0
09:55:50Araqecho x| + 4
09:55:55Araqwhere | is the cursor position
09:56:14Araqand you ask "find usages" the compiler has no chance to find 'x' in 'var x = 0' ...
09:57:12dom96why not?
09:58:21Araqbecause the compiler gets --track:<position of | >
09:58:31Araqand then starts to track 'x'
09:58:41Araqbut it has already processed 'var x = 0' by then ...
10:03:55dom96so it won't find any usages above?
10:04:19dom96that kinda sucks :P
10:05:19fowldom96: no backtrace, it happens during compile
10:05:45dom96in that case the compiler crashes.
10:05:45Araqfowl: bug report
10:05:52dom96^
10:06:05Araqyou can do 'koch boot' to get a stack trace within the compiler ...
10:06:35Araqbut a crashing compiler is *my* problem, not yours ;-)
10:06:51fowlI didnt mean compiling nimrod
10:06:58fowlcompiling chipmunk.nim
10:07:14Araqwell the compiler should never crash, rigth?
10:07:22Araqbrb
10:07:26fowlkoch boot finished without errors
10:07:34Araqof course it did
10:07:39Araqbrb
10:08:04dom96fowl: `koch boot` will bootstrap in debug mode.
10:08:16dom96Which means that the next time the compiler crashes you will get a traceback
10:08:39dom96Best thing to do if you can is to create a small test case and report it on github.
10:11:20*q66 joined #nimrod
10:14:36*Bo5cop joined #nimrod
10:15:49fowlI don't know what caused it though :?
10:15:54fowli put an issue in
10:16:45*Bosc0p quit (Ping timeout: 272 seconds)
10:16:49dom96I suppose as long as you provide the code it's fine.
10:17:28dom96proc `set procName`
10:17:39dom96Is that... hrm. I don't think that's allowed
10:18:33fowlhow do you concatenate identifiers
10:19:56dom96you can only do that using macros I believe.
10:22:32dom96I'm not exactly sure I know what you mean...
10:23:39dom96Also wow, you can have spaces in those procs.
10:24:40dom96I'm sure Araq will know what's up
10:31:27dom96This seems to crash the compiler: var VersionString*{.importc: "cpVersionString", dynlib: Lib.}: cstring
10:39:44fowlhmm its exported
10:57:31Araqfowl: 'dynlib' for vars has only recently been added
10:57:48AraqI will fix it but for now, simply diable that declaration
10:58:01Araqshouldn't be needed, right?
10:58:34fowlworks for me
10:58:47fowl:p
10:58:54Araqwell?
10:59:02Araqso now it compiles or what?
11:00:01fowlno but it gets further
11:00:12Araqand btw
11:00:33Araqthe proc types need to be {.cdecl.} ...
11:01:16Araq echo("Platform unsupported")
11:01:18Araq quit(1)
11:01:27Araq--> {.error: "Platform unsupported".}
11:01:38Araqbetter do that at compile time
11:01:56fowlah ok
11:03:16Araqdom96: aporia need to find the definition of 'x' and then invoke the compiler again with --usages
11:03:29Araqso that all usages will be found ... -.-
11:03:42Araqit's hard to do that in the compiler itself
11:05:41dom96hrm, ok.
11:05:59Araqwell I would need to do the very same within the compiler
11:06:05Araqbut that's lots of work
11:06:22Araqas I can't yet simply undo all the side effects ...
11:07:12fowlwould it be possible to have a macro like class Foo: then in the following indentation all the procs would have self: Foo prepended to the arguments?
11:07:29Araqfowl: sure
11:08:08fowlcool im going to try to make that happen
11:08:25fowlnot today though, i've been up all night
11:08:33Araqhttp://forum.nimrod-code.org/t/37 ;-)
11:09:30fowldamn, like most of my great ideas, it came to someone else first
11:13:08Araqbtw since people really do want 'class' in the language ...
11:13:20AraqI'm thinking about adding it ;-)
11:14:11dom96If you do add it then Nimrod will take another step to being closer to Python heh
11:14:39Araqyeah ... well
11:15:32Araqwill be interesting to test whether the 'class' macro can get decent IDE support
11:16:15Araqshould be possible though
11:17:01dom96It shouldn't be that hard should it?
11:17:08dom96Just need to evaluate the macro, right?
11:19:28dom96Aww man, you can run D code examples from the docs
11:22:29dom96lol? Their docs have ads?
11:24:46AraqI have to go
11:24:50Araqsee you later
13:25:27Araqback
13:31:23dom96hrm, interesting.
13:32:12shevydom96 sorry, I did not understand the sentence you wrote to me before
13:32:20shevyI am at level 0 when it comes to nimrod, fowl is at level 5 already
13:32:21shevy:)
13:32:47dom96Araq: I think I found a memory corruption. Probably me doing something wrong in GTK. Could you take a look: https://gist.github.com/3f5f35e95ba700e4c505
13:33:14dom96Araq: Use aporia's gtksourceview, the two apps go to two different lines. But the offset is the same.
13:33:24dom96Araq: Perhaps my number is too large for an int32
13:34:10dom96shevy: No problem. A sequence is a list. You can add as many items to it as you wish.
13:34:26dom96shevy: However first you must initialize it by setting it to @[].
13:34:32dom96i.e. empty sequence
13:34:40dom96Otherwise if you try to do:
13:34:44Araqdom96: I hope insertAtCursor() copies the string for you ...
13:34:46shevyok wait
13:34:56dom96var someSeq: seq[string]
13:35:03dom96someSeq.add("This will fail.")
13:35:06shevywhat is a sequence or a list. is that like an array? three members like ["foo","bar","baz"]
13:35:11dom96You will get a SIGSEGV error.
13:35:16dom96shevy: yep.
13:35:28dom96shevy: In Nimrod-land an Array cannot grow dynamically though.
13:35:35shevyok so it is static
13:35:39dom96yep
13:35:45dom96A sequence is not.
13:35:49dom96Araq: hrm.
13:35:56shevysee, it's those little things that need to fit together into my brain first :)
13:36:12dom96shevy: Well I'm glad you're finally asking about this stuff :)
13:36:17shevywell
13:36:21shevybaby steps, baby steps
13:36:29shevyI am going to climb the nimrod mountain one day
13:36:35dom96:)
13:37:17dom96Araq: I have no idea if it does: http://developer.gnome.org/gtk/2.24/GtkTextBuffer.html#gtk-text-buffer-insert-at-cursor
13:38:12Araqdom96: I'm pretty sure it does copy
13:38:42Araqabout the "leak": I can't see how that code can even test for a leak ...
13:39:09dom96What? I never said anything about a "leak".
13:39:49dom96hrm, changing that string to a variable certainly causes some compilation errors.
13:39:54*dom96 doesn't get why
13:40:28Araqoh lol
13:40:32AraqI misread :-)
13:40:55dom96I suppose a const string .len gets optimized into a int literal
13:41:00Araqyep
13:41:06Araqindeed :-)
13:41:48fowli read leak too
13:41:59fowlweird o_O
13:42:16dom96where did you read "leak"
13:42:37dom96You read "memory leak" instead of "memory corruption"?
13:42:54dom96Did your brain skip until the last word on that line? heh
13:42:55fowlyeah but i think it was because "look" was on the next line
13:43:02dom96heh yeah
13:43:19dom96well changing it to a var doesn't change a thing.
13:48:07dom96Well this works correctly: https://gist.github.com/4cc61e68406d4be3bc75
13:52:41Araqah-ha!
13:52:54Araq str.len.gint # hm
13:53:04Araqwhat's insertAtCursor declared like?
13:55:17dom96proc insert_at_cursor*(buffer: PTextBuffer, text: cstring, len: gint){.
13:55:17dom96 cdecl, dynlib: lib, importc: "gtk_text_buffer_insert_at_cursor".}
13:56:34Araqand varstr.len didn't compile right?
13:57:11dom96yeah
13:57:32Araqthat's fine :P
13:59:36Araqdom96: put the 'var str = """ ' in the 'for' loop please
13:59:42Araqand test again
14:00:03Araqyou'll get a "reliable" crash then should insertAtCursor not copy properly
14:01:06dom96keep in mind, it also fails with const
14:01:39dom96And no I do not get a crash
14:02:02Araqyou said you get a memory corruption
14:02:15Araqoh so the buffer's content is wrong?
14:03:28dom96I don't know if it's a memory corruption
14:03:50dom96All I know is that placeCursor fails
14:04:01dom96It places the cursor in a different position.
14:04:08Araqoh come on
14:04:31Araqhow should I grasp that?
14:05:11AraqI'd guess gtk doesn't like your way of inserting multiple lines
14:05:25Araqso its internal line numbering gets screwed
14:05:33dom96But why does it only fail when I put it in a function?
14:05:46Araqtry to insert single lines only
14:07:38AraqI can't test your code right now
14:07:45Araqwill try it later
14:09:01dom96ok, that's all I wanted :P
14:09:37AraqI've documented the JS backend again
14:09:45Tasser\o/
14:09:49Tasserhow's the speed?
14:09:55Araqwith "known bugs: * exception handling does not work" :P
14:10:03AraqTasser: dunno
14:10:13Araqshould be close to native JS's speed
14:12:21Araqbut exceptions don't work yet
14:18:40Tasserhmm
14:18:56TasserI'll learn some lisp and tell you wherever conditions are worth it...
14:35:03Araqconditions will be supported ;-)
14:35:12Araqit's quite easy now that we have closures
14:51:25fowldoes {.inline, cdecl.} make sense
14:56:30Araqno
14:56:47shevyhehe
14:56:50shevy<Tasser> I'll learn some lisp and tell you wherever conditions are worth it...
14:56:52shevy^^^^ wheeeeeeeeeeeee
15:04:02dom96hrm, I think I finally isolated the dreaded scroll issue :P
15:08:08*dom96 deserves a break
15:09:19*fowl is now known as fowlzzzzzzzzzzzz
15:18:37*shevy quit (Ping timeout: 240 seconds)
15:27:49*Boscop joined #nimrod
15:30:34*shevy joined #nimrod
15:52:34dom96Yes, you read that right.
15:52:50dom96The bug that took me EONS to fix is finally fixed.
15:53:04dom96:)
15:53:48Araqawesome
15:53:53Araqwhat was the cause?
15:54:10dom96The most stupidest thing ever.
15:54:19dom96And I still don't understand it
15:54:42dom96Hrm, well I guess it makes sense.
15:54:57dom96The GtkWindow was shown before widgets have been initialized.
15:55:30shevyyay
15:55:32shevyaporia for the win!
16:00:43dom96:D
16:09:35dom96Araq: So does --def work now then?
16:09:46Araqworking on it
16:12:30dom96alright.
16:37:12dom96You know guys, we should all tip Araq :P
16:37:13dom96https://www.gittip.com/
16:39:03Araqthat would be sweeeeet :-)
16:39:19AraqI've always said
16:39:38Araqgimme 1 Million €/$ and I'm gonna work on Nimrod full time :D
16:40:34dom96$ 3.00 Araq unclaimed!
16:40:35dom96Dude.
16:40:44dom96You already have money waiting for you 0_o
16:40:49dom96https://www.gittip.com/about/unclaimed.html
16:41:29Araqcool
16:42:00dom96Did you not receive an email about it or something
16:42:00dom96?
16:42:15Araqno ...
16:42:17*dom96 wonders who tipped you
16:43:06dom96This website is actually quite cool.
16:43:19dom96You can set up recurring tips I believe.
16:46:37dom96Araq: How am I making the world better?
16:57:37Araqbrb#
17:19:31Araqwhen did I get the tip?
17:19:45dom96No idea
17:22:54Araqdom96: by creating Aporia the nicest IDE for Nimrod.
17:23:18dom96Well take a look at what I wrote.
17:23:18dom96https://www.gittip.com/dom96/
17:23:46dom96hrm, maybe I should make it "by creating Aporia the nicest IDE for Nimrod, one which also is a perfect replacement for Gedit."
17:24:58Araqyeah
17:28:19dom96I think I will implement inotify so that when files get edited outside of Aporia, Aporia will know about it
17:28:39Araqyeah I was about to make that a feature request :P
17:31:47shevyhehe
17:32:00shevybluefish has that too
17:32:31shevyon the tabs, if you click on another tab, then click on a new tab, the "file" in the buffer is checked whether it was modified... if yes, it will display a popup menu notifying the user
17:33:07Araqit's important to not bother the user too often with this message
17:33:26Araqwhen I edit logfiles with notepad++ it's always quite annoying
17:33:37Araqand I can't use anything else for logfiles :P
17:33:51Araqas I need the "count occurances" feature ;-)
17:34:01Araqhrm aporia should get that feature ...
17:36:50shevyyeah Araq
17:36:55shevyI dont like popups much either
17:36:58shevythey interrupt the workflow
17:37:18Araqtrue
17:37:42Araqaporia should write "edited externally" in red in the status bar instead
17:37:59Araqand provide a "reload" button
17:38:13Araqno popups in aporia :-)
17:38:24Araqthe search rules already as it doesn't popup
17:45:20Araqso ...
17:45:23shevyyeah
17:45:26shevyor an extended status bar
17:45:30Araqhow do I receive the money? :-)
17:45:33shevyI would not mind a small widget on the bottom right
17:45:55shevystatus bar usually is fairly smallish
17:46:10shevy"This program has found an error and will terminate in 3 seconds."
17:46:12shevy^^^ status bar
17:46:13shevy:D
17:52:31dom96Araq: I like your idea
17:52:37dom96Araq: Do you know who tipped you?
18:00:46Araqno
18:00:55Araqstill figuring out this gittip thingie
18:04:12dom96Also does that person pay you 3 dollars per week? 0_o
18:04:27dom96Because that's quite nice
18:05:36Araqso it seems
18:05:41Araqbut: "Your balance is $0.00."
18:05:57Araqso I haven't got any money yet?
18:06:04Araqbut will get next friday?
18:06:44dom96Did you claim that money?
18:08:01dom96Seems you will get the money next friday yes.
18:08:38Araqdunno how to "claim" it?
18:08:44Araqthe website is confusing
18:08:46Araqwell not really
18:09:02Araqbut it has like no buttons whatsoever to do anything
18:09:05dom96I think you already did.
18:09:21dom96Does it tell you anything about how much you will receive?
18:09:42dom96if I got to your account it tells me "Araq receives $3.00 per week."
18:10:00dom96*go
18:12:13dom96https://www.gittip.com/about/#details
18:15:03Araqyeah it says that
18:15:12AraqI receive $3 per week
18:15:26dom96That's pretty cool.
18:16:00dom96The tips are anonymous. So we won't know who is giving them to you heh
18:17:28Araqyeah
18:17:31Araq"Also, you can’t gittip more than $24 a week per person. "
18:17:35Araq:-/
18:17:44Araqgetting rich has never been easier, hu?
18:18:25dom96That means a single person can't tip another single person more than $24.
18:18:35dom96It doesn't mean that in total you can't have more than $24
18:18:38dom96from multiple sources :P
18:19:04Araqwell guess what. I know.
18:19:18dom96Wasn't sure if you knew :P
18:31:27dom96everyone uses travis nowadays it seems
18:35:38dom96Araq: What are your thoughts on what gedit does? http://grillbar.org/files/gtkinfobar.png
18:35:41dom96i.e. the GtkInfoBar?
18:36:09Araqseems good enough
19:00:39Araqnice ...
19:00:47Araq--usages doesn't work at all ...
19:25:59dom96why not?
19:26:22Araqcause you have to give it the "proper" column
19:26:35Araqwhich is easy for aporia but hard for a human being :P
19:26:57Araqand the compiler still does 'raiseRecoverableError' which sucks
19:27:05AraqI'm fixing it
19:38:33Amrykidrawr. what happened to the windows build server? 0_o
19:39:08AraqI lost the password :P
19:39:22Araqand zahary is in holidays
19:41:57dom96I have the password
19:42:05dom96I'm just too lazy to restart it :P
19:42:09Araqcool
19:43:32*Amrykid jumps out the window
19:44:39dom96Amrykid: nooooooooooo
19:46:45Amrykidwheres the bundled gcc?
19:47:34dom96install mingw
19:48:00Amrykidthat doesn't answer my question and yes, i know that.
19:48:43Amrykidnvm. lost interest again
19:49:01Araqit's in $nimrod/dist
19:50:54dom96sorry, my answer wasn't very helpful.
19:51:56Amrykidits not in dist.
19:52:13Amrykiddom96, its fine...
19:52:22Araqit's in dist for me ...
19:52:46Araqdist/mingw/bin ...
19:53:10Araqthough I never install Nimrod properly
19:54:58Amrykidit doesn't exist in source zip from github nor on the repo itself.
19:55:12Araqthat's quite possible
19:55:14Amrykidunless github just doesn't zip exe(s)
19:55:29Araqwhy should the source distribution include it?
19:56:08Amrykidimo, it shouldn't. the problem lies that the default config points to it, thus require manual modification every single time.
19:56:43AraqI see. hm.
19:57:17Araqwell you can easily override any configuration setting
19:57:28Araqwithout editing the default configuration file
19:57:38*fowlzzzzzzzzzzzz is now known as fowl
20:25:46Araqthe double click bug is really annoying
20:25:51Araqhappens quite a lot now
20:25:55Araqdid you change that?
20:28:12dom96hrm? What double click bug?
20:28:20Araqin aporia
20:28:27Araqdouble clicking the tab bar
20:29:31dom96I don't get what happens quite a lot?
20:30:26Araqyou click to scroll through the tabs
20:30:40Araqyou click once too often
20:30:44Araqnew tab appears
20:30:46Araqwtf
20:31:17dom96Yes, well I have not changed a thing.
20:31:29dom96It never checked whether you click on the empty space.
20:31:34Araqwell fix it anyway
20:31:37dom96You're just double clicking more often...
20:31:42Araqperhaps
21:50:19dom96good night
21:50:35Araqbye, dom96
21:56:54fowlwhy is "end" a keyword
22:12:02fowlalso "out"?
22:17:02Araqfowl: 'end' for the builtin templating system
22:17:14Araq'out' because the language had 'out' parameters once
22:17:20shevyhmm
22:17:30Araqand maybe I will add them again some day
22:17:33shevyhow long have you been working on nimrod, including a conceptual "thinking" phase?
22:17:59fowlout is now var then or were they different
22:18:04Araqsince 2004 according to the copyright notes
22:18:19Araqfowl: 'out' is quite the same as 'var' yes
22:36:29fowlagh now i get could not load: libchipmunk.so.6.1.1
22:36:46Araqwell?
22:36:53Araqinstall it then
22:37:00fowlits in /usr/lbi
22:37:02fowllib*
22:40:40Araq32bit vs 64bit issue?
22:45:04fowlhmm the sfml libs are in /usr/lib too and it finds them fine
22:45:33AraqI noticed that this error message often also means that the lib*.so is broken
22:46:01AraqGCC seems to like producing a broken lib*.so without any errors
22:46:09Araqdon't ask me why
22:47:16AraqI suppose you built libchipmunk from source?
22:48:17fowlyep im going to rebuild it in a sec
22:53:06fowlsame error
22:53:27Araqwell you need to rebuilt properly :P
22:54:07fowli dont think anythings wrong with the lib, the demo that comes with it runs
22:54:27Araqhm
22:56:50Araqtry do edit lib/system/dyncalls.nim
22:57:08Araqreplace RTLD_NOW with RTLD_LAZY
22:58:59fowlcould not import: cpvlength
22:59:07fowli know that this is imported
22:59:10fowler exported
22:59:35fowlnope guess not
23:06:49Araqyou can check the exported symbols with 'nm' (in case you don't know already)
23:14:26Araqlet me know if you got it to work, I have to sleep now
23:14:28Araqgood night
23:24:59fowlI was still using 6.0.0 symbols and headers and now its on 6.1, minor api changes i guess
23:25:07fowlnight