[00:29:06] *** Jetbeard has quit IRC [00:49:23] *** Raynes is now known as flatbot [00:49:45] *** flatbot is now known as Raynes [00:57:44] *** boredomist has quit IRC [01:35:05] *** shahri_ has joined #ooc-lang [01:37:34] *** shahri has quit IRC [01:38:48] *** fredreichbier has joined #ooc-lang [01:38:48] *** ChanServ sets mode: +v fredreichbier [01:41:44] *** phest has joined #ooc-lang [01:42:27] <phest> hello [01:42:45] <phest> I need a hand bootstrapping the current Rock repo [01:43:04] <phest> I already cloned the repo [01:43:09] <phest> what's the next step? [01:43:13] <fredreichbier> hej yo [01:43:30] <fredreichbier> you have a working rock executable? [01:43:38] <phest> running 'make' tells me I should download the bootstrapped version, but that's not what I want to do [01:43:48] <phest> fredreichbier: I do [01:43:59] <phest> it's not the latest though [01:44:13] <phest> rock 0.9.1 [01:44:20] <fredreichbier> just try running `make self` then [01:44:21] <fredreichbier> might work :P [01:44:51] <duckinator> hi [01:44:57] <phest> fuck, it failed [01:45:19] <phest> "rock/frontend/CommandLine.ooc:491:13 [ERROR] Expected statement or a closing bracket" [01:46:25] <phest> any ideas? [01:47:31] <fredreichbier> uhm [01:47:36] <fredreichbier> well, then it's probably too old [01:47:44] <fredreichbier> moment! [01:48:18] <duckinator> oh ow, yea. 0.9.1 is majorly old i think :P [01:48:24] <fredreichbier> :D [01:48:27] <fredreichbier> oh hai duckinator [01:48:34] <fredreichbier> phest, please try the following [01:48:37] <fredreichbier> download https://github.com/downloads/nddrylliog/rock/rock-0.9.2-prealpha19-bootstrap-only.tar.bz2 [01:48:41] <fredreichbier> extract into the rock directory [01:48:43] <fredreichbier> run make [01:50:58] <phest> ok, done, but I'm getting an error [01:51:07] <phest> "c-source/sdk/lang/Memory-fwd.h:12:19: error: gc/gc.h: No such file or directory " [01:51:20] <phest> are there any non bundled dependencies? [01:51:27] <fredreichbier> hm [01:51:37] <fredreichbier> you need to install the dev libraries of the boehm gc i guess [01:51:57] <fredreichbier> *dev packages [01:52:37] <phest> this is nuts .. how does anyone non-familiar get through this installation process? [01:53:17] <duckinator> i didn't have to install anything external for it [01:53:17] <fredreichbier> we hat this automatic package serve [01:53:18] <fredreichbier> ice [01:53:22] <fredreichbier> aaaah [01:53:28] <fredreichbier> we had this automatic online package servicer [01:53:42] <duckinator> i have nothing for boehm installed [01:53:50] <fredreichbier> really? strangey [01:54:14] <fredreichbier> hmmm [01:54:20] <fredreichbier> phest, are you running `make` from the rock directory? [01:54:24] <phest> I see this in the Makefile: [01:54:28] <phest> "$(error "OS ${OS} doesn't have pre-built Boehm GC packages. Please compile and install your own and recompile with GC_PATH=-lgc")" [01:54:44] <duckinator> oh! [01:55:10] <duckinator> there are precompiled ones for a few oses in the repo, i think [01:55:24] <duckinator> what os, phest? [01:55:29] <phest> osx [01:55:32] <phest> 10.6 [01:55:38] <duckinator> huh, strange [01:55:46] <duckinator> https://github.com/nddrylliog/rock/tree/master/libs/osx [01:56:26] <phest> hang on a second [01:56:55] <phest> shit, my fault guys [01:57:04] <phest> I didn't extract in the rock folder [01:57:20] <fredreichbier> =D [01:57:22] <duckinator> haha :) yeaaa i did that a few times [01:57:37] <duckinator> always interesting results [01:57:49] <duckinator> wait...fff.... [01:57:55] <duckinator> fredreichbier: don't we still have `make rescue`...? ^^ [01:58:20] <fredreichbier> duckinator, but we don't have alpaca anymore [01:58:25] <duckinator> ah, nevermind. that uses alpaca D: [01:58:26] <duckinator> yea [01:58:31] <fredreichbier> wonder what's up with pheuter actually [01:58:45] <duckinator> yea, not seen him recently [02:01:26] <phest> should I extract the contents of build/ inside rock/, or should build/ be a subfolder? [02:01:47] <fredreichbier> build should be a subfolder [02:02:15] <fredreichbier> duckinator, well i think ooc-lang.org isn't on heroku anymore [02:02:24] <phest> ok, done, so now I run make inside build/, right? [02:02:28] <fredreichbier> it's ... back to minimalism i guess :D [02:02:36] <fredreichbier> phest, nope, just run make in the rock folder :) [02:02:47] <phest> gosh, that was close :) [02:02:48] <fredreichbier> as you did before when it told you to get a bootstrapped version [02:02:53] <fredreichbier> what you just did. :P [02:03:22] <Oddity007> fredreichbier: Don't think he's been around for a long time [02:03:37] <fredreichbier> yeah :/ [02:03:38] <duckinator> fredreichbier: yea. i could run a buildbot-ish thing but idk how long my VPS will be around for, so..yea.. [02:03:55] <duckinator> i might get one set up so someone else could run it, but i've got other things to work on first [02:04:04] <fredreichbier> i could probably run it [02:04:32] <Oddity007> duckinator: When you say buildbot, do you mean: [02:04:36] * Oddity007 is listening to (defun botsbuildbots () (botsbuildbots)) by Aperture Science Psychoacoustics Laboratory from Portal 2: Songs to Test By - Volume 2 [02:04:38] <Oddity007> ? [02:04:42] <duckinator> no lol [02:04:47] <fredreichbier> :D [02:05:06] <duckinator> if i did mean that, why would i be the one coding it? ;) [02:05:10] <phest> holy fuck: "Congrats! you have a boostrapped version of rock in bin/rock now. Have fun!" [02:05:19] <duckinator> \o/ [02:05:27] <duckinator> ooh [02:05:27] <fredreichbier> hell yeah [02:05:28] <phest> thanks guys. couldn't have done it without you :) [02:05:41] <Oddity007> Now, go forth and enjoy our buggy compiler! [02:05:49] <phest> hahah [02:05:52] <fredreichbier> ssshhhhh! :D [02:05:59] <phest> any plans on documenting these steps guys? [02:06:04] <duckinator> fredreichbier: i wonder if dotcloud would be willing to let me run script that compiles a bootstrap daily [02:06:10] <Oddity007> phest: It *was* [02:06:16] <Oddity007> Then the site went boom. [02:06:29] <fredreichbier> Oddity007, oh, was it? sweet [02:06:30] <duckinator> phest: what Oddity007 said, plus whenever we get this bootstrap thing working again `make rescue` will do everything for you ^^ [02:06:36] <phest> why isn't it documented in the README.rst file in the repo?? [02:06:48] <fredreichbier> duckinator, whynot! it's cool after all :D [02:06:49] <Oddity007> That's a good question [02:06:55] <fredreichbier> phest, we want some more people in the irc channel [02:07:02] <Oddity007> lol [02:07:06] <Oddity007> It gets lonely here [02:07:07] <phest> hahah [02:07:12] <fredreichbier> noone to talk to [02:07:15] <duckinator> fredreichbier: i'm already using more services on dotcloud than a $99/mo "Pro" account for free :D [02:07:22] <Oddity007> and none of us have lives [02:07:23] <fredreichbier> :D [02:07:31] <Oddity007> ndd has a life now, and that's why he's never here [02:07:34] <Oddity007> But us.... [02:07:51] <duckinator> fredreichbier: a Pro account, which all beta users (which i was) got free for a year, gets 4 services. i'm using 7 :> [02:08:01] <phest> if ooc wasn't that interesting and I wasn't that stubborn, I think I would have given up long time ago [02:08:05] <duckinator> fredreichbier: they like me ;P [02:08:10] <fredreichbier> duckinator, seems so. :D [02:08:15] <fredreichbier> duckinator, how's it going with them? :D [02:08:16] <phest> I'm afraid this could keep some possible adopters away .. :/ [02:08:22] <fredreichbier> phest, yep :/ [02:08:30] <fredreichbier> well ooc seems to be kind of ... sleepy atm anyway [02:08:54] <phest> is that a phase? [02:09:07] <duckinator> fredreichbier: re the interview? never happened. postponed until after i get settled in with the R&D stuff with ndd, to see if i'd still be able to work for them on the side o/ [02:09:23] <fredreichbier> duckinator, ah cool! [02:09:34] <fredreichbier> duckinator, they seem to be nice guys :P [02:09:43] <fredreichbier> phest, maybe. ;) [02:09:52] <duckinator> fredreichbier: yea, they sent me 3 free t-shirts for helping out in their irc channel :P [02:10:05] <fredreichbier> do these shirts have different colors? [02:10:11] <duckinator> nah [02:10:15] <fredreichbier> well, nice enough [02:10:17] <duckinator> black with the dotcloud logo on the front [02:10:21] <duckinator> they're comfy :D [02:10:23] <fredreichbier> i think i saw that [02:10:59] <fredreichbier> phest, seems like most of the developers have other stuff to do :P [02:11:06] <duckinator> phest: i'm going to talk to dotcloud in a minute or so and see if they'll let me host a daily build script, if they do then it should be as simple as `git clone https://github.com/nddrylliog/rock.git && cd rock && make rescue` :D [02:11:31] <duckinator> which could easily be turned into a oneliner like we used to have [02:11:50] <duckinator> `bash <<$(curl http://....../install-rock.sh)` or similar, i think [02:13:02] <duckinator> nope, i wonder what it was [02:13:04] <fredreichbier> ohhhh well [02:13:13] <fredreichbier> if you want to have error tolerance, it might be two lines :P [02:13:26] <duckinator> nah we had a oneliner at one point :> [02:13:27] <duckinator> worked nicely [02:13:28] <fredreichbier> i mean, there are people committing buggy code from time to time [02:13:30] <fredreichbier> *whistles* [02:13:39] <duckinator> fredreichbier: it loaded a script from TEH ENTARBUTTS and ran it [02:13:53] <duckinator> fredreichbier: well, not that i've done such a thing... :D [02:13:55] <fredreichbier> HOLYMOTHEROFGOOOD! [02:14:01] <fredreichbier> :D [02:14:05] <duckinator> brb [02:14:14] <locks> holy shit, so much talking :o [02:14:15] <duckinator> when i get back i'll email dotcloud about it [02:14:15] *** goddammit has joined #ooc-lang [02:16:32] <fredreichbier> locks, hai! [02:16:35] <fredreichbier> duckinator, nicy! [02:16:46] <fredreichbier> phest, and if you got any more questions, don't hesitate to ask! [02:16:51] <fredreichbier> we have no lives anyway [02:16:55] * locks waves [02:17:04] <locks> phest: I attest, they do not [02:17:11] <fredreichbier> thank you! [02:17:46] *** shahri_ has quit IRC [02:18:39] <phest> thanks guys, that's very kind [02:18:52] <phest> and sorry you have no lives :P [02:19:10] <fredreichbier> that's okay, at least we have waffles [02:19:20] <locks> http://www.youtube.com/watch?v=MeWzFhGbHe4&NR=1 [02:19:20] <phest> what's utils/ooc-install.sh for? [02:19:40] <fredreichbier> it's some kind of automagic ooc installer [02:19:50] <fredreichbier> which probably doesn't work anymore [02:19:55] <Oddity007> fredreichbier: At least we don't have llamas anymore [02:19:57] <fredreichbier> so, not very magic [02:20:01] <fredreichbier> Oddity007, i loved the llamas [02:20:15] <Oddity007> I thought they drooled too much [02:20:30] <fredreichbier> i think they smelled nice [02:21:06] <locks> they smelled like ass [02:21:16] <locks> they smelled _of_ ass [02:22:59] <fredreichbier> there are worse smells! [02:23:13] <fredreichbier> awww shit what's that [02:23:16] *** fredreichbier has quit IRC [02:24:05] *** fredreichbier has joined #ooc-lang [02:24:05] *** ChanServ sets mode: +v fredreichbier [02:25:19] <fredreichbier> it was the interents [02:28:17] <duckinator> back [02:29:30] <fredreichbier> hai [02:30:56] <duckinator> fredreichbier: well, we have to update a url in the installer script and it'll automagically work [02:31:09] <fredreichbier> if the script is all rightybighty! [02:31:19] <duckinator> it looks perfectly fine otherwise [02:31:27] <duckinator> it does not compile anything [02:31:53] <duckinator> it looks like the old version of `git clone .... && make rescue`, really [02:33:51] <fredreichbier> i meant the alpaca scripty thing! :D [02:33:55] <fredreichbier> alpaca [02:35:39] <duckinator> oh, right :P [02:36:29] <phest> you know, for what it's worth, I think what confused me is the wording in README.rst [02:36:37] <phest> no, sorry, not that file [02:36:43] <phest> BOOTSTRAP [02:36:54] <phest> "download the latest bootstrap tarball into your local clone of rock" [02:36:59] <phest> that's what lost me [02:37:02] <fredreichbier> hey! i wrote that file! [02:37:07] <fredreichbier> :D [02:37:08] <phest> hahah [02:37:16] <phest> so here's the thing [02:37:17] <locks> http://mlkshk.com/p/4RFP that big toe. [02:37:34] <phest> if you go to the downloads on github [02:37:41] <fredreichbier> yeaaah, bootstrap tarball = tarballs with the generated C sources of a certain rock version [02:37:51] <fredreichbier> we used to have alpaca, which generated bootstrap tarballs for every new commit [02:37:55] <phest> the "bootstrap files" are called bootstrap-only [02:38:13] <duckinator> yea, there's full downloads as well [02:38:22] <fredreichbier> yeppy [02:38:23] <phest> but being called bootstrap-only makes it sound like the OTHER files include the bootstrap [02:38:31] <phest> and that's where I went off track [02:38:36] <duckinator> ahh [02:38:56] <fredreichbier> like ... the other files contain the bootstrap, too? [02:39:04] <phest> yes, that's what I thought [02:39:15] <phest> necause I'm a noob, I have no fucking idea what a bootstrap is [02:39:17] <fredreichbier> yeah, probably not the best wording :D [02:41:05] <phest> maybe you could change to "download the latest bootstrap-only tarball into your local clone of rock" ? [02:43:55] <fredreichbier> that will be a glorious commit [02:45:46] <fredreichbier> done [02:46:03] <CIA-44> rock: Friedrich Weber master * r7aee62a / BOOTSTRAP : Changed wording in `BOOTSTRAP` - http://bit.ly/qBNi1E [02:46:05] <CIA-44> rock: Friedrich Weber master * r847ff07 / (4 files in 4 dirs): Merge branch 'master' of ssh://github.com/nddrylliog/rock - http://bit.ly/rfOQzr [02:46:19] <fredreichbier> oh hey there CIA bot [02:46:21] <fredreichbier> you're still there [02:46:21] <fredreichbier> <3 [02:46:31] * locks pats CIA-44 [02:48:47] <phest> fredreichbier: wow that was fast [02:48:58] <fredreichbier> is it better now? [02:49:12] <phest> fastest suggestion to implementation I've ever experienced :) [02:49:39] <phest> yeah I think that'll help make sure noobs like me don't fuck up [02:51:17] <duckinator> o/ [02:51:23] <fredreichbier> good then :) [02:51:48] <duckinator> hmm [02:51:49] <duckinator> fredreichbier: you know [02:52:21] <duckinator> i could make a script that finds the latest tarball from the downloads and redirects [02:52:38] <duckinator> guaranteed to always be up :) [02:53:30] <fredreichbier> that ... sounds good! [02:53:33] <curtism> what is all this activity [02:53:34] <fredreichbier> yeah why not1 [02:53:46] <duckinator> curtism: nothing, YOU ARE CRAZY. STFU. [02:58:12] <phest> what's the next big milestone in the ooc roadmap? [02:58:50] <duckinator> 0.9.2, we're ~11 bugs away iirc [03:01:16] <phest> exciting! [03:01:33] <duckinator> zomg, win! [03:01:38] <phest> I read a new compiler is being worked on, what's the status on that? [03:01:40] <duckinator> fredreichbier: [03:01:42] <duckinator> irb(main):015:0> JSON.parse(open('https://api.github.com/repos/nddrylliog/rock/downloads').read).sort{|x|x['id']}.last [03:01:42] <duckinator> => {"url"=>"https://api.github.com/repos/nddrylliog/rock/downloads/78148", "download_count"=>71, "size"=>449, "name"=>"rock-0.9.2-prealpha18-bootstrap-only.tar.bz2", "description"=>"rock 0.9.2 prealpha18 (bootstrap only)", "html_url"=>"https://github.com/downloads/nddrylliog/rock/rock-0.9.2-prealpha18-bootstrap-only.tar.bz2", "id"=>78148} [03:01:52] <fredreichbier> github <3 [03:02:05] <duckinator> github's API + ruby = win [03:03:10] <phest> gotta love ruby [03:03:25] *** Nilium has quit IRC [03:03:29] *** copyboy has quit IRC [03:09:50] <locks> gotta love programming [03:10:07] <locks> gotta hate writing reports for school :( [03:10:10] <duckinator> fredreichbier: apparently i goofed. should've been using .sort_by! not .sort..... /99392 seems a bit newer than /78148 D; [03:10:38] <fredreichbier> oh noez! :D [03:10:44] <fredreichbier> <- no ruby experience [03:10:51] <duckinator> :O [03:10:52] <duckinator> loser [03:10:54] <duckinator> :D [03:10:56] * locks smakcs fredreichbier [03:11:19] <fredreichbier> owch! [03:12:18] <fredreichbier> but i can has the python [03:12:44] <locks> ew, no cursing [03:13:18] <duckinator> lol? [03:14:58] *** Nilium has joined #ooc-lang [03:14:59] *** ChanServ sets mode: +v Nilium [03:15:12] <fredreichbier> oops! [03:15:24] <phest> is there a way to build+run in one command, with rock? [03:15:27] <duckinator> o/ Nilium [03:15:30] <duckinator> phest: -r i think [03:15:49] <phest> duckinator: nice [03:23:37] <fredreichbier> http://cityposh.com/contests/play-to-win-free-oreilly-ebooks-and-videos wtf! [03:25:08] <phest> is this correct syntax? [03:25:09] <phest> stupidFunction: func (myString: String) -> String { myString println() } [03:25:29] <phest> I'm getting "ERROR No such function stupidFunction() for `String` (Hint: there's such a function in chain) " [03:25:55] <fredreichbier> in chain? [03:26:07] <fredreichbier> eh [03:26:10] <fredreichbier> how are you calling it? [03:26:22] <phest> "yay" stupidFunction() [03:26:27] <phest> within main [03:26:52] <fredreichbier> welll you defined it as a function taking a string as the first argument [03:26:59] <fredreichbier> so you need to call it like stupidFunction("yay") [03:27:12] <fredreichbier> if you want it the other way, use the `extend` statement [03:27:32] <phest> oh.. is that why I can call ""yay" println()"? [03:28:05] <fredreichbier> yes, because `println` is a method on `String` [03:28:15] <phest> of course ! [03:28:55] <phest> could I extend String just like that? [03:28:59] <fredreichbier> if you want to extend the `String` class so you can call "mah" stupidFunction .. there is an example in `sdk/text/StringTemplate.ooc` :) [03:29:09] <phest> ok [03:30:38] <Oddity007> just "extend String {stupidFunction: func (myString: String) -> String { myString println() }}" [03:31:46] <fredreichbier> that would take a string argument :D [03:32:06] <phest> holy crap! this is crazy awesome [03:32:57] <locks> and wouldn't it be `self println()` or something? [03:33:12] <duckinator> eh? [03:33:25] <phest> this println() [03:33:37] <fredreichbier> 'xactly [03:33:55] <phest> yeah just got it working [03:34:00] <phest> brought tears to my eyes [03:35:08] <fredreichbier> so the long struggle to get it run was worth it ^_^ [03:35:12] <fredreichbier> does -onlygen work, by the way? [03:35:20] <phest> yes :) [03:35:25] <phest> works great [03:38:07] <Oddity007> fredreichbier: Copy/Paste fail [03:38:22] <Oddity007> I just copied the whole line [03:38:38] <fredreichbier> no problem [03:38:46] <fredreichbier> just saw a fail in StringTemplate [03:38:50] <fredreichbier> hope nobody notices that [03:40:01] *** goddammit has quit IRC [03:42:19] <Oddity007> The whole sdk is mostly full of fail [03:42:36] <Oddity007> ndd was redoing it but then he acquired a life [03:42:55] <duckinator> indeed [03:43:00] <phest> you guys need to get paid for this work [03:43:06] <Oddity007> What work? [03:43:09] <phest> some sort of support [03:43:11] <phest> ooc [03:43:23] <duckinator> lol [03:43:39] <phest> this is an amazing project, it's kindof blowing my mind [03:43:40] <Oddity007> Nah, that was mostly ndd and rofl0r... and that's why we haven't gotten anywhere [03:43:48] <duckinator> yea [03:44:02] <phest> Oddity007: what do you mean? [03:44:26] <Oddity007> We're just people with no lives who hang around in the shadow of the language that once was. [03:44:30] <duckinator> phest: rofl0r and ndd did a lot of the work....then rofl0r disappeared, and ndd got a life :P [03:45:24] <phest> oh, ok [03:45:36] <Oddity007> rofl0r came, ED'd the shit out of ooc and left, which demotivated ndd who had his new found life, and now ndd is off in javascript land [03:45:58] <fredreichbier> hah yeah, the String-is-now-an-object thing was funny [03:46:01] <phest> what happened to rofl0r? [03:46:10] <duckinator> fredreichbier: oh good lord, don't even go there [03:46:32] <duckinator> not a clue what happened to rofl0r [03:46:48] <Oddity007> he got pissed and left, I think ndd said [03:46:54] <fredreichbier> think so too [03:46:56] <duckinator> heh, not surprising [03:47:06] <phest> not surprising? [03:47:27] <duckinator> he was always a bit weird to say the least [03:47:53] <phest> talented people often are .. :) [03:48:04] <fredreichbier> oh he did a huge change that was really needed [03:48:06] <Oddity007> duckinator: So, of all the languages you've designed, how many have you implemented? :p [03:48:10] <fredreichbier> at some point [03:48:13] <Oddity007> (Random question) [03:48:30] <fredreichbier> but he pushed it a bit too early to the main repo and everything was on fire afterwards [03:48:37] <fredreichbier> caused some trouble in the team [03:48:43] <phest> ndd seemed very responsive on github, with the issue I opened [03:48:44] <fredreichbier> discussion about commit access, things like this [03:48:45] <duckinator> Oddity007: absolutely none implemented fully, multiple implemented enough to realize the ideas failed, one implemented then i got distracted with more reasonable things [03:48:56] <phest> I see [03:48:57] *** goddammit has joined #ooc-lang [03:49:11] <fredreichbier> which kind of decreased the fun level ;) [03:49:41] <Oddity007> phest: Bad enough that ndd had to revoke everyone's commit access [03:49:43] <phest> probably a sign of growth right? I mean how long can you grow without having a commit policy? [03:49:49] <Oddity007> and moved to a pull-request only thing [03:49:54] <fredreichbier> phest, probably [03:50:00] <fredreichbier> ooc was started ~ 2 years ago [03:50:04] <phest> so he's the only core committer? [03:50:17] <fredreichbier> i think some people have commit access [03:50:24] <fredreichbier> i seem to have it [03:50:29] <duckinator> yea, a few people have it [03:50:48] <duckinator> but yea general flow is fork, edit, push. imo that's a good flow once you get past the endless-spew-of-development stage [03:51:07] <duckinator> should've probably moved to that earlier, but hey :P [03:51:08] <fredreichbier> i currently have a small motivation problem with ooc :P [03:51:31] <phest> fredreichbier: how come? [03:52:12] <fredreichbier> i don't really know :D [03:52:20] <duckinator> lol [03:52:30] <fredreichbier> and bugfixing is boring [03:52:32] <fredreichbier> (often) [03:53:03] <Oddity007> It's a shame that there aren't any semidecent C# to native code AOT compilers like there are for Java (gcj) [03:53:23] <phest> maybe it's what I'm going through... I got 80% of my current project done, and it's taking me a lot of effort to finish. it's like, the fun part if over [03:53:32] <phest> is over [03:53:33] <fredreichbier> exactly [03:53:37] <fredreichbier> what's your current project? [03:53:43] <phest> but it's too bad [03:53:52] <phest> it's a really good and exciting project, and so is ooc [03:53:56] <phest> it's a game [03:54:17] <fredreichbier> cool! [03:54:19] <Oddity007> For me, I get stuck on the 10% mark [03:54:27] <Oddity007> the last 90% is the easiest for games [03:54:42] <phest> http://toucharcade.com/2011/03/06/gdc-2011-faraway-but-were-getting-closer/ [03:55:02] *** goddammit has quit IRC [03:55:05] <phest> (this is an old version) [03:55:21] <Oddity007> hehe [03:55:25] <phest> Oddity007: hahah [03:56:06] <phest> but seriously, ooc is pretty fucking nuts [03:56:27] <fredreichbier> ohoh physics games [03:56:32] <phest> it definitely deserves good traction [03:56:33] <Oddity007> Like, right now, I'm stuck on the part where I'm trying to design a self-optimizing, streamable scenegraph, but once I get past that point, I'll usually be smoothly rolling to the finish line [03:57:02] <Oddity007> Happens with stuff like compiler as well, I usually stumble at the first part (lexer/parser) [03:57:08] <fredreichbier> phest, it had some real good time 8 months ago or so :P [03:57:12] <Oddity007> but the actual code gen is usually crazy easy [03:57:22] <duckinator> Oddity007: same [03:57:38] <duckinator> Oddity007: that's why i ended up moving on before finishing the one language i could probably actually get working [03:57:44] <duckinator> it's just so much redundant shit at the start [03:57:46] <phest> fredreichbier: its probably just a phase [03:58:08] <phest> as I said, ndd seemed very responsive on github, with my issue [03:58:20] <fredreichbier> phest, probably, but i don't see where new contributors should be coming from :P [03:58:24] <phest> he doesn't sound like he wants to let the project to rot [03:58:32] <fredreichbier> also, somehow our shiny webpage disappeared [03:58:35] <fredreichbier> yea [03:58:41] <phest> I like your webpage [03:58:45] <phest> it's minimalistic and nice [03:58:48] <Oddity007> fredreichbier: pheuter disappeared [03:58:58] <Oddity007> Then the site went boom [03:59:11] <Oddity007> Then ndd shit himself [03:59:24] <phest> how did that webpage look like? [03:59:29] <Oddity007> Then ndd rushed to save the day with someone else I can't remember [03:59:43] <Oddity007> looked like awesomeness [03:59:55] <Oddity007> and 90 mph llamas [04:00:23] <Oddity007> Actually had docs and tutorials and stuff! [04:00:39] <phest> I feel like the current page says a lot about the esthetic of ooc, it's a very clean philosophy and it's reflected in the page [04:00:48] <phest> oh shit, you lost documentation? [04:00:52] <Oddity007> Not exactly clean anymore [04:01:25] <phest> I mean the first thing you see in http://ooc-lang.org [04:01:28] <Oddity007> We had quite a few rubyisms and pythonisms and C++isms slip in through some of the cracks that never got documented and have these weird behaviors etc [04:01:38] <duckinator> yea [04:01:46] <duckinator> it's a good idea, but some stuff slipped through when it shouldn't have [04:02:06] *** goddammit has joined #ooc-lang [04:02:13] <phest> no way back? [04:02:15] <Oddity007> ooc near the end of the j/ooc days was good [04:02:23] <Oddity007> Nah, we just need a clean up [04:02:23] <duckinator> Oddity007: argh, that was it's worse! [04:02:44] <duckinator> Oddity007: well, in terms of the code itself...the language was good back then, but the compiler was terrible, even for java code [04:02:53] <Oddity007> yeah j/ooc sucked ass [04:02:59] <Oddity007> but the language back then was pretty pure [04:03:17] <fredreichbier> waaaah j/ooc was ... gnurgh [04:03:24] <fredreichbier> oh i actually like the current language [04:03:24] <duckinator> fredreichbier: yea pretty much [04:03:45] <duckinator> i think the current language is good, but it's become rather large and complex [04:03:45] <fredreichbier> i didn't quite like the String-is-now-a-class (i shall call it SINAC) thingy [04:03:47] <duckinator> it's not documented [04:03:48] <fredreichbier> made things complicated [04:03:50] <fredreichbier> true that [04:03:54] <fredreichbier> we have no documentation system [04:04:07] <fredreichbier> + that people want to use :D [04:04:15] <duckinator> we need to write a spec for ooc as a whole sometime, but that's a lot easier said than done [04:04:21] <phest> you need a site like this: http://jashkenas.github.com/coffee-script/ :) [04:04:42] <phest> speaking of documentation and coffeescript, docco is pretty good [04:04:43] <fredreichbier> ohhh we had "cool ooc" [04:04:47] <duckinator> yea [04:04:53] <phest> http://jashkenas.github.com/docco/ [04:05:02] <fredreichbier> https://github.com/ooc-lang/cool-ooc yay [04:05:31] <fredreichbier> anyone know what website generation app it's using? [04:06:11] <phest> the coffeescript site or cool-ooc? [04:06:11] <duckinator> lol someone failed at the merge fix :) [04:06:23] <fredreichbier> ... merge fix? :D [04:06:43] <duckinator> http://ooc-lang.github.com/cool-ooc/ look at the bottom [04:06:52] <fredreichbier> look at that! it's alive! [04:06:57] <fredreichbier> oh. :D [04:07:13] <duckinator> huh [04:07:40] <phest> gh-pages is not a generator, it's http://pages.github.com/ [04:08:18] <duckinator> ah! [04:08:22] <duckinator> i thought that looked like jekyll [04:08:43] <duckinator> doesn't gh-pages use jekyll or at least the same general layout? [04:09:57] <phest> gh-pages uses whatever html you throw in there [04:10:02] <fredreichbier> oh, okay [04:10:05] <duckinator> mmm [04:10:10] <phest> jekyll is only one way to generate static files [04:10:11] <fredreichbier> why the _config.yml then? [04:10:58] <phest> that's the .yml config file for the (yet unnamed) generator [04:11:19] * duckinator notes pheuter ran that too [04:12:29] *** joshthecoder has quit IRC [04:13:12] <phest> it does look like a jekyll config file: https://github.com/mojombo/jekyll/wiki/Configuration [04:18:05] *** mickael9 has quit IRC [04:18:11] *** joshthecoder has joined #ooc-lang [04:18:11] *** ChanServ sets mode: +v joshthecoder [04:19:29] <duckinator> huh [04:22:15] <duckinator> this is strange :( [04:23:25] <fredreichbier> what is strange? [04:24:19] <duckinator> can't get this site working [04:25:17] <fredreichbier> :/ [04:25:49] <duckinator> woah [04:26:15] <duckinator> oh, derp [04:26:28] <duckinator> helps if i use the right variable [04:26:32] <duckinator> brb [04:28:45] <duckinator> back [04:28:57] <duckinator> weee [04:29:10] <duckinator> [~/dev/webpages/fileville]$ curl http://fileville.net/ooc/bootstrap [04:29:11] <duckinator> https://api.github.com/repos/nddrylliog/rock/downloads/99392[~/dev/webpages/fileville]$ [04:29:39] <fredreichbier> filevielle.net? [04:29:46] <duckinator> random domain i had [04:29:51] <fredreichbier> nice [04:30:01] <duckinator> you can thank Ttech, he bought it ;P [04:31:12] <fredreichbier> nice, Ttech! [04:31:26] <duckinator> lol [04:32:05] <duckinator> hmm [04:32:27] <duckinator> this works, but you don't get the original name D: [04:32:50] <duckinator> wait, what... [04:33:01] <duckinator> it..returned JSON? [04:33:03] <duckinator> DO NOT UNDERSTAND [04:33:43] <duckinator> ok let's see now [04:34:06] <duckinator> YES [04:34:14] <duckinator> now if only i could find some hackery to get the naming right [04:34:17] <duckinator> atm it saves it as "bootstrap" [04:34:35] <duckinator> hmm [04:34:43] <fredreichbier> oohohoho [04:34:47] <fredreichbier> 4 am? oops [04:34:51] <duckinator> lmao [04:34:52] <fredreichbier> i should probably go to sleep [04:34:55] <duckinator> probably :D [04:35:00] <phest> how do I convert a int to string ? [04:35:12] <fredreichbier> *how do I convert a Int toString()? [04:35:42] <fredreichbier> sorry, i get silly at 4 am [04:35:43] <phest> oh wow [04:35:51] <phest> no that was good :) [04:35:56] <fredreichbier> alright. :D [04:36:00] <phest> how does that work? [04:36:01] <fredreichbier> have much fun then, and good night! [04:36:07] <fredreichbier> have fun with the json, duckinator! [04:36:09] <phest> is int an object? [04:36:15] <phest> thanks ! good night ! [04:36:20] <phest> and thanks again! [04:36:21] <duckinator> yea, numbers are objects [04:36:25] <duckinator> fredreichbier: i will ;P [04:36:38] <fredreichbier> they are covers! :D [04:36:40] * fredreichbier is silent now [04:36:43] <fredreichbier> cya ;) [04:36:50] *** fredreichbier has quit IRC [04:36:59] <phest> very interesting ..... [04:37:03] <phest> so it's like ruby [04:37:12] <duckinator> sorta [04:37:20] <phest> is it possible to work directly with numbers? [04:37:27] <duckinator> what do you mean? [04:37:37] <phest> not as object, just as types [04:37:40] <phest> int, float, etc [04:37:46] <duckinator> we offer the full span of C types, afaik [04:38:00] <duckinator> of number-related C types* [04:38:03] <phest> but as objects, right? [04:38:22] <duckinator> well, i'm not sure why there'd be a difference in how it's represented [04:38:48] <phest> there's an overhead, if they're "objects", every operation becomes a function [04:39:03] <duckinator> well it's optimized in the C code [04:39:46] <phest> (1 + 1)*2 becomes mult(add(1,1)), or something [04:39:51] <duckinator> no no no not at all :) [04:40:05] <curtism> java does things like this, no? [04:40:06] <phest> no? [04:40:10] <Oddity007> no [04:40:12] <curtism> in java there's int and Integer [04:40:16] <duckinator> phest: i think that basically, it's only an object if you use it as one. not sure of the full details. [04:40:24] <Oddity007> primitive types in ooc are not objects [04:40:42] <Oddity007> nor are covers [04:40:42] <duckinator> they're non-object thingies with classes associated... ;D [04:40:49] <phest> Oddity007: then how come this works: 1 toString() [04:40:49] <duckinator> or something like that [04:40:54] <Oddity007> They are types with methods [04:41:05] <phest> oh no shit [04:41:10] <curtism> magics [04:41:11] <duckinator> yay! someone who doesn't fail at explaining! [04:41:12] <Oddity007> But no actual type information built in [04:41:14] * duckinator gives Oddity007 a cookie [04:41:33] <Oddity007> It's kind of like function overloading in C++ [04:41:39] <Oddity007> Or a POD type [04:41:46] <duckinator> curtism: so, i got fileville.net/ooc/bootstrap -> latest bootstrap-only tarball [04:42:00] <duckinator> curtism: i'm going to have /bootstrap/X -> https://github.com/downloads/nddrylliog/rock/X, too [04:42:09] <curtism> mk [04:42:17] <duckinator> i'm trying to figure out how to get naming to stay [04:42:20] <Oddity007> phest: That calls Int_toString(1) [04:42:33] <Oddity007> It's not an object [04:42:44] <duckinator> curtism: only issue is that /ooc/bootstrap is saving the file as ./bootstrap instead of ./<whatever it redirects to> [04:42:55] <duckinator> meh [04:43:04] *** phest_ has joined #ooc-lang [04:43:08] <phest_> back [04:43:25] <Oddity007> phest_: Oddity007: phest: That calls Int_toString(1) [04:43:25] <Oddity007> [10:46pm] Oddity007: It's not an object [04:43:36] <phest_> thanks [04:43:51] <duckinator> curtism: actually, i guess it's fine for what i'm doing. i'll use /bootstrap.tar.bz2 for the file, and /bootstrap for a listing :) [04:43:52] <phest_> are you saying C++ does that kind of stuff? [04:44:05] <Oddity007> C++ does that stuff as long as you don't use virtuals [04:44:34] <Oddity007> ooc objects are like that, but every method is implicitly virtual [04:45:25] <Oddity007> It basically means that ooc and C++ virtual objects have a dynamic lookup, while POD types have a static lookup [04:45:28] <phest_> what are virtuals? [04:45:29] *** phest has quit IRC [04:45:52] <Oddity007> Basically a function pointer to the method that's built into the type info the the class [04:45:53] <phest_> but ooc only has a dynamic lookup on compile, right? [04:46:09] * Oddity007 has a serious case of mindfuckery right now [04:46:18] <phest_> hahah [04:46:24] <phest_> sorry [04:46:26] <Oddity007> Too late, need sleep, etc.. [04:46:42] <phest_> where are you guys at anyway? [04:46:52] <phest_> it's not even 8pm here [04:47:08] <duckinator> it's 10:51PM here :P (EST) [04:47:16] <Oddity007> Calling a C++ virtual method would be like object._vtable->someMethod(&object) [04:47:22] <curtism> duckinator: that's EDT [04:47:26] <curtism> get it right damnit [04:47:34] <duckinator> curtism: nothx, i'd rather annoy you [04:47:36] <duckinator> <3 [04:48:53] <phest_> Oddity007: but in ooc it's like MyClass__someMethod(&object) or something like that, right? I mean there's no lookup [04:49:32] <Oddity007> methods on objects in ooc and virtual methods *always* call through a function pointer [04:49:48] <Oddity007> methods on covers and normal methods in C++ do not [04:50:17] <Oddity007> covers don't need to store a pointer to all their class info [04:50:25] <Oddity007> And so they can be any underlying type [04:50:44] <Oddity007> (an integer, an sse register, a pointer) [04:50:55] <Oddity007> It's all just syntax sugar [04:51:37] <Oddity007> but objects need to store a pointer [04:51:49] <Oddity007> Try it out with -onlygen, and see the difference ;) [04:51:56] <Oddity007> It'd be much easier than me explaining [04:52:17] <phest_> ok, let's look at what ' "hello" println() ' generates: [04:52:26] <phest_> __strLit3 = (void*) lang_String__makeStringLiteral("hello", 5); [04:52:31] <phest_> lang_String__String_println(__strLit2); [04:52:40] <Oddity007> hehe, using a string was probably a bad idea [04:52:48] <Oddity007> So much nastiness involved [04:52:52] <phest_> yeah? hahah [04:53:00] <Oddity007> that lang_String__makeStringLiteral part [04:53:07] <phest_> but there's no function pointers here [04:53:23] <Oddity007> Now try it with an object [04:53:51] <phest_> hmm ok give me a sec [04:57:18] *** goddammit has quit IRC [04:57:43] <phest_> having trouble with the class syntax .. [04:59:14] <duckinator> phest_: ClassName: class { } [05:01:10] <phest_> ok so [05:01:15] <phest_> animal := Animal new() [05:01:19] <phest_> animal increaseAge(10) [05:01:19] <duckinator> mhm [05:01:22] <phest_> becomes: [05:01:30] <phest_> chain__Animal* animal = chain__Animal_new(); [05:01:35] <phest_> chain__Animal_increaseAge(animal, 10); [05:01:56] <duckinator> yup, that should be exactly it [05:02:13] <phest_> there's no function pointers, it calls a C function directly [05:02:33] <duckinator> mhm [05:06:58] <phest_> Oddity007: am I right? [05:07:44] <Oddity007> It's calling the function pointer still [05:08:02] <Oddity007> chain__Animal_increaseAge does the function pointer calling [05:08:08] <Oddity007> calls _impl or something [05:08:12] <Oddity007> chain__Animal_increaseAge_impl [05:08:25] <phest_> you're right [05:08:26] <phest_> ((chain__AnimalClass *)((lang_types__Object *)this)->class)->increaseAge((chain__Animal*)this, years); [05:09:05] <Oddity007> String was a bad example because it does the same thing because of the whole strings are objects crap that rofl0r haxd in [05:09:15] <phest_> is it wrapped in a function for better readability then? [05:09:20] <Oddity007> Pretty much [05:09:31] <phest_> interesting [05:09:55] <phest_> doesn't that add overhead? [05:10:15] *** goddammit has joined #ooc-lang [05:11:30] <Oddity007> Probably [05:11:45] <Oddity007> Since I doubt it's inlined [05:12:08] <phest_> I suppose it would be nice to have a -release option in the compiler to skip those wrapper functions [05:12:24] <phest_> it's defintely nice to see what's goin on though [05:12:47] <Oddity007> we mainly have that for the sanity of debugging I believe [05:12:57] <phest_> yeah [05:13:02] <Oddity007> because rock generates broken code *a lot* [05:13:13] <Oddity007> Much less now though [05:13:26] *** Oddity007 has quit IRC [05:16:25] <phest_> why is the string as objects deal a bad thing? [05:16:45] <duckinator> phest_: it's not, rofl0r just added it before anything else was prepared for the change [05:16:56] <duckinator> it's fine now though :P [05:17:59] <phest_> oh, I see :) [05:18:24] <phest_> alright, heading home [05:18:39] <phest_> thanks again for all the help and info ! [05:18:56] <duckinator> sure thing o/ [05:19:04] <phest_> \o [05:19:12] *** phest_ has left #ooc-lang [06:34:16] *** goddammit has quit IRC [06:38:44] *** danopia_ has joined #ooc-lang [06:38:47] <danopia_> hi [06:39:08] <duckinator> ih [07:02:00] *** bertrand has joined #ooc-lang [07:15:17] *** echelog-2 has joined #ooc-lang [07:17:43] *** bertrand has quit IRC [07:33:44] *** joshuaroesslein has joined #ooc-lang [07:34:08] *** joshthecoder has quit IRC [07:52:35] *** danopia_ has quit IRC [07:55:33] <duckinator> http://fileville.net/ooc/downloads [07:55:35] <duckinator> 'night o/ [08:45:34] *** bertrand has joined #ooc-lang [09:03:27] *** joshuaroesslein has quit IRC [10:48:40] *** copyboy has joined #ooc-lang [12:06:08] *** MayDaniel has joined #ooc-lang [12:33:46] *** MayDaniel has quit IRC [12:53:23] *** bertrand has quit IRC [13:13:22] *** bertrand has joined #ooc-lang [13:52:57] *** danopia_ has joined #ooc-lang [14:08:04] *** danopia_ has quit IRC [16:14:36] *** boredomist has joined #ooc-lang [16:21:51] *** joshthecoder has joined #ooc-lang [16:21:51] *** ChanServ sets mode: +v joshthecoder [16:44:02] *** mickael9 has joined #ooc-lang [17:48:16] *** shahri has joined #ooc-lang [18:08:59] *** alex____ has joined #ooc-lang [18:09:06] *** bertrand has quit IRC [18:09:09] *** Jetbeard has joined #ooc-lang [19:10:21] *** MayDaniel has joined #ooc-lang [19:24:14] *** Oddity007 has joined #ooc-lang [19:24:50] *** fredreichbier has joined #ooc-lang [19:24:50] *** ChanServ sets mode: +v fredreichbier [19:38:25] <fredreichbier> yes [19:39:30] <duckinator> HI [19:39:32] *** MayDaniel has quit IRC [19:42:07] <fredreichbier> HAI [19:55:48] <locks> hey... [20:13:46] *** fredreichbier has quit IRC [21:28:46] *** fredreichbier has joined #ooc-lang [21:28:46] *** ChanServ sets mode: +v fredreichbier [21:39:02] <fredreichbier> just noticed that ooc is a pretty nice language after all [21:40:09] <curtism> ok... [21:44:26] <fredreichbier> :D [22:01:23] *** Oddity007 has quit IRC [22:18:14] *** Oddity007 has joined #ooc-lang [22:47:47] <alex____> imho ooc's syntax feels inconsistent. for example, simple assignment is ":=", but compound assignment is "+=", [22:50:06] <fredreichbier> `:=` is assignment-with-type-guessing [22:50:20] <fredreichbier> a := 12 is equivalent to a: Int = 12 [22:52:38] <alex____> didn't know that. maybe i just feel uncomfortable coming from C-like languages ) [22:54:38] <fredreichbier> probably ;) plus, you don't see the old-fashioned `=` very often [23:02:41] *** fredreichbier has quit IRC [23:48:31] <alex____> what are compound covers exactly? are they like simple C structs? if so, how does one constructs (allocates?) compound covers on the stack? [23:48:53] <Oddity007> They are structs [23:49:20] <Oddity007> and used exactly as you would in C [23:57:32] *** fredreichbier has joined #ooc-lang [23:57:32] *** ChanServ sets mode: +v fredreichbier