[01:11:32] *** fredreichbier has joined #ooc-lang [01:11:32] *** ChanServ sets mode: +v fredreichbier [01:14:35] <fredreichbier> yo! [01:24:15] <duckinator> !oy [01:24:47] <fredreichbier> yess! [01:31:57] <Oddity007> !ooon [01:32:19] <duckinator> heh [01:32:45] * duckinator is looking at ooc's socket stuff a bit more [01:35:12] <duckinator> hmm [01:36:08] <duckinator> wtf [01:36:18] [01:36:36] <duckinator> the hell? it passes 0 args, and 0 args are required -.- [01:36:56] <duckinator> ooh, i see... [01:37:22] <duckinator> ok, not sure how the fuck this occurred [01:37:54] <duckinator> but i see what the issue is at least :P [01:38:41] <duckinator> SocketError extends NetError which extends OSException which has init(=message) and init~noOrigin() [01:39:06] <duckinator> NetError: class extends OSException { init: super func } [01:39:13] <duckinator> apparently it wants the message, but it didn't before? [01:41:11] <duckinator> hmm, ok, it was a fail on my part. not sure how it ever worked right [01:41:12] <duckinator> bbl [01:42:00] <duckinator> wait, no, not a fail on my part i don't think. *implodes from confusion*...anywho, bbl [01:43:08] <curtism> that's why i usually stop using ooc [01:43:15] <curtism> implosions from confusion [01:56:29] <locks> yup [01:56:42] <locks> there's a surplus of shit that works just or even barely [02:04:32] <fredreichbier> i found it fun anyway. :p [02:26:34] *** copyboy has quit IRC [02:33:02] *** shahri has joined #ooc-lang [02:45:03] <duckinator> hi [02:46:36] <Oddity007> Uh oh [02:46:52] * Oddity007 immediately looks ad the sdk source [02:47:01] <Jetbeard> don't do it you madman [02:48:10] <Oddity007> panic is now over [02:48:34] <Oddity007> For a second, I thought the sdk was doing something like capturing FPEs and throwing exceptions [02:49:12] <Jetbeard> whereas it turns out it's actually capturing children and throwing them off of tall buildings [02:49:34] <Oddity007> The throwing children would be better [02:49:34] <Jetbeard> boy is that a relief [02:50:11] <Oddity007> doing anything complicated in a signal handler is bad mojo [02:57:44] <duckinator> lol? [02:58:11] <duckinator> here is a question [02:58:43] <Jetbeard> i am excited for the arrival of the question [02:58:44] <duckinator> how do I get to OSException init~noOrigin() from NetError [02:58:49] <duckinator> NetError: class extends OSException { init: super func } [02:58:58] <duckinator> that lets me use OSException init, but not init~noOrigin [02:59:05] <duckinator> (which i kinda need) [03:11:22] <fredreichbier> what about ... init: super func ~noOrigin? [03:12:43] *** shahri_ has joined #ooc-lang [03:13:58] *** boredomist has quit IRC [03:14:12] *** shahri has quit IRC [03:19:01] *** Oddity007 has quit IRC [03:19:37] *** Oddity007 has joined #ooc-lang [03:20:19] *** Jetbeard has quit IRC [03:20:36] *** phest has joined #ooc-lang [03:21:05] <phest> hello [03:21:40] <phest> dipping my toes in the ooc waters, I'm trying to generate c files with no luck [03:21:44] *** mickael9 has quit IRC [03:22:12] <fredreichbier> hey phest [03:22:14] <phest> this doesn't generate anything I can find: rock -onlygen hello.ooc [03:22:25] <fredreichbier> there should be .c files in rock_tmp [03:22:37] <phest> in the same dir where hello.ooc is? [03:22:52] <fredreichbier> yep [03:23:00] <phest> no luck [03:23:04] <fredreichbier> strange [03:23:17] <fredreichbier> and there are no errors in the compilation process? [03:23:20] <phest> I tried to specify a path, I even tried to create rock_rmp/ [03:23:37] <phest> let me try with -v [03:24:28] <phest> looks ok, no errors [03:24:47] <phest> I'm on osx btw [03:25:26] <fredreichbier> hmm [03:25:42] <phest> using rock-0.9.1-osx64.tar.bz2 [03:25:47] <fredreichbier> are you running it from the same directory? [03:26:09] <phest> no, in a parent directory [03:26:24] <duckinator> check the parent directory for rock_tmp [03:27:28] <phest> duckinator: nope.. [03:28:18] <phest> with the -v flag, the last output message is 'Finished parsing, now tinkering...' [03:28:28] <phest> should it output messages for generating? [03:29:55] <fredreichbier> does it generate an executable if you run it without -onlygen? [03:30:06] <phest> yes, it does [03:33:07] <phest> if I run 'rock -noclean hello.ooc' it does create rock_tmp/, but only array.h is in there. [03:33:42] <duckinator> what's in hello.ooc? [03:33:58] <phest> "Hello world!" println() [03:34:02] <phest> that's it [03:34:17] <duckinator> hmm .-. [03:34:23] <phest> oh and the executable works fine btw [03:34:28] <duckinator> strange [03:34:45] <fredreichbier> ohh does `-onlygen` output something like `[OK]`? [03:36:04] <phest> no, it doesnt! [03:36:12] <fredreichbier> hm! [03:37:00] <fredreichbier> is there a `.libs` directory if you're running it with `-noclean`? [03:37:44] <phest> yes there is [03:38:00] <fredreichbier> is it interesting? :D [03:39:15] <phest> uh, it's got a bunch of stuff, I can see hello.h and hello-fwd.h [03:39:21] <phest> no sign of hello.c [03:39:57] <phest> oh I think it's compiled, there's a couple of .a files [03:40:25] <fredreichbier> hmmm strange [03:40:41] <fredreichbier> you could run rock with -v so you see the actual compiler calls [03:42:20] <phest> yeah, so one thing worth noting is that calling *without* -onlygen, there's definitely messages outputed after "Finished parsing, now tinkering...", whereas with -onlygen, that's the last message (using -v) [03:42:34] <duckinator> [03:42:37] <fredreichbier> hmm! [03:43:59] <duckinator> fredreichbier: btw, your "init: super func ~noOrigin" idea is a no-go D: [03:44:01] <phest> same thing using -vv, -onlygen stops outputing right after parsing stuff [03:44:15] <fredreichbier> duckinator, sad. :D [03:44:37] <fredreichbier> phest, well that sounds like a very strange issue [03:44:58] <phest> is it complicated to build from the github source? [03:45:14] <phest> might be worth a shot? [03:45:43] <fredreichbier> well since building executables works you could just checkout the git repo and build a new rock using your current rock [03:45:46] <fredreichbier> if that works. :P [03:45:56] <fredreichbier> oh, using `-driver=combine -noclean` might be worth a shot too [03:46:29] <phest> no luck.. [03:47:30] <phest> what is combine? got a big red fail when removing the -onlygen flag [03:48:03] <fredreichbier> hm [03:48:04] <phest> nevermind, it's on the help screen :) [03:48:47] <phest> yeah so it doesn't seem to like combine [03:49:01] <phest> gonna try and download an earlier build [03:49:16] <fredreichbier> combine and sequence are the two compiler drivers. `sequence` is more effective and uses a hidden `.libs` libcache, and `combine` just throws everything to the compiler [03:49:25] <fredreichbier> what does it say for combine? [03:50:00] <phest> a ton of errors.. a lot of those are: "error: expected ?)? before ?*? token" [03:50:37] <fredreichbier> what if you do rm -rf .libs rock_tmp before? [03:50:54] <phest> wait, the first error is "./hello.h: No such file or directory" [03:51:31] <phest> weird... anyway, let me try to rm -rf [03:52:04] <phest> still fails.. [03:53:17] <fredreichbier> hmm [03:53:27] <fredreichbier> that's very strange [03:53:33] <fredreichbier> since it has to generate the .c sources at some point [03:53:39] <fredreichbier> otherwise you wouldn't get a working executable [03:58:11] <fredreichbier> welll [03:58:14] <fredreichbier> i should sleep now [03:58:17] <fredreichbier> i'm sorry. :D [03:58:21] <fredreichbier> good luck, and see you later! [03:58:25] <duckinator> 'night o/ [03:58:27] <phest> thanks for tryin, bye! [03:58:40] <fredreichbier> nightey o/ [03:58:42] *** fredreichbier has quit IRC [04:25:47] <phest> FYI, opened an issue on github [04:59:14] <phest> are there macros in ooc? [05:01:30] <duckinator> i've never seen a need for them in ooc [05:02:20] <phest> just curious [05:02:59] <duckinator> well, it doesn't, because i don't think anyone else has seen a need for them either ;P [05:03:45] <phest> looks like it was planned, couple years ago: https://lists.launchpad.net/ooc-dev/msg00022.html [05:04:23] <phest> I suppose it's called 'meta'? is that implemented? [05:06:30] <duckinator> metaclasses, i think, but idk the details [05:06:56] <Oddity007> that was an old project [05:07:02] <Oddity007> never got anywhere [05:07:47] <duckinator> Oddity007: does ooc have anything of the sort? i'm not sure it's really needed [05:08:13] <Oddity007> no [05:08:14] <duckinator> i've never had an occurrence while using ooc where i thought "gee, a macro would be great" (which IS surprising since it compiles down to C, after all) [05:08:33] <Oddity007> You should never need macros for typical programming, either [05:09:02] <Oddity007> Needing a macro typically means the language lacks something it should have [05:09:08] <duckinator> agreed. there's always alternatives, from what i've seen [05:09:53] <Oddity007> macros are popular in lisp because of it's syntax... [05:09:58] <Oddity007> and this is where I run [05:10:03] *** Oddity007 has left #ooc-lang [05:10:07] <duckinator> lol [05:13:55] <phest> I do enjoy macros but I think it's a side effect of hating objective-c (although its my bread and butter), which was a side effect of loving Ruby [05:14:26] <phest> and as a side effect of all that, I sometimes miss macros in Ruby. true story. [05:14:39] <duckinator> well, so did i [05:15:01] <duckinator> until i realized that if you're using macros in ruby, you're probably either doing it majorly wrong or using the wrong language :P [05:15:17] <duckinator> if you're wanting to use* [05:15:42] <phest> it's just that method calls in ruby are expensive .. sometimes I wish I could throw a macro instead of making a new method [05:16:05] <duckinator> see? it's because of a shortcoming of ruby :P [05:16:17] <phest> hahah.. point taken [05:16:41] <locks> what's a macro exactly? [05:16:56] <phest> yeah I don't think I should feel to bad about adding a bunch of function in ooc :) [05:17:23] <duckinator> locks: the intended purpose is something along the lines of "macro code -> larger/uglier blob of code" :P [05:17:30] <duckinator> i think [05:17:36] <duckinator> fuck if i know, everyone explains it differently [05:17:45] <duckinator> and every language with macros has them do different things [05:17:48] <phest> locks: it's a preprocessor functionality, it allows you to modify the code before it's compiled [05:18:02] <duckinator> but basically, crap -> other crap, almost always pre-compile [05:18:10] <phest> yeah, that's referring to C/C++/ObjC [05:18:29] <duckinator> iirc lisp is the same kind of deal, but using more lisp-y terms ;P [05:32:41] *** OddyPod has joined #ooc-lang [05:34:38] <phest> wow, ooc looks super promising [05:35:33] <Nilium> Did something happen? [05:36:00] <phest> you mean about my earlier issue? [05:36:16] <Nilium> No, there's just people talking in here and that's always odd [05:36:22] <duckinator> lol [05:36:26] <phest> heheh [05:36:26] <OddyPod> lol [05:36:36] <duckinator> especially when ndd's not around :D [05:36:58] <Nilium> Btw, if you have an iPad, iPhone, or iPod Touch, buy Instapaper [05:37:14] <OddyPod> heh [05:37:24] <OddyPod> Awkward placement [05:37:36] <Nilium> I didn't work on it, I'm just saying so because it's awesome and I think everyone should use it. -_- [05:37:56] <phest> speaking of iOS .... is anyone using ooc to generate C code, and then compile the generated code within another codebase? I'm thinking about maybe doing this for Mac/iOS development.. [05:37:57] <duckinator> Nilium: I've been looking into DIY cellphones. Does that explain my current financial situation enough to explain why I'll not buy that any time soon? :D [05:38:23] <duckinator> phest: it shouldn't too difficult, we just recently got FreeBSD support :) [05:38:24] <Nilium> Wouldn't those end up costing you more than alternatives? [05:38:34] <duckinator> Nilium: well, depends [05:38:59] <duckinator> my requirements are basically "can make calls, can send/receive text messages, smaller than my computer" [05:39:14] <phest> duckinator: that's part of the point of ooc, right? I just want to maje sure the concept is not a hack around ooc, but something that ooc is actually meant to do [05:39:59] <duckinator> phest: well i have no idea what the "official" priorities are for it, but i feel that portability is probably fairly high up there [05:40:32] <duckinator> i'm considering adding OpenBSD/NetBSD support, but that requires bothering to install them [05:41:04] <duckinator> which implies bothering to download them, which is a rather slow thing to attempt for me... [05:41:48] <phest> alright, I'm sold. I'll be fiddling with ooc as soon as I'm done with my current project [05:41:57] <phest> hopefully I can help out [05:42:30] <phest> heading out, thanks for your help ! [05:42:46] <duckinator> bai o/ [05:43:00] <phest> \o [05:43:09] *** phest has left #ooc-lang [05:43:39] <Nilium> Always nice to see people still find ooc interesting [05:43:50] <duckinator> mhm [05:44:13] <locks> ooc needs tlc [05:45:22] <Nilium> Can't remember, ooc uses a GC, right? [05:45:32] <duckinator> boehm or however you spell it [05:45:41] <Nilium> Did we ever add syntax for weak references? [05:45:52] <duckinator> not sure what exactly you mean by a 'weak reference' [05:46:15] <Nilium> A weak reference is a reference that isn't counted by the GC [05:46:25] <duckinator> ah, don't think we have that [05:46:27] <Nilium> So the object gets collected if it has no strong references [05:46:32] <Nilium> We should add zeroing weak references. [05:46:40] <duckinator> hm? [05:47:41] <Nilium> Means that if a reference is weak and the object it references is collected, the pointer/reference is set to null [05:47:57] <duckinator> ah, right [05:48:15] <Nilium> Meaning you can have safe weak references, which is very, very, very useful in hierarchical structures [05:49:14] <duckinator> i think the GC has a layer or two of abstraction over plain old Boehm(sp?), and if it does it should be possible to handle weak references if we track them (but don't count them as reasons to not collect something) [05:49:28] <Nilium> The GC we use, Boehm, supports zeroing weak references [05:49:35] <Nilium> It's actually really simple to support them. [05:50:04] <duckinator> even nicer, then [05:50:10] <Nilium> We'd just have to add syntax for it and a few calls for accessing/setting weak refs in the generated C [05:50:16] <duckinator> we just need to figure out what syntax to use... :P [05:50:39] <Nilium> Probably something like a: weak Object [05:51:00] <Nilium> Since I don't think you'd want to add another symbol [05:51:13] <duckinator> well, a symbol might actually be easier in the short run, but in the long run i think you're right [05:51:31] <duckinator> so may as well plan for the long run since nobody but you has mentioned such a feature ;P [05:51:35] <duckinator> (afaik anyways) [05:51:36] <Nilium> That said, my influence comes from Obj-C, so I'm biased towards verbosity [05:51:40] <duckinator> lol [05:51:57] <Nilium> I think I'll go shower, 'cause I smell horrifying O-o [05:52:05] <duckinator> well that's exciting [05:52:27] <duckinator> i think i'll go to bed, because i'm already half asleep and have nothing productive i can do while half asleep :P [05:55:28] *** shahri_ has quit IRC [05:56:21] <duckinator> 'night o/ [06:08:54] <locks> I can do with verbosity [06:09:12] <locks> if it's, hm this might sounds stupid, a common/recurring pattern [06:09:21] <locks> like js and function () {bla [06:09:27] <locks> it just becomes boilerplate [06:09:37] <duckinator> locks: BOILERPLATE NEEDS TO GO [06:09:43] <duckinator> ...no, i haven't left yet. stfu. [06:09:47] <locks> haha [06:10:06] <locks> yes, but I lean more towards the side of simple/uniform [06:10:15] <duckinator> yea [06:10:30] <duckinator> i think if the js devs had gone for func(){} or fn(){} it'd have been much nicer ;P [06:10:35] <duckinator> s/devs/creators/ [06:10:40] <locks> yup [06:10:47] <locks> or even better, if JS was Io [06:10:54] <locks> that's be the best, I think :P [06:11:05] <locks> JS's biggest problem is its syntax [06:11:27] <duckinator> not used Io enough to comment on that, but why not create a script that parses all <script type="text/io"> tags' contents? :D [06:11:43] <duckinator> i'm considering doing that for an ooc subset and/or language derived from ooc [06:12:31] <locks> meh, just use coffeescript :p [06:12:40] <locks> and I like JS [06:12:48] <duckinator> scripts = document.getElementsByTagName("script"); for(var i = 0; i < scripts.length; i++) { magic(scripts[i]) } // or something like that [06:13:13] <duckinator> er, helps if i remember the important part [06:13:40] <duckinator> scripts = document.getElementsByTagName("script"); for(var i = 0; i < scripts.length; i++) { if(scripts[i].getAttribute("type") == "text/io") magic(scripts[i]); } // or something like that ;P [06:14:23] <duckinator> ok, now i'm going to bed [06:14:34] <duckinator> 'NIGHT [06:14:48] <locks> [] [06:19:56] <OddyPod> a javascript with better syntax would be called lua [06:24:06] <locks> screw lua :D [06:26:05] *** OddyPod has quit IRC [06:28:32] <Nilium> Screw lua!? [06:28:37] * Nilium murders locks [06:29:06] * locks drinks some java while writing a script [06:29:17] <Nilium> Ewww, java [06:29:22] * curtism drinks some ecma [06:29:27] <curtism> amidoinitrite? [06:29:36] <locks> never, curtism [06:29:44] <locks> no one ever is [06:30:35] <curtism> i just watched fight club for the first time [06:34:28] <locks> it's just calvin and hobbes with blood, amirite [06:35:18] <curtism> sure [06:37:09] * curtism watches some seinfeld to cool down [06:37:53] <locks> don't forget, www.jerryseinfeld.com [06:38:05] * locks also: http://www.youtube.com/watch?v=__WFzmxZUCM&feature=related [06:39:07] <curtism> flying is a tiny, mini world [06:39:14] <curtism> i watched the episode with that just the other day [06:40:52] <locks> jerry is quite fascinated by flying [06:40:54] <locks> and superman [09:24:10] *** davidlt has joined #ooc-lang [10:23:41] *** MayDaniel has joined #ooc-lang [10:46:37] *** MayDaniel has quit IRC [10:49:12] *** Raynes has quit IRC [10:51:12] *** Raynes has joined #ooc-lang [11:30:25] *** aaron has joined #ooc-lang [11:30:51] *** aaron is now known as Guest14572 [11:33:01] *** Jetbeard has joined #ooc-lang [11:34:46] *** markeeto has joined #ooc-lang [11:35:11] *** Raynes_ has joined #ooc-lang [11:36:12] *** keeto has quit IRC [11:36:13] *** markeeto is now known as keeto [11:36:25] *** Raynes has quit IRC [11:36:28] *** aanderse has quit IRC [11:36:28] *** Nilium has quit IRC [11:37:37] *** Nilium has joined #ooc-lang [11:37:37] *** ChanServ sets mode: +v Nilium [12:01:46] *** copyboy has joined #ooc-lang [14:01:00] *** joshthecoder has quit IRC [14:49:19] *** keeto has quit IRC [14:49:47] *** keeto has joined #ooc-lang [15:20:29] *** shahri has joined #ooc-lang [15:25:39] *** MrSamuel has joined #ooc-lang [15:48:33] *** davidlt has quit IRC [16:34:02] *** Oddity007 has joined #ooc-lang [16:58:47] *** MayDaniel has joined #ooc-lang [17:50:05] *** MayDaniel has quit IRC [17:53:09] *** bertrand has joined #ooc-lang [17:53:25] <bertrand> hi [17:54:05] <bertrand> I'm interested in testing ooc to be able to write Object Oriented C more efficienly. [17:55:32] <bertrand> Is it possible to ask rock to output the C code instead of the binary [17:55:50] <bertrand> I can see the assembly code as well, but I'm more interested in C if possible [18:02:40] <Oddity007> yeah, -onlygen [18:03:15] <Oddity007> the efficiency is about the same as a C++ virtual call [18:04:20] <Oddity007> although, the biggest problems with OOP in C aren't efficiency related, but mainly legibility and portability related. [18:19:10] *** boredomist has joined #ooc-lang [18:44:08] *** mickael9 has joined #ooc-lang [18:46:57] *** bertrand has quit IRC [19:15:23] *** maxhawkins has joined #ooc-lang [19:15:33] *** maxhawkins has quit IRC [19:27:47] *** joshthecoder has joined #ooc-lang [19:27:47] *** ChanServ sets mode: +v joshthecoder [19:31:34] <duckinator> ohai [20:04:55] *** bertrand has joined #ooc-lang [20:09:17] *** keeto has quit IRC [20:14:33] *** keeto has joined #ooc-lang [20:27:47] <bertrand> sorry, I leave my computer for a while. I try the -onlygen but no files are generated [20:28:11] <bertrand> I use the 9.1 (installed using homebrew on Mac OS X 10.6.7) [20:28:56] <bertrand> From what I have seen in the issue tracker this bug was fixed in June 2010 [20:29:13] <Oddity007> 0.91 is really old [20:29:23] <bertrand> ok [20:29:39] <Oddity007> 0.92 has been in development for about a year and a half now, I think [20:29:45] <duckinator> something like that [20:29:51] <Oddity007> Well, 'development' [20:29:55] <curtism> build shit from git, like a boss [20:30:06] <Oddity007> Pretty much [20:30:08] <bertrand> ok I will try to install 0.9.2 [20:30:15] <Oddity007> No, don't, [20:30:20] <Oddity007> go straight for git [20:30:51] <Oddity007> Any of the downloads are guaranteed to be old [20:31:23] <bertrand> ok, no problem I will try to generate a version from source code that I fetch from Git ? [20:32:05] <curtism> you'll need a bootstrap tarballs (which i have no idea where to get nowadays) [20:32:37] <Oddity007> Yeah, building rock is a mess [20:32:56] <bertrand> yep, make doesn't work without a bootstrap [20:32:58] <bertrand> :-) [20:32:59] <Oddity007> going for selfhosting this early in was probably a bad idea [20:33:22] <bertrand> no problem, I download last bootstrap version [20:33:35] <Oddity007> Let's cross fingers and hope that it works! [20:34:06] <bertrand> what ??? Makefile doesn't cross finger for me ?? :-) [20:34:16] <curtism> so much for alpaca2... [20:34:54] <bertrand> compiling [20:34:58] <bertrand> keep you in touch [20:35:04] <curtism> COMPILE HARDER [20:36:21] <bertrand> Congrats! you have a boostrapped version of rock in bin/rock now. Have fun! [20:36:31] <bertrand> seems good [20:41:11] <bertrand> it rocks, I can see the compiled C code now [20:41:14] <bertrand> thanks a lot [20:47:30] *** Raynes_ is now known as Raynes [20:47:30] *** Raynes has joined #ooc-lang [21:01:47] *** bertrand has quit IRC [21:02:17] *** davidlt has joined #ooc-lang [21:03:01] *** davidlt has quit IRC [22:06:46] *** Jetbeard has quit IRC [22:11:10] *** Jetbeard has joined #ooc-lang [22:14:10] *** MrSamuel has quit IRC [22:14:18] *** MrSamuel has joined #ooc-lang [22:24:51] *** MayDaniel has joined #ooc-lang [22:41:31] *** MayDaniel has quit IRC [22:58:24] *** agemogolk has joined #ooc-lang [23:32:30] *** agemogolk has quit IRC