< 1226880041 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did you see swedish past "datorn som verktyg"? < 1226880044 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If you select a single course, the contents (lecture schedules, news, assignments, things like that) will be only in the Official Language of the course. < 1226880046 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1226880052 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the "grunderna.." thing < 1226880071 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :https://noppa.tkk.fi/noppa/kurssi/t-106.1002/etusivu is in Finnish however < 1226880100 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a lot of things happen optionally in swedish, in finland. < 1226880105 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tuition is one of those things < 1226880152 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, those (T-106.1002, T-106.1207) are a bit of special case, since they have a distinct course code for the Swedish versions; probably because they are so common courses (several hundred students each year) and they want it to be easier to arrange things like exam papers in the right language. < 1226880171 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226880189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :isn't Torvalds Swedish speaking? < 1226880194 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :T-106.1002 isn't active right now, so the contents come from the automagical dump of the study guide; I guess all those pages might well be in Finnish. < 1226880197 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :bilingual < 1226880211 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :finnish too, that is < 1226880226 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well iirc I remember hearing him speaking Swedish in some audioclip of how to pronounce linux < 1226880232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably found on kernel.org iirc < 1226880241 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :We've got (according to wikipedia) 5.5 % officially Swedish-speaking people. < 1226880261 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The Linux pronounciation audio clip I've heard was in English, though. < 1226880283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://kernel.org/pub/linux/kernel/SillySounds/ < 1226880285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there it is < 1226880288 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"My name is Linus Torvalds and I pronounce Linux as Linux." < 1226880292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :English and Swedish < 1226880297 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but not Finnish < 1226880298 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226880315 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"His family belongs to the Swedish-speaking minority (5.5%) of Finland's population." < 1226880329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah ok < 1226880330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226880332 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*shrug* < 1226880340 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not that it matters to me < 1226880346 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :we all end up using English on irc < 1226880363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is sad but I type faster in English than Swedish < 1226880400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the Swedish qwerty keyboard variant is even more abysmally bad for the language than the English one < 1226880416 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should probably learn dvorak < 1226880418 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :swedish dvorak! < 1226880425 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive, yes Svorak < 1226880426 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :He does speak Finnish too; I've heard some interview or something. Maybe he though that Finnish people won't need the pronounciation guide audio-clip. < 1226880428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :exists < 1226880452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well I didn't need it in Swedish < 1226880531 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I guess someone Swedish could presumably do it with a long "i" in it. Like in the name "Linus". (I don't think it was with a long "i", though?) < 1226880559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, hm? < 1226880569 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is a short i < 1226880571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in Linus < 1226880587 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well to tell the truth it is hard to tell the difference for i < 1226880596 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The pronunciation given in Wikipedia is "[ˈliːnɵs ˈtuːrvalds]" which is a long one. < 1226880601 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for some vowels it is much easier < 1226880603 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Didn't bother listening to the audio clip, though. < 1226880621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean, easy enough with a < 1226880625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but not with i really < 1226880704 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i hear swedish vowels are actually distinct depending on whether they're long or short. < 1226880704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://kernel.org/pub/linux/kernel/uemacs/ <-- heh < 1226880715 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so that doesn't sound plausible < 1226880717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, usually ues < 1226880718 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think I personally say "Linus" and "Linux" with a different-length 'i'. (In any case, they say that Finnish-speaking people are good at differentiating vowel/stop lengths since we use those a lot for different meanings.) < 1226880719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1226880721 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226880738 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, Linus is between long and short I'd say < 1226880741 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is not sil nor sill < 1226880751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(the first one = sieve, the latter one a type of fish) < 1226880760 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION knew that < 1226880770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but < 1226880779 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Linus is somewhere in between for me < 1226880784 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :fi:siivilä and fi:silli here, I think. < 1226880794 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I assume it's the same fish. < 1226880806 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :drop adding those double vowels all the time ;P < 1226880823 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't know what fish that is, but i'm pretty sure it's the same one. < 1226880830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226880834 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION refuses to learn animals < 1226880839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I got no clue what that fish is in English < 1226880857 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226880858 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :herring? < 1226880865 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :herrings are so silly < 1226880866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226880871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1226880877 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah they are pretty silly < 1226880878 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes, herring < 1226880883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226880902 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not maybe, for sure < 1226880931 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps... < 1226880938 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll check so we know for sure! < 1226880943 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION checks < 1226880946 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does an all-round swatting ----### < 1226880961 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :herring, Atlantic herring < 1226880969 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan and i guessed right it seems! < 1226880981 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :guessed? < 1226880981 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lottery time methinks! < 1226880989 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's "sild" in norwegian fwiw < 1226881002 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: how many exclamation marks must i use for you to see the sarcasm < 1226881013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: about 3684 < 1226881015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, sieve daemon? < 1226881028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sild would be sieve daemon obviously < 1226881043 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: can you count yourself and tell me when you see it? < 1226881054 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : < 1226881055 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226881060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(i'll start putting them in random locations so you slowly get the sarcasm!) < 1226881095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION waits for anyone to get the joke < 1226881096 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: not maybe, for sure. < 1226881107 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i'm assuming "d" is a common suffix for daemons < 1226881110 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's what YOU think < 1226881113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, yes it is < 1226881119 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: what i think doesn't matter < 1226881131 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :making all your arguments void. < 1226881132 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Satand is _so_ pissed that we keep misspelling his name < 1226881149 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: see, that's a good daemon pun :P < 1226881158 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you've got a lot to learn < 1226881204 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1226881211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ahhah < 1226881235 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, is satand the .no name? < 1226881239 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no < 1226881241 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1226881244 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226881249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well not fun then < 1226881261 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :we type it as satan, whereas it's actually satand < 1226881264 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because satan is a demon < 1226881269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1226881275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :need to sleep really < 1226881289 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226881513 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :While I was ready preparing for sleep, I thought of two word-pairs with only a i-length difference with hilariously different meanings. < 1226881527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, oh? < 1226881542 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's sima/siima (mead/fishing line) and sika/siika (pig/a type of fish). < 1226881660 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :how positively side-splitting < 1226881661 0 :biden!unknown@unknown.invalid NICK :comex < 1226881684 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also lika/liika (dirt in the "dirty" sense, filth, something like that/"too much" in suitable contexts). < 1226881732 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :likalla lakilla liikaa likaa < 1226881740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone here good at git? < 1226881748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how do I see where git pulls from? < 1226881756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is being an unhelpful bastard as usual < 1226881766 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :none of the svn like commands work < 1226881769 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nor any other < 1226881772 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well what do you expect with that name < 1226881777 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, true < 1226881781 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but still < 1226881795 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wow AnMaster got a pun < 1226881806 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I ignored the pun < 1226881885 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i said "o" < 1226881939 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: when? < 1226881946 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not recently < 1226881976 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: sorry, that was actually a short story of mine < 1226881985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1226881986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :strace < 1226881994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ strace -v -s 100 -f git pull 2>&1 | grep write < 1226882003 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it continues: "the man looked at me for an hour or so, then responded: 'o'" < 1226882012 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226882014 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :o < 1226882017 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's it really, i forget the rest. < 1226882022 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :[pid 24867] write(4, "0052git-upload-pack /pub/scm/linux/kernel/git/acme/pahole.git\0host=git.kernel.org\0"..., 82) = 82 < 1226882051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess there is a simpler way < 1226882056 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: do you call this "The story of O"? < 1226882062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the help of git is abysmal < 1226882067 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :very hard to locate stuff in < 1226882074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with svn, bzr and so on it is simple < 1226882078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :svn info < 1226882080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bzr info < 1226882102 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i think it's "the story of two lonely o's" < 1226882106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :darcs show iirc < 1226882134 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess they would start out lonely yes < 1226882150 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1226882155 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o's are nice people. < 1226882188 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, really; "git fetch -v" shows it. < 1226882201 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or "pull -v" or something. < 1226882202 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, ok < 1226882208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, but it isn't easy to find < 1226882222 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, svn set a standard for a good user interface < 1226882238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :learn one and you can find your way around them all < 1226882240 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It was pretty trivial to find; I didn't even have to check any man pages, I just did "well, -v is probably the verbosity flag for the pull command". < 1226882254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well I didn't want to do the pulll < 1226882259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just show where it would have been < 1226882275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, which is pretty different < 1226882310 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, tell me how you would do it in git < 1226882317 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"git remote show origin". < 1226882322 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Which also wasn't difficult to find. < 1226882335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how the heck would I know it was git remote to begin with? < 1226882339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I looked at git help < 1226882347 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't even list remote < 1226882353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so yes it's help is abyssmal < 1226882358 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's the *remote repository* you're interested in; I would've thought it's quite easy to figure out. < 1226882372 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't think that's very commonly used command, though. < 1226882374 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, how would I know there existed a command called remote < 1226882386 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :By saying "man git", maybe? < 1226882386 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ git help | grep remote < 1226882386 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : push Update remote refs along with associated objects < 1226882390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wich isn't relevant < 1226882396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I expect help such as from svn < 1226882399 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :git help < 1226882403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :seems to be like that < 1226882425 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It says "commonly used commands" right there; it even has a -a flag for all commands, which you would've seen from "git help help". < 1226882444 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o < 1226882459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well it is counter intuitive(sp?) < 1226882467 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not trying to say I love git's command-line interface, even when compared to svn, but I can't really agree it's especially *difficult*. < 1226882473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, also I prefer not having it pop up in man < 1226882483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since once I hit q it is all gone < 1226882489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in konsole < 1226882495 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :doesn't work that way in xterm < 1226882499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it does in konsole < 1226882515 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it seems to use a separate buffer for cursor addressing mode or something < 1226882524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I noted it with TERM fingerprint in cfunge too < 1226882540 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Probably depends on whatever magic is in the terminfo strings. < 1226882552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well. both use xterm-color here < 1226882555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*shrug* < 1226882566 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1226882569 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Night. < 1226882839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: AnMaster hates git < 1226882845 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but that hate doesn't seem to be based on logic < 1226884072 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1226884376 0 :sebbu!unknown@unknown.invalid QUIT :"@+" < 1226884537 0 :zoltran!n=zoltran@88.242.225.112 JOIN :#esoteric < 1226884744 0 :zoltran!unknown@unknown.invalid PART #esoteric :? < 1226886084 0 :CakeProphet!n=bread@h179.38.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1226886196 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :redivider looks nifty < 1226886223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226886247 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hi cakey long time no see < 1226886293 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :Hey... okie? < 1226886299 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I keep popping in occasionally < 1226886303 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226886322 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I can't really say I've been busy though, I've just been out of the loop < 1226886336 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, me too. out of all loops really < 1226886592 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the only real ideas I've gotten lately that I haven't really seen much of deals with event-based programming < 1226886617 0 :PovAddict!n=nicolas@201-213-146-51.net.prima.net.ar JOIN :#esoteric < 1226886658 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :when : < 1226886677 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :like a come from that's useful < 1226886690 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah i have a few of that kinda langs < 1226886700 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but they're a bit rare, and they're pretty nice < 1226886747 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you get a nice declarative paradigm if condition is simply a boolean expression < 1226886757 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the main question is in what order execution should take place... and where the control flow should go afterwards. < 1226886768 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well i'd go for nondeterminism < 1226886796 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and no control flow except the comefroms is pretty natural. < 1226886809 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but if you had some kinda imperative core, that might be pretty tasty < 1226886833 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :basically run some kinda statements one by one, and have comefroms with triggers < 1226886852 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :imperitive seems the most natural < 1226886873 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :not really esoteric... but deliciously cause-effect anyways. < 1226886889 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sounds pretty delicious yes < 1226886917 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :has anyone here used Whirl? < 1226886927 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :keymaker made a quine in it recently < 1226886932 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's all i've heard about the lang < 1226886944 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :ah that enormous quine :P < 1226886957 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm. no i don't think it was that enormous < 1226886973 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :compared to that one other quine of his < 1226886978 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :don't remember the language < 1226886983 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :I only tried it in the Flash VM and it ran for quite long without outputting anything, so I closed it < 1226886984 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :the more I look at io's specs the more I like it < 1226886986 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but it was like dozens of pages < 1226886989 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I think I'm going to download it and play with it some < 1226886998 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :should try with a proper interpreter later < 1226887072 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :I've yet to see a Whirl program using PAdd (program jump) < 1226887140 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :maybe this quine uses it... I don't see too many other ways to make a Whirl program whose output isn't much smaller than the code itself < 1226887150 0 :PovAddict!unknown@unknown.invalid PRIVMSG #esoteric :(in this case, equal) < 1226887190 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :I'm addicted to having a point of view too. < 1226887193 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :isn't padd the only way to do control flow? < 1226887213 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :-downloads io- < 1226887229 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okokokoko < 1226887686 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :anyone ever used Q? < 1226889228 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :this conversation is impossible to follow, all four of you are the same color < 1226890657 0 :GreaseMonkey!n=gm@unaffiliated/greasemonkey JOIN :#esoteric < 1226892019 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226892492 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1226897208 0 :Azstal!n=asztal@cpc3-stkn2-0-0-cust106.midd.cable.ntl.com JOIN :#esoteric < 1226897708 0 :ab5tract!n=ab5tract@pool-71-246-5-13.phlapa.fios.verizon.net JOIN :#esoteric < 1226898156 0 :ab5tract!unknown@unknown.invalid QUIT : < 1226898272 0 :Asztal!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226898292 0 :Sgeo!unknown@unknown.invalid QUIT :"Ex-Chat" < 1226899401 0 :puzzlet_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226899407 0 :puzzlet!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226902469 0 :moozilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226902529 0 :metazilla!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1226903077 0 :immibis!n=immibis@125-236-168-38.broadband-telecom.global-gateway.net.nz JOIN :#esoteric < 1226905537 0 :immibis!unknown@unknown.invalid QUIT :"Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. and dlte ur files. and email ths to < 1226908799 0 :clog!unknown@unknown.invalid QUIT :ended < 1226908800 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1226909103 0 :jix!n=jix@paed-gw.schule.bremen.de JOIN :#esoteric < 1226909110 0 :jix!unknown@unknown.invalid QUIT :Remote closed the connection < 1226909117 0 :jix!n=jix@paed-gw.schule.bremen.de JOIN :#esoteric < 1226910410 0 :PovAddict!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226910434 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226910434 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226910442 0 :metazilla!unknown@unknown.invalid NICK :moozilla < 1226910907 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226910908 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1226910917 0 :metazilla!unknown@unknown.invalid NICK :moozilla < 1226910954 0 :jix!unknown@unknown.invalid QUIT :"Computer has gone to sleep" < 1226912415 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"So, how much do you love noodles?" < 1226913060 0 :Azstal!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226914533 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226914535 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226914541 0 :metazilla!unknown@unknown.invalid NICK :moozilla < 1226914593 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226914598 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226914603 0 :metazilla!unknown@unknown.invalid NICK :moozilla < 1226914849 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226914850 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226914859 0 :metazilla!unknown@unknown.invalid NICK :moozilla < 1226915836 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226915841 0 :moozilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226916411 0 :Corun!n=Corun@94-192-102-5.zone6.bethere.co.uk JOIN :#esoteric < 1226916445 0 :moozilla!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1226916447 0 :metazilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226917409 0 :metazilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226917411 0 :moozilla!n=moozilla@d14-167.rb.gh.centurytel.net JOIN :#esoteric < 1226920046 0 :metazilla!n=moozilla@d23-88.rb.gh.centurytel.net JOIN :#esoteric < 1226920052 0 :moozilla!unknown@unknown.invalid QUIT :Nick collision from services. < 1226920758 0 :moozilla!n=moozilla@72-160-124-166.dyn.centurytel.net JOIN :#esoteric < 1226921289 0 :metazilla!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226921534 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1226921880 0 :metazilla!n=moozilla@d16-89.rb.gh.centurytel.net JOIN :#esoteric < 1226921882 0 :moozilla!unknown@unknown.invalid QUIT :Nick collision from services. < 1226923283 0 :sebbu!n=sebbu@ADijon-152-1-52-18.w83-194.abo.wanadoo.fr JOIN :#esoteric < 1226923297 0 :moozilla!n=moozilla@d16-89.rb.gh.centurytel.net JOIN :#esoteric < 1226923299 0 :metazilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226923306 0 :moozilla!unknown@unknown.invalid NICK :metazilla < 1226924206 0 :moozilla!n=moozilla@d16-89.rb.gh.centurytel.net JOIN :#esoteric < 1226924207 0 :metazilla!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1226924217 0 :moozilla!unknown@unknown.invalid NICK :metazilla < 1226924568 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1226925937 0 :Hiato!n=Hiato@dsl-245-47-134.telkomadsl.co.za JOIN :#esoteric < 1226925977 0 :pikhq!unknown@unknown.invalid QUIT :Remote closed the connection < 1226926457 0 :Hiato!unknown@unknown.invalid QUIT :"Underflow" < 1226926556 0 :AquaLoqua!n=anonym@dsl-245-47-134.telkomadsl.co.za JOIN :#esoteric < 1226927368 0 :pikhq!n=pikhq@r01jjw8v9.device.mst.edu JOIN :#esoteric < 1226928561 0 :CakeProphet!n=bread@h45.47.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1226929025 0 :AquaLoqua!unknown@unknown.invalid QUIT :"Dana" < 1226931220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm ais523 isn't marked away < 1226931232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I guess you are there ais523? < 1226931357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :seems like the answer is no < 1226931797 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o < 1226932209 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm. < 1226932224 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wonder how hard it is to compile bf with unbounded cells to bf with bounded cells < 1226932729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, you mean bignum to unsigned byte? < 1226932872 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :compile bf with unbounded nonnegative cells to bf with bounded unsigned cells < 1226932886 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226932906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I would first compile it to C with bounded integers, then use gcc-bf < 1226932914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :highly suboptimal < 1226932949 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh. < 1226933002 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well one issue is that if a cells grows you may need to move all other cells upwards < 1226933009 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can easily do something like store numbers in base 255, storing numbers 0-254 as numbers 1-255, and use a zero byte as a marker between numbers. < 1226933024 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and move the whole tape contents to the right when a carry happens over the number boundary < 1226933037 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's probably faster than whatever gcc-bf would do. < 1226933041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1226933070 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my point was, is there some nice kinda interleaving of the bytes of the numbers < 1226933070 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, but if you suddenly run out of space for the lowest cell you need to move all above it upwards < 1226933083 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :without the need to bookkeeping that requires unbounded cells < 1226933087 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*for < 1226933105 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, that's why that's a bad idea. < 1226933107 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :After moving the tape, you also need to find your way back where you were, which might involve some other marker value. < 1226933131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1226933152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is why gcc-bf would be easier, though even less efficient < 1226933158 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If you want a fixed-size (N) tape of unbounded numbers, and you have an infinite tape of bounded numbers, you can of course store the bytes of the k'th number at k, k+N, k+2*N, ... < 1226933319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :interleaving data like that is really confusinf < 1226933321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :confusing* < 1226933376 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah probably better to use two bytes to represent a number boundary, one for marking current cell, one for storing a static zero. < 1226933397 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :one doesn't work, at least easily, because you need bookkeeping when doing the bookkeeping required for it, i think. < 1226933404 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which is quite hard to do. < 1226933438 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yeah that works < 1226933438 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but < 1226933459 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my point was, can you easily do that without needing unbounded cells for the bookkeeping when locating the bytes < 1226933469 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the indices get pretty big. < 1226933518 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :easy, store the length of the length < 1226933520 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, you just need one number for that, so guess you could use a simpler interleaving for it, like have every other byte zero and use that for the index < 1226933522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then for that length: < 1226933534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :store the length as a number of zero bytes < 1226933551 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the length of the length is the same length as the count of those zero bytes < 1226933553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1226933568 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there are a lot of ways, i don't see a use for something more complicated than storing it as BBBBBB0 < 1226933582 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What do you need the cell indices for? < 1226933608 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: say i add 1 to byte 2 of a number, i need to locate byte 1 if there's a carry < 1226933613 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, what if there is a 0 in the BBBBB series? < 1226933620 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can you do that without actually calculating the index of byte 1? < 1226933623 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like 0xff0055 < 1226933625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that number < 1226933639 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 0-254 stored as 1-255 as i said < 1226933650 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but let's not bikeshed < 1226933652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226933658 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is a trivial problem. < 1226933670 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean, finding a way to store *one* number. < 1226933703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could ask the user to write it down < 1226933710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and then do various operations on it < 1226933718 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :write what down < 1226933722 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the number < 1226933723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226933724 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not good at brainfuck, but you do have the pointer pointing there, and two completely different operations; <> for "move to prev/next cell" and "<<<[N of 'em]<<<"-style for "move to prev/next byte". < 1226933760 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that works in a static context, yes. < 1226933770 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i need to have the same code for adding two adjacent integers, naturally < 1226933779 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and that code changes depending on the cell location < 1226933823 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226933835 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and n <'s won't even work within one number < 1226933839 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1226933844 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah okay it would for byte 2 < 1226933857 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hmm? You can just swabble around between the same byte in the two adjacent integers, add it, then continue to the next byte if there's carry, or something. < 1226933862 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but *obviously* the code for doing carries for *one* number needs to work for any number length < 1226933873 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1226933877 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, but how do i go to the next byte? < 1226933879 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's the issue < 1226933896 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the code needs to be the same no matter which byte of the number i'm in < 1226933896 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :With N >s? That moves always from byte k of cell l to byte k+1 of cell l. < 1226933903 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err. < 1226933917 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: If you want a fixed-size (N) tape of unbounded numbers, and you have an infinite tape of bounded numbers, you can of course store the bytes of the k'th number at k, k+N, k+2*N, ... < 1226933918 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1226933919 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sorry < 1226933922 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i read that as 2^N < 1226933934 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :assumed you were solving the problem i asked a solution for < 1226933951 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's a solution to a trivial problem :P < 1226933970 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, you just said "bf with unbounded cells to bf with bounded cells" without mentioning the length of the tape. < 1226933996 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sorry, it was implicit i want my bf to have an infinite tape. < 1226934011 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, you would. < 1226934019 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err i would? < 1226934027 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not with your scheme < 1226934028 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You're the kind of guy who likes infinite things. < 1226934032 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226934034 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I mean, you would want it. < 1226934035 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you meant it like that < 1226934037 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226934039 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i definitely would < 1226934043 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so bad < 1226934076 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but < 1226934077 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :still < 1226934084 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you're assuming bf doesn't have an infinite tape < 1226934094 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then you need to assume that for both bf's i was talking about. < 1226934101 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in which case your scheme doesn't have bignums. < 1226934107 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can't have them on a finite tape < 1226934123 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so i'm pretty sure you should've known i meant an infinite amount of bignums. < 1226934159 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It was just a random comment that you can trade infinite storage of one kind (finite amount of bignums) into an infinite storage of another kind (infinite amount of bounded integers) reasonably easily. < 1226934174 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, that is true. < 1226934227 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i misread it, and got pissed at myself. < 1226934232 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't want to be the one who has to write the arithmetics for a system where you have an infinite amount of infinite sequences interleaved on a tape. < 1226934252 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you wouldn't? < 1226934258 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well that's just silly :P < 1226934330 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't sound simple. Of course you can interleave them "diagonally" like A1, A2, B1, A3, B2, C1, A4, B3, C2, D1, but moving around there without single-cell bignums doesn't sound very much fun. < 1226934364 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: i would like to point out that incrementing a number and propagating a carry _are_ the same operation, and independent of position < 1226934377 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :similarly for decrement and borrowing < 1226934384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1226934388 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: what do you mean? < 1226934394 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1226934399 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah true, sure < 1226934415 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so it should not be a problem with the BBBB0 style < 1226934433 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :definitely not, it's just that you need to move the whole tape around. < 1226934491 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :guess you could simulate boolfuck on it, use the bytes for just booleans, would make the moving part faster < 1226934492 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but on the other hand any other solution seems to me to require indices to find out how far you need to go < 1226934506 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yes, but you could use BBB0 for the indices < 1226934511 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because you only need a few of them < 1226934522 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so it's not really a problem. < 1226934532 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :though i'm not sure that actually make things that much faster < 1226934550 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if you're moving around a tape, you need to be movign the indices around anyway < 1226934559 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :could just as well be moving the tape contents too. < 1226934588 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :why doesn't my uni give out any esolang courses :< < 1226934604 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: too few mad professors < 1226934631 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey oklopol < 1226934635 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we could establish an irc universe. < 1226934640 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with esolang courses. < 1226934641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226934645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/universe/university/ < 1226934648 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although universe sounds better. < 1226934661 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's actually something vjn has been contemplating for a long time < 1226934673 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :a sufficiently mad university is indistinguishable from a universe < 1226934694 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hopes to be a mad professor one day < 1226934702 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: you need to get gray hair < 1226934703 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :with all the crazy spacetime experiments going on < 1226934710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and also stop being cool < 1226934712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :have fun < 1226934740 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"the basics of esoteric programming", "brainfuck algorithms"... < 1226934747 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION imagines a mad scientist getting ostracized by his colleagues when they discover he is coloring his hair < 1226934755 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226934847 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :actually, evil mad scientists can be bald too, i think < 1226934885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226934899 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the good ones need to have grey hair, and/or be little kids < 1226934916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is there any language that is easily provable to be tc but is exceedingly hard to prove bf-complete? That is the same IO capabilities as bf < 1226934919 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mind you my data is a bit sketchy < 1226934934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would it be possible to construct such a language? < 1226934937 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Underload, duh < 1226934957 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you can prove it to not have the same output capability < 1226934968 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can't output non-matched () < 1226934980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I meant one that is hard to find out if it is bf complete < 1226934989 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with underload that is trivial < 1226934993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm a little kid < 1226934994 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well why didn't you say so :D < 1226934994 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do i count < 1226935013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: maybe, can you test your death ray somewhere spectacular? < 1226935014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I thought I said so, but maybe I didn't < 1226935024 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait i said _good_ mad scientists < 1226935028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: do you like jupiter? < 1226935035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i don't, either < 1226935037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :should i get rid of it? < 1226935045 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: maybe something that would create less debris < 1226935060 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i can zap the debris too. < 1226935062 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unless your death ray takes care of that < 1226935064 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok then < 1226935072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1226935081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would such a language as I mentioned be possible? < 1226935081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a gravitational antiforce blackhole/wormhole-directed-at-itself hybrid < 1226935088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, jupiter going in 3...2..1.. < 1226935090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ZAPPPPPPP < 1226935093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, jupiter's gone < 1226935100 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it looks like it's still there < 1226935106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because it's so big that the image will take a few years to fade < 1226935109 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe even decades. < 1226935112 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :centuries! < 1226935113 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well it's just a matter of making binary I/O sufficiently awkward isn't it < 1226935122 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :like INTERCAL but worse < 1226935128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hm I guess so < 1226935183 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: interesting effect given that Jupiter is only a few light hours away < 1226935205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hey, this is what happens when you mess with jupiter. < 1226935209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a pretty crazy thang < 1226935209 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226935222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: it is not actually composed of gas, but gravity. < 1226935225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pure gravity. < 1226935228 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh wait, i wasn't thinking. will this mess up my horoscope much? < 1226935240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: just ignore all the bad bits < 1226935243 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :jupiter is responsible for them. < 1226935247 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226935252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :exc-ell-ent < 1226935263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[[although i can't recall any horoscope ever saying anything non-vaguely bad]] < 1226935278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"YOU WILL DIE TOMORROW" < 1226935284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ fucking jupiter < 1226935293 0 :Sgeo!unknown@unknown.invalid QUIT :"Ex-Chat" < 1226935306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or "at 15:23 you will break a leg" < 1226935316 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226935342 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it'd be cool if there was a horoscope that told exactly what'll happen < 1226935346 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :...and it'd really happen < 1226935350 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226935363 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :...but only if you *believe* it < 1226935367 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"beware of siamese twins today" < 1226935378 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226935426 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"win the lottery today, it'll bring you luck" < 1226935430 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the technical problem is that newspaper horoscopes only have 12 options for all readers to share < 1226935432 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1226935437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: just change time < 1226935445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so that everyone in the same sign has exactly the same day. < 1226935458 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, that's a bit stupid about hs < 1226935464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's a bit problematic if you make them die ofc < 1226935468 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :less profit < 1226935468 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226935480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226935492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could special case it < 1226935507 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"if your name begins with S beware of falling rocks" < 1226935561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doo da bop < 1226935582 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.engadget.com/2008/11/17/the-bacon-iphone-sleeve-for-discerning-eyes-only/ < 1226935595 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :mm, bacon < 1226935639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226935643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thought: < 1226935645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :get bacon to write horoscopes < 1226935647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it can do no wrong < 1226935648 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :bacon is a fun food. < 1226935669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is it real bacon? < 1226935671 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"ling" is thai, it means "ape" < 1226935673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or just looks like it? < 1226935684 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's real bacon alright < 1226935688 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :seems to be coloured wool on that pic < 1226935698 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can't you see the fat dripping of it < 1226935704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nop < 1226935704 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes, NOW < 1226935705 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1226935902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :btw < 1226935909 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wanna go to jupiter sometime < 1226935911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but i zapped it < 1226935913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fuck :D < 1226935978 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it isn't zapped yet, due to speed of light it will be a few hours before it reach Jupiter, so just invent faster than light travel, go there and visit, and leave before it gets zapped < 1226936441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1226936449 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hello ais523 < 1226936465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi AnMaster < 1226936887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you had forgot to use /away last time it seems < 1226937443 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I had assumed the bouncer did that automatically. Perhaps he wasn't properly disconnected. < 1226937627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm ok < 1226937693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-psyBNC: Mon Nov 17 15:40:36 :connect from sm01-fap05.bham.ac.uk < 1226937693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[15:40] -psyBNC: Mon Nov 17 15:40:39 :User ais523 logged in. < 1226937693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[15:52] -psyBNC: Mon Nov 17 15:52:38 :User ais523 disconnected (from 147.188.254.112) < 1226938364 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION considers gobolinux+etoile < 1226938806 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1226938811 0 :puzzlet!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226939177 0 :d4064684!n=chatzill@152.105.21.161 JOIN :#esoteric < 1226939185 0 :d4064684!unknown@unknown.invalid NICK :Asztal < 1226939808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh fun: http://www.suckless.org/programs/ii.html < 1226940046 0 :Asztal!unknown@unknown.invalid QUIT :Remote closed the connection < 1226940203 0 :Asztal!n=chatzill@152.105.21.161 JOIN :#esoteric < 1226940444 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what is the link for gcc-bf now again? < 1226940466 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there's an out of date version online, let me post the most recent version, then I'll tell you the URL < 1226940491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually... it's a bit hard to separate the bits that are mine from the bits that aren't atm < 1226940494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I don't have a build system < 1226940495 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226940503 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not entirely sure what I should paste, exactly < 1226940545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226940553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't you have a darcs repo? < 1226940572 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not really < 1226940574 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not for the whole thing < 1226940579 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just for the gcc backend thing < 1226940584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I'm not using it as proper version control < 1226940593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just as a place to store deleted code, rather than commenting it out < 1226940601 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc-bf's a mess from the project management point of view < 1226940874 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226940879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how complete is it < 1226940889 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what would the steps be to try it out < 1226940896 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: almost, just need a sane build system and the bit that actually produces the BF itself < 1226940906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also aren't you using the gcc build system for the gcc backend? < 1226940910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I am < 1226940914 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except that I have to wrap it < 1226940918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226940919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's sort of confusing < 1226940924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bits of the Makefile run three times < 1226940924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you don't produce any bf? < 1226940928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I thought you said you did < 1226940932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it gets as far as ABI < 1226940939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and then produces the BF for the constants at the start < 1226940947 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's just +++++>>>>>>+++>>>>>+++++>>>>>> stuff < 1226940949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :brb phone < 1226940970 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1226941447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :back < 1226941454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm ok < 1226941463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so how would I go about building this? < 1226941467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what gcc version and so on < 1226941473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my current build system is full of hardcoded paths < 1226941478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but basically, it works like this: < 1226941478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226941481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :first, you patch gcc < 1226941483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I got gcc 4.3.2 here < 1226941488 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's a particular version the patches are against, let me check < 1226941489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as the system gcc < 1226941497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :4.2.3 < 1226941501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or 4.1.2 on my amd64 < 1226941505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although ofc they might work against other versions too < 1226941511 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just I haven't tried < 1226941515 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well my system gcc are those two < 1226941518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then there's a patch for the makefile too < 1226941549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is this gcc a vanilla gcc or a distro gcc? < 1226941559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean is it already patched < 1226941571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mean,* < 1226941620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, = < 1226941621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226941657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, sorry < 1226941659 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :connection... < 1226941661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226941670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : then there's a patch for the makefile too < 1226941670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ais523, is this gcc a vanilla gcc or a distro gcc? < 1226941670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : I mean, is it already patched < 1226941680 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the Debian sources < 1226941682 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for gcc < 1226941690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think that's ready-patched < 1226941692 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well is it patched or an upstream one < 1226941695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226941704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so do I need the debian one then? < 1226941709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and how on earth do I get hold of it < 1226941711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... the simplest solution is almost certainly just to redistribute the whole tarball < 1226941714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my code and other people's < 1226941717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :considering I'm no debian user < 1226941749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, would be better if it also was possible to get the specific parts < 1226941758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in order to upgrade to a new gcc < 1226941760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226941769 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although gcc changes the internal interfaces around quite a lot, it seems < 1226941776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh hm < 1226941795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well main issue here I see is that I can't easily find a debian gcc afaik < 1226941817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should just send you my gcc tarball < 1226941826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or at least I would if I could figure out how it interacts with the build system < 1226941827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not by mail < 1226941829 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it's in more than one directory < 1226941839 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... probably best is if you wait until my Christmas holidays < 1226941845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my isp limits it to 10 mb < 1226941847 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then I can attempt to figure out wtf is going on < 1226941850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the mail account < 1226941853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, probably by http < 1226942155 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, this is a nice irc client: http://www.suckless.org/programs/ii.html < 1226942195 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and meanwhile I have extended the ideas for my potential esolang FS a bit < 1226942203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i request that everyone stop talking to AnMaster so i don't have to read monologues < 1226942205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :actually forget tha < 1226942206 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t < 1226942207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're funny < 1226942208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1226942251 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"the big brother of sic" < 1226942256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ha! < 1226942320 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what are the different subdirs at http://code.eso-std.org/gcc-bf/ ? < 1226942378 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bf-ld is the stuff that runs after gcc (the implementation of as and ld, mostly); config-bf is the bit that goes inside gcc, libbf is C code for the standard library, and bitemplate is an attempt at figuring out the build system < 1226942390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226942429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :loloop <-- laughing out loud object oriented programming? < 1226942434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://code.eso-std.org/gcc-bf/libbf/longjmp.S < 1226942448 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's the low-overhead loop command < 1226942455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately gcc's optimiser doesn't seem to generate them < 1226942464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how do you mean low overhead? < 1226942465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but vaguely speaking, a typical loop is implemented in terms of computed gotos < 1226942469 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas a loloop is just [] < 1226942483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well does many machines have something like a loloop? < 1226942484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"low overhead loop" is a technical term in the gcc docs < 1226942488 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: quite a few do < 1226942492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1226942499 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even x86 has the rep instruction < 1226942503 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that only does one command < 1226942507 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226942511 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most of the loloop-wielding machines I see have registers < 1226942517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which basically put a goto into the code at runtime < 1226942523 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and decrement stuff at the same time < 1226942568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how would I download this and set it up? < 1226942573 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wget -r? < 1226942575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for download? < 1226942583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, wget -r for download < 1226942589 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and with great difficulty in terms of setting it up < 1226942591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well wget -m -np I guess < 1226942594 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of the files you need aren't even there < 1226942604 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok, care to upload the files at least < 1226942608 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and some vague hints < 1226942617 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can figure out how to fix build failures usually < 1226942622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but here I got no idea where to start < 1226942650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to figure out where to start atm < 1226942653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226942654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :everything depends on everything else... < 1226942670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so you can't begin with compiling gcc-bf? < 1226942674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then do the linker and so on < 1226942694 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait the linker is just perl < 1226942696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let's see... you do linker first < 1226942701 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't need compiling as it's Perl < 1226942708 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you just put it in path or? < 1226942748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, unfortunately not < 1226942755 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1226942757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I had enough pain trying to get gcc to look in the right directory to start with < 1226942776 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let me try to find my config.status, then at least I'll know what the configure command line is < 1226942785 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226942990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm? < 1226943015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, lets say I got the whole /home/gcc-bf for doing this < 1226943021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :# This directory was configured as follows, < 1226943022 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :# on host dell: < 1226943023 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :# < 1226943025 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :# /home/ais523/esoteric/brainfuck/gccbf/gcc-4.2-4.2.3/gcc-20080201/configure --target=bf --prefix=/home/ais523/esoteric/brainfuck/gccbf/gcc-4.2-4.2.3/build2/buildinto --with-sysroot=/home/ais523/esoteric/brainfuck/gccbf/gcc-4.2-4.2.3/build2/buildinto --with-build-time-tools=/home/ais523/esoteric/brainfuck/gccbf/gcc-4.2-4.2.3/build2/buildinto/bin --disable-libssp --enable-languages=c < 1226943027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh < 1226943029 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226943044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, it was with a patched Makefile < 1226943045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so where would the linker be? < 1226943051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was in /bin < 1226943052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of buildinto < 1226943053 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, which isn't uploaded? < 1226943065 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is, but in a different directory < 1226943073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um ok < 1226943081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as I said, this thing is an utter mess < 1226943095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I'll guess I'll skip it for now < 1226943100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why build2 btw? < 1226943115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because I got confused trying to figure out what had happened to the original build directory < 1226943121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I probably have to make build3 sometime soon... < 1226943126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226943136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you mean build system got borked < 1226943139 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226943141 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, it was working fine < 1226943146 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just couldn't figure out how < 1226943151 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1226943167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the whole thing is a mess of twisty little shell scripts, all alike < 1226943176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which all reference hardcoded paths in other directories < 1226943194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I'm quite good at shell scripts, so I guess I could help clean it up < 1226943201 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the scripts are fine < 1226943203 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking of doing that for iffi build script < 1226943212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just... tracing what happens when is hard enough < 1226943218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hard coded paths aren't fine < 1226943219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not even sure I know which one you're meant to run first < 1226943223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes < 1226943228 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they're hard-coded relative paths < 1226943236 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but still, they're to things which should be elsewhere < 1226943245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mostly it's that the directory structure they're in is confused < 1226943246 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh? < 1226943273 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :here's one of them, as an example: < 1226943276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rm -f gcc/libgcc.a < 1226943278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rm -f gcc/libgcc/* < 1226943279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :make && make install && (cd ../buildinto/libexec/gcc/bf/4.2.3/install-tools/ ; ./mkheaders) < 1226943283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw did I tell you that cfunge builds under Open64 too? < 1226943289 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, you didn't < 1226943296 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well it does. < 1226943310 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gcc, icc, open64 < 1226943320 0 :puzzlet_!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226943359 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no longer clang, since it seems clang silently miscompiled a feature used in cfunge, which however didn't affect cfunge (heh), but now it aborts on it instead < 1226943371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but considering that clang is pre 0.0.1 still < 1226943372 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what feature is that? < 1226943391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, struct mystruct variable = { .fieldname = foo } < 1226943396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :C99 thing < 1226943399 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1226943417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :something I use in many cases, often for clarity < 1226943427 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is so much easier to see what is going on using it < 1226943477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw Open64 pretends to be GCC, even cmake gets confused by it (it manages to understand that icc isn't gcc, even though icc pretends to be) < 1226943494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however it also accepts gcc flags < 1226943494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does autoconf get confused by it? < 1226943500 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but: < 1226943502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :opencc WARNING: -Wdisabled-optimization is ignored < 1226943515 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, haven't tried < 1226943515 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it looks for what the compiler does, not what it is < 1226943519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :they all define __GNUC__ < 1226943536 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well so do I most of the time < 1226943550 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I check that the warning flags actually work < 1226943576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the irritating bit here is that open64 claims it works then outputs a warning it is ignored < 1226943627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :clang says this btw: < 1226943628 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: check on code that shouldn't produce the warning too < 1226943632 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/home/anmaster/cfunge/trunk/src/interpreter.c:78:3: error: cannot codegen this initializer list with designators yet < 1226943652 0 :Mony!n=AssHole@AToulouse-258-1-4-45.w90-55.abo.wanadoo.fr JOIN :#esoteric < 1226943660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well I do check that it compiles, checking compiler output would be more complex < 1226943671 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean stderr output < 1226943694 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :considering some compilers, like icc, tends to output even when everything is ok < 1226943703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it's default verbosity level is rather high < 1226943724 0 :Mony!unknown@unknown.invalid PRIVMSG #esoteric :plop < 1226943732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you use -Werror and check the exit code? < 1226943751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm. < 1226943758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not all compilers support it < 1226943762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unsure about open64 < 1226943767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it seems to lack all form of man pages < 1226943774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can deduce whether it supports it or not < 1226943784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you only need three tests < 1226943798 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :warningy program without -Werror, non-warningy program with -Werror, warningy program with -Werror < 1226943804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I actually do a check for the compiler type before testing all the warning flags < 1226943819 0 :psygnisfive!unknown@unknown.invalid QUIT :Remote closed the connection < 1226943826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if the third one is the only one with nonzero exit status, -Werror probably does what you want < 1226943844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but seems it seems to be some "look like gcc" tournament it rather messes up the the check < 1226943851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but since* < 1226943875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even clang defines __GNUC__ < 1226943944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's for header files < 1226943956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just like everything defines STDC, even things that don't conform to the C standard < 1226943988 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :only one that doesn't define __GNUC__ so far is tcc, which a) doesn't optimise except turning very basic constant arithmetic expressions into one value, such as 2*2 into 4. b) has too incomplete C99 support to get anywhere with cfunge. < 1226943999 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tcc compiles c-intercal though < 1226944013 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL should in theory compile on everything which supports prototypes < 1226944017 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well IMO the defines should make sense < 1226944021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it used to compile on compilers before that too, I think < 1226944034 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if I want to check for a specific compiler I should be able to < 1226944037 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whether it links is another matter, rather depends on what's in the standard library < 1226944043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if I want to optionally use a feature of it < 1226944054 0 :puzzlet_!unknown@unknown.invalid QUIT :Remote closed the connection < 1226944059 0 :puzzlet_!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226944074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then if something defines that but it fails to understand that feature you have to realise how faulty the idea was in the first place < 1226944074 0 :puzzlet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226944094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to pretend to do something you dont' < 1226944097 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't* < 1226944107 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: anyway, I'm working on gcc-bf build3 right now < 1226944112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :once I figure out how it's done I'll tell you < 1226944114 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that other can use? < 1226944118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226944119 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and this time I'll keep a record of everything that I do < 1226944129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, right. btw did I tell you about WLIW? < 1226944149 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure you know about VLIW architectures < 1226944151 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, you mentioned it but didn't say what it was < 1226944154 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but what about WLIW ones < 1226944161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Wood Log In Wall < 1226944168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not computer architecture < 1226944169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226944185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :very bad joke yes < 1226944209 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(VLIW being Very Long Instruction Word) < 1226944223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ping? < 1226944238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: pong! < 1226944259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I wonder why I didn't get any comment on the joke < 1226944274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it isn't a very good one... < 1226944331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1226944341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so a "groan" would have been the correct response < 1226944358 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, groaning is done for jokes so bad you enjoy them < 1226944361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas that one's just bland < 1226944362 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact since oerjan specialize in good puns < 1226944371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I will specialize in bad and bland ones < 1226944396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as a particle and an anti-particle < 1226944403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this is the matching anti-joke < 1226944706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster? a bland joke? < 1226944708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :shocking! < 1226944736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes indeed that is what my goal is < 1226945276 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, coopt.sh in ick got a typo: < 1226945281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# This optimizer is only run on noninteractive code that takes no < 1226945281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# output. < 1226945285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :surely that should be input? < 1226945289 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1226945292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unless you have used XCHG on them < 1226945294 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in intercal < 1226945300 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait... < 1226945306 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, output is output in INTERCAL, but it's read < 1226945309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and input is written < 1226945494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, err < 1226945501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so is the wording correct? < 1226945505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, it isn't < 1226945509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1226945512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's a comment bug, not as important as a code bug... < 1226945525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also well yes from the user point of view the input is written and output read < 1226945529 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed < 1226945765 0 :psygnisfive!n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1226945808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, i was thinking of fixing cftoec.sh to make it actually work < 1226945822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however, do it need to use this pre-posix shell syntax? < 1226945832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a posix shell can handle [] at least iirc < 1226945835 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instead of test < 1226945837 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: as I've completely changed the build system around it there's no point < 1226945850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, compared to the last pushed version or what? < 1226945853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, why can't I write out test? it's in POSIX too < 1226945856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, not compared to last pushed < 1226945859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :compared to last release < 1226945860 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226945866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :last pushed doesn't handle cfunge build at all < 1226945873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking of making it work for out of build tree < 1226945883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :out of tree build* < 1226945885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in build tree < 1226945917 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I'm unsure how to figure that out < 1226945919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :easiest would be: < 1226945933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it should work for both out-of-tree and in-tree < 1226945947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :run in build dir, first argument is path to ick source, second path to cfunge source < 1226945957 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for in tree it would be . for the first < 1226945982 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, there is no gpl header or otherwise a copyright header so I'm unable to edit it < 1226945984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226946000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226946004 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's GPLv2+, I should put an explicit header there though < 1226946021 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe autoconf could be made to insert source and build paths in the script? < 1226946078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, it could < 1226946091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how would it work, a --with-cfunge=/home/AnMaster/cfunge? < 1226946091 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah ../c-intercal/src/cooptsh.in < 1226946104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm maybe that would work < 1226946110 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't like to mess with automess so... < 1226946118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I can make the script work somewhat < 1226946448 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, --std? < 1226946452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :afaik it is a single - < 1226946464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1226946467 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's either iIRC < 1226946478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :man page only lists single dash here < 1226946501 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :use info, gcc's man pages are really incomplete < 1226946529 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :info pages are horribly hard to use < 1226946790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :find . -name '*.c' -printf "gcc $CFLAGS -c %p -o %f.o\n" | sh <-- huh? < 1226946931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:55: varning: implicit deklaration av funktionen "FungeSpaceCreate" < 1226946931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226946935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :need to update those < 1226947078 0 :Sgeo[College]!i=897d290d@gateway/web/ajax/mibbit.com/x-bb8f6dbd96565a90 JOIN :#esoteric < 1226947393 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There are nicer info readers than the default one; I always use "pinfo gcc" when I want GCC flags. < 1226947451 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(Although it makes me sad that I have to have "considered non-free by Debian" packages installed just to see GCC documentation.) < 1226947462 0 :Sgeo[College]!unknown@unknown.invalid PART #esoteric :? < 1226947562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226947567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pinfo isn't free? < 1226947576 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, pinfo is free, GCC's docs aren't. < 1226947584 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well fixing all the build errors, expect a patch later today < 1226947593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1226947594 0 :pinkillo!n=pinkillo@men75-1-81-57-40-7.fbx.proxad.net JOIN :#esoteric < 1226947625 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1226947652 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1226947656 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what brings you here? < 1226947661 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :nothing < 1226947720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226947733 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :what does we speak here? < 1226947743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, a question: < 1226947748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : unsigned char * restrict str = stack_pop_string(ip->stack); < 1226947749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ick_create(str, l); < 1226947753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when do you free that string? < 1226947756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pinkillo: esoteric programming languages < 1226947774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't, I think < 1226947776 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :esoteric programming language?? < 1226947780 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :what does it mean? < 1226947781 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as ick_create was designed to be passed pointers to string literals < 1226947789 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm < 1226947796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pinkillo: programming languages outside the mainstream < 1226947797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226947800 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :designed as jokes or for fun < 1226947800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226947802 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or to try things out < 1226947806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than for practical uese < 1226947808 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :thk < 1226947810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*practical use < 1226947850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what does ick_create do? < 1226947863 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Um... is http://esolangs.org/wiki/Esoteric_programming_language supposed to look a bit... strange, or is my browser just acting up? < 1226947865 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: implements a create statement < 1226947877 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :basically it just puts an entry into a hash table < 1226947880 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which isn't a hash table really < 1226947880 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, worth noting is that the pointer that stack_pop_string() returns may pointer to a larger alloced area than the string < 1226947883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it currently does < 1226947887 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just a linear-search lookup table < 1226947890 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but may change without prior notice < 1226947894 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it doesn't matter how large the alloced area is < 1226947899 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226947910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just as long as it doesn't mysteriously free behind my back < 1226947977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it shouldn't < 1226947997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, however I expect a few things will be renamed soon < 1226948003 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact I'll rename them right now < 1226948016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I saw some typos of my identifiers when I was editing the IFFI fingerprints < 1226948028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and one that didn't get changed in name conversion < 1226948072 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :what the differences between variable and constant??? < 1226948097 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um < 1226948099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pinkillo: generally speaking, variables can change values and constants can't < 1226948108 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :thk < 1226948111 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not true for SSA though < 1226948118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1226948135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and constants can change values in some langs, such as Forte, INTERCAL, and early versions of Fortran < 1226948145 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :hash tables is taht a constant a varible a fonction an object??? < 1226948153 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pinkillo: it's a data type < 1226948158 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's a sort of value < 1226948159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, certain pascal and/or delphi version < 1226948171 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1226948181 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :versions* < 1226948186 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :allowed you to change constants < 1226948236 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL will block blatant assignments like DO #1 <- #2 unless you give it the -v switch < 1226948245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but there are various more devious ways to assign to constants < 1226948258 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh? < 1226948266 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I guess you could in C using pointers < 1226948274 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :except it wouldn't actually work < 1226948290 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you would get a segfault < 1226948306 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: actually, in some versions of C char* a="Hello, world!"'' *a='J'; works < 1226948315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*AnMaster: actually, in some versions of C char* a="Hello, world!"; *a='J'; works < 1226948316 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well not on modern platforms < 1226948337 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would work on older ones that lack memory protection I guess < 1226948349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can't set memory as read only < 1226948378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however since I don't work with such environments it is not anything I have ever seen < 1226948491 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :why do you put '*' front of char ??? it is the same statement as DIM in basic? < 1226948504 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :***??? < 1226948513 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is this a troll? < 1226948521 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :hm.. < 1226948523 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :??? < 1226948532 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :pinkillo: habla usted C? < 1226948546 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :whats is c? < 1226948597 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226948598 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :cya < 1226948601 0 :pinkillo!unknown@unknown.invalid PRIVMSG #esoteric :by < 1226948602 0 :pinkillo!unknown@unknown.invalid QUIT : < 1226948608 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh my < 1226948674 0 :AquaLoqua!n=anonym@dsl-245-47-134.telkomadsl.co.za JOIN :#esoteric < 1226948714 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Modifying a string literal works on this Alpha/Tru64-V5.1B box, which isn't that non-modern; even the hardware is from this millennium. < 1226948753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, what compiler? < 1226948760 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for me it segfaults < 1226948778 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :GCC 3.0; although the vendor's compiler does the same. < 1226948792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, 3.0.... < 1226948792 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: gcc has a command-line option to not segfault when writing to a literal string < 1226948795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is old old < 1226948800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, had, iirc they removed it < 1226948809 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, some old programs need it to compile < 1226948822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, if you mean writable-strings it is removed < 1226948849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really? < 1226948859 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah hm wait < 1226948861 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-fno-const-strings < 1226948933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I can't find it in GCC 4.3.2 man page < 1226948935 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :http://gcc.gnu.org/gcc-4.0/changes.html does say: "GCC no longer accepts the -fwritable-strings option. Use named character arrays when you need a writable string." < 1226948940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1226948943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it does exist in 4.1.2 < 1226948949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strings are writable in gcc-bf, btw < 1226948954 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just as a side-effect of how I implement pointers < 1226948971 0 :Hiato!n=Hiato@dsl-245-47-134.telkomadsl.co.za JOIN :#esoteric < 1226948975 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, 3.0 isn't "old old", it's (again) this millennium. < 1226949038 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"It's not old if it starts with a '2'." < 1226949051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um < 1226949055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2 is old < 1226949058 0 :AquaLoqua!unknown@unknown.invalid QUIT :"Dana" < 1226949060 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I mean the year. < 1226949068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226949088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, well I would be amazed if cfunge compiled on it < 1226949097 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge does compile with gcc 3.4.6 iir < 1226949098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc* < 1226949106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't have any older to test with < 1226949150 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's no cmake on that box; is there a way to work around that? Although I'm not sure I'll bother. < 1226949154 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you said ick_create() wants a string literal? < 1226949160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then why the heck do I get this for a const char*: < 1226949164 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:111: warning: passing argument 1 of ‘ick_create’ discards qualifiers from pointer target type < 1226949172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you need to fix your prototype to say const char* < 1226949175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes < 1226949184 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :everywhere in the whole giant compiler < 1226949191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL was invented before const was, I think < 1226949193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I may make patches :P < 1226949194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or at least before it caught on < 1226949208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge uses it correctly everywhere < 1226949259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you have to get your head around just how old C-INTERCAL is, it used to not use header files but instead declare library functions inside functions < 1226949281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in main()int argc, char** argv{extern char* sprintf(); /*... */ < 1226949290 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226949291 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1226949297 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that still works I think, but I don't know anyone who's written it deliberately in decades < 1226949301 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh and IFFI lacked a header file < 1226949306 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1226949308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gettimeofday() is in sys/time.h < 1226949311 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you had forgot that < 1226949331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway I replaced it with the logic for looking for clock_gettime() that i use in cfunge now < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#ifdef HAVE_clock_gettime < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# include < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#else < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# include < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#endif < 1226949349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1226949357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err the last one wasn't related < 1226949360 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :HAVE_clock_gettime's in my config.h < 1226949381 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, defined to 0 or undefined when off? < 1226949392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's undef against defined to 1, IIRC < 1226949394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge expects #define/#undef < 1226949401 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instead of 1/0 < 1226949402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226949404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should work then < 1226949416 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, remember what I said about no librt on freebsd < 1226949453 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I do but I haven't worked out a fix for it yet < 1226949463 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even a sane one would do < 1226949469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CFUNGE_CHECK_FUNC(clock_gettime) < 1226949469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if (NOT CFUNGE_HAVE_clock_gettime) < 1226949469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : find_library(LIBRT_LOCATION < 1226949469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : NAMES rt) < 1226949469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :endif (NOT CFUNGE_HAVE_clock_gettime) < 1226949478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if (NOT ${LIBRT_LOCATION} STREQUAL "LIBRT_LOCATION-NOTFOUND") < 1226949478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : get_filename_component(LIBRT_PATH ${LIBRT_LOCATION} PATH) < 1226949478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : CFUNGE_CHECK_LIBRARY_FUNC(cfunge rt clock_gettime ${LIBRT_PATH}) < 1226949478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :endif (NOT ${LIBRT_LOCATION} STREQUAL "LIBRT_LOCATION-NOTFOUND") < 1226949489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is how I do it < 1226949491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: < 1226949496 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, rather cmake specific < 1226949505 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does fungot prefer more common follow-ons in its babble < 1226949506 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: " 195? 2. darwin thoroughly appreciated/ good work put into/ stocks, and snapdragons. -in fnord millefolium. -effect :) climate :) an opposite state, to/ height :) many hundred feet. < 1226949512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but iirc autoconf got a "search in libraries, pick the first matching one" function, right? < 1226949519 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but ideally it would do something silly like chroot to a copy of the filesystem with a symlink in there, or use some sort of ldd hack to replace fopen librt to fopen libc < 1226949535 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, eh what? < 1226949563 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I was trying to think up a really silly way around the problem < 1226949572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never build as root < 1226949572 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Hmm? Yes, the "next word" probabilities come directly from the n-gram frequencies; so if it has "foo bar" as context, and the data contains "foo bar baz" thrice and "foo bar quux" once, it selects baz with a 75 % probability and quux with 25 %. < 1226949575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so chroot would fail < 1226949581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK. < 1226949584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... use fakeroot then I suppose < 1226949589 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :^style < 1226949589 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Available: agora alice darwin* discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp < 1226949595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to think how to make a markov bot that is gud at the punctuatinz < 1226949596 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :^style irc < 1226949597 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams) < 1226949599 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it can simulate chroots, not sure though < 1226949610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. has nested stuff, i guess, so parens[a b c] -> (a b c) < 1226949621 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :fungot would be reasonably good with punctuation if I just implemented what I did in the C++ code. < 1226949621 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: perhaps, if it were b, they'd already have stuck him full of probes and returned home, and realised i forgot to tell you < 1226949637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :— Macro: AC_SEARCH_LIBS (function, search-libs, [action-if-found], [action-if-not-found], [other-libraries]) < 1226949637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Search for a library defining function if it's not already available. This equates to calling `AC_LINK_IFELSE([AC_LANG_CALL([], [function])])' first with no libraries, then for each library listed in search-libs. < 1226949638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226949641 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I suspect: < 1226949670 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(Which was a stack of current "open paren/quote/etc" so that it could discard spurious ")"-like things, and finally stick all the necessary closing parts at the end of the output.) < 1226949672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :AC_SEARCH_LIBS(clock_gettime, rt) < 1226949673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1226949677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure of exact syntax < 1226949683 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you probably need a few [] < 1226949706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway http://www.gnu.org/software/autoconf/manual/html_node/Libraries.html#Libraries < 1226949710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems to solve the issue < 1226949714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in a neat and sane way < 1226949725 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, pity, but I'll probably use it anyway < 1226949726 0 :Asztal!unknown@unknown.invalid QUIT :"ChatZilla 0.9.84 [Firefox 3.0.4/2008102920]" < 1226949735 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that would work with 0, 1 or 2 []s around each arg < 1226949759 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not sure < 1226949765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably you need one around each < 1226949776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and I don't know if it should be librt or just rt < 1226949781 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 or 2 would be the correct official amount < 1226949783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for cmake you normally skip the "lib" part < 1226949794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :2 as it's string literals, 1 as it's args, it doesn't matter because it comes to the same thing either way < 1226949808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yeah 0 probably works... < 1226949816 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226949821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :make it 1 for rt at least < 1226949852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in case it's defined to something? < 1226949857 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you'd need 2 to protect against taht < 1226949859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*that < 1226949868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm about config.h < 1226949873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge expects it on command line < 1226949878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would need some changes in some way < 1226949880 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unsure how < 1226949884 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's easy enough to fix < 1226949889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can choose where the substitutions go < 1226949898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so just substitute into the makefile instead < 1226949901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-DHAVE_acosl -DHAVE_asinl -DHAVE_atanl -DHAVE_cosl -DHAVE_powl -DHAVE_roundl -DHAVE_sinl -DHAVE_sqrtl -DHAVE_tanl -DHAVE_clock_gettime < 1226949908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :those are all the HAVE that I use < 1226949927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I use quite a bit more than that IIRC < 1226949928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for the math ones I fall back on the classical double versions < 1226949943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well that is because I have a different "base line" that I support < 1226949978 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mine is FreeBSD 6.3 or POSIX.1-2001, whichever is the lowest < 1226950105 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, now I get this: < 1226950110 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:43: warning: no previous prototype for ‘ick_SaveIPPosDelta’ < 1226950110 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:51: warning: no previous prototype for ‘ick_RestoreIPPosDelta’ < 1226950110 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:59: warning: no previous prototype for ‘ick_InterpreterRun’ < 1226950110 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./src/fingerprints/IFFI/IFFI.c:94: warning: no previous prototype for ‘ick_iffi_InterpreterOneIteration’ < 1226950138 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's because it's trying to link against code in C-INTERCAL itself < 1226950143 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :presumably it would want me to put that in a shared header file < 1226950180 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you use CamelCase? Since cfunge use _ instead of CamelCase since some time < 1226950188 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that was the bulk of the changes I had to make < 1226950192 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haven't really had a chance to update it < 1226950203 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL itself mostly uses lowercaseruntogethercase < 1226950206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1226950213 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :‘ick_InterpreterRun’ isn't in ick itself < 1226950221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is just that it is missing from IFFI.h < 1226950241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gcc complains because you didn't make it static, nor put it in a header < 1226950242 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226950300 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh < 1226950336 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I used the same warning flags I used for cfunge normally to check the code, I found a bug with one of the functions I only have there for your sake thanks to that < 1226950346 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a missing cast in fungespace_load_string() < 1226950414 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, where are they called from? < 1226950426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since they aren't listed in "// Externally-visible functions from IFFI.c" < 1226950429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in the header for it < 1226950445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let me try to remember < 1226950461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ick_InterpreterRun is called from cfunge itself < 1226950465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also there is a call to ick_InterpreterMainLoop() and that I got no clue where it is < 1226950469 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*C-INTERCAL < 1226950485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: are you looking in the INTERCAL half of the IFFI stuff? < 1226950490 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iffi stuff < 1226950496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that should explain where most of the missing references are < 1226950497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in IFFI.c < 1226950513 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, where is the other half then? < 1226950534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've forgotten, let me try to find it < 1226950597 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: pit/explib/ecto_b98.c: < 1226950602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :um, without the colon < 1226950617 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's what's calling the functions < 1226950656 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226950738 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ugh you mix forward declarations with external ones < 1226950803 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, are you aware of that you are using mixed spaces and tabs for indention? < 1226950811 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226950825 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's correct, it saves on file size when transmitting over Usenet < 1226950832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1226950835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as long as tabs are set to 8 spaces, which is industry standard < 1226950853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, maybe it was, but no sane modern user or editor use that any more < 1226950876 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :struct ick_ipposdeltatype { < 1226950876 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : long long ix, iy, dx, dy; < 1226950876 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :}; < 1226950877 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um? < 1226950881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why long long? < 1226950885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it stores the IP position and delta < 1226950893 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes but you use -DUSE32 < 1226950906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, but I wanted to make sure it was big enough even if the define was different < 1226950912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and cfunge use either int32_t or int64_t < 1226950921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and long long can be *anything* < 1226950929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, it has to be at least 64 bits < 1226950929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you can't know how large long long is < 1226950933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :thus large enough to store the deltas < 1226950946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226950946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not relying on wraparound, it's signed anyway so you can't rely on behaviour for out-of-range < 1226950959 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well true < 1226950993 0 :Corun!n=Corun@94-192-102-5.zone6.bethere.co.uk JOIN :#esoteric < 1226951063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"The 0x70001ff1 is a magic number used specifically by this code"? < 1226951072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yet I don't see that value except in the comment? < 1226951112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1226951122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is one screen above the comment < 1226951129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ... ^ < 1226951135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let me look at that again < 1226951140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :see if I can figure out how it happened < 1226951202 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: oh, that's correct, it's commenting the use of the number two screenfuls down < 1226951220 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's at the top because the comment is about the control flow in the function < 1226951234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which can either use autogenerated numbers (the very next line) or a magic number written later < 1226951240 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226951241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1226951243 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION can write sane C, but chooses not to when working on C-INTERCAL < 1226951246 0 :kar8nga!n=kar8nga@e-66.vc-graz.ac.at JOIN :#esoteric < 1226951271 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I didn't even understand that logic < 1226951299 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you need to know something of how ick_ec.h works to follow that logic < 1226951307 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I guess so < 1226951310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and remember that INTERCAL code doesn't run from top to bottom < 1226951325 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's sort of like annotating the target of a COME FROM to explain stuff about the COME FROM itself < 1226951329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or vice versa < 1226951332 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway what was the command to build using iffi, I mean building a test program < 1226951335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since I need that now < 1226951373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ick -eb iffit1.i iffit2.b98 < 1226951375 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1226951385 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :iffit1.i and iffit2.b98 can be found in pit/tests < 1226951398 0 :puzzlet_!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1226951417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226951438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you don't need the -b if you like to live dangerously < 1226951442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about ecto_b98.c? < 1226951462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since I needed to modify it < 1226951464 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's linked in automatically when it sees -e and a file ending .b98 < 1226951472 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so where does it look for the file? < 1226951474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's installed somewhere < 1226951481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in /usr/share/ick-0.29 I think < 1226951494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah /home/anmaster/local/ick-iffi/share/ick-0.29/ecto_b98.c < 1226951494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or possibly /usr/include < 1226951497 0 :puzzlet!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226951500 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so yes, shaer < 1226951501 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*share < 1226951519 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :could be either I suppose, it should be in the place for "include files written in a different language" < 1226951547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ICL899I HELLO? < 1226951547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : CAN ANYONE GIVE ME A HAND HERE? < 1226951547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : CORRECT SOURCE AND RESUBNIT < 1226951548 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err? < 1226951567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, I can't remember what that one is straight off either < 1226951591 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it couldn't find libick_ecto_b98 < 1226951597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226951600 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is the file the build system's meant to have been building in the first plcae < 1226951602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*place < 1226951608 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*libick_ecto_b98.a < 1226951690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it got a bug < 1226951699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :output doesn't match iffit.doc < 1226951706 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1226951708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how different is it? < 1226951708 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :last line is XV < 1226951715 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, wrong command line < 1226951718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :try with -bea < 1226951719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XIV < 1226951720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :15 < 1226951720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :16 < 1226951720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :17 < 1226951720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XV < 1226951721 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that kept tripping me up too < 1226951722 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like that < 1226951726 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is the -a for? < 1226951733 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :support for CREATE statements < 1226951739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226951741 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then it works < 1226951816 0 :KingOfKarlsruhe!n=nice@HSI-KBW-085-216-040-186.hsi.kabelbw.de JOIN :#esoteric < 1226951824 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :It is an interesting challenge to try to figure out how the tests < 1226951825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :work, especially given that the Funge program is self-modifying, the < 1226951825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :statements in the INTERCAL program don't always do the same thing < 1226951825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :every time they're run, and the Funge program modifies the syntax of < 1226951825 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the INTERCAL program at runtime. < 1226951827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hehe < 1226951849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is needed for a thorough test suite... < 1226951866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, um didn't you say mid dot was the same in utf8? < 1226951870 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my terminal disagrees < 1226951901 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, not in UTF8 < 1226951901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with iso-whatever it shows a middot, in utf8 it shows a box < 1226951904 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's in Latin-1 < 1226951910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is iso-whatever, yes < 1226951916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the same in Unicode < 1226951916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what other one? < 1226951919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but UTF8 != Unicode < 1226951923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah right < 1226951923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226951934 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you'd need to use UTF-9 or bignum characters to get it to work in a Unicode character set < 1226951946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :UCS-2? < 1226951947 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and AFAIK nothing implements UTF-9, therefore I must add it to convickt I suppose < 1226951961 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about UTF-16? < 1226951961 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nope, uses two bytes per char so is incompatible with Funge < 1226951966 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah hm true < 1226951967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1226951975 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well UTF-9 wouldn't work either < 1226951976 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: UTF-16 is UCS-2, pretty much, the differences are too minor to be relevant here < 1226951984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unless CHAR_BITS = 9 < 1226951984 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it would on a 9-bit system < 1226951986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which doesn't work < 1226951991 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :according to POSIX 2001 < 1226951994 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: why wouldn't CHAR_BIT=9 work? < 1226952007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, all types must be a multiple of CHAR_BITS < 1226952022 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so int can be 4 times as large for example < 1226952023 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however < 1226952028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't work for int32_t < 1226952032 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which C also defines < 1226952035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: your code is buggy < 1226952038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if CHAR_BITS isn't a multiple of 2 < 1226952040 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you should be using int_least32_t < 1226952052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :int32_t doesn't exist if there isn't a 32-bit type for it to refer to < 1226952054 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no I shouldn't, I'm using int32_t because that is what 32-bit funge means < 1226952059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it means exactly 32 bits < 1226952066 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could simulate it on a 36-bit system, surely? < 1226952075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, give me one to test on? < 1226952081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, exactly < 1226952085 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'd have to write an emulator first < 1226952095 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just because the technology doesn't exist, though, doesn't mean C-INTERCAL shouldn't handle it < 1226952098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well POSIX.1-2001 says CHAR_BITS nowdays have to be exactly 8 < 1226952106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on POSIX conforming systems < 1226952106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I perfectly understand cfunge not running on that sort of thing < 1226952116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since otherwise you can't have int8_t < 1226952138 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and using int_least8_t makes no sense if you need to read a binary file format for example < 1226952166 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1226952202 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but really the C standard only allow a multiple of 2 these days < 1226952209 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Don't those systems usually just read binary files as nonets where the highest bit is always zero? < 1226952222 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, heh? maybe < 1226952231 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: probably they have options, and converters, and such < 1226952253 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm more worried with figuring out how to represent UTF-9 on an 8-bit system < 1226952259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would be in C-INTERCAL already if not for that < 1226952321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, err where is ick_iffi_handle_control called from < 1226952329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is implemented in ecto_b98.c < 1226952343 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't seem to be called anywhere < 1226952386 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: let me grep for it < 1226952391 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You can represent it by packing your stuff stuff into units of four UTF-9 characters, and then representing those as 7 base64 characters; that should be perverse enough for everyone. And email-safe! < 1226952456 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1226952460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what is it actually called? < 1226952466 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that name doesn't seem to appear anywhere in my repo < 1226952480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ick_iffi_HandleControl < 1226952482 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1226952505 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where is char* ick_iffi_befungeString? Everywhere I look it is extern < 1226952514 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so where is the actual non-extern one < 1226952528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: both are in generated code < 1226952532 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's why you couldn't find them < 1226952540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the handle one too? < 1226952541 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226952546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where is it declared < 1226952547 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for the first one, the name is irrelevant except the linker needs to find it somewhere < 1226952558 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so how can I rename it? < 1226952561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to the underscore one < 1226952570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since you seem to try to write the same style of names as I do < 1226952582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so since I changed logically so should you < 1226952592 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the second one is in perpet.c < 1226952594 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in a string literal < 1226952597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and for ick_iffi_befungeString it needs to be changed to unsigned < 1226952605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since that is what befunge expects nowdays < 1226952613 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: but it's just a string literal < 1226952619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and string literals aren't of type unsigned char* < 1226952620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm ok I'll cast it < 1226952627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, const char* < 1226952632 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226952633 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which on my system seems to be signed < 1226952652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :befunge uses unsigned char* for all strings nowdays < 1226952660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but a cast would work yes < 1226952709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway where is ick_iffi_handle_control named then? < 1226952732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the name is irrelevant, it's just because it needs something to pass to the linker < 1226952739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could call it foo and the compiler wouldn't care < 1226952749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so do I need to update some linker script? < 1226952752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but then it might clash with a user-defined identifier foo if someone was linking INTERCAL/C/Befung < 1226952753 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*Befunge < 1226952757 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, it's automatically handled < 1226952761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1226952771 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the ICK_EC_FUNCTION_START generates the prototypes and the wrapper code and everything < 1226952794 0 :Mony!unknown@unknown.invalid PRIVMSG #esoteric :'night < 1226952820 0 :Mony!unknown@unknown.invalid QUIT :"Join the Damnation now !" < 1226952938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226952970 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/tmp/ecto_b98.c:78: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ick_restore_ip_pos_delta’ < 1226952971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1226952979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1226952983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: is that the first error? < 1226952990 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that normally means missing header file, IIRC < 1226952992 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I fixed it < 1226952995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it was externvoid < 1226952999 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instead of a extern void < 1226953016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :works now < 1226953161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does posix shell support += < 1226953166 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for string concat < 1226953174 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I know bash does but.. < 1226953339 0 :Hiato!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1226953355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ? < 1226953363 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure < 1226953368 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I prefer to keep to very simple stuff < 1226953374 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it should run on shells from decades ago ideally < 1226953378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# Please enable this when making changes. Requested by the cfunge author. < 1226953378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#CFLAGS="$CFLAGS -Wall -Wextra -pedantic -Wpointer-arith -Wimplicit -Wnested-externs -Wcast-align -Wcast-qual -Wbad-function-cast -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wparentheses -Wshadow -Wundef -Wpacked -Wredundant-decls -Wfloat-equal -Wstrict-aliasing=2 -Wformat=2 -Wdisabled-optimization -Wmissing-noreturn -Wmissing-format-attribute -Wdeclaration-after-statement -Wunuse < 1226953378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :d-function -Wunused-label -Wunused-value -Wunused-variable -Wwrite-strings" < 1226953380 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226953387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226953416 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well it is what i use in cfunge basically, well I use a few more that give spurious warnings for this code < 1226953427 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw this prototype looks odd to me: < 1226953428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :extern void ick_create(char*, unsigned long); < 1226953432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you are missing parameter names < 1226953442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which are useful for understanding wtf the code does < 1226953539 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :FINNS! < 1226953547 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :WHERE ARE YOU ALL < 1226953555 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :o < 1226953562 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :http://uk.youtube.com/watch?v=nUyFg9xoPKk < 1226953581 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it creates an entry in a hash table < 1226953604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you like, call it char* signature, unsigned long line_number_variant_that_isnt_used_for_a_global_variable < 1226953612 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because all the names like lineno are already taken < 1226953620 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :watch it, oklopol < 1226953621 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :WATCH IT < 1226953683 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :hmmm... you don't have to put variable names in function prototypes? < 1226953685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I have a 725 line diff here < 1226953703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not bad < 1226953710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :presumably it's mostly search-and-replace? < 1226953716 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :many parts yes < 1226953787 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait it got one single error < 1226953790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION fixes < 1226953829 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: yeah i watched < 1226953848 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :julmahuvi is awesome < 1226953852 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it does not integrate it in build system, I can't manage that, but it would be easy to make it do so < 1226953863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... a start would be nice to work from though < 1226953867 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would make it easier to integrate < 1226953867 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: finns are crazy :P < 1226953905 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in what way? < 1226953975 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :our scetch shows are, in my experience, more experimental than say american ones on average < 1226953981 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226954006 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not sure if we're that much crazier as a people, i don't know that many amercans < 1226954009 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*i¨ < 1226954070 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :6956 /mnt/phoenix/ick/c-intercal/iffi.diff < 1226954072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1226954073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1226954078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :configure was regenerated < 1226954085 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and someone put it in the damn repo < 1226954091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION grins evilly < 1226954109 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well why do so much change between autoconf versions < 1226954117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-# Generated by GNU Autoconf 2.61 for C-INTERCAL 0.29. < 1226954117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+# Generated by GNU Autoconf 2.63 for C-INTERCAL 0.29. < 1226954144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it doesn't actually, it's just superficial things that annoy diff a lot < 1226954172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok 735 now < 1226954191 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what is the darcs command like svn st? < 1226954194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :listing changed files < 1226954198 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just file names < 1226954201 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not full diffs < 1226954223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :trying to remember < 1226954263 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it might be darcs whatsnew -s < 1226954265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I'm not sure < 1226954324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION test patches and compiles < 1226954420 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, http://kuonet.org/~anmaster/tmp/iffi.diff < 1226954442 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I haven't done anything to make those HAVE_ work < 1226954451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nor messed with autotools at all < 1226954463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the script now takes two parameters: ick source and cfunge source < 1226954473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should be easy to modify to make autoconf set those < 1226954480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for you that is < 1226954491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226954493 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and you need to cp the library yourself into the install < 1226954503 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that needs fixing but shouldn't be too hard < 1226954513 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh and you need the cfunge version I pushed just about an hour ago < 1226954514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ever seen the gcc build system by the way, it's a nightmare < 1226954529 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :new release: a few weeks probably < 1226954544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and no I haven't looked at gcc build system < 1226954547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tell me about it < 1226954549 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also the diff has mixed tabs and spaces even in the code which is indented as pure tabs < 1226954556 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because of unidiffs putting spaces at the start of each line < 1226954561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, it's like autoconf but worse < 1226954564 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's vaguely based on autoconf < 1226954564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well blame diff < 1226954569 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but filled with lots of shell scripting in between < 1226954572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it puts a space at the start of each < 1226954575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I know < 1226954586 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it *should* be correct elsewhere < 1226954593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean when applied < 1226954643 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway now this works for me: < 1226954645 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../etc/cftoec.sh .. ../../cfunge/trunk < 1226954653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../etc/cftoec.sh: Permission denied < 1226954656 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :# Curse darcs < 1226954660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :chmod +x ../etc/cftoec.sh < 1226954661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../etc/cftoec.sh: Permission denied < 1226954662 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226954665 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../etc/cftoec.sh .. ../../cfunge/trunk < 1226954668 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :[...] < 1226954677 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :... < 1226954677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :make install < 1226954685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cp libick_ecto_b98.a /home/arvid/local/ick/lib/ < 1226954689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, basically < 1226954704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :of course adjust paths < 1226954706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226954712 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and adjust the +x of darcs < 1226954720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it refuses to use +x for anything < 1226954723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what made you change away from CamelCase/ < 1226954725 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :btw < 1226954727 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just curious < 1226954740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, an inner change of state of mind I guess < 1226954744 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it uses +x for files which were +x before they were added, just it doesn't store file permissions in the repo < 1226954749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :finding my true self < 1226954762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it was -x here... < 1226954772 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I've always held a policy of minimum underscores. < 1226954785 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :because they take a long time to type for me < 1226954793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I mean if you have a +x file < 1226954796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you update it < 1226954798 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it stays +x < 1226954808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but if darcs has to create it it doesn't know what perms to give it < 1226954819 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226954839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, why? _ takes as long as A < 1226954843 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Shift-- < 1226954845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or < 1226954848 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Shift-a < 1226954852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :depends on the keyboard layout probably < 1226954858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, shift-a's faster for me < 1226954862 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :not at all < 1226954864 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because I don't have to open my hand as much < 1226954866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1226954872 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yeah... _ is way up top < 1226954876 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :shift-A is two fingers right next to each other < 1226954879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :- is next to the right shift key < 1226954883 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :it'd be more like a shift-P < 1226954885 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226954887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can just use two fingers there twoo < 1226954887 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226954888 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :too* < 1226954888 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not on a typical UK or US keyboard < 1226954889 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :I usually use left shift < 1226954892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226954893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :- is to the right of 0 < 1226954895 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on a Swedish keyboard < 1226954897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :above P < 1226954903 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bnm,.- < 1226954924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :{ and } are horrible however when programming < 1226954935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a messy AltGr-7 and AltGr-0 < 1226954936 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :python ftw < 1226954941 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CakeProphet, scheme < 1226954950 0 :CakeProphet!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226954953 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or erlang < 1226954959 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though erlang use {} for tuples < 1226954968 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but erlang is one of the few languages with really sane indention < 1226954979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in a mad sane way < 1226954988 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it uses neither {} nor indention < 1226954990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for blocks < 1226954997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :, to delimit expressions < 1226955001 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :; to end a block < 1226955007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :. to end the last clause of a function < 1226955013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1226955030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway does the diff work for you? < 1226955057 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also I left the hard coded gcc < 1226955059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rather than cc < 1226955066 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I assumed you had some reason for it < 1226955073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :atm ick_ec won't compile under anything else < 1226955077 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'd like to fix that at some point < 1226955083 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I'm doing stupid compiler tricks as-is < 1226955151 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it compiles under icc iirc < 1226955165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though with "gcc extensions" warning < 1226955215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, there is one place I can approve of "stupid compiler tricks" and that is kernel. The Linux kernel does some pretty strange compiler and linker tricks for example < 1226955390 0 :puzzlet!unknown@unknown.invalid QUIT :Remote closed the connection < 1226955395 0 :puzzlet!n=puzzlet@147.46.241.231 JOIN :#esoteric < 1226955485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so the patch works for you then? Want me to make some patches adding missing const? < 1226955527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I assume you already tests if const exists... < 1226955617 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226956378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ? < 1226956390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I haven't tested it yet, got sidetracked with something else < 1226956398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I spend ages applying patches because I review them for ages first < 1226956400 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in my head often < 1226956411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and what about the const bit? < 1226956468 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably something for a later version < 1226956593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I can make patches now < 1226956594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226956622 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :feel free to go ahead if you do, and I'll review them some time later < 1226956626 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :s/do/like/ < 1226956714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok, what was the strange build procedure for clc now again? < 1226956719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with the multi-pass compiling iirc? < 1226956744 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: basically, it has an IASM interpreter in Perl < 1226956751 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and an INTERCAL -> IASM compiler, written in IASM < 1226956771 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sorry, the INTERCAL -> IASM compiler is written in IACC < 1226956780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and there's a IACC -> IASM compiler written in IACC too < 1226956791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1226956805 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you compile the compiler to produce the compiler with the aid of a prebuilt compiler, then you compile the compiler that compiles the program with the new compiler, then compile the program < 1226956808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and interpret the result < 1226956822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :didn't it support embedding perl into intercal < 1226956829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in a highly undocumented way < 1226956874 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226956878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :into IASM actually < 1226956898 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so < 1226956904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not JIT it into pure perl < 1226956909 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as an additional step < 1226957040 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: have you seen IASM? < 1226957042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has COME FROMs < 1226957046 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and CREATEs < 1226957052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and theft handling < 1226957063 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not entirely sure JITting it into pure Perl makes a whole lot of sense < 1226957103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226957107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, really? < 1226957111 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226957123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but was that ever a point considered with intercal? < 1226957128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :making sense I mean < 1226957132 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1226957140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you're right, it would be impressive < 1226957143 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just I'm not sure it's possible < 1226957144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226957147 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226957168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then JIT the perl into C which you JIT into native code? < 1226957169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226957188 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :does Perl JIT into C? < 1226957198 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could make it < 1226957206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :need to write a lot of code of course < 1226957220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway by that point it has probably become JTL < 1226957224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Just Too Late < 1226957234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :CLC-INTERCAL is a JTL compiler < 1226957238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with exactly that expansion < 1226957238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1226957269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226957282 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why was the reason for that name now again? < 1226957310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because of the way it does CREATE < 1226957315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when it reaches a syntax error, it errors < 1226957324 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then the error cleanup code recompiles the relevant bit of code < 1226957327 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226957329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for the new syntax < 1226957363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what if the statement is valid but has another meaning before the create? < 1226957425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's invalidated < 1226957427 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at some point < 1226957445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :btw < 1226957455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the JTL is done even without CREATEs < 1226957466 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as the compiler just bundles a whole load of CREATEs with the program < 1226957473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226957478 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and what's bundled with the program is actually the compiler < 1226957483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not evaluate the CREATE as you run into them? < 1226957489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :instead of trying to continue anyway < 1226957534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and how does it handle the possibility that output has already been performed? < 1226957554 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or is this before running it? < 1226957560 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is before running < 1226957563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226957566 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :still < 1226957568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not evaluate the CREATE as you run into them? < 1226957581 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it's INTERCAL? < 1226957588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, that would cause repeated recompiling for short programs < 1226957593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226957602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as they're more CREATE-laden than command-laden < 1226957606 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could evaluate the CREATE as you compile < 1226957608 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also it fails if someone modifies the compiler itself < 1226957612 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or the syntax of CREATE itself < 1226957621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or? < 1226957653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you? < 1226957931 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :create-laden, command-laden, bin-laden < 1226958429 0 :kar8nga!unknown@unknown.invalid PART #esoteric :? < 1226958718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/ick_ec.c: In function ‘ick_dounop’: < 1226958718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/ick_ec.c:76: warning: initializer element is not computable at load time < 1226958723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I got no clue what that means < 1226958740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1226958743 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: is the line in question inside a function? < 1226958745 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if so, that's fine < 1226958750 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, eh? what? < 1226958756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : if(st) < 1226958756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : { < 1226958756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ick_createdata icd[3]={{16,0,1601,{og1,os1},arg1}, < 1226958756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : {16,0,1602,{og2,os2},arg2}, < 1226958756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : {16,0,1603,{og3,os3},0}}; < 1226958758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is like that < 1226958762 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, that's fine < 1226958765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the array is the one it warns on < 1226958773 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's just complaining that it can't optimise the thing < 1226958774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is correct < 1226958778 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it's filled in partly at runtime < 1226958780 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, doesn't that mean PIC code breaks? < 1226958788 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why would it? < 1226958794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm ok < 1226958799 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the same as filling in the structure at runtime < 1226958802 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah right < 1226958807 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1226958807 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why does it complain at all then? < 1226958817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it can't have a nice constant initialiser it can blit into place < 1226958821 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's less efficient that way < 1226958862 0 :Sgeo[College]!i=897d294f@gateway/web/ajax/mibbit.com/x-f36234e21b7af066 JOIN :#esoteric < 1226958884 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh I tried to use csope for quick browsing but it gets confused by ick's source < 1226958897 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in what way? < 1226958912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :line numbers are off < 1226958913 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ick's source confuses lots of things, I have #if 0s to unconfuse emacs' auto-indenter for isntance < 1226959058 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah now it works again < 1226959063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :C symbol: ick_findandfopen < 1226959063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : File Function Line < 1226959063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0 uncommon.h 6 extern FILE* ick_findandfopen( char *, char *, char *, char *); < 1226959063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :1 uncommon.h 6 extern FILE* ick_findandfopen( char *, char *, char *, char *); < 1226959068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why two matches I don't know < 1226959072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :seems to be the same one < 1226959076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so still confused < 1226959124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, er what does /*@observer@*/ mean? < 1226959135 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and /*@dependent@*/ < 1226959151 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: they're annotations for splint < 1226959155 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not correct ones though < 1226959157 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what do they mean? < 1226959160 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they're approximately right < 1226959166 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what do they mean? < 1226959167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's basically a memory leak checker < 1226959175 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since splint fails at C99 it means I don't use it < 1226959181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :observer means that the pointer is to something which isn't allocated or deallocated and is valid to start with < 1226959184 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, it takes a pointer < 1226959193 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and just looks at its contents < 1226959198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and doesn't allocate or deallocate or anything < 1226959216 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :dependent means that it's derived in some way from some other value, for instance it's a field in a struct and the struct itself is malloced < 1226959221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226959237 0 :Sgeo[College]!unknown@unknown.invalid PART #esoteric :? < 1226959244 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :observer means it doesn't change either? < 1226959247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :const? < 1226959259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :const means it isn't allocated at all I think < 1226959264 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226959265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's a global that isn't changed < 1226959269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, it's a while since I annotated < 1226959270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean it seems to be a *C* const < 1226959273 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the annotations are wrong < 1226959280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they have to be < 1226959291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it's mathematically impossible to correctly annotate a program that contains memory leaks < 1226959294 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :without cheating < 1226959299 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and C-INTERCAL has memory leaks < 1226959310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just I don't think splint can grasp the sort of memory structure it has < 1226959315 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1226959318 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can you describe it? < 1226959327 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION already added a few const < 1226959329 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the multithreading structure that creates the most havoc < 1226959344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a linked ring of threads (like a linked list but the start and end connect) < 1226959355 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except that threads have stacks of threads growing from them < 1226959359 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also is there a reason not to put the names of the parameters in the prototypes in the headers? < 1226959359 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the stacks can share tails < 1226959373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and each element of each of those stacks can reference other elements anywhere due to sharing < 1226959388 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: splint doesn't like it, if there's a macro with that name declared before the header's included the header breaks < 1226959395 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, size in some cases < 1226959400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh? < 1226959406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when you have functions with 11 args, giving the params names is kind-of pointless < 1226959411 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :better to write a comment explaining what they do < 1226959414 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226959423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a macro shouldn't be lower case < 1226959423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than trying to fit the full crazy semantics into the prototype < 1226959477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so not an issue < 1226959477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which wasn't designed for them < 1226959477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it is in some cases < 1226959477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for instance all the identifiers in stdio.h are in implementation namespace < 1226959477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even the params in prototypes < 1226959477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226959477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you shouldn't name one stderr < 1226959477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or errno < 1226959477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in case someone does #define fmt void < 1226959477 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :obviously < 1226959482 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and #define fmt void is pure insane < 1226959487 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then stdio does int printf(const char* fmt, ...) < 1226959490 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it's their own faults < 1226959496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: not according to the standard < 1226959502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's perfectly legal to do that then include stdio.h < 1226959510 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even more fun: < 1226959516 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#define va_list void < 1226959519 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1226959523 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#undef va_list < 1226959525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226959526 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1226959531 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(later on, call vprintf) < 1226959539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1226959539 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :from what i can gather, AnMaster is continuing his usual paradox of "Follow the standards exactly" and "If someone fucks up let them burn"? < 1226959551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i should just have someone relay me everything AnMaster says. < 1226959552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :...wait. < 1226959553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc's install process includes a script merely to correct system headers for that pathological case < 1226959561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, it's the ohter way round < 1226959584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster is claiming that compilers shouldn't take care to support what I just wrote because it's obviously insane < 1226959593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes, it is, but the standard doesn't disallow it < 1226959608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but AnMaster rigidly supports standards. < 1226959614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so he cannot reconcile those two opinions. < 1226959654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh what? < 1226959671 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does ick do anything like that? < 1226959676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, it doesn't < 1226959680 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if not it isn't an issue in internal headers < 1226959683 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for ick_ec.h ok < 1226959684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226959691 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but if you've ever used splint, it's one of the most pathologically scrupulous lint versions ever < 1226959696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe I should run it on cfunge just for fun < 1226959704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it can't handle C99 < 1226959706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Error: Code is broken." < 1226959707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I tried it < 1226959707 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1226959720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it fails on a simple for (int i...) for example < 1226959727 0 :Corun!n=Corun@94-192-102-5.zone6.bethere.co.uk JOIN :#esoteric < 1226959731 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it reports all sorts of things at the highest level which should never be a problem for anyone in practice < 1226959733 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or the { .fieldname ... } thing < 1226959733 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it can < 1226959739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I approve of that, personally < 1226959743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, splint -weak < 1226959744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1226959746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or +weak < 1226959748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can't remember < 1226959757 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also it don't know POSIX < 1226959762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it complains about unknown functions < 1226959768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and man says part of the 1993 POSIX < 1226959774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even when using the +posixwhatever flag < 1226959780 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so IMO it is crap < 1226959786 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you can create a splint information library to get around that < 1226959803 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it should be able to look at the system headers to find out < 1226959804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's just difficult to use, and simultaneously crazily overengineered and crazily underengineered < 1226959808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and as an esoprogrammer, I like that < 1226959823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :except it totally fails to parse anything < 1226959826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so pointless < 1226959845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it wants you to cast the result from malloc < 1226959849 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1226959855 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sure fine for C++ < 1226959857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but this is C* < 1226959862 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*C** < 1226959924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably you had it set up wrong; the problem is setting it up right is very hard < 1226959952 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well I don't know. I sent a mail about the C99 issue. I never got any answer < 1226959961 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :It was over 5 months ago < 1226959984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yay uncommon.c is warning free < 1226959999 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... uncommon.c is used by everything, so that's nice < 1226960014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well correctly const warnings < 1226960030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm not insane enough to use all the warnings cfunge use for ick < 1226960032 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :My splint (completely without flags) doesn't want me to cast malloc. < 1226960046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523: just -Wall -Wextra -pedantic -Wwrite-strings < 1226960080 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226960091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just as long as you don't turn on unsafe loop optimisations... < 1226960181 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(Not even "splint +strict" wants me to cast malloc's return value; although in that mode it does complain about testing whether foo is NULL or not with "if (foo)"...) < 1226960192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ugh returning a pointer to a static buffer < 1226960207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh you tried it? < 1226960209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: careful, the name C-INTERCAL starts with a c just like cfunge < 1226960212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :slippery slope < 1226960215 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I'm not that insane < 1226960238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: which return pointer to static function are you worried about? < 1226960249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ick_findandtestopen < 1226960252 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : static char buf2[BUFSIZ]; < 1226960258 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ret = ick_debfopen(buf2,mode); /* where it ought to be */ < 1226960258 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : if(ret) {(void) fclose(ret); return buf2;} < 1226960276 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and static buffer < 1226960278 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not function < 1226960310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ah, ok < 1226960321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, still this worries me < 1226960325 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that one doesn't always return a pointer to a static buffer < 1226960331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sometimes it returns a pointer to argv instead < 1226960335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226960362 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, btw would it be possible to make it return const char* ? < 1226960373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or would that mess up elsewhere < 1226960377 0 :KingOfKarlsruhe!n=nice@HSI-KBW-085-216-040-186.hsi.kabelbw.de JOIN :#esoteric < 1226960383 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can return a char* as const char*, can't you < 1226960386 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so probably it would be safe < 1226960389 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(argv's a char*) < 1226960396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think the result is only ever used immediately < 1226960398 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well it would cause issues elsewhere if you tried to change it < 1226960399 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and then discarded < 1226960401 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1226960411 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure though, let me grep the code as usual < 1226960415 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it makes it possible to get rid of warnings in the case it returns the argument file < 1226960419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which it sometimes does < 1226960429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and that is sometimes a string constant it seems < 1226960438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226960450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even better, it's a string constant passed in from configure via the makefile < 1226960468 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, anything that's input as observer is safe to return as const < 1226960471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least if I have the annotations right < 1226960479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1226960487 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except in the case that the caller owns the observer in question < 1226960489 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :never mind < 1226960517 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway you can't make it return a const char* as a char* logically < 1226960524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well you probably could < 1226960528 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in C it is a warning not an error < 1226960531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but anyway. < 1226960542 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960542 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : < 1226960543 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh what? < 1226960546 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :const_cast(my_const_char_argument) < 1226960548 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226960556 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, this is not C++ < 1226960558 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226960559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know < 1226960561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:183:35: warning: use of C99 long long integer constant < 1226960561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:184:14: warning: use of C99 long long integer constant < 1226960561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:184:37: warning: use of C99 long long integer constant < 1226960562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226960563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226960568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... < 1226960571 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C99 in yuk.c is an error < 1226960573 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1226960583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there are several more < 1226960587 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unless suddenty C-INTERCAL needs C99 to be able to debug it < 1226960588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:182:25: warning: use of C99 long long integer constant < 1226960588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:182:53: warning: use of C99 long long integer constant < 1226960588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:183:13: warning: use of C99 long long integer constant < 1226960588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:183:35: warning: use of C99 long long integer constant < 1226960588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:184:14: warning: use of C99 long long integer constant < 1226960589 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:184:37: warning: use of C99 long long integer constant < 1226960594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960595 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960601 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/yuk.c:185: warning: ISO C90 does not support the ‘ll’ printf length modifier < 1226960604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are there any actual long longs in there? < 1226960605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:697:8: warning: C++ style comments are not allowed in ISO C90 < 1226960607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226960609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the last one < 1226960627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :YPTIMERTFORMAT < 1226960629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, that's serious if it isn't temporary < 1226960630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes that one < 1226960637 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I use // comments for debug stuff deliberately < 1226960642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, YPTIMERTFORMAT seems to be %ll < 1226960647 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I can compile as strict to get the warnings to see where it is < 1226960647 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess < 1226960651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no clue what YPTIMERTFORMAT < 1226960652 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, and if it's YPTIMERTFORMAT that's fine < 1226960660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh why? < 1226960660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :config.h works out if long long is available < 1226960671 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the YPTIMERTYPE stuff has lots of different settings < 1226960681 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of which are C89, some are C99, some are POSIX and some aren't even that < 1226960688 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's a SunOS-specific version of it < 1226960702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can override YPTIMERTIME to 0 by hand in yuk.h to avoid the warnings < 1226960709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't mind a really bad profile resolution < 1226960722 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's C99 because configure determined that C99 was safe there < 1226960736 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but on a C89 system YPTIMERTFORMAT would be something else < 1226960790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#if 0 < 1226960790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : 0) // to unconfuse Emacs < 1226960790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#endif < 1226960793 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there it is < 1226960795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the // < 1226960803 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's in a #if 0 < 1226960806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :therefore it will never be parsed < 1226960814 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1226960816 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well tell that to gcc 4.3.2 < 1226960820 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :comments happen before pp-directives don't they < 1226960823 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :#if 0 < 1226960826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, but it's not a problem < 1226960826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think so < 1226960829 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :HAHAHAH, nothing will ever happen on #esoteric again! < 1226960830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in C89 it isn't a comment < 1226960836 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :GregorR, < 1226960837 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a syntax error < 1226960838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#endif < 1226960842 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but syntax errors are harmless inside #if 0 < 1226960844 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Nooooooes! < 1226960846 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Foiled again. < 1226960849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's very very INTERCAL in fact < 1226960857 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a syntax error which never runs, that's how INTERCAL does comments... < 1226960869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:300: warning: assignment discards qualifiers from pointer target type < 1226960870 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226960880 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's presumably a result of your const changes? < 1226960897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well rather the lack of it < 1226960902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I hadn't changed that < 1226960904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1226960907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a configure time constant < 1226960909 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :presumably you changed somewhere else < 1226960911 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :string literal < 1226960914 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1226960923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no I simply enabled the relevant -W :P < 1226960929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:559: warning: format not a string literal, argument types not checked < 1226960929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:559: warning: format not a string literal, argument types not checked < 1226960930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hehe < 1226960955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, gcc can check that format is correct if it is a literal < 1226960958 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :did you know that? < 1226960961 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-Wformat=2 < 1226960970 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I did know about format checking < 1226960977 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :however, I'm interpolating something into a format arg there < 1226960984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#ifndef HAVE_SNPRINTF < 1226960984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : (void) sprintf(buf2, tempfn, argv[optind]); < 1226960984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#else < 1226960984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : (void) snprintf(buf2, sizeof buf2, tempfn, argv[optind]); < 1226960984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#endif < 1226960985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226960988 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably it's worth checking separately if there's a printf injection bug there < 1226960989 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about making a macro? < 1226960996 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would probably be easiler < 1226960997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :easier* < 1226961000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe_snprintf < 1226961001 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1226961011 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose so < 1226961016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is what cfunge would do < 1226961022 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, it's just hiding the underlying problem < 1226961025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also it would fix that "need to fix up emacs" < 1226961027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1226961030 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is that there's a buffer overflow if you don't have snprintf < 1226961046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes true, but then there is no solution to it < 1226961051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since you don't have it anyway < 1226961059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could implement it yourself I suppose < 1226961063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1226961064 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Didn't you just say that a macro shouldn't be in lowercase? :p < 1226961069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it may not be intercal-y < 1226961070 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but what I really need is an assert_snprintf < 1226961074 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which snprintfs if needed < 1226961078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, true, but a macro function vs a defined constant < 1226961081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a bit different < 1226961086 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and if ther would be a buffer overflow it barfs spectacularly < 1226961097 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :raise(SIGSEGV) maybe, it comes to the same thing in the end < 1226961099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah I think I have seen it < 1226961102 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just not exploitabl < 1226961105 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*exploitable < 1226961108 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :let me take a look at the crossfire source < 1226961125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure it barfs if sprintf says it overflowed < 1226961140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'll just reimplement it myself < 1226961150 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well it is GPL2 so < 1226961165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :crossfire's porting.c < 1226961167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :still, I don't want the INTERCAL licence situation to get even more muddled than it is < 1226961172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even contains several variants of tempnam() < 1226961178 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all insecure < 1226961184 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have a dream of chasing down the contributors and getting them to relicence bits of it sometime < 1226961194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also C-INTERCAL's temporary naming system is even worse < 1226961198 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226961198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it uses hardcoded names in /tmp < 1226961210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you can't run two copies of it in parallel safely < 1226961212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hah use mkstemp < 1226961217 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway crossfire is worse < 1226961220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it is a server < 1226961226 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it does a linear search every time < 1226961261 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :starting at (in settings.tmpdir) crossfire.pid.0 < 1226961268 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and then incrementing the last digit < 1226961281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how does that not lead to collisions? < 1226961281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it is O(n) where n is current number of temp files < 1226961286 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, single threaded < 1226961297 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it expects you to set a custom temp dir < 1226961301 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ the pid of course < 1226961324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, crossfire is from 1992, the oldest parts I mean < 1226961328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so that kind of explains it < 1226961334 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL is older I think < 1226961338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well yeah < 1226961371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, intercal-0.3.shar is dated 1990 < 1226961383 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so C89 was very new back then < 1226961390 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1226961391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and C99 hadn't even been thought of < 1226961393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :argv[optind] = "ecto_b98"; < 1226961394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf? < 1226961395 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is that < 1226961403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that is fun < 1226961410 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you are editing argv? < 1226961412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why on earth < 1226961413 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can go mad trying to track how argv changes throughout C-INTERCAL < 1226961425 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why are you editing argv? < 1226961433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and because the C standard says you cna, and the code already did that when I got to it < 1226961436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it messes up my whole plan < 1226961453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok but what are you using it for+ < 1226961454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226961455 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most of what it does puts NULs in there to replace dots < 1226961461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in order to strip off file extensions < 1226961465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : /* Sort out the ecto_b98 expansion library. */ < 1226961465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : argv[optind] = "ecto_b98"; < 1226961465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : goto fixexpansionlibrary; < 1226961467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is what it says < 1226961467 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A lot of people edit argv; it's great fun, changing the command line as it shows up in places. < 1226961478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, doesn't work the way it does it < 1226961479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I hadn't even thought of that side effect < 1226961489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you need to edit in place < 1226961494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or it doesn't work on linux afaik < 1226961499 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I edit in place too < 1226961502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just not that bit of code < 1226961512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh my < 1226961517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, not me, someone else wrote the bit that sets '.' to '\0' at the end of the filenames < 1226961518 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*bsd got a function for it < 1226961522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :setprocname < 1226961524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or something < 1226961526 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can't remmeber < 1226961529 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :remember* < 1226961537 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I thought you mean it had a function for stripping extensions in-place in argv < 1226961547 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that would be an oh my moment < 1226961554 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no < 1226961565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it would be a "oh fuck" one < 1226961579 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"oh fuck why am I even looking at this code" < 1226961619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:1087: warning: comparison between signed and unsigned < 1226961620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:1107: warning: comparison between signed and unsigned < 1226961620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw < 1226961653 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I reckon there's at least a 50% chance there's something in CPAN to do that for Perl < 1226961676 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think a perennial favourite of forcibly lying about the process name is to rename your "nethack" game to "emacs thesis.tex". < 1226961719 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: how risky, you should make it a symlink instead < 1226961755 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, doesn't work since nethack is sgid games < 1226961760 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and various other reasons < 1226961769 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like too long name to edit in place on linux < 1226961772 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the symlink method would work if not for the wrapper script < 1226961776 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can just run directly < 1226961781 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1226961798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:268: warning: no previous prototype for ‘isenv’ < 1226961798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226961816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.pps.jussieu.fr/~canou/obrowser/tutorial/ < 1226961819 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh it should be static < 1226961820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :W H O A < 1226961824 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the 1087 warning is due to reusing a general-purpose temporary < 1226961836 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, er? < 1226961839 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which should be unsigned in context but is in fact signed < 1226961840 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226961846 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Can't you just execve(3) it with any argv[0] you like? < 1226961846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there's a temporary variable called i < 1226961849 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well just cast it < 1226961850 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is used for lots of stuff < 1226961859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, casting is the wrong solution here < 1226961869 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the solution is to use a temporary variable that isn't hideously overloaded < 1226961872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well just um use C99 with for (int i < 1226961875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1226961881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :of course not an option indeed < 1226961884 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226961901 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and of course the ironic thing here is that i only takes values in about the range 0-50 < 1226961908 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it isn't actually an issue in the first place < 1226961913 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/perpet.c:269: warning: ‘isenv’ defined but not used < 1226961914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1226961915 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1226961919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and yet it is used < 1226961931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1226961935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it should have: < 1226961936 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :#if __DJGPP__ < 1226961938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :around it < 1226961943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1226961958 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it should be static < 1226961960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well there we go < 1226961997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, that's because djgpp doesn't have a real /tmp dir < 1226962001 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's looking for a temporary directory < 1226962017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's one of my few concessions to Windows, that one of the env vars it checks is something it defines < 1226962251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://kuonet.org/~anmaster/tmp/const1.diff < 1226962261 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ^ < 1226962265 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :some early work on it < 1226962280 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I suspect small patches are easier to review < 1226962283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that one megapatch < 1226962297 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, if you want to ask questions about it hurry up since I'm going to bed soon < 1226962306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :urr < 1226962314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ignore the config.h stuf changes < 1226962320 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: why does all the text behind that link change colour when I mouseover? < 1226962320 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I blame it on autotools < 1226962329 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesnt for me < 1226962347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just the

tags < 1226962359 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it looks like normal const addition < 1226962369 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes and a few static < 1226962374 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'd probably run it all through splint and see if anything broke, then through gcc and see if anything broke < 1226962384 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, gcc broke nothing < 1226962384 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :p:hover { background-color: #ddf8ff } < 1226962387 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's why. < 1226962388 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :splint I don't know < 1226962394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, since splint is insane < 1226962396 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Now that's a very strange style to set. < 1226962401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :messing with static could potentially be risky, but I don't think so; I added static a couple of versions back < 1226962404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, agreed < 1226962406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after splinting the whole thing < 1226962421 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: your browser clearly doesn't implement CSS3 properly if it isn't happening to you < 1226962428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it does. < 1226962429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I checked that those static functions weren't used anywhere else < 1226962433 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :using grep < 1226962439 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1226962439 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1226962441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's not even css3 < 1226962444 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1226962446 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :obviously I must have missed them the first time < 1226962447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you mean the Abstract: and such < 1226962448 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226962450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the background changes < 1226962451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it is for tags other than , isn't it? < 1226962453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but the actual content... no < 1226962456 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no. < 1226962456 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it was the isenv one < 1226962462 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is, iirc, css1 < 1226962463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is only used on DJPPG thingy too < 1226962475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: all the P tags, not just the abstract < 1226962479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, well, WFM < 1226962483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even lower down, the code examples don't but the explanation text does < 1226962523 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed < 1226962575 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's not CSS-anything where :hover works: "CSS doesn't define which elements may be in the above states, or how the states are entered and left." (in CSS2.1, at least.) < 1226962578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I especially like the way they use .exe as an extension for OCaml bytecode < 1226962658 0 :Slereah_!n=jewbutt@ANantes-252-1-45-102.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1226962686 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Personally I have a soft spot for insane uses of JavaScript; maybe I should do something strange with it at some point. < 1226962723 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Like NOT USE IT < 1226962741 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: functional JS is fun, but that's been done < 1226962760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe we should get olsner to compile my Underload interp in Thue to mod_rewrite < 1226962770 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and have the very slowest Underload interpreter ever < 1226962776 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's not JS, just vaguely webby < 1226962863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, jsmips < 1226962894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is mod_rewrite allowed to run for that long? < 1226962901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't it abort like mediawiki < 1226963036 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is it safe to make ick_numerals const? < 1226963039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in numerals.c < 1226963046 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :trying to remember < 1226963049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and the name part < 1226963051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think so, doesn't clockface() edit it? < 1226963062 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the word list should be OK though < 1226963067 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no idea < 1226963075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :typedef struct < 1226963075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :{ < 1226963075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : char *name; < 1226963075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : int value; < 1226963075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :} < 1226963080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :numeral; < 1226963082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is what it says < 1226963088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I want char*name to be const char*name < 1226963093 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ick_numerals should be fine < 1226963099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I think char* name can be const too < 1226963099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that will get rid of lots and lots of warnings < 1226963114 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you said clockface edits it? < 1226963117 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no < 1226963123 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it changes a different array < 1226963129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is in abcess.h, probably < 1226963134 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*cespool.c < 1226963137 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*cesspool.c < 1226963153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ick_numerals isn't extern elsewhere < 1226963157 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yet it is used elsewhere < 1226963160 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: #include < 1226963161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how the heck does that work < 1226963165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :including the C file? < 1226963167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226963177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I quote this filename. < 1226963179 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/arrgghh.c < 1226963196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:281: warning: assignment discards qualifiers from pointer target type < 1226963196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:281: warning: assignment discards qualifiers from pointer target type < 1226963196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:282: warning: assignment discards qualifiers from pointer target type < 1226963196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:282: warning: assignment discards qualifiers from pointer target type < 1226963196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:283: warning: assignment discards qualifiers from pointer target type < 1226963197 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oil.y:283: warning: assignment discards qualifiers from pointer target type < 1226963199 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ grep -n numerals.c * < 1226963199 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lots like that < 1226963200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cesspool.c:47:#include "numerals.c" < 1226963203 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for all the lines < 1226963262 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, found it < 1226963268 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :found what? < 1226963271 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :line 72 < 1226963271 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that oil.y one? < 1226963281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a char* element of a struct < 1226963281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : char* condition; /* Points to a constant string; the condition to generate < 1226963281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ? < 1226963284 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yes < 1226963286 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which has string literals assigned to it < 1226963288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is it safe to change? < 1226963300 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"Points to a constant string" that sounds very like const char* to me < 1226963309 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :" Could also point to something the lexer < 1226963309 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : mallocs, but then the lexer has to keep track of being < 1226963309 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : able to free it again." < 1226963346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the fact that it could hold a constant string means it won't change < 1226963349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, only helped with half of the warnings < 1226963354 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in oil.y < 1226963358 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the next char* should be const char* too < 1226963362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for nodetypename < 1226963377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :safe? < 1226963390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226963394 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why do you ask? compile and find out < 1226963403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it isn't safe you'll get an error for modifying something const < 1226963410 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I may not be able to trigger a case where it fails at runtime < 1226963419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :considering how ick does it < 1226963420 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it will fail at compile time if you write to a const < 1226963425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unless there's a dangerous cast in there < 1226963434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes but not if you pass it to something taking a char* < 1226963437 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which there aren't because there's no need to cast to char* if everything's char* already < 1226963439 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's an error < 1226963441 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :will just be a warning < 1226963444 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, a warning < 1226963446 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, you'll notice it won't you < 1226963467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, with the crapload of other warnings it spews? < 1226963474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :grep exists... < 1226963482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or you could turn on just the particular warning you wany < 1226963484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*want < 1226963486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1226963493 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for that matter, someone should develop a warningdiff tool < 1226963497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which saves compiler output < 1226963497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the autoconf output is rather messy and hard to read < 1226963498 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you make changes < 1226963505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and then it tells you what changed < 1226963506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :make clean all &> make.log < 1226963508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1226963513 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but that is a pain < 1226963517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why are you doing make clean every time? < 1226963524 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hard to diff otherwise < 1226963534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with a new make.log < 1226963544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :now cfunge is easy :P < 1226963548 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... couldn't you make, touch, make < 1226963555 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then change stuff < 1226963559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then make, touch, make again < 1226963562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you touched the same file each time < 1226963563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226963567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the same bits would recompile < 1226963578 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I often jump between files when I edit < 1226963582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so hard < 1226963596 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a sane colour coded output would < 1226963598 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :such as from cmake < 1226963605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/feh2.c:491: warning: initialization discards qualifiers from pointer target type < 1226963620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :enablersm1 hm < 1226963621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: do make mostlyclean rather than make clean, does that help? < 1226963635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ah, that one's fun < 1226963640 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it takes like 20 seconds to build < 1226963646 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's how I make enablers be an array indexed from -1 < 1226963651 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :declare enablersm1 < 1226963656 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, read only? < 1226963657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then define enablers to be enablersm1 + 1 < 1226963662 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I think it is < 1226963664 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or at least hope it is < 1226963670 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it's a list of all the commands handled at compile-time < 1226963678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0 feh2.c 462 char *enablersm1[MAXTYPES+1] = < 1226963679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :1 feh2.c 498 char ** enablers = enablersm1+1; < 1226963679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :2 ick.h 132 extern char *enablersm1[MAXTYPES+1]; < 1226963679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hrrm < 1226963713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also what is enablers? < 1226963745 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it basically is a human-readable name for each command < 1226963751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, feh2.c and feh.h? < 1226963761 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: feh.c was split into two files < 1226963766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which are feh2.c and dekludge,c < 1226963769 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*dekludge.c < 1226963780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :feh.h applies to the stuff in both < 1226963859 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ick builds quickly so make clean is no issue < 1226963866 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :35 seconds vs. 20 < 1226963882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :parser.c: In function ‘yyparse’: < 1226963882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :parser.c:2781: warning: passing argument 1 of ‘yyerror’ discards qualifiers from pointer target type < 1226963882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :parser.c:2927: warning: passing argument 1 of ‘yyerror’ discards qualifiers from pointer target type < 1226963883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226963890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"ick builds quickly" <--- yay, something is seriously wrong with the world < 1226963898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: parser.c is generated code < 1226963907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well is the yyerror too? < 1226963914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah no < 1226963915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :extern int yyerror(char*); < 1226963917 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is in the y file < 1226963922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :shouldn't that be const char* < 1226963922 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226963925 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yes, probably < 1226963929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does it do with it? < 1226963933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and where's yyerror defined < 1226963934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also that is what happens when you pass const to non-const < 1226963938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :such a warning not an error < 1226963942 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, line 39 < 1226963947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in parser.y < 1226963949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is what I pasted < 1226963958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's declared not defined < 1226963990 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, in lexer.l < 1226963993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./prebuilt/parser.c:extern int yyerror(char*); < 1226963993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./prebuilt/oil-oil.c:int yyerror(char const *); < 1226963993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :./prebuilt/oil-oil.c:int yyerror(char const *s) < 1226963994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226963997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you have to change the definition as well as the declaration < 1226964010 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: prebuilt is fun, it's for people without lex and yacc < 1226964019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also in the repo, but you can ignore it if you have lex and yacc workalikes yourself < 1226964020 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah ok < 1226964059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lexer.l:496: warning: no previous prototype for ‘yyerror’ < 1226964059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lexer.c:2409: warning: ‘yyunput’ defined but not used < 1226964059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lexer.c:2452: warning: ‘input’ defined but not used < 1226964068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, myatoi? < 1226964069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1226964084 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: its argument is potentially wchar_t < 1226964085 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than char < 1226964092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I think we gave up on the wchar_t stuff < 1226964097 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because it was too confusing < 1226964102 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it should probably be const < 1226964106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1226964112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though gcc doesn't see any string literal passed to it < 1226964113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what it does, is it copies its arg into a char array < 1226964115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it didn't say anything < 1226964123 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is being passed a char* < 1226964125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :by bison < 1226964130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which returns everything as char*s < 1226964133 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1226964137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :still it should be const < 1226964138 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just like all C code does before it's constified everywhere < 1226964141 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it doesn't change < 1226964147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but yes, modifying it is probably a bad idea < 1226964168 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :OMG SOMEONE SAID SOMETHING TO ME < 1226964185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the code doesn't currently modify it < 1226964186 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi olsner < 1226964187 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :olsner, really? < 1226964191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I did < 1226964198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was referencing the Thue -> mod_rewrite compiler < 1226964200 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, someone actually did.. I'm so happy now < 1226964204 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, nor should it < 1226964214 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :olsner: did you see my Underload interp in Thue? < 1226964216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :../c-intercal/src/cesspool.c:401: warning: passing argument 3 of ‘ick_clc_cset_convert’ discards qualifiers from pointer target type < 1226964217 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1226964219 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's the slowest Underload interp I know < 1226964235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I thought it would be fun to combine it with your mod_rewrite stuff to make one that was even slower < 1226964238 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :it'll be even slower in mod_rewrite I promise you < 1226964251 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ugh < 1226964259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ? < 1226964261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ick_clc_cset_convert isn't a function I even like thinking about the call pattern of < 1226964265 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :and apache has memory leaks, it doesn't free the memory for mod_rewrite until it's finished with the whole request < 1226964269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has arguments everywhere going both ways < 1226964280 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :so anything larger than fruit flies will just OOM the web server :) < 1226964283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh well I have that sometimes, out parameters and in parameters < 1226964296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :olsner: I'm kind of curious as to how long it would take to do hello world now < 1226964310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's worse than it seems, because it can take some of its inputs either from files or from global variables < 1226964324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok, what ones are safe to const? < 1226964348 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :getting late now though... I'll have to look into this tomorrow < 1226964411 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :feel free to give the thue->mod_rewrite a test run though (hey, it's just a four-line sed script amyway...) < 1226964422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cc by-sa 3.0 is the best license for creative works. discuss. < 1226964432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I agree < 1226964434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure offhand < 1226964453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well parameter 3 and 4 are straightforward < 1226964466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :damn it isn't in a header < 1226964466 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really, I can't remember what half the arguments to that thing do < 1226964469 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :luckily there are annotations < 1226964470 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is extern < 1226964476 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :" ehird, I agree" -- that's something you don't see every day. Were you people doing the ignore thing still? < 1226964489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well I could easily track incset/outcset control flow < 1226964489 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(that's the good thing about Splint, the annotation reminds me wtf the args are meant to do) < 1226964500 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Still ignoring him. Tell him that actually i was being sarcastic even though I wasn't; it'll restore the universal balance. < 1226964522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in this case the partial marker means that that struct has members some of which are inputs and some of which are outputs < 1226964540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, suggestion, move extern int ick_clc_cset_convert(... out of cesspool.c to some header < 1226964542 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: He'll see that without any explicit telling, anyway. But it's good to keep the balance. < 1226964559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I agree it is a good way to keep the balance < 1226964565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe < 1226964569 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I use it in a couple of places < 1226964585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just I have this strange attitude where I like sharing source between executables, but not headers < 1226964586 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, clc-cset.h could be created < 1226964596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's completely backwards of course < 1226964604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :creating a header file is the sane solution < 1226964619 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226964625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you wouldn't do it then < 1226964627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... maybe I should make a polyglot header file/source, it would simplify maintenance < 1226964633 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :put #defines so you can #define HEADER < 1226964638 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then include all the source files < 1226964641 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226964645 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it just includes the prototypes < 1226964650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in theory, this makes maintenance a lot easier < 1226964661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you can use gcc -combine to debug such defines < 1226964670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1226964672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you're acting like this is actually a good idea... < 1226964672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :externs < 1226964685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you can check that externs match using gcc -combine < 1226964692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc -combine would fail on C-INTERCAL < 1226964696 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? < 1226964700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how comes < 1226964700 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :partly because it fits together multiple ways < 1226964705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, since AnMaster said "even though I wasn't" the universe is still out of balance < 1226964708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are various subsets of the files involved that works < 1226964709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, let's try this: < 1226964714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*that work < 1226964716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bsd3 is the best license for codeular works. discuss. < 1226964719 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you get a different program each way < 1226964730 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, " ehird, I agree it is a good way to keep the balance" <-- tell ehird that < 1226964741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/said/heard/ < 1226964746 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :+ul ( ais523, " ehird, I agree it is a good way to keep the balance" <-- tell ehird that)S < 1226964746 0 :thutubot!unknown@unknown.invalid PRIVMSG #esoteric : ais523, " ehird, I agree it is a good way to keep the balance" <-- tell ehird that < 1226964761 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah, like AnMaster would know anything bout sum universal balance < 1226964803 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ul (ehird, it may not always be the best with BSD, but it is often very good iirc. I don't remember the details about which one BSD 3-clause is exactly.)S < 1226964803 0 :thutubot!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it may not always be the best with BSD, but it is often very good iirc. I don't remember the details about which one BSD 3-clause is exactly. < 1226964819 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damnit. you're meant to argue about how gpl3 is way better. < 1226964825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :stop putting the universe out of balance, you dick. < 1226964851 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: stop it, trying to read one and a half conversations at once is really confusing < 1226964856 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1226964879 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Abandon the universe, abandon the universe, it's gonna tilt out of balance and fall off (but where?). < 1226964889 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ul (ehird you are right, I should stop agreeing with you, but it is hard when you are being right for once :P)S < 1226964890 0 :thutubot!unknown@unknown.invalid PRIVMSG #esoteric :ehird you are right, I should stop agreeing with you, but it is hard when you are being right for once :P < 1226964896 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh < 1226964903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ul (YOU SUCK DICK)S < 1226964904 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :YOU SUCK DICK < 1226964912 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :fungot: Language! < 1226964912 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: if i go to community college, i do < 1226964913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Universal balance restored. < 1226964917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1226964920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he thinks you mean studying language < 1226964920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1226964924 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :fungot: That's no excuse. < 1226964925 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: nah. i'm not sure. < 1226964928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^style ic < 1226964929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ul (Factually incorrect actually. But I know someone who does if you are interested.)S < 1226964929 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Selected style: ic (INTERCAL manual) < 1226964929 0 :thutubot!unknown@unknown.invalid PRIVMSG #esoteric :Factually incorrect actually. But I know someone who does if you are interested. < 1226964940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fungot! < 1226964941 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ais523: this error means that the libraries themselves are pattern templates specifying what operands these operators is to write a library suitable for use with ascii-7, and so are not always right to left, or at least, that is expressions which have a 16-bit result; c-intercal relaxes this rule slightly and only if your input is being created. typical syntax for a bug ( either the line label is encountered ( in a multithreade < 1226964943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ul (psygnisfive?)S < 1226964949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey fuck you fungot < 1226964949 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: otherwise, the funge program or a mixture of the statement is self-abstaining or self-reinstating ( this is a name clash between any two functions, the code at all. < 1226964950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Talk to me < 1226964953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ul (psygnisfive?)S < 1226964953 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive? < 1226964954 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :+ul (ehird^)S < 1226964954 0 :thutubot!unknown@unknown.invalid PRIVMSG #esoteric :ehird^ < 1226964959 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yah? < 1226964968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :psygnisfive: nuttin' < 1226964977 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm anyway < 1226964995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, where were we? < 1226965016 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :debating the merits of gcc --combine < 1226965025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, right. so combine wouldn't work even when just building one part of it? < 1226965025 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and whether C-INTERCAL was sufficiently crazy to defeat it < 1226965027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :such as ick < 1226965029 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or oil < 1226965036 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1226965036 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would have to recompile all the object files multiple times I think < 1226965040 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it would work for oil but that's only one file < 1226965041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well true < 1226965049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, -fwhole-program ;) < 1226965051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that wouldn't fit in the makefile < 1226965069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not to mention, you're forgetting the code ick's output generates < 1226965075 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at runtime < 1226965075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well no -combine doesn't work at all with any make system I forgot < 1226965081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/fogot/know/ < 1226965082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1226965096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't read and write at the same time at 00:38 < 1226965120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DO :1 <- #38 DO PIN :1 < 1226965126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, will you be here tomorrow? < 1226965132 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, I think so < 1226965137 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :time for me to leave as well I reckon < 1226965140 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ok what was that DO PIN? < 1226965144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: PIC-INTERCAL < 1226965153 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a command to read and write at the same time < 1226965154 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and how was it related to anything above? < 1226965157 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1226965163 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is crazy < 1226965173 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how can you read and write a pin at the same time? < 1226965181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it affects 16 pins at once < 1226965190 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of which are read and some of which are written < 1226965194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1226965196 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and actually, changing to input mode is a sort of writing < 1226965206 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1226965207 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because you can detect externally that an output is in input mode < 1226965278 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1226965280 0 :CakeProphet!n=bread@h79.6.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1226965390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what is /*@partial@*/ ? < 1226965412 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it means it's both an input and an output < 1226965419 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :basically the struct there has various fields < 1226965426 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of which hold useful values when it's called < 1226965435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and others of which gain useful values when it returns < 1226965450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, a char* is a struct? < 1226965452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it says < 1226965459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/*@partial@*/ char* out < 1226965479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in that case it means something slightly different < 1226965482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just have to figure out what < 1226965487 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ick_clc_cset_convert again < 1226965501 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know < 1226965504 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also where are these documented? < 1226965511 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in the Splint manual < 1226965517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but don't try to understand it while tired or drunk < 1226965541 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm not drunk < 1226965546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm a teetotaller < 1226965566 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never ever drunk any alcohol in my life < 1226965578 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nor do I ever want to drink a drug < 1226965582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is what it is < 1226965583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have drunk alcohol in my life, but not for the past 3 years or so < 1226965603 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or coffee, another drug < 1226965605 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :time to go home anyway, bye everyone < 1226965611 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, cya < 1226965615 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night too