<< 14-06-2014 >>

00:00:16dom96Gah, I really need to sleep.
00:00:18dom96Good night.
00:00:29Roinit is basically about sending some initial commands and then waiting for a ping request from the server to send him a pong, within that you can send other commands to join channels, change names etc. pp.
00:00:34Roingood night dom96 o/
00:01:07EXetoCeasy as pie
00:01:12EXetoCor cake
00:01:53RoinWell the protocoll itself is seriously simple
00:02:06RoinBut I say that for I havent coded for over 6 months now
00:04:49EXetoCdom96: it does seem like a good module. I just need to implement what you suggested
00:08:18fowlEXetoC, you want to take over my irc server
00:11:29fowli should stop starting projects
00:12:30*superfunc_ joined #nimrod
00:14:20Roingood night o/
00:14:32EXetoCRoin: good luck. bye
00:15:27EXetoCfowl: well we do indeed need some more irc servers, but I can't be bothered
00:15:43*BitPuffin quit (Ping timeout: 240 seconds)
00:15:46superfunc_this may be due to exhaustion, but why can a function take a sequence of generics but a type can't have one as a member?
00:15:48EXetoCfowl: when will you finish something?
00:16:00EXetoCI wonder when I will finish something
00:16:11fowlwhen i die i'm to be buried with all my [unfinished] projects
00:16:15superfunc_typeclasses*
00:16:19superfunc_not generics
00:16:36fowlsuperfunc, seq[sometypeclass]? i dont think you can
00:16:54superfunc_yeah, proc foo(f: seq[MyTC]) = nil works
00:17:25superfunc_but having it declared in a type gives issue
00:19:17EXetoCfowl: thinking of typedesc are you?
00:19:37fowlsuperfunc, you can use it in a type
00:19:41EXetoCthat should work if the concrete type can be inferred
00:19:53fowlsuperfunc, type tfoo [x: mytc] = object xs: seq[x]
00:20:27EXetoCthat makes sense
00:20:55VarriountHm.. Must a sequence which 'contains' structures that are sub-types of its base type always contain merely pointers to it's items, instead of a contiquous block of structs?
00:22:07fowlVarriount, seq has to
00:22:52EXetoCwouldn't you have to know about every possible sub class otherwise?
00:22:56flaviuYes, what if the subtypes are bigger than the base types?
00:24:12*Joe_knock joined #nimrod
00:24:46superfunc_Ok, lemme try that
00:24:47EXetoCwhich you could, with some changes or additions to the object construct
00:26:07VarriountHm.. Odd
00:26:39Varriounthttps://gist.github.com/Varriount/87736608f2645d6b36c0
00:27:21VarriountIs the sequence something like an array of pointers behind the scenes, or are offsets being used?
00:27:43fowlVarriount, you are lucking out if its working for you
00:27:46EXetoCwell
00:28:20fowlVarriount, i get this: [[x = 1, ], [y = 0, x = 1]]
00:28:34EXetoCwhat about hidden pointers?
00:28:40flaviuVarriount: Just take the C source
00:28:46flaviu*check
00:29:12fowladd a foo(x:3) at the end
00:29:27VarriountI get [[x = 1], [y = 4380736, x = 1], [x = 1]] when I do that.
00:30:15flaviuVarriount: There's your problem then. Nimrod has a bug
00:30:15EXetoC1, garbage, 1, 3
00:30:19VarriountI'm confused with what's going on.
00:30:27flaviuWhat EXetoC said
00:30:34fowlVarriount, its just garbage
00:30:46VarriountHm.. Nimrod shouldn't allow that, should it?
00:30:52flaviuNo, its a bug
00:31:00VarriountIs it filed anywhere?
00:31:21flaviuNot as far as I know
00:31:28Varriountflaviu: The thing is, the bug won't exist with reference types...
00:31:34EXetoCvariants to the rescue?
00:31:53VarriountEXetoC: I'm just poking holes in things, I don't need a workaround.
00:32:03EXetoCdepends on several factors of course. extensibility being one
00:32:05EXetoCok
00:32:44VarriountHow should Nimrod handle cases like this? I can see it being needed for things like polymorphism
00:33:07flaviuVarriount: Fail? "Element sizes must be equal"
00:33:22EXetoCshouldn't you be using references then?
00:33:29VarriountEXetoC: Yes
00:33:42VarriountBut what should the Nimrod compiler *do*?
00:33:54fowlVarriount, same problem if you do var my: Foo = Bar(x:1,y:2)
00:33:56VarriountSilently switch to using references? Error?
00:34:16EXetoCdisallow it probably, unless you have a way to control extensibility
00:34:29flaviuVarriount: Just tell the programmer he doesn't know what he's doing and tell him to use refrences
00:34:33VarriountHm. Does this break garbage collection?
00:34:37EXetoCor maybe just slice
00:35:02EXetoCbut perhaps not implicitly
00:35:09flaviuEXetoC: Yelling loudly is the best way to go, doing things quietly is just an accedental bug waiting to happen
00:38:25superfunc_fowl: thanks
00:38:32superfunc_I was derping hard
00:40:53Varriountflaviu: Is there any way to specify, in a parameter, that you want *exactly* that sized type, and not a subtype?
00:41:22VarriountOr is the bug I found an instance of seq.add being derpy?
00:42:20EXetoCdon't think so. see system.nim
00:42:31EXetoCcould be the matching engine that's acting weird again
00:42:34flaviuVarriount: Maybe take sizeof the parameter?
00:44:02fowlthis is intended behavior
00:44:08fowlsee var my: foo = bar(x:1, y:2)
00:44:55Varriountfowl: Eh... I don't think so
00:45:37VarriountWait, no.
00:45:39VarriountYour right
00:45:59VarriountI think repr() is just being bad.
00:46:41flaviufowl: In `var my: foo = bar(x:1, y:2)`, `my` gets widened in size to a `bar`.
00:47:20fowlflaviu, not in my compiler
00:48:28fowlassert(sizeof(bar) - sizeof(my) == sizeof(int)
00:48:29fowl)
00:48:31flaviufowl: You're right, I was lookign in the wrong place
00:49:14fowlthats two "you're right"s in a row :D
00:53:25*superfunc_ quit (Ping timeout: 246 seconds)
00:53:29flaviufowl: Nah, you're actually wrong, I was misthinking in thinking that I was misreading the code
00:56:18flaviufowl: C code: `var a: foo = bar(...)` = `bar83006 LOC1;...`, `sizeof a` = `sizeof(foo83004)`
00:59:51*exetest joined #nimrod
00:59:51*exetest quit (Read error: Connection reset by peer)
01:00:21*exetest joined #nimrod
01:00:21*exetest quit (Remote host closed the connection)
01:01:34*exetest joined #nimrod
01:01:34*exetest quit (Remote host closed the connection)
01:02:13*exetest joined #nimrod
01:02:22exetestthere we go
01:03:08EXetoCexetest: alright
01:04:45fowlflaviu, you're wrong
01:04:53fowlflaviu, "my" wouldn't be named LOC1
01:07:13flaviufowl: Oh, you're right. In that case, its a bug
01:08:16fowler.. it looks like it puts bar(..) in a new variable and copies the parent data for it
01:08:37fowl a_83010 = LOC1.Sup;
01:08:57exetestsup bro
01:09:13flaviufowl: You're right again
01:09:39flaviuI still think that's a bug that will cause unknown problems
01:13:10*ehaliewicz joined #nimrod
01:23:10*exetest quit (Remote host closed the connection)
01:54:29*q66 quit (Quit: Leaving)
01:59:06VarriountTwo python modules that nimrod should have: http://docs.python-requests.org/en/latest/ and http://crsmithdev.com/arrow/
02:20:51*Joe_knock quit (Quit: Leaving)
02:39:51*freezerburnv joined #nimrod
02:52:42*springbok_ is now known as springbok
03:09:40*xtagon_ joined #nimrod
03:13:03*xtagon quit (Ping timeout: 240 seconds)
03:13:49*def-_ joined #nimrod
03:17:23*def- quit (Ping timeout: 252 seconds)
03:24:51*bjz joined #nimrod
03:32:43*saml quit (Ping timeout: 240 seconds)
04:11:16*shodan45 joined #nimrod
04:22:43*flaviu quit (Ping timeout: 240 seconds)
04:41:30*freezerburnv quit (Quit: freezerburnv)
05:09:55*mal`` quit (Ping timeout: 240 seconds)
05:12:36*mal`` joined #nimrod
05:13:22*nande quit (Remote host closed the connection)
05:15:51*xtagon_ quit (Read error: Connection reset by peer)
05:51:05*BitPuffin joined #nimrod
05:53:04*zshazz_ quit (Quit: Leaving)
05:55:04*superfunc_ joined #nimrod
05:56:15*Demos quit (Read error: Connection reset by peer)
06:02:12*def- joined #nimrod
06:05:08*def-_ quit (Ping timeout: 252 seconds)
06:26:37*superfunc_ quit (Ping timeout: 246 seconds)
07:46:09*kemet joined #nimrod
07:53:23*kemet quit (Read error: Connection reset by peer)
07:53:29*kemet1 joined #nimrod
07:57:39*ehaliewicz quit (Remote host closed the connection)
07:59:12Araqping dom96
08:48:36*Matthias247 joined #nimrod
08:52:35*kunev joined #nimrod
08:59:05*dom96_and joined #nimrod
08:59:17dom96_andAraq: sup?
08:59:17*Trustable joined #nimrod
09:00:24*freezerburnv joined #nimrod
09:01:57*dom96_and quit (Client Quit)
09:04:47*freezerburnv quit (Ping timeout: 245 seconds)
09:13:35Araqdom96: I'm tired of fixing aporia, like giving it an icon and passing --app:ui
09:13:45Araqand adding GTK Dlls
09:14:16AraqI'll build a proper windows installer
10:01:16*freezerburnv joined #nimrod
10:05:44*freezerburnv quit (Ping timeout: 240 seconds)
10:16:10*def- left #nimrod (#nimrod)
10:21:17*def- joined #nimrod
10:24:45*def- quit (Client Quit)
10:26:47*def- joined #nimrod
10:39:58*io2 joined #nimrod
10:48:20TrustableHi everyone / Hallo zusammen
10:58:43*q66 joined #nimrod
10:58:43*q66 quit (Changing host)
10:58:43*q66 joined #nimrod
11:04:49*Matthias247 quit (Read error: Connection reset by peer)
11:13:41*kemet1 quit (Quit: Instantbird 1.5 -- http://www.instantbird.com)
11:23:16*delian66 joined #nimrod
11:35:53*BitPuffin quit (Ping timeout: 264 seconds)
11:39:32*delian66 quit (Quit: Terminated!)
11:40:00*ack006 joined #nimrod
11:40:31*ack006 left #nimrod (#nimrod)
11:42:07*saml_ joined #nimrod
11:48:20*BitPuffin joined #nimrod
11:50:45*freezerburnv joined #nimrod
12:19:08*untitaker quit (Ping timeout: 252 seconds)
12:20:40*freezerburnv quit (Quit: freezerburnv)
12:24:49*untitaker joined #nimrod
12:32:47*flaviu joined #nimrod
12:52:08Araqservus Trustable
12:52:40TrustableBetter use English or German here?
12:52:47Araqenglish
12:53:42TrustableI'm new to nimrod and I have a some very small formal change request for the docs.
12:54:09AraqCSS changes?
12:54:57Trustableyes, please add body {background: white}, because by default background is black, so I can't see some text
12:56:07EXetoCforeground is set but not the background?
12:56:18Trustableexacly
12:56:29Trustableexactly
12:57:06Araqok, what else?
12:57:13TrustableAnd I think "realtime" should be spelled "real-time" in docs.txt
12:57:30AraqI think both spellings are fine
12:57:40Araqbut ok
12:59:14TrustableI'm really lucky that I found nimrod, because I was looking for such a language for years.
12:59:42TrustableI will start now to work with it.
13:00:01Araqwe're not "notable" enough for wikipedia, so people don't know about it, so it stays not "notable"
13:01:09TrustableI'm not sure about the "Relevanzkriterien" for programming languages.
13:03:09Trustablebtw, I found nimrod over this change: https://de.wikipedia.org/w/index.php?title=Zeittafel_der_Programmiersprachen&diff=128421042&oldid=128158531
13:12:23*darkf quit (Quit: Leaving)
13:19:45AraqVarriount: where are your CEF bindings? babel doesn't know about them
13:23:58EXetoCdom96: how well are you able to find stuff by browsing the gtk reference?
15:34:32TrustableI have a problem with polymorphism, perhaps someone of you can look at my code: http://pastebin.com/GdBw0zvK
15:35:46*saml_ quit (Quit: Leaving)
16:32:35*BitPuffin quit (Ping timeout: 244 seconds)
16:32:38EXetoCTrustable: it might be related to the bugs that were discussed yesterday
16:33:34Trustablethanks for the answer
16:33:35EXetoCit's quite likely that it is in fact. I don't know if there are any workarounds
16:33:56EXetoCbut, you should prefer references anyway
16:34:21Trustableok, please tell my how
16:35:38EXetoCTrustable: PPerson = ref TPerson, var person = PPerson(name: ...)
16:36:04EXetoCI didn't know you could reference superclass fields in there
16:39:16EXetoCand then "PStudent = ref TStudent". I think that's the correct way
16:39:55Trustablethank you very much, that works
16:46:08EXetoCotherwise the student object must basically be converted to a person object, which means that the student component must basically be omitted
16:56:16*Demos joined #nimrod
17:11:38*Matthias247 joined #nimrod
17:15:35*bjz quit (Ping timeout: 252 seconds)
17:43:39*freezerburnv joined #nimrod
17:47:38*reactormonk_ quit (Remote host closed the connection)
17:50:47EXetoCAraq: pas2nim chokes when procedure/function comes before the field name. did you not stumble upon that when wrapping gtk2?
17:52:00fowlew you're using pas2nim? :(
18:03:42EXetoCshould I prefer c2nim? patching pascal definitions with regex search/replace actually seems possible
18:14:39*BitPuffin joined #nimrod
18:16:32EXetoCugh, properties
18:18:07BitPuffinEXetoC: ugh, settings
18:18:35EXetoCrly
18:19:20BitPuffinugh procedures?
18:22:31*flaviu quit (Quit: Leaving.)
18:22:40*flaviu joined #nimrod
18:38:32EXetoCBitPuffin: gotta search and replace them pascal properties
18:40:08BitPuffinwhy
18:40:24EXetoCcus pas2nim
18:41:07VarriountAraq: My CEF bindings are untested. I've never been able to compile CEF, nor has dom96 (I think)
18:43:13EXetoCno, I need to store the type name then. too complicated
18:47:25EXetoCthat's even more of a reason to patch pas2nim. maybe I'll try, because it would be great to have gtk3 for example
18:51:15BitPuffinEXetoC: again, why
18:51:29EXetoCok apparently that guy has gotten pretty far and he has shared gtk3.nim
18:51:54EXetoCso, screw that :p
18:52:17EXetoCBitPuffin: because pas2nim don't like em
18:55:49BitPuffinEXetoC: em?
18:56:01BitPuffinwhat's europamästerskapet got to do, got to do with iiit
19:02:10dom96hello
19:02:56*Varriount|Mobile joined #nimrod
19:19:05*vendethiel quit (Quit: q+)
19:33:29AraqEXetoC: I used pas2nim only for the procedural wrappers, I never added property/class etc. support
19:33:51*freezerburnv quit (Quit: freezerburnv)
19:34:06Araqlots of pascal wrappers don't use these features
19:39:11OrionPKyay, ircfamiliar is working with nginx
19:39:19OrionPKjust a bit more cleanup then it goes on github
19:40:31AraqVarriount|Mobile: well you better tell the guy about libCEF being untested. However, with a bit of luck he'll help you.
19:45:13*fowl quit (Quit: Derogatory terms for gynecomastia can include moobs (for male boobs) and bitch tits.[34])
19:45:21EXetoCAraq: ok, I assume that gtk2 didn't then
19:45:31*Boscop quit (Changing host)
19:45:31*Boscop joined #nimrod
19:45:40AraqEXetoC: yup
19:45:56EXetoCjust some sugar is it?
19:54:32dom96Varriount: Araq: I have been able to compile it, but it never worked.
19:54:37dom96So meh.
19:54:44dom96The code I wrote is on my old computer...
19:55:02*vendethiel joined #nimrod
20:04:36*Jesin quit (Quit: Leaving)
20:28:43Araqflaviu: looks like your PR that changed the JSON == broke our tester. so fix it.
20:29:48VarriountOr I'll release fowl on you.
21:15:13*skyfex joined #nimrod
21:17:14TrustableWhat is a fast way to concatenate strings?
21:21:32Araq'add' or '&'
21:24:15TrustableAraq: thx, add is fast
21:40:41dom96Araq: I'd rather you wait until I release 0.2 of Aporia.
21:40:46dom96Araq: That could take a while though
22:12:05Araqfyi, a really good article about JITs: http://blog.reverberate.org/2012/12/hello-jit-world-joy-of-simple-jits.html
22:12:46Trustabledom96: Do you need help on developing?
22:14:29dom96Trustable: always
22:14:34Varriount|MobileHm.. Does the Nimrod VM have a JIT? ( Does it need one?)
22:14:40dom96Trustable: PRs are always welcome, take a look at my todo.
22:15:04AraqVarriount|Mobile: no, it does not have a JIT and doesn't need one
22:15:15Varriount|MobileTrustable: Or pick your favorite programming library, and port that
22:15:54Varriount|MobileAraq: Why? (Not saying your decision is bad, I'm just curious about your reasoning)
22:16:36Trustabledom96: Already looked on your to-do list, F3 shortcut for find next was missing, I just implemented it.
22:17:29dom96Trustable: I'd prefer to hold off on those type of changes. I want a proper keyboard shortcut system in Aporia.
22:17:37AraqVarriount|Mobile: the VM has been designed to run macros fast, macros create nimrod's AST, the AST is GC'ed, proper machine code makes all these things very hairy
22:17:42dom96Otherwise we'll have a lot of shortcuts doing the same thing.
22:17:58Araqdom96: don't be that picky. :P
22:18:47TrustableWho of you is German?
22:18:48Varriount|Mobiledom96: How about implementing my DocContinue functionality it Aporia?
22:18:56Varriount|Mobile*in
22:18:58dom96Varriount|Mobile: Look at my todo.
22:19:06dom96Varriount|Mobile: There is a lot of other things to be done.
22:19:14Varriount|Mobiledom96: Look at my name
22:19:31AraqTrustable: me, def- and Matthias247 at least
22:19:44dom96Varriount|Mobile: If you can chat on IRC you can surely use your phone's browser :P
22:20:01Varriount|MobileTrustable: Araq is German. I've lived in Germany (although I'm American)
22:20:16dom96Varriount|Mobile: or you can just take my word for it.
22:27:34TrustableAraq: I'm a bit curious that the website doesn't show anything about 0.9.5, but it is in the Arch repository.
22:28:08Araq0.9.5 doesn't exist
22:28:23Araqit's a development version
22:28:30Trustableok
22:28:39Araqonce it's ready it will be 0.9.6
22:29:25Araqno idea why the arch people decided it's a good idea to package the github version
22:29:56dom96They didn't?
22:30:02dom96https://www.archlinux.org/packages/community/x86_64/nimrod/
22:30:16dom96Unless that is actually 0.9.4
22:30:19dom96er 0.9.5
22:30:37EXetoCthere's a git package too
22:30:38dom96https://aur.archlinux.org/packages/nimrod-git/
22:30:47dom96That obviously is 0.9.5 because it is from git.
22:30:56dom96and the current git version is indeed 0.9.5
22:33:57*kunev quit (Ping timeout: 245 seconds)
22:38:43flaviuCan someone merge https://github.com/Araq/Nimrod/pull/1271 ? Really basic, just adds a hash method for enums.
22:39:21*flaviu quit (Quit: Leaving.)
22:39:29*flaviu joined #nimrod
22:41:11Araqflaviu: your last "simple" merge broke the tester
22:41:36Araqand why do we need hashing for enums? use an array instead
22:42:46flaviuping
22:42:51flaviuOh, thats better
22:45:43NimBotnimrod-code/packages master a02d437 def [+0 ±1 -0]: Add rsvg module
22:45:43NimBotnimrod-code/packages master b743815 def [+0 ±1 -0]: Fix commas
22:45:43NimBotnimrod-code/packages master c893ad8 Dominik Picheta [+0 ±1 -0]: Merge pull request #64 from def-/master... 2 more lines
22:49:03flaviuAraq: Sorry, I didn't see the message earlier because of IRC difficulties. It's actually fowl's PR, but I'll see what I can do anyway
22:57:35*darkf joined #nimrod
23:13:20*io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist)
23:29:27Araqflaviu: sorry to have blamed you when it's actually fowl's fault
23:45:01*Matthias247 quit (Read error: Connection reset by peer)
23:49:36*Trustable quit (Quit: Leaving)