โ†2008-09-01 2008-09-02 2008-09-03โ†’ โ†‘2008 โ†‘all
00:00:41 <tusho> pikhq:
00:00:42 <tusho> ping ping
00:00:52 <tusho> agora are trying to exile you because you're a shite speaker
00:23:56 -!- tusho has quit.
01:00:32 -!- olsner has quit ("Leaving").
01:00:54 -!- psygnisfive has joined.
01:07:18 <psygnisfive> BITCHES OF #ESOTERIC, HERE ME
01:07:25 <psygnisfive> HEAR EVEN
01:07:30 <psygnisfive> I HAVE MANY TYPOES FOR YOU ALL
01:09:01 -!- psygnisfive has quit ("http://www.mibbit.com ajax IRC Client").
02:25:58 -!- Corun has joined.
03:11:27 -!- Corun has quit ("BAKED").
03:24:32 -!- psygnisfive has joined.
03:27:27 <psygnisfive> so guys
03:27:29 <psygnisfive> hows it goin
03:27:55 <psygnisfive> oklofok, have i mentioned recently how hot you are?
03:45:23 -!- psygnisfive has quit ("http://www.mibbit.com ajax IRC Client").
03:45:34 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | fizzie pulls out his marijuana - "And this helped too".
03:58:52 -!- oerjan has joined.
05:18:37 -!- GreaseMonkey has joined.
05:28:00 <oerjan> q45t
05:28:19 <oerjan> silly num lock
05:28:33 -!- oerjan has quit ("leaving").
05:29:37 -!- Tritonio_ has joined.
06:49:43 -!- Tritonio_ has quit (Remote closed the connection).
07:05:43 -!- oklopol has joined.
07:05:43 -!- oklofok has quit (Read error: 104 (Connection reset by peer)).
07:34:19 -!- jix has joined.
07:49:38 -!- calamari has quit ("Leaving").
07:59:45 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:12:49 -!- KingOfKarlsruhe has joined.
08:20:49 -!- jix has quit ("CommandQ").
08:46:20 -!- oklopol has joined.
08:46:25 <fizzie> I have no recollection of the context the current topic has.
08:48:06 <fizzie> Apparently I woke up at 16:00 one Friday, and the topic was GregorR's speculation on the reason.
09:14:05 -!- oklopol has quit (Read error: 60 (Operation timed out)).
09:25:38 -!- kar8nga has joined.
09:26:27 <fizzie> fungot: How should I improve you next?
09:26:28 <fungot> fizzie: see this: slashdot.org/ comments.pl?sid=99801&cid=8509203 linux. or at least a few people are making silly things for linux
09:29:17 <fizzie> fungot: Uh... I don't quite get it. You already have a command line interface of sorts, and are running on Linux; and I'm not going to expose that stuff directly to people on the channel, nope.
09:29:18 <fungot> fizzie: but kelsey still has it. basically you get bloat at runtime instead of compiletime function an ok way to describe it. ( plt scheme actually has such a mechanism often named thus. all syntax-rules implementations based on this single statement of yours? :)
09:29:52 <fizzie> optbot: You're usually more coherent; do you have any good ideas?
09:29:53 <optbot> fizzie: *Oh*.
09:30:02 <fizzie> optbot: What?
09:30:02 <optbot> fizzie: !undaemon ctcp
09:30:27 <fizzie> optbot: fungot doesn't have any "ctcp" command, and I don't quite see the point.
09:30:27 <optbot> fizzie: things like online javadocs, tutorial sites and w3schools have saved me hundreds of dollars in books
09:30:28 <fungot> fizzie: according to our consensus, for " 3" does not mean that all rings should have a locale with an encoding that will be
09:31:00 <fizzie> Those things aren't very useful for serious advice. :/
09:45:34 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | lisp is nice too.
09:50:34 <fizzie> optbot: Isn't it traditionally "a cat" which is fine too, not lisp?
09:50:34 <optbot> fizzie: A recursive array.
09:50:46 <fizzie> A recursive array is fine too. Hmm, right.
10:14:19 -!- oklopol has joined.
10:22:31 -!- GreaseMonkey has quit ("Jesus loves you").
10:23:44 -!- GreaseMonkey has joined.
10:42:51 -!- oklofok has joined.
10:42:51 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
10:43:53 -!- GreaseMonkey has quit ("Jesus loves you").
10:44:28 <oklofok> hiya all
11:02:43 -!- tusho has joined.
11:06:35 -!- LinuS has joined.
11:26:19 -!- oklofok has quit (Read error: 113 (No route to host)).
11:26:32 -!- oklopol has joined.
11:47:57 -!- oklofok has joined.
11:49:17 -!- oklopol has quit (Read error: 113 (No route to host)).
12:08:50 -!- ais523 has joined.
12:26:45 <tusho> hi ais523
12:26:49 <tusho> you are early
12:26:52 <ais523> hi
12:26:54 <ais523> and no, I'm late
12:26:57 <ais523> I still haven't gone to bed yet
12:26:58 <tusho> ?
12:27:01 <tusho> oh.
12:27:01 <tusho> wow.
12:27:06 <ais523> it happens sometimes
12:27:06 <tusho> ais523: ... wow
12:27:07 <tusho> :D
12:27:12 <ais523> I can't sleep for an entire night...
12:27:30 <tusho> i can, mostly because i stay up late.
12:27:35 <tusho> so i'm tired.
12:27:54 <tusho> although things have been working out to about 8 hours of sleep recently
12:28:28 -!- LinuS has quit (Connection reset by peer).
12:29:20 <tusho> ugh
12:29:25 <tusho> jksdfhisdfhsdkjfhkdjsfksdjf fuck reddit comments
12:29:29 <tusho> "[citation needed]!! HAHA! Xkcd!"
12:29:37 <tusho> what the fuck happened to DOING YOUR OWN RESEARCH
12:29:41 <tusho> god damn.
12:30:09 <fizzie> No original research!
12:30:15 <Deewiant> tusho: to be fair, if you make an assertion, you should back it up
12:30:23 <tusho> Deewiant: of course
12:30:31 <tusho> but it's done when the poster has made a negative assertation
12:30:47 <tusho> "Hey, I bet this steals your passwords and eats your babies." "Um... no it doesn't?" "[CITATION NEEDED BITCH]"
12:31:05 <tusho> you're the one who made the statement, give ME the evidence
12:31:12 <ais523> hmm... there are burden of proof problems right there
12:31:42 <Deewiant> just post the source and they'll shut up :-P
12:31:56 <tusho> Deewiant: "but you could be running a modified version with extra evil"
12:32:04 <tusho> (seriously, I am 100% certain they would say that)
12:32:15 <Deewiant> sure, somebody would
12:32:17 <Deewiant> most wouldn't
12:32:26 <ais523> #ifdef LICENCE_MANAGER
12:32:44 <ais523> (a line from pic30, a modified version of gcc with extra evil)
12:33:00 <tusho> Deewiant: but I see it all over reddit
12:33:02 <tusho> it's just annoying
12:33:07 <ais523> sorry, it's called MPLAB C30, pic30 is what gcc thinks of it as internally
12:33:13 <tusho> you can say whatever you want and if people challenge you you can just say [citation needed].
12:33:17 <tusho> bullshiiiiiiiiiiit
12:33:21 <ais523> tusho: citation needed
12:33:29 <tusho> ais523: [citation needed]
12:33:38 <Deewiant> tusho: ( ais523) tusho: citation needed
12:33:51 <tusho> ("that's evil" "i don't think it is..." "[citation needed]")
12:33:53 <ais523> tusho: you may laugh, but people actually use {{disputedtag}} on occasion
12:33:58 <tusho> (can be reduced to "that's evil" "[citation needed]" "[citation needed]")
12:34:01 <ais523> there have been edit wars over it too
12:34:10 <tusho> however, the ones who say [citation needed] are never the ones who understand burden of proof
12:34:11 <tusho> :D
12:34:13 <ais523> which means that there's a dispute over whether something is disputed or not
12:34:19 <tusho> ais523: wow
12:34:43 <ais523> tusho: there can be edit wars over the strangest things on wikis, Wikipedia gets them a lot but I think they affect other wikis too
12:35:01 <ais523> for instance there was an edit war about whether a particular truck in the background of an area in Pokemon was notable or not
12:35:09 <tusho> ais523: kind of related: people bugged me on WikiWikiWeb for not using my real name
12:35:15 <tusho> because apparently using my real name makes me more trustworthy.
12:35:18 <tusho> riiiiiiiiiiight
12:35:19 <tusho> http://c2.com/cgi/wiki?TuSho
12:35:44 <ais523> tusho: it's not exactly that, it's that people who aren't trustworthy tend to be unwilling to reveal their own names for some reason
12:35:50 <ais523> so it works as a filter one way but not the other
12:35:57 <ais523> you exclude lots of people who are trustworthy too
12:36:10 <tusho> ais523: actually, when I was young and naive I'd have a good reason not to reveal my name
12:36:13 <tusho> my password was "elliott"...
12:36:53 <ais523> tusho: anyway, where's the history link on c2?
12:37:00 <ais523> as it is, it's very difficult to tell who's talking to you
12:37:11 <ais523> arguably it doesn't matter, but that goes against the thrust of what they were saying
12:38:43 <ais523> heh, c2 doesn't record contributors to a page forever, only for a certain length of time
12:38:55 <ais523> so it's simultaneously anonymous and requires real names
12:38:59 <ais523> that's an interesting compromise
12:39:37 <ais523> <spam I just got> Plastic SCM is saying goodbye to stuffy old software configuration management tools that are high on complexity and low on usability. With Plastic SCM every aspect of what you would expect from a configuration management tool has been enhanced. Trace the history of your projects with a number of graphical tools such as the per-file history that you can view through a 3D revision tree! How cool is that?!
12:39:41 <ais523> I found it amusing
12:39:48 <ais523> and it's more ontopic than the normal spam I come across
12:39:56 <ais523> doesn't make me want to buy their product though
12:41:05 <tusho> back
12:41:12 <tusho> ais523: yes, that's intentional
12:41:16 <tusho> also
12:41:19 <tusho> plastic scm is quite popular
12:41:22 <tusho> are you sure it's spam?
12:41:35 <tusho> i haven't heard of well-known companies spamming a lot, reall
12:41:35 <ais523> well, it's unsolicited bulk email
12:41:36 <tusho> y
12:41:51 <ais523> Subject: ?spam? Our Version Control tool is not just cool looking, its smart too! Is yours?
12:42:03 <ais523> maybe someone else is spamming them
12:42:08 <ais523> but there's no obvious reason why
12:42:14 <ais523> it doesn't look like the work of a reputable company
12:42:29 <ais523> maybe a phishing attempt disguised as spam?
12:42:32 <ais523> that would be something new
12:42:43 <tusho> ais523: you can find all the revisions in the wiki data dir
12:42:49 <tusho> i can't remember where that is , though
12:42:52 <tusho> and again they get expired
12:43:00 <tusho> http://c2.com/cgi/quickDiff?TuSho
12:43:05 <tusho> (found by clicking the link) shows the last change
12:43:14 <tusho> it has no accounts, anyway
12:43:17 <tusho> so it's all honour system
12:43:50 <ais523> there is something very odd about that, but it resonated with me as being Wiki too
12:43:58 <ais523> which makes sense, as c2 is the Wiki with a capital W
12:44:15 <tusho> ais523: c2 is bizarre
12:44:21 <tusho> wikimedia is such a distant relative
12:44:26 <tusho> e.g. their Recentchanges is updated by a bot
12:44:29 <tusho> once every 24 hours
12:44:34 <tusho> just a regular pge
12:44:40 <tusho> *mediawiki
12:44:52 <ais523> yes, but even so I think I understand c2 in a way, pretty much any wiki model you'll have a faction of people on Wikipedia who thinks Wikipedia ought to work like that
12:45:14 <ais523> and you get used to the politics after a bit, c2 is a bit like Wikipedia would be with a different political party in charge
12:45:28 <tusho> ais523: it's kind of like america, isn't
12:45:29 <tusho> it
12:45:31 <tusho> both the parties suck
12:45:36 <tusho> but one is mildly preferable :P
12:45:48 <ais523> tusho: which one depends on who you are, though
12:46:06 <tusho> http://c2.com/cgi/wiki?ChangesInWeekThirtyThree 33rd week of 2007 ... listing changes from 2008
12:46:11 <tusho> ais523: yea, i guess insane people differ ;)
12:46:17 <tusho> [ICE BURN needed]
12:46:27 <tusho> wonder how c2 would do citation needed.
12:46:32 <tusho> probably add a long italic comment below it.
12:46:54 <ais523> tusho: when I've worked on effective internal wikis they've ended up looking a lot like c2
12:47:04 <tusho> indee
12:47:04 <ais523> they normally act like extended group mind-maps, with hyperlinks
12:47:05 <tusho> d
12:47:11 <tusho> which is a good thing
12:47:21 <tusho> although it's funny, wikis are actually a good replacement for most html sites
12:47:31 <ais523> Wikipedia is pretty strange as wikis go, it's sort of like using Google Docs to write an encyclopedia with a wiki attached for discussing it
12:48:59 <ais523> hmm... wiki software is strangely abusable too
12:49:13 <ais523> for instance I wrote a JavaScript multiplayer networked chess program
12:49:18 <ais523> using MediaWiki for data storage
12:49:44 <tusho> ha
12:49:52 <tusho> ais523: one problem I think mediawiki has
12:50:00 <tusho> is that was designed for 'everyone edits, better make it safe' first
12:50:18 <tusho> i think if you started with something made for a personal site-wiki-thingy that are quite popular these days - i.e. free for all, locked down permissions
12:50:25 <tusho> then put the restrictions etc on top of that
12:50:32 <tusho> it might result in something more flexible & less adhoc
12:50:50 <ais523> for wikis, adhoc is good
12:51:12 <tusho> well, yes
12:51:21 <tusho> but not in the part of the software meant to be structured, ais523
12:51:24 <tusho> i'm talking about the software
12:51:28 <ais523> ah
12:51:57 <tusho> e.g. for a personal wiki, you'd want something that you could poke about in standard tools for some purposes
12:52:05 <ais523> sort of like the monks from HHGTTG, but instead of demanding rigidly defined areas of doubt and uncertainty you're demanding a rigidly structured framework in which to be adhoc
12:52:09 <tusho> so you store stuff in the filename (not much relational about well, documents anyway)
12:52:12 <tusho> err
12:52:13 <tusho> LOL
12:52:15 <tusho> nice slip
12:52:18 <tusho> in the FILESYSTEM
12:52:21 <tusho> (how intercal.)
12:52:26 <tusho> and use an existing VCS, etc
12:52:27 <ais523> tusho: yes, very INTERCAL
12:52:30 <tusho> and probably a DVCS so you could edit locally
12:52:37 <tusho> and then, wow, hey, you get merging
12:52:42 <tusho> which turns out to be helpful in a more open, public site!
12:52:44 <tusho> see, benefits like that
12:52:49 <ais523> btw were you reading what I said when I told you about my new evil idea for command line argument syntax?
12:52:59 <tusho> kind of
12:53:12 <ais523> sorry, I like telling people about that sort of random evil
12:53:23 <ais523> I haven't implemented most of the random evil ideas I've come up with yet, though
12:53:52 <tusho> ais523: incidentally,
12:54:01 <tusho> http://developer.mozilla.org/En doesn't run on mediawiki, although it really looks like it at first glance
12:54:11 <tusho> "Powered by MindTouch Deki Enterprise Edition v.8.05.2b"
12:54:28 <tusho> http://developer.mozilla.org/index.php?title=En&action=history <-- The goddamn URL is even the same. The UI for the history is better, though.
12:56:21 <tusho> http://developer.mozilla.org/index.php?title=Special:Listusers&limit=50&offset=50
12:56:26 <tusho> that is the EXACT URI that mediawiki uses
12:56:27 <tusho> :)
12:56:33 <tusho> it doesn't look like it's based on MW, though
12:56:42 <ais523> tusho: the UI for the history is the same, but skinned differently
12:56:55 <tusho> ais523: but the other pages look different
12:56:56 <tusho> e.g. login
12:56:59 <ais523> the confusing thing is it's using the same URIs as MediaWiki everywhere
12:57:02 <tusho> i think they just imitated mediawiki
12:57:04 <tusho> ais523: well, no
12:57:10 <ais523> but doesn't have any of the other hallmarks of MediaWiki
12:57:17 <tusho> http://developer.mozilla.org/Project:en/About
12:57:23 <tusho> lots of language stuff in the url
12:57:27 <tusho> i am pretty sure it's not based on MW, anyway
12:57:32 <tusho> i guess they just imitated the UI they likec
12:57:34 <tusho> *liked
12:59:22 <ais523> well it's open source, so I'm going to settle this the traditional open source way
13:00:06 <tusho> indeed
13:00:08 <tusho> check it :P
13:00:11 * tusho does the same
13:00:15 <tusho> hmm
13:00:18 <tusho> they only provide distro packages
13:00:20 <tusho> and a vmware thing
13:00:21 <tusho> enterprisey
13:00:55 <tusho> ais523: http://wiki.developer.mindtouch.com/Deki_Wiki/Installation_and_Upgrade/1.9.0_Itasca_Source_Code_Install_and_Upgrade_Guide
13:01:02 <tusho> ok, THAT is obviously not mediawiki
13:01:13 <tusho> guess mozilla just made it looks like MW
13:02:37 <tusho> ais523: can you slap me, I'm about to go off writing a wiki engine
13:02:43 <tusho> and I Shouldn't
13:02:47 <ais523> tusho: no, slaps tend not to work over IRC
13:02:50 <ais523> at least not very well
13:02:54 <tusho> ais523: how about a Swhack
13:03:06 <ais523> ok
13:05:14 -!- Tritonio_ has joined.
13:05:18 <ais523> Deki Wiki looks worrying, anyway, it's full of dependencies on Windows and/or Mono
13:05:27 <ais523> "Adding services, like Microsoft Windows Live Controls, as a built-in component
13:05:27 <ais523> to a wiki is super interesting; MindTouch Deki Wiki is truly breaking new ground,"
13:05:27 <ais523> said George Moore, general manager, Windows Live Platform at Microsoft.
13:05:31 <ais523> that's from their README
13:05:39 <tusho> ais523: well, that's what microsoft want to do with it
13:05:44 <tusho> ais523: if you read their installation instructions, they're for mono
13:05:49 <tusho> nothing wrong with mono/C#
13:05:52 <tusho> nice VM, nice language
13:05:54 <ais523> well they have mono as a dependency
13:05:57 <tusho> yes
13:05:57 <tusho> and
13:05:59 <tusho> ?
13:06:13 <ais523> and lots of people are paranoid about mono because they think installing it allows Microsoft to sue you some time down the line
13:06:13 <tusho> ais523: gnome depends on Mono these days
13:06:17 <tusho> http://www.gnome.org/projects/tomboy/
13:06:25 <tusho> a gnome/C# app that runs on Mono
13:06:29 <tusho> i don't think it'd even run on windows
13:06:33 <ais523> tusho: no it doesn't, the person in charge wants it to but there are no Mono dependencies in Gnome core nowadays
13:06:42 <tusho> ok, well ubuntu includes t
13:06:43 <tusho> it
13:06:47 <ais523> yes
13:07:02 <ais523> apparently there are two programs in Ubuntu by default that depend on it
13:07:28 <ais523> also someone put in a dependency for OpenOffice.org on Mono but there isn't a dependency there actually and after removing the dependency it still works
13:07:41 <tusho> what gui toolkit does openoffice use again?
13:07:47 <tusho> it's some crazy shit that looks like java but isn't
13:07:48 <tusho> iirc
13:07:55 <ais523> not sure
13:08:26 <ais523> and arguably any GUI made by Sun ends up looking like Java, because it's the same GUI designers
13:09:08 <tusho> they should fire 'em
13:09:08 <tusho> :D
13:11:56 -!- tusho has changed nick to mupersan.
13:12:04 -!- mupersan has changed nick to tusho.
13:12:25 -!- tusho has changed nick to mupersan.
13:12:30 -!- mupersan has changed nick to tusho.
13:14:45 <tusho> Well, mupersan has been defeated.
13:14:55 <tusho> The name would trip me up if I didn't already have one.
13:15:23 <tusho> Hm. Now language choice will trip me up. Damn.
13:15:26 <tusho> INTERCAL!
13:15:26 <ais523> tusho: the last few events here in #esoteric would look pretty weird to anyone who wasn't in the other channels that provide context
13:15:31 <tusho> ais523: quite
13:15:40 <ais523> oh, btw, hi optbot, hi fungot
13:15:41 <optbot> ais523: no it's not :(
13:15:41 <fungot> ais523: so include the code? :p) and all is well and good.' you can hang around in mystream. but when you pass your custom port to a procedure without naming it after " people who are used to
13:15:53 <fizzie> I, for one, am confused about what just happened.
13:16:26 <ais523> fizzie: I don't think it makes sense without having been in ##nomic at the same time
13:16:27 <fizzie> Especially with irssi's nick-tracking-for-query-windows, which added a "You are now talking with mupersan" line as the first line I noticed.
13:18:58 <ais523> fungot: provide some context for fizzie
13:19:04 <ais523> fungot?
13:19:05 <tusho> ais523: do you think I should give perl another chance for this?
13:19:15 <tusho> fungot: test
13:19:15 <fizzie> fungot: Why so quiet?
13:19:19 <ais523> tusho: actually I'd rather like to see it in INTERCAL
13:19:24 <fizzie> ^help
13:19:26 <tusho> ais523: you can port it ;)
13:19:27 <ais523> but that would be really difficult
13:19:31 <fizzie> Wow, been a while since the last crash.
13:19:33 <tusho> i'm not insane enough
13:19:42 -!- fungot has quit (Read error: 131 (Connection reset by peer)).
13:19:48 <ais523> maybe I should make an INTERCAL backend for gcc, not sure if it would be easier or harder than brainfuck
13:20:01 <ais523> worryingly many of INTERCAL's commands are not too hard to explain to gcc
13:20:07 <fizzie> It saw that ais523 "provide some context" line and got confused.
13:20:13 <ais523> it can understand what ABSTAIN does to some extent, for instance
13:20:24 <ais523> but it tends to assume things that aren't true
13:20:25 -!- fungot has joined.
13:20:48 <fizzie> fungot: Feeling better?
13:20:49 <fungot> fizzie: ( indirectly via fnord and my blue fnord long underwear all ready to go through all words in the stdlib
13:20:59 <fizzie> Sounds... fungotty enough.
13:21:00 <fungot> fizzie: guess i've not done any forth coding since... well, physically around me without specifying " good stewart" versus " xtu". ( advanced in his mind uses it.
13:21:45 <tusho> Test hi
13:21:56 <ais523> hi fungot
13:21:56 <fungot> ais523: those are just the ordinary ( for call/ cc))) hangs
13:23:58 <tusho> ais523: is there any actual justification for a lot of perl's weirdness?
13:24:02 <ais523> yes
13:24:04 <tusho> I can see how some of it leads to interesting stuff
13:24:05 <tusho> but most of it...
13:24:21 <ais523> Perl is designed to be ruthlessly pragmatic AFAICT
13:24:57 <tusho> but a lot of the pragmatism is just silly & afaict not very helpful either
13:30:53 <tusho> ais523: does perl have a Git module?
13:30:54 <tusho> hmm.
13:30:56 <tusho> seems so
13:31:02 <tusho> ah. it's part of official git
13:37:28 <fizzie> For disturbingly many X, "does perl have a X" has a positive answer.
13:39:36 -!- Judofyr_ has joined.
13:39:36 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
13:41:32 <tusho> fizzie: libido?
13:42:00 <ais523> tusho: well in C you could import that with -lido, Perl naming conventions are a bit different though
13:42:18 <tusho> man someone make a protocol called ido already
13:42:18 <tusho> :D
13:43:13 <tusho> Hmm. I haven't bought any albums, recently, apart from this one.
13:43:19 * tusho Swhacks himself for being a naughty pirate.
13:43:23 * tusho denies that Swhack.
13:43:30 <tusho> (/me checks download status...)
13:44:10 -!- tritonio__ has joined.
13:44:44 <tusho> Why must there be throttles in the world.
13:44:45 -!- Tritonio_ has quit (Read error: 110 (Connection timed out)).
13:44:46 <tusho> Whyyyy.
13:45:12 <ais523> tusho: to prevent one person being able to slashdot the entire Internet with wget
13:45:40 <ais523> (there are ways to set its settings so it'll download every web page linked from any other webpage recursively forever, which will end up downloading much of the Internet, but this is a bad idea)
13:46:10 <tusho> ais523: Or rather so that the file dump sites can sucker you into being a premium account. (I'd use bittorrent except 1. if a friend uploads it I can be sure of the quality & correct tags 2. It's more reliable, in general, whereas torrents often end up with incomplete files etc)
13:50:53 <tusho> Woop woop. Downloaded.
13:51:09 <ais523> tusho: what did you download?
13:51:19 <tusho> An album.
13:51:26 <tusho> Ugh, my fonts have messed up.
13:51:32 <tusho> Always seems to happen after catting /dev/urandom.
13:51:34 * tusho restarts
13:51:40 <ais523> tusho: use the reset command?
13:51:52 <ais523> that cleans up a random cat for me
13:51:55 <tusho> ais523: no I mean literally
13:52:00 <tusho> even if I restart the terminal
13:52:04 <ais523> how?
13:52:05 <tusho> it's something to do with os x font caches
13:52:09 <tusho> I imagine leopard fixes it
13:52:11 <ais523> that's pretty bad terminal design...
13:52:19 <tusho> ais523: it happens with any terminal
13:52:21 <tusho> I think its an os bug
13:52:24 <tusho> but it rarely happens
13:52:33 <tusho> mostly if you give it really wacky unicode over the course of several days
13:52:38 <ais523> how can the OS mess up the fonts just because you catted something to a terminal?
13:52:43 <tusho> i don't know. :P
13:53:51 <ais523> oh, btw I found an explanation of SGML comments that actually made sense
13:54:12 <ais523> it seems that <! -- this is a comment -- > is fine in SGML (and therefore in early versions of HTML)
13:54:18 <tusho> it is
13:54:26 <ais523> because <! starts a declaration, > ends it, and -- toggles a comment inside a declaration
13:54:46 <tusho> ah, that's how it got the syntax
13:54:50 <ais523> that's why <!----> starts and ends a comment but <!------> ends up inside a comment
13:54:53 -!- oklofok has quit (Read error: 113 (No route to host)).
13:55:10 <tusho> brb.
13:55:16 -!- tusho has quit.
13:56:48 -!- jix has joined.
13:58:21 -!- tusho has joined.
13:58:41 <tusho> ugh, mouse out of battery again
13:58:50 <tusho> that does it, after this i'll put back in my crappy old wired mouse
13:59:02 <ais523> tusho: that's why I'm using a wired mouse at the moment too
13:59:10 <tusho> ais523: it didn't used to do this
13:59:14 <tusho> but it's been dropped a few times
13:59:16 <ais523> and this mouse is very crappy, I suspect it's made of cardboard but am not sure
13:59:25 <tusho> and I think that fucked it up
13:59:39 <tusho> (the batteries have a little checker thing on the side and they always have like a third)
13:59:45 <tusho> (and yet the mouse says they're dead)
14:00:40 <ais523> tusho: could be a loose connection causing resistance inside the mouse, the battery charge would appear lower to the mouse because less voltage and/or current would get through
14:00:40 <ais523> and I can see how dropping a mouse would cause a loose connection
14:00:55 <tusho> ais523: something over my head like that, yes
14:00:59 <tusho> it scratched the teflon base
14:01:08 <tusho> so now it's awkward to use on anything other than a fibrous mouse mat
14:01:11 <tusho> and it's slowed down a bit even on that
14:01:16 <tusho> so i had to turn accelleration up
14:02:38 <tusho> ais523: http://zeepmobile.com/ neat
14:02:52 <tusho> they use the last 40 chars of the message for ads though :(
14:02:57 <tusho> still. neat.
14:03:30 <ais523> tusho: now all that's needed is someone interfaces it with Java, then we can plz send everyone the code
14:03:37 <tusho> ais523: brillant
14:04:04 <ais523> sending SMS messages from Java was the original question that sparked off that particular meme
14:04:10 <tusho> yes, I know
14:09:00 -!- oklopol has joined.
14:11:48 <tusho> So.
14:12:03 <ais523> hi oklopol
14:12:20 <oklopol> hi
14:12:27 <oklopol> anyone an expert on mips?
14:12:36 <tusho> yes, GregorR
14:12:36 <oklopol> i want like a spec, but i'm too lazy to ggl
14:12:38 <ais523> GregorR is I think
14:12:48 <tusho> hear that GregorR? we're pinging you
14:12:53 <tusho> like this: GregorR
14:15:50 <tusho> mp[e
14:15:51 <tusho> *nope
14:16:41 <ais523> tusho: the FSF have released a new propaganda video which I'm watching atm, it's good if you like unintentional humour
14:16:48 <tusho> ais523: by stephen fry?
14:16:51 <ais523> yes
14:16:55 <tusho> i'll watch that in a bit
14:16:58 <tusho> i like stephen fry a lot
14:17:28 <ais523> basically they've persuaded him to spout propaganda lines explaining what FSF-free software is in terms that a kindergarten could understand
14:17:34 <ais523> which is all very patronising
14:18:01 <tusho> ais523: i'm sure he had a lot of fun being patronising too
14:18:13 <ais523> yes, I agree
14:18:43 <ais523> the FSF are still desperately trying to promote gNewSense
14:18:55 <tusho> yea, i read the reddit comments to that video and saw gnewsense
14:18:58 <tusho> and i just laughed
14:19:09 <tusho> oh FSF, when will you learn about reality?
14:20:23 <tusho> ais523: could you check if rutian's apache is gzipping pages it sends?
14:20:24 <tusho> i hope so
14:20:25 <ais523> they released it cc-nd
14:20:32 <tusho> ugh, I hate -nd
14:20:32 <ais523> tusho: I think I can check
14:20:40 <tusho> it's evil
14:20:48 <ais523> tusho: the FSF think propaganda should be no-derivs
14:20:55 <tusho> ais523: yea, god forbid they get made fun of
14:20:57 <ais523> the Emacs manual ended up being declared non-free by Debian
14:21:01 <ais523> for a while
14:21:05 <ais523> until they changed their mind about that
14:21:21 <tusho> ais523: i think I might remix stephen fry's video to make the FSF look even more ridiculous (after watching it) and host it out of spite
14:21:34 <tusho> and have at the bottom, two links
14:21:41 <tusho> fsf.org - "Support free software!"
14:21:45 <fizzie> Lots of GNU program documentation is in Debian non-free, thanks to GFDL.
14:21:47 <tusho> creativecommons.org - "Support free culture!"
14:21:49 <tusho> "...wait"
14:22:07 <tusho> fizzie: Hm, so Wikipedia isn't debian-free?
14:22:28 <ais523> tusho: it depends on what options on the GFDL you select
14:22:31 <ais523> Wikipedia is debian-free
14:22:40 <fizzie> According to vrms, I've got non-free packages like: autoconf-doc, gdb-doc, gcc-doc-base, ocaml-doc.
14:22:40 <ais523> but the GFDL has all sort of optional extras you can add on
14:22:55 <ais523> for including propaganda into a document in a non-free way
14:23:06 <ais523> as long as it's unrelated to the subject of the document
14:23:07 <fizzie> Immutable sections were the thing I saw people griping about.
14:23:09 <tusho> i have non-free software such as ... um ... I don't think it'll fit on an IRC line :P
14:23:32 <fizzie> Yes, well, I just selected some of the "-doc" packages I had; there's others.
14:23:36 <ais523> in other words GFDL lets you add a section of propaganda to your documentation that nobody's allowed to remove, as long as it has nothing to do with the content people are actually looking for
14:24:25 <ais523> of course people who try to use the GFDL sanely, like me and whoever selected the licence for Wikipedia, disable all the optional extras and just end up with a licence that actually resembles the cc licences a bit
14:24:55 <tusho> i'd say something witty but I can't think of anything to make this funnier :)
14:25:44 <ais523> I think the problem is that the FSF don't really 'get' free software, despite having invented it
14:26:06 <tusho> ais523: my take on it is that the FSF are obsessed with making the general public all brainwashed to support everything they say
14:26:15 <tusho> so they add loads of terms to obligate the spreading of the propaganda
14:26:27 <tusho> (exaggerated, of course, but the basic idea)
14:26:40 <tusho> they'd be good virus writers
14:26:41 <ais523> tusho: bad news, it isn't gzipping, I would tell you in #ESO but you aren't there
14:26:49 <tusho> ais523: ah, so that's why it's not all that fast
14:34:38 <AnMaster> ais523, http://rafb.net/p/dbkAv776.html
14:34:41 <AnMaster> not sure about it
14:34:44 <AnMaster> but could be relevant
14:35:06 <AnMaster> or could be false positive
14:35:12 <ais523> AnMaster: those warnings aren't just in the compiler, they're in the C-INTERCAL manual too
14:35:22 <ais523> they're potential gotchas for people writing code to interface with INTERCAL code
14:35:29 <AnMaster> ais523, um?
14:35:31 <AnMaster> huh?
14:35:40 <AnMaster> ah
14:35:47 <ais523> AnMaster: the manual warns that the variables won't be initialised and so don't rely on them being initialised
14:35:48 <AnMaster> longjmp into a function?
14:36:01 <ais523> AnMaster: yes, or goto into a block with initialised variables
14:36:07 <AnMaster> right
14:36:13 <ais523> as in goto a; {int b; a: ; }
14:36:14 <AnMaster> ais523, anyway you could have a bug there
14:36:28 <AnMaster> ais523, and this is not with EC stuff
14:36:30 <AnMaster> continuation.i
14:36:32 <AnMaster> -m
14:36:35 <AnMaster> so not sure...
14:36:59 <ais523> oh, wait
14:37:05 <ais523> actually that's just a false positive
14:37:16 <ais523> because those variables go out of scope before they can be used
14:37:24 <ais523> the code for -m is more like goto a; {int b=2; } a: ;
14:37:29 <ais523> which is clearly not a problem
14:37:52 <ais523> it's kind-of obvious that's happening from the error because it's skipping a huge number of variables with the same name
14:37:57 <ais523> which don't shadow each other
14:38:03 <ais523> so they all go out of scope before there's a problem
14:40:38 * tusho downloads some more stuff
14:41:13 <AnMaster> ok
14:42:24 <tusho> 17 minutes remaining...
14:44:55 <oklopol> http://www.vjn.fi/pb/p144322651.txt readable and/or Cish?
14:44:58 <oklopol> i'm a bit rusty
14:45:19 <tusho> oklopol: quite Cish
14:45:24 <ais523> oklopol: those bitfields will cause havoc on an 8-bit system
14:45:27 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)).
14:45:31 <oklopol> ais523: how so?
14:45:34 <tusho> oklopol: use int argc, char **argv though
14:45:37 <tusho> instead of nargs,args
14:45:40 <oklopol> right
14:45:43 <ais523> they don't fit nicely on 8-bit boundaries
14:45:44 <tusho> but apart frmo that, it looks kind of like c from the 70s :P
14:45:46 <tusho> which is cool
14:46:00 -!- Judofyr has joined.
14:46:06 <oklopol> ais523: well then i'll just have to do the bitshifts manually.
14:46:21 <tusho> oklopol: do you care about 8 bit systems
14:46:21 <ais523> tusho: C from the 70s would be main()int argc;char** argv;{}
14:46:22 <tusho> :P
14:46:26 <tusho> ais523: well, you know what i mean
14:46:39 <oklopol> which basically means writing in python what the C compiler has for this exact case
14:46:57 <tusho> oklopol: just do what you're doing
14:47:05 <tusho> unless you wanna run it on a nes
14:47:48 -!- oklofok has joined.
14:47:48 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
14:47:55 <oklofok> i've managed to break another cable
14:47:58 <oklofok> god i suck
14:48:09 <oklofok> "as always, i want it to run on my own computer, everything else is just gravy." was my last message, not sure if you got it.
14:49:16 <ais523> oklopol: no, leave it as it is
14:49:16 <ais523> the compiler will sort it out for you
14:49:16 -!- ais523 has quit (Remote closed the connection).
14:49:31 -!- ais523 has joined.
14:49:33 <oklofok> "sort it out"?
14:49:34 <tusho> wb ais523
14:49:36 <oklofok> what do you mean
14:49:51 <oklofok> i need the bitfields to have that exact structure, because i'm writing that raw into a file
14:50:13 <oklofok> sort out the shifting the data into the struct?
14:50:25 <ais523> oklofok: C doesn't guarantee any structure in bitfields
14:50:36 <ais523> for instance, what's the endianess of a 26-bit int?
14:50:41 <oklofok> well that sucks donkey ass
14:50:46 <ais523> it will vary from system to system
14:50:58 -!- Judofyr has quit.
14:51:03 <ais523> the bits are guaranteed to be in the order you say but there may be padding between them
14:51:28 <oklofok> so basically i have to shift everything manually into an int
14:51:31 <ais523> gcc lets you remove the padding with __attribute__((__packed__)) but I'm not sure if that'll work on non-32-bit systems, where your bitfields cross the boundaries between ints
14:51:40 <ais523> manual shifting is safer, and easy
14:51:42 <oklofok> that sucks donkey balls
14:51:58 <oklofok> yeah, well, i'll stick with this one, and make a python program convert all that for me
14:52:11 <oklofok> not convert, shiftorize is the correct term
14:52:23 <tusho> oklofok: why not just use attribute packed
14:52:25 <tusho> it's probably the best
14:52:30 <tusho> after all, you only care about your system
14:52:30 -!- tritonio__ has quit (Client Quit).
14:52:31 <oklofok> anyway i have some business to attend to, see you in a bit
14:52:32 <tusho> so it'll be OK
14:52:37 <oklofok> tusho: well i kinda missed that line :P
14:52:40 <tusho> :P
14:52:44 <oklofok> yeah, that'll indeed be okay
14:53:02 <oklofok> i think i automatically skip lines that contain something as complicated as __attribute__
14:53:25 <oklofok> you will have to tell me how that's used later, when i actually start making this
14:53:45 <ais523> oklofok: it isn't standard C, gcc lets you do that sort of thing but some compilers don't or have different syntax
14:53:59 <oklofok> ais523: yeah that's fine by me, but how exactly is it used?
14:54:22 <oklofok> do i just write __attribute__((__packed__)) in my diary or something?
14:54:28 <ais523> you put the syntax after the } of the struct definition
14:54:30 <oklofok> or should it be written in the code somewhere
14:54:37 <oklofok> ah, after the whole thing
14:54:44 <oklofok> good, i'll be trying that
14:54:58 <oklofok> but, ima take a break from irc now, see you in a bit ->
14:55:03 <ais523> ok
14:58:04 <ais523> tusho: heh, newlib is formed by combining code licenced under 28 different BSD-style licences and the LGPL
14:58:15 <tusho> haha
14:58:18 <ais523> that's legal, but hardly good style
14:58:25 <tusho> :P
14:58:53 <ais523> it makes the copyright notice stupidly long
14:59:19 <tusho> ais523: idea for a copyright license
14:59:34 <tusho> for each derivative
14:59:39 <tusho> you have to add one word to a one word story included with the program
15:00:20 <ais523> tusho: I wanted to write an anti-copyleft licence which was still open-source; all derivative works had to add an extra condition to the licence, preferably a silly one which hardly ever comes up
15:00:24 <tusho> heh
15:00:29 <tusho> copyside
15:00:35 <ais523> therefore derivative works can be non-open-source but the original is open source
15:00:55 <ais523> I don't think I'd use such a licence except for something silly though
15:01:04 <ais523> I mean, sillier than usual
15:01:22 <tusho> ais523: what about a licensenomic
15:01:32 <tusho> different derivatives could vote on license changes in their parents
15:01:36 <ais523> tusho: combining a nomic legal system with a RL legal system?
15:01:40 <tusho> exactly
15:01:58 <ais523> that would get very dangerous very quickly, especially when it came to indemnification
15:02:16 <tusho> ais523: it'd probably have a huge legalese of limitations
15:02:18 <ais523> you might end up having to pay Apple the damages for being sued by Microsoft, for instance
15:02:24 <tusho> ha
15:02:30 <tusho> it'd only be for silly things anyway
15:14:32 <tusho> a
15:22:52 <oklofok> hmm, is there an assembly that requires you to declare a register before you use it
15:23:16 <oklofok> you could have the speed benefit of not having to push everything @ call, but still have the safety
15:23:42 <ais523> oklofok: C written entirely with gcc asm statements
15:23:54 <oklofok> well yeah
15:24:10 <oklofok> but that's even higher up
15:24:12 <oklofok> i don't want that
15:24:29 <ais523> that gives you the speed benefit
15:24:38 <ais523> it's just very verbose
15:24:47 <ais523> the whole thing collapses into just the asm when it's compiled
15:25:00 <oklofok> sure
15:25:09 * ais523 recalls writing asm like that on a different compiler because they didn't know how to use the assembler
15:25:20 <oklofok> but, you don't have to specify the registers you use, and that's a bit boring
15:25:26 <oklofok> hmm
15:25:31 <oklofok> actually you do have to do that
15:25:51 <oklofok> you will have to elaborate on how a register is declared in C
15:26:05 <oklofok> inside an asm statement
15:26:16 <ais523> oklofok: again you can't do that in general, in gcc you can declare a variable to be in a particular register
15:26:18 <oklofok> can't you just write any assembly you like?
15:26:31 <ais523> and in gcc you have to specify the inputs and outputs to each asm statement you write
15:27:08 <oklofok> i should learn more about gcc, it seems to be incredibly awesome and great
15:27:35 <ais523> it's good for doing non-portable stuff, and most of the stuff you're asking about can't be done portably
15:29:13 <oklofok> i don't care about portability, i mainly wanted to know whether that idea has been investigated
15:29:38 <ais523> gcc's asm is awesome compared to asm in all the other non-gcc-based compilers I've used
15:29:48 <oklofok> well, i invented it for my stack-language->brainfuck compiler as well, it's not really an invention; guess that's why i specifically asked whether it exists
15:29:58 <ais523> most of the others required you to guess where everything went when mixing asm and C
15:30:02 <ais523> in the same source file
15:30:09 <oklofok> heh
15:45:34 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | print message.
15:46:30 <oklofok> optbot!
15:46:30 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | you are not allowed to use a printout?.
15:46:34 <oklofok> optbot!
15:46:35 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | Ah. Fine ;)..
15:46:39 <oklofok> :)
16:04:34 -!- KingOfKarlsruhe has quit (Remote closed the connection).
16:06:39 <tusho> brb.
16:10:35 -!- Tritonio_ has joined.
16:11:26 <AnMaster> <ais523> gcc lets you remove the padding with __attribute__((__packed__)) but I'm not sure if that'll work on non-32-bit systems, where your bitfields cross the boundaries between ints
16:11:26 <AnMaster> <ais523> manual shifting is safer, and easy
16:11:27 <AnMaster> well
16:11:30 <AnMaster> in erlang it would be easy
16:11:36 <AnMaster> very easy
16:11:46 <ais523> AnMaster: what if you were on a system with 11-bit ints?
16:11:51 <ais523> not that they exist, but they could do in theory
16:12:14 <ais523> well, 11-bit char
16:12:22 <ais523> it would have to be 22-bit int, 33-bit or 44-bit long
16:12:30 <ais523> and long long would be 66 bits or more
16:18:36 -!- AnMaster_ has joined.
16:19:48 -!- AnMaster has quit (Nick collision from services.).
16:20:14 -!- AnMaster_ has changed nick to AnMaster.
16:20:19 <AnMaster> so
16:20:21 <AnMaster> what was the last I said?
16:20:23 <AnMaster> ais523, ^
16:20:27 <AnMaster> <ais523> not that they exist, but they could do in theory <-- last I saw from anyone else
16:20:29 <AnMaster> I said several lines after that though
16:20:42 <ais523> [16:11] <AnMaster> <ais523> gcc lets you remove the padding with __attribute__((__packed__)) but I'm not sure if that'll work on non-32-bit systems, where your bitfields cross the boundaries between ints
16:20:42 <ais523> [16:11] <AnMaster> <ais523> manual shifting is safer, and easy
16:20:42 <ais523> [16:11] <AnMaster> well
16:20:42 <ais523> [16:11] <AnMaster> in erlang it would be easy
16:20:42 <ais523> [16:11] <AnMaster> very easy
16:21:15 <AnMaster> ais523, http://rafb.net/p/yehiAb75.html
16:22:07 <ais523> _ means don't care in Prolog too
16:22:38 <AnMaster> well erlang doesn't do back tracking
16:23:40 <AnMaster> for union it would be harder
16:24:01 <AnMaster> you would probably do it in two steps
16:24:22 <AnMaster> <<Opcode:6,Parameters:26>>
16:24:29 <AnMaster> unless there was some easy way to see
16:24:46 -!- oklofok has quit (Read error: 113 (No route to host)).
16:24:49 <AnMaster> for example, first bit set of Opcode means that it is a "Rinstr"
16:24:52 <AnMaster> then you could do:
16:24:54 -!- oklopol has joined.
16:25:30 <AnMaster> <<2#1:1,Opcode:5,Rs:5,Rt:5,Rd:5,Shamt:5,Funct:6>>
16:25:35 <AnMaster> 2# for base 2
16:26:00 <AnMaster> I love Erlang pattern matching :)
16:26:07 <AnMaster> ais523, it is so powerful
16:26:34 <ais523> lots of langs have powerful pattern matching, unfortunately most of the really popular ones don't
16:26:38 -!- BMeph has joined.
16:26:54 <AnMaster> I saw some code to detect if it was a MPEG frame. the function prototype was: decode_header(<<2#11111111111:11,B:2,C:2,_D:1,E:4,F:2,G:1,Bits:9>>)
16:27:02 <AnMaster> MPEG frame header*
16:27:45 <AnMaster> ais523, anyway how many got such powerful bit matching syntax?
16:27:56 -!- BMeph has quit (Client Quit).
16:28:09 -!- BMeph has joined.
16:28:23 <AnMaster> it can also be used to construct, not just pattern match
16:28:34 <ais523> AnMaster: Prolog doesn't have bitwise variables but it can match arrays and tuples the same way as that, and likewise can construct the same way
16:28:53 <AnMaster> well erlang can do it for arrays and tuples too
16:29:37 <AnMaster> ais523, http://rafb.net/p/C7qQoh24.html
16:30:10 <ais523> in Prolog the entire lang's pattern matching, pretty much
16:30:13 <ais523> with backtracking
16:30:45 <AnMaster> well erlang doesn't use backtracking, doesn't really make sense for something "soft realtime" (which erlang is, not hard realtime though)
16:30:53 <ais523> I should really write more Prolog, it's a beautiful language but I haven't written more than simple test programs in it
16:31:36 <AnMaster> ais523, back tracking wouldn't be good for something performance critical
16:31:49 <ais523> AnMaster: it depends on how deep it is
16:32:05 <ais523> you can write Prolog so that every predicate is deterministic, then all backtracking collapses into an if
16:32:13 -!- Mony has joined.
16:32:23 <AnMaster> ais523, does prolog have list comprehensions?
16:32:36 <Mony> hi
16:32:43 <AnMaster> hello
16:32:45 <ais523> I'm not entirely sure what a list comprehension is, but I'm pretty sure from memory that it does
16:32:48 <ais523> and hi Mony
16:33:06 <AnMaster> 1> L = [1,2,3,4,5].
16:33:06 <AnMaster> [1,2,3,4,5]
16:33:23 <AnMaster> say you want to multiply each number in the list by 2
16:33:31 <AnMaster> you could use lists:map
16:33:32 <AnMaster> like:
16:33:38 <AnMaster> 2> lists:map(fun(X) -> 2*X end, L).
16:33:38 <AnMaster> [2,4,6,8,10]
16:33:40 <AnMaster> or
16:33:44 -!- BMeph has quit ("http://www.mibbit.com ajax IRC Client").
16:33:48 <ais523> ah, that sort of thing's generally done using setof
16:33:52 <AnMaster> 3> [2*X || X <- L ].
16:33:53 <AnMaster> [2,4,6,8,10]
16:33:56 <AnMaster> like that
16:33:59 <ais523> where the list comprehension is mixed into the syntax of the rest of the language
16:34:01 <AnMaster> that is a list comperhension
16:34:02 <AnMaster> the last one
16:34:05 <AnMaster> map of course isn't
16:34:36 <AnMaster> ais523, eh?
16:34:45 <ais523> doublemember(A,L) :- member(B,L), A is B*2;
16:34:48 <AnMaster> well
16:34:51 <ais523> then you do setof(doublemember(A,L),A)
16:34:52 <AnMaster> [2*X || X <- L ].
16:34:56 <AnMaster> that is a list comprehension
16:34:59 <AnMaster> map() isn't
16:35:03 <ais523> that's almost exactly your list comprehension just with more verbose synta
16:35:05 <ais523> s/$/x/
16:35:10 <AnMaster> ais523, hm yeah
16:35:42 <AnMaster> ais523, you can have several comma separated entries after the || there in erlang
16:35:44 <Deewiant> well, "list comprehension" generally means "that, but with less verbose syntax" :-)
16:36:03 <Deewiant> of course all list comprehensions can be rewritten in terms of combinators like map
16:36:09 <ais523> Deewiant: yes, a quick Wikipedia check shows that someone invented "Visual Prolog" which has a short syntax for a list comprehension
16:36:13 <AnMaster> Deewiant, indeed
16:36:21 <AnMaster> 1> [ X || {a, X} <- [{a,1},{b,2},{c,3},{a,4},hello,"wow"]].
16:36:22 <AnMaster> [1,4]
16:36:24 <ais523> Prolog tends to have consistent syntax rather than short syntax, though
16:36:31 <AnMaster> pattern matching everywhere! :)
16:36:46 <ais523> pretty much syntax can be deduced from the rules of the language
16:37:08 <ais523> ; , ! :- are pretty much the only control flow operators you need
16:37:13 <fizzie> List comprehensions have been all the rage after Python did them; they added those to Javascript, too. (In Mozilla, although it might be in a later ECMAScript version too.)
16:37:17 <ais523> and you don't need to write ; explicitly either
16:37:56 <AnMaster> ais523, um, erlang got if and case, but you can always use pattern matching instead
16:38:11 <AnMaster> however sometimes it is clearer with if and case
16:38:18 <AnMaster> than calling another function for it
16:38:22 <ais523> AnMaster: in Prolog it's always done with pattern matching
16:38:30 <ais523> or with ,
16:38:32 <ais523> for if
16:38:33 <ais523> sometimes
16:38:34 <AnMaster> ais523, sometimes the alternative is more readable
16:38:45 <ais523> it depends on if you're used to reading Prolog, I suppose
16:39:16 <AnMaster> max(X, Y) when X > Y -> X;
16:39:16 <AnMaster> max(X, Y) -> Y.
16:39:17 <AnMaster> nice
16:39:24 <tusho> AnMaster: trivial
16:39:28 <AnMaster> tusho, indeed
16:39:33 <tusho> max x y | x > y = x
16:39:34 <AnMaster> but still a nice syntax
16:39:38 <ais523> AnMaster: that looks like Prolog with a non-standard syntax
16:39:38 <tusho> | otherwise = y
16:39:40 <tusho> max x y | x > y = x
16:39:41 <tusho> | otherwise = y
16:39:46 <tusho> (just getting that in line :P)
16:39:51 <AnMaster> ais523, it is erlang
16:39:59 <ais523> let me translate it into Prolog
16:40:01 <Deewiant> max x y = if x > y then x else y
16:40:10 <Deewiant> don't hate if statements :<
16:40:19 <ais523> max(X,Y,R) :- X > Y, !, X=R
16:40:25 <AnMaster> well the "when" keyword in erlang is a guard
16:40:34 <AnMaster> can be used with pattern matching too
16:40:34 <ais523> max(X,Y,R) :- !, Y=R
16:40:39 <ais523> hmm... that can be shortened
16:40:47 <ais523> max(X,Y,X) :- X > Y, !
16:40:56 <ais523> max(X,Y,Y) :- Y > X
16:40:59 <AnMaster> X,Y,X?
16:41:04 <ais523> AnMaster: pattern matching
16:41:09 <ais523> it matches the argument to the function against the result
16:41:13 <AnMaster> ais523, it takes 3 parameters?
16:41:16 <ais523> there is no distinction in Prolog
16:41:24 <ais523> AnMaster: the return variable is always one of the arguments in Prolog
16:41:29 <AnMaster> ah ok
16:41:33 <ais523> things return values through their arguments
16:41:44 <ais523> apart from pass/fail Booleans
16:41:46 <AnMaster> ais523, so everything doesn't have a value in prolog?
16:41:54 <ais523> AnMaster: functions are only pass/fail
16:41:56 <tusho> AnMaster: prolog doesn't work like that
16:41:57 <AnMaster> ah
16:41:59 <ais523> well, not functions, predicates
16:42:02 <tusho> it's a totally different paradigm
16:42:03 <AnMaster> right
16:42:16 <oklopol> "Most actual digital computers have only a finite store." <<< wonder what turing meant by this exactly
16:42:19 <ais523> they can put extra restrictions on their arguments as a side effect
16:42:21 <AnMaster> tusho, yes though ais523 seem to suggest it is close to erlang
16:42:26 <AnMaster> and erlang is functional
16:42:27 <tusho> AnMaster: it's not
16:42:29 <tusho> other than syntax
16:42:33 <tusho> and functionalism
16:42:34 <ais523> AnMaster: no, I was suggesting it had similar pattern matching facilities
16:42:40 <ais523> Prolog is declarative, not functional
16:43:03 <AnMaster> ais523, well I read that erlang is classed as something in between declarative and functional
16:43:04 <Deewiant> well, functional is declarative to an extent
16:43:39 <ais523> Deewiant: yes, it can be, but it's not really crazy declarative like Prolog
16:43:40 <Deewiant> the difference is that prolog is logic programming
16:43:55 <ais523> Deewiant: apart from !
16:44:02 <ais523> the cut messes things up so beautifully
16:44:07 <ais523> although it's pretty hard to explain
16:44:09 <AnMaster> what does ! do?
16:44:36 <ais523> AnMaster: prevents backtracking backwards past the ! to earlier in the same predicate or an alternative to that predicate, backtracking has to go to a previous predicate instead
16:44:49 <AnMaster> heh ok
16:45:14 <AnMaster> ais523, does Prolog support files? sockets?
16:45:31 <ais523> probably the best way to explain to a C programmer is that the difference between no cut and cut is a bit like the difference between if(a){do_a();} if(b){do_b();} and if(a){do_a();} else if(b){do_b();}
16:45:40 -!- oerjan has joined.
16:45:54 <AnMaster> ais523, well I'm an erlang programmer too :P
16:46:00 <ais523> AnMaster: not sure if that's in the standard library, the original implementation implemented files in a pretty quaint way with routines with silly names that tended not to be copied
16:46:00 <AnMaster> well a bit
16:46:07 <ais523> AnMaster: but I don't know erlang and I do know C
16:46:13 <AnMaster> ah true
16:46:29 <ais523> to get the Prolog equivalence working properly, think of do_a() and do_b() as either doing nothing or not returning depending on whether they can do something
16:46:30 <AnMaster> ais523, concurrency in prolog?
16:46:51 <ais523> AnMaster: they wouldn't mix well, loops in Prolog work differently from in most other languages
16:46:59 <ais523> well, you can loop by recursion, which functional programmers are fine with
16:47:06 <AnMaster> yes erlang does loops that way
16:47:09 <ais523> and you can loop by backtracking which is just weird if you're not used to it
16:47:13 <AnMaster> tail recursion
16:47:31 <AnMaster> ais523, how do you cause a backtrack to happen?
16:47:44 <ais523> AnMaster: any command failing, normally due to a lack of pattern match
16:48:00 <AnMaster> ais523, won't it give up at some point?
16:48:03 <Deewiant> AnMaster: you can look at http://shootout.alioth.debian.org/gp4/prolog.php for instance for prolog programs
16:48:07 <ais523> AnMaster: when it runs out of possibilities
16:48:08 <AnMaster> when it tried all possibilities
16:48:14 <AnMaster> ais523, so how could you loop then?
16:48:22 <ais523> AnMaster: repeat. repeat:-repeat.
16:48:33 <AnMaster> ais523, meaning?
16:48:41 <ais523> that translates roughly as "One way to repeat is to do nothing; another way is to repeat."
16:48:52 <AnMaster> ok....
16:48:53 <ais523> which means that there are an infinite number of different ways to repeat, due to the recursion
16:49:01 <tusho> ais523: you're kind of breaking AnMaster's brain
16:49:13 <AnMaster> ais523, is this like tail recursion? or does it eat up stack space
16:49:23 <tusho> AnMaster: you;re thinking way too low level
16:49:26 <oklopol> STACCKKKKKKKKKKKKKK
16:49:26 <ais523> AnMaster: it doesn't eat up stack space, nor trail space
16:49:32 <AnMaster> ah ok
16:49:43 <ais523> it does have a problem with nowhere to save data though unless you use things like assert
16:49:58 <ais523> so normally you implement your own leaky version of repeat so you can leave the loop at both ends
16:50:09 <oklopol> now is the loopie actually done by writing stuff in the first repeat?
16:50:17 <AnMaster> tusho, a non-tail recursion would eat up call stack space, while a tail recursive one would basically be translated to a goto to the start of the function
16:50:18 <oklopol> so you don't just infloop nop
16:50:28 <tusho> AnMaster: that's low-level thinking
16:50:38 <ais523> oklopol: no, a sample infloop printing hello world would be goal:- repeat, print("Hello, world!"), fail.
16:50:38 <tusho> prolog is a Very High Level language, as they're called
16:50:44 <AnMaster> tusho, "what the implementation is doing" thinking yes
16:50:49 <AnMaster> nothing wrong with that
16:50:55 <tusho> AnMaster: it is when you're thinking about the language
16:51:02 <oklopol> ais523: oh i see
16:51:06 <tusho> it's why a ton of things i try and explain to you go over your head
16:51:07 <ais523> tusho: I know the naive way to implement prolog, so I can think in terms of implementations too
16:51:17 <tusho> ais523: but he's not thinking naively
16:51:20 <ais523> there are less naive ways that run a lot faster though
16:51:23 <tusho> he's thinking about optimizations and stuff
16:51:28 <tusho> it's just not productive in this situation
16:51:42 <AnMaster> no I'm not
16:51:46 <ais523> tusho: you need to read several mathematical papers which I haven't read to understand how Prolog optimisation works, apparently
16:52:00 <AnMaster> if you want to do an infinite loop, for example a thread dispatching messages
16:52:06 <AnMaster> then you want tail recursion
16:52:19 <tusho> god, now I remember why I ignored AnMaster
16:52:22 <AnMaster> as you will run out of memory after some 10000 loops or so
16:52:22 <tusho> that's better.
16:52:32 <AnMaster> now this is very erlang style of thinking actually
16:52:45 <AnMaster> because erlang is kind of a mix between high and low level functional language
16:52:55 <ais523> AnMaster: tail recursion or backtracking in Prolog to prevent running out of stack, a good implementation won't run out of trail in tail-recursion either unless you're doing something silly like building an infinitely-long list
16:52:59 <AnMaster> erlang supports so called "linked in drivers" to interact with native code
16:53:14 <AnMaster> for example someone made a "SDL and OpenGL" linked in driver
16:53:19 <AnMaster> used by wings3d
16:53:29 <AnMaster> a 3D modelling program written in erlang
16:53:58 <AnMaster> ais523, indeed, but *non* tail recursion...
16:54:30 <ais523> AnMaster: well you wouldn't use that if you wanted to write an infinite loop
16:54:42 <ais523> that way you'd run out of both stack and trail, probably irrelevant which one runs out first
16:54:50 <oklopol> i don't believe in stack overflows
16:55:05 <AnMaster> ais523, exactly what I said...
16:55:43 <AnMaster> ais523, I'd say erlang is both high and low level
16:56:05 <AnMaster> high level functional programming is perfectly possible, but interacting with low level stuff is easy too
16:56:37 <AnMaster> not very odd when you think about it
16:56:40 <ais523> well Prolog is definitely high level, it doesn't even have anything very equivalent to what most languages call variables
16:56:46 <AnMaster> it is a general purpose programming language
16:57:04 <AnMaster> ais523, variables are "one time assign" in erlang if that is what you mean
16:57:24 <Deewiant> I heard somewhere that one of Prolog's original creators (or old developers) said that it would have been better off as a library in another language
16:57:32 <Deewiant> can anybody verify that?
16:58:14 <tusho> Deewiant: it's widely agreed on nowadays, I believe
16:58:21 <AnMaster> ais523, there *are* ways to get around that, for example using something called EDS tables, which are mostly used by the transaction database mnesia coded in erlang, it need to be stateful for obvious reasons
16:58:28 <ais523> AnMaster: variables are not exactly one time assign in Prolog, they get narrowed down over time
16:58:31 <tusho> Franz's Allegro Common Lisp has a prolog query language built in
16:58:33 <Deewiant> tusho: is there a semi-credible source for such a statement?
16:58:37 <tusho> Deewiant: my brain
16:58:38 <AnMaster> ais523, oh that is a new one hehe
16:58:42 <Deewiant> tusho: so no :-)
16:58:48 <tusho> Deewiant: cocks
16:58:51 <tusho> wait, no
16:58:55 <tusho> they dont' generally remember things
16:59:00 <tusho> sheesh, thought i was on to something then
16:59:01 <tusho> sorry
16:59:02 <Deewiant> nor are they credible
16:59:03 <tusho> no semi-credible sources
16:59:11 <tusho> Deewiant: oh I know some VERY credible cocks
16:59:13 <tusho> IF YOU KNOW WHAT I MEAN
16:59:16 <tusho> ... I don't know what I mean.
16:59:45 <Deewiant> tusho: where do you get "it's widely agreed on", then :-)
16:59:48 <Deewiant> said cocks?
16:59:54 <tusho> my brain
17:01:03 <ais523> AnMaster: basically in SSA a variable gets a value once and never changes, in Prolog once it gets an actual value it never changes (although the assignment can be backtracked past), but variables can be unified with other variables causing the variables to have to have the same value once a value does appear
17:01:19 <Deewiant> tusho: your brain is that wide?
17:01:31 <tusho> Deewiant: my brain is a cock, i think
17:02:48 <oerjan> tusho: i was going to avoid saying that
17:02:59 <tusho> oerjan: it's ok, i can take the immaturity of this channel to new levels
17:02:59 <AnMaster> ais523, heh
17:03:02 -!- Tritonio_ has quit (Remote closed the connection).
17:03:04 <tusho> it's just hard finding a good time to do so
17:03:17 <AnMaster> ais523, this sounds more like an automated logic proof checker or so
17:03:21 <tusho> hmm it's also possible that my cock is a brain
17:03:24 <tusho> but that'd be weird.
17:03:35 <tusho> (I mean, weirder than this hypothetical "braincock")
17:03:49 <AnMaster> ais523, no, more like: you give it some rules, and it works out a result that fits with all the rules
17:03:49 <Deewiant> AnMaster: doesn't sound far off the mark, actually
17:04:00 <Deewiant> AnMaster: that's pretty much exactly it
17:04:29 <AnMaster> question: will it do "any ok match" or "best match""
17:04:30 <AnMaster> say
17:04:34 <ais523> AnMaster: yes, were it not for the existence of ! that would be Prolog in a nutshell, ! throws the whole system quite out of kilter, which is why I like it
17:04:36 <Deewiant> "any ok"
17:04:50 <AnMaster> you have the coast line of africa and south america, and want to find the best possible fit
17:04:55 <ais523> AnMaster: "first match", and you can get subsequent matches using something like setof or failing when you get a match you don't like the look of
17:04:59 <AnMaster> within a given error range
17:05:20 <ais523> or in your case you could mess about with assert, which is another way to go insane in Prolog
17:05:31 <AnMaster> ais523, so prolog isn't suited for problems where there are "good" and "better" matches
17:05:38 <AnMaster> like best possible fit
17:05:43 <AnMaster> while no fit would be perfect
17:05:53 <ais523> AnMaster: it's not really good for anything but headlong depth-first search which is bad for that sort of problem
17:06:07 <ais523> that sort of problem is trivial to specify in Prolog but very difficult to specify efficiently
17:06:10 <AnMaster> ais523, so what language would you recommend for the problem I suggested?
17:06:26 <oklopol> i'd recommend muture, if it existed yet
17:06:27 <oklopol> :P
17:06:30 <tusho> how many albums have I downloaded today, 4 or 5?
17:06:33 <tusho> i think 5...
17:06:46 <tusho> and one arrived that i'd bought
17:06:47 <ais523> AnMaster: not really sure, I can't think of one that fits offhand
17:06:56 <oerjan> tusho: sqrt(20)
17:07:00 <tusho> well, I like all of them so far, so that's good
17:07:02 <tusho> oerjan: wowzers
17:07:03 -!- bsmntbombdood has quit (Connection reset by peer).
17:07:12 <oklopol> made muture exactly for that, running it as a human computer can already accomplish fun stuff
17:07:28 <AnMaster> ais523, actually I would use the "coast line" at say 1000 meters below the sea, I read somewhere that is a much closer fit than the "real" cost line
17:07:36 -!- bsmntbombdood has joined.
17:07:49 -!- bsmntbombdood has quit (Connection reset by peer).
17:08:23 -!- bsmntbombdood has joined.
17:08:28 <oerjan> the tectonic plates don't stop exactly at the seaside...
17:08:34 <tusho> oerjan: lies
17:08:40 <AnMaster> oerjan, true
17:09:07 <AnMaster> oerjan, I'd blame erosion I guess
17:09:08 <oerjan> for example, i think britain is on the same plate as the rest of europe, and the north sea
17:09:16 <oerjan> + ireland
17:09:47 <AnMaster> yes I know
17:09:54 <oerjan> also, sea level change
17:10:11 <oerjan> there was a relevant WP article...
17:15:15 <oerjan> http://en.wikipedia.org/wiki/Epeiric_sea i think it was
17:16:36 <oklopol> what *don't* you have vague knowledge about!
17:17:28 <oerjan> it's just a month or so since i discovered that article, and i had a hard time finding it again
17:18:32 <oerjan> (turned out North Sea had a link to it)
17:19:35 <oerjan> http://en.wikipedia.org/wiki/Transgression_(geology) is also relevant
17:19:53 <tusho> bam.
17:22:04 <tusho> Lost the game/
17:25:42 <tusho> omg
17:25:43 <tusho> i have an idea
17:25:50 <ais523> oh dear, tell me anyway
17:26:04 <tusho> a client filter that filters out messages like 'the game', 'i lost the game', 'the game: you all just lost it', etc
17:26:04 <ais523> (n.b. this tends to be my typical reaction to anyone who claims to have a new idea, not just you)
17:27:09 <oerjan> he never claimed it was new
17:27:21 <oerjan> a wise move, probably
17:30:36 <tusho> well, that was another good album
17:32:22 <oklopol> what you lisnin
17:32:29 <oklopol> izzi good
17:32:42 <tusho> oklopol: no, i said it was good but i was lying
17:32:43 <tusho> duh
17:32:47 <tusho> why would i tell the truth?
17:33:00 <oklopol> i have no idea how good was it?
17:33:31 <oerjan> tusho: because it's shiny!
17:33:35 <tusho> -4% in base -9i2
17:33:47 <oerjan> eek
17:34:04 <oerjan> er, what is that % doing there
17:34:52 <Deewiant> tusho: I had that thought approximately immediately when you said "Lost the game/"
17:35:01 <tusho> Deewiant: haha, awesome
17:35:02 <tusho> oerjan: because
17:35:34 <Deewiant> tusho: I was interested enough to look at /help ignore but too lazy to write the regex
17:36:25 <ais523> Deewiant: .*[Gg]ame.* should work for most cases
17:36:37 <Deewiant> ais523: a bit too inclusive :-)
17:36:58 <oerjan> TH/\T'5 WH/\T Y0U TH1NK
17:37:14 <oklopol> false positives are okay for that important a filtering
17:37:17 <fizzie> Also the ".*"s surrounding it are spurious, as it will accept a regex match anywhere in the string if you don't anchor it with ^/$.
17:37:32 <ais523> fizzie: ah, I didn't know whether it was anchored or not
17:37:37 <ais523> assuming anchored is more orthogonal
17:38:06 <oerjan> U \/\/ILL L0S3 TH3 G/\M3 /\NYH0\/\/
17:38:47 <ais523> oerjan: I have a Firefox extension to generate leet-speak, I only installed it for rot13 though and the leet came free with it
17:39:05 <Deewiant> I used to have that one too
17:39:11 <ais523> Y()|_| J|_|57 L()57 7|-|3 64|\/|3
17:39:19 <tusho> ais523: GAME woul dwork with that, to
17:39:20 <tusho> o
17:39:22 <oerjan> the question here is whether you have an extension to filter it, me thinks
17:39:25 <tusho> YOU JUST LOST THE GAME
17:39:35 <ais523> come to think of it that's sufficiently leet that I can't decipher it myself
17:39:38 <ais523> oko
17:39:42 <tusho> okoko
17:39:47 <fizzie> I had an ircII script installed which did leet among other ugly formats, once.
17:40:11 <fizzie> It did not convert from leet back to plain text, though.
17:40:20 <oerjan> okokoko
17:40:33 <ais523> fizzie: the leet back to plain text converter worked fine on that string I pasted
17:40:40 <ais523> oh, and okokokoko
17:40:41 <Deewiant> a GAME fingerprint that maps A-Z to q?
17:40:58 <ais523> Deewiant: wouldn't that be kind of pointless?
17:41:06 <Deewiant> kind of?
17:41:25 <fizzie> Not just a "kind of", many kinds of.
17:41:25 <ais523> besides, it should probably make all of A-Z print out the source code to the GAME fingerprint
17:41:30 <ais523> in different programming languages
17:41:38 <oerjan> *, * -> *, * -> * -> *, etc.
17:42:02 <ais523> oerjan: is that a Haskell kind signature?
17:42:03 <oklopol> okokokokokokoko
17:42:04 <ais523> if so, what for?
17:42:04 <oklopol> okokokokokokoko
17:42:06 <oklopol> okokokokokokoko
17:42:10 <oerjan> a list of them
17:42:12 <ais523> kokokokokokok
17:42:22 <ais523> oerjan: ah
17:43:52 <fizzie> ^bf ++++++++++[>+++++++++++<-]>+[.----.++++]
17:43:53 <fungot> okokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokoko ...
17:44:03 <tusho> fizzie: a work of art
17:44:08 <tusho> oklopol: oko-approved?
17:44:25 <oklopol> is what oko approved?
17:44:30 <tusho> that program
17:44:33 <tusho> ^bf ++++++++++[>+++++++++++<-]>+[.----.++++]
17:44:33 <fungot> okokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokokoko ...
17:44:44 <oklopol> i like it
17:44:53 <oklopol> especially [.----.++++]
17:45:12 <tusho> oklopol: hmm
17:45:17 * tusho considers setting up ESO's Shrine to Oko
17:45:22 <tusho> wait, no
17:45:22 <tusho> it's oko
17:45:28 * tusho slaps himself
17:45:37 <ais523> tusho: it's actually plp, there was an off-by-one error
17:45:44 <tusho> ais523: like HAL?
17:47:03 <tusho> oklopol: the oko shrine will have everything getting bigger and smalling and flickering and will be impossible to navigate
17:47:06 <tusho> unless you are amazing.
17:47:23 <tusho> aww, oko.org is squatted :P
17:47:38 <oerjan> apparently okoko is a surname
17:47:50 <ais523> tusho: I once saw a website about how not to design websites
17:48:03 <ais523> and they'd invented a navigation system which was even worse than the one they liked least
17:48:06 <tusho> ais523: heh
17:48:11 <tusho> what was it called?
17:48:16 <fizzie> Osuuspankki (a Finnish bank) has taken oko.fi; that's not surprising. (Although they're not using that domain any more.)
17:48:35 <ais523> they were annoyed at navigation systems which just showed abstract shapes until rolled over
17:48:43 <ais523> so you had to roll over each image to tell where you could go
17:48:51 <tusho> oklopol: how many 'ko's does an oko site need?
17:48:55 <ais523> so they invented one where the targets of the link were randomised on each rollover
17:48:55 <tusho> okoko, okokokokokoko, etc?
17:48:57 <tusho> (for the domain)
17:49:05 <tusho> ais523: brilliant
17:49:29 <tusho> ais523: http://www.webpagesthatsuck.com/mysterymeatnavigation.html?
17:49:32 <ais523> that's it
17:50:40 <tusho> oklopol: well?
17:50:55 <tusho> okoko, okokoko, okokokokokokokokokoko, ...
17:50:55 <tusho> :P
17:53:21 <tusho> And the Wikipedia Terrible Main Page Suggestion Combined With Bad Sig award goes to...
17:53:23 <tusho> http://en.wikipedia.org/wiki/Talk:Main_Page#Icon
17:54:23 <ais523> tusho: there's a Main Page redesign competition-like object going on at the moment, there are therefore many candidates for the Wikipedia Terrible Main Page Suggestion award
17:54:29 <ais523> not sure about the Combined With Bad Sig part
17:54:40 <tusho> ais523: but that one is truly terrible, click the guys name and see it in action
17:54:56 <ais523> tusho: I've seen the barnstar in question befor
17:54:58 <ais523> s/$/e/
17:55:04 <tusho> ais523: but behind the logo?
17:55:06 <tusho> spinning?
17:55:07 <ais523> why do I keep leaving off the last character of sentences today?
17:55:25 <oerjan> ais523: becaus
17:56:03 <ais523> anyway, I tend to look suspectly at anyone with 4 collapsible boxes of userboxes on their userpage, at least as far as main page design is concerned
17:56:46 <Deewiant> oh wow, a wikipedia page that needs javascript
17:57:05 <ais523> Deewiant: needs it?
17:57:13 <ais523> most of the collapse stuff is designed to work without JS
17:57:14 <Deewiant> contains stuff that needs it
17:57:24 <ais523> although the way it's abused for userpages probably it does need the JS installed
17:57:28 <Deewiant> I can't uncollapse anything with JS disabled
17:57:37 <Deewiant> and I do have JS disabled for wikipedia
17:57:49 <ais523> ugh, it should autoexpand without JS, someone's been messing up the autocollapse code for userpage use
17:57:56 <ais523> a whole lot of dubious coding practices happen on userpages
17:58:25 <tusho> hmm... if you can position:absolute things on wikipedia
17:58:33 <tusho> then you could do a MySpace(TM) and make your completely own page
17:58:36 <tusho> with just the basic chrome at the top
17:58:46 <tusho> it'd probably be removed, but damn, gotta try that
17:58:58 <tusho> oklopol: an oko shrine would have to run really fast, wouldn't it?
17:59:04 <tusho> because while oko code is not fast
17:59:07 <tusho> it EMBODIES fast
17:59:15 <ais523> tusho: you can, but they started messing around with blacklisting various z-index messabouts because people were using them for trolling
17:59:29 <tusho> ais523: ah yes, that one
17:59:33 <tusho> GAWKY or something
17:59:36 <tusho> with ascii goatse
17:59:40 <ais523> all the ones that spambots have used automatically will be blocked, so you'll have to write the code an entirely different way
18:00:00 <ais523> and no, the ascii goatse was something else but they blocked that too
18:00:24 <tusho> hmm
18:00:30 <tusho> i need to incorporate oko javascript into this shrine
18:00:36 <tusho> perhaps news reports will be delivered by twitter
18:00:44 <tusho> and got by making an ajax request to the archives
18:00:51 <tusho> applying a formatting language for multi lines, etc
18:00:56 <tusho> and accounting for split over multiple messages
18:00:58 <tusho> then rendering it in the page
18:02:17 <tusho> ais523: http://www.toad.com/gnu/sysadmin/index.html#firefox-eula-sux
18:02:20 <tusho> Hear her.
18:02:21 <tusho> *hear
18:02:32 <ais523> tusho: Firefox has an EULA?
18:02:37 <tusho> ais523: apparently
18:02:42 <tusho> http://blogs.gnome.org/hughsie/2008/05/23/firefox-eula/
18:03:36 <ais523> well I never agreed to one on Ubuntu
18:03:45 <tusho> ais523: presumably ubuntu remove it
18:03:52 <ais523> yes, that's what I assumed
18:04:01 <ais523> it's not like an EULA does anything in open source software anyway
18:04:08 <tusho> ais523: speaking of browsers, seen google chrome?
18:04:10 <ais523> besides, sed on a binary is pretty weird...
18:04:15 <ais523> tusho: I've heard of it, but not seen it
18:04:18 <tusho> the process seperation is badly needed, and IE8 actually excels in this area
18:04:29 <tusho> and a new javascript VM is a plus too, js kind of sucks these days + a sandbox = yay
18:04:36 <tusho> also a lot of the UI ideas look quite nice
18:04:46 <Deewiant> just about every browser is getting a new JS engine anyway :-P
18:04:52 <tusho> Deewiant: yes :)
18:04:58 <tusho> should be coming out today for windows, apparently an os x version is following
18:05:01 <ais523> tusho: apparently Slashdot has just decided that IEb2 uses more memory than Windows XP
18:05:01 <tusho> and then linux
18:05:13 <tusho> ais523: no wifi, less space than a nomad, lame.
18:05:31 <ais523> s/nomad/monad/, or am I missing something here?
18:05:50 <tusho> ais523: http://apple.slashdot.org/article.pl?sid=01/10/23/1816257&tid=107
18:06:28 <ais523> tusho: ah, Slashdot editor deciding they didn't like the iPod
18:06:36 <tusho> ais523: cmdrtaco, even
18:06:40 <ais523> admittedly there are still people who don't like iPods, quite a few
18:06:41 <tusho> it's a rather famous post
18:06:48 <ais523> but they are popular amongst the people who do
18:06:58 <tusho> i use an iphone
18:07:02 <tusho> though mostly as a portable web browser.
18:07:07 <ais523> I don't use a mobile at all
18:07:11 <tusho> (and ipod, though less often)
18:07:17 <tusho> i never call anyone, pretty much
18:07:18 <ais523> arguably my laptop's a portable web browser, though
18:07:19 <tusho> except once recently
18:07:21 <tusho> and texts are rare.
18:07:26 <ais523> if a little bulky
18:07:36 <ais523> and it needs to be in range of a wifi connection I can access
18:08:01 <tusho> admittedly I generally use it to feed my web addiction before I go to sleep :\
18:12:42 <Mony> bye
18:12:45 -!- Mony has quit ("ร€ vaincre sans pรฉril on triomphe sans gloire...").
18:15:20 -!- kar8nga has left (?).
18:21:56 <tusho> g
18:25:35 <tusho> http://www.kavoir.com/ <- crAAAAAAAAAAAAAAAAAAAAzy
18:31:59 -!- KingOfKarlsruhe has joined.
18:38:08 <tusho> ais523: oh no.
18:38:14 <tusho> oh no, oh no, NO!
18:38:15 <tusho> http://news.cnet.com/8301-17939_109-10026577-2.html?part=rss&tag=feed&subj=Webware
18:38:27 <tusho> ugh.
18:38:30 <tusho> what a fuckup.
18:38:32 <tusho> where do i opt-out?
18:38:42 <tusho> come to think of it, isn't this shit illegal?
18:39:03 <ais523> tusho: what are you referring to, the fact that the page you linked had no text put a headline?
18:39:08 <ais523> s/put/but/
18:39:14 <tusho> ais523: um, no.
18:39:15 <ais523> ah, it was just slow loading
18:39:31 <tusho> more to the new advance in the war against privacy.
18:40:18 <ais523> I normally don't worry about such software because it's too incompetent to do its job properly
18:40:32 <tusho> let's just hope it doesn't become competent
18:47:07 <fizzie> What is it exactly that you would want to be illegal?
18:47:33 <tusho> fizzie: I couldn't specify it exactly, but stuff like that. Anyone can just identify me in a photo like that.
18:47:39 <tusho> (Obviously, it won't be that good, but that's the IDEA)
18:48:02 <tusho> That's a violation of privacy.
18:49:33 <ais523> tusho: where exactly is the violation? People teaching Google what you look at? Google using that information to find other pictures of you? Somewhere else/
18:49:38 <ais523> s/at/like/
18:49:55 <tusho> ais523: the violation is in the use of the feature to identify me & others
18:50:08 <tusho> although since the feature has absolutely no other use, the feature itself is at fault
18:50:30 <ais523> tusho: presumably it's for people tagging their own images Facebook-style
18:50:34 <ais523> to help them tag more quickly
18:50:40 <tusho> ais523: yeah, and I think that's bad too
18:51:03 <tusho> i don't care if a photo you took has me in it. without my explicit consent you have no right to identify the figure as me
18:59:50 <tusho> ZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOM
19:00:10 <ais523> on the subject of Web Pages That Suck, they found this: <http://www.webpagesthatsuck.com/worst-web-sites-of-2007-number10-moire.html> <-- warning don't visit if you suffer from epilepsy or similar problems
19:00:32 <ais523> sorry, <http://web.archive.org/web/20060613061524/http://moire.ch/>, I copied the wrong link
19:00:42 <ais523> make sure you have JS on or you won't be able to see what's wrong
19:01:06 <tusho> my god.
19:01:13 <tusho> ais523: isn't that, like, an art site thing
19:01:16 <tusho> if so it kind of makes sense
19:01:18 <ais523> well, probably
19:01:20 <Deewiant> without JS it's not that bad
19:01:20 <ais523> but still...
19:01:29 <ais523> Deewiant: have you tried with?
19:01:40 <ais523> hmm... I wonder if that could be done with CSS nowadays, probably it could be
19:01:41 <tusho> ais523: i think it's not a bad design for an arty kind of site
19:01:47 <tusho> and no, it couldn't
19:01:48 <Deewiant> ais523: I don't dare :-)
19:01:50 <tusho> there's no < operator in css
19:01:53 <ais523> tusho: except for knocking you out when you move the mouse?
19:01:54 <tusho> you can't say "the parent of X"
19:01:58 <tusho> ais523: that's art ;
19:02:00 <tusho> *;)
19:02:03 <tusho> the rule would be:
19:02:09 <tusho> a:hover < body { background: ...; }
19:02:11 <tusho> e.g.:
19:02:21 <tusho> #link-about-trees:hover < body { background: green }
19:03:27 <ais523> still, I reckon that design's inexcusable on any website, no websites should require the user to navigate with the keyboard because using the mouse drives them insane
19:03:44 <ais523> also there's the apparent harmlessness of it before you hover the links
19:04:02 <tusho> i think it fits for a graphic design site, personally
19:04:44 <tusho> aww, they've changed it - http://moire.ch/
19:04:45 <ais523> tusho: you're insane
19:04:50 <ais523> and yes, no wonder they changed it
19:04:53 <tusho> ais523: yes, and?
19:05:19 <ais523> tusho: most websites don't kill their users when they move the mouse from one end of the screen to the other
19:05:28 <tusho> that would be an awesome site
19:05:34 <tusho> ekillyourselfonline.com
19:05:38 <ais523> tusho: I wouldn't want to visit it, though
19:05:43 <ais523> I like the e in your name for it
19:05:52 <tusho> ais523: They could travel back in time and put commercials on superbowl
19:06:03 <tusho> they'd only cost $100million to make.
19:06:07 -!- Corun has joined.
19:06:15 <tusho> and think of the benefit: people could eKill themselves! online!
19:06:20 <ais523> tusho: there are standards for that sort of thing, the London 2012 Olympic adverts had to slow down because they flashed too quickly
19:06:55 <tusho> ais523: the seizures were because it sucked so much
19:06:58 <tusho> not because of the flashes
19:07:25 <oerjan> seizure the moment
19:07:27 <ais523> tusho: they were, they have an automatic seizurometer
19:07:38 <ais523> they had to slow it down to 1/4 of the speed to explain what they were talking about on the news
19:07:39 <tusho> man I want one of them
19:07:46 <tusho> oh
19:07:47 <tusho> I thought you said
19:07:50 <tusho> seizuromater
19:08:01 <ais523> umm... that doesn't even make sense
19:08:02 <tusho> egiveyourselfaseizureonline.com
19:08:05 <oerjan> seizuron
19:08:40 <oerjan> and it's lightweight cousin, the seizurino
19:08:44 <oerjan> *its
19:10:43 <fizzie> tusho: Okay, I was just checking that you don't advocate illegalizing facial recognition algorithms or something insane like that. (And sure the feature has other uses: you could use it to tag pictures from your collection containing the face of someone who consents, like yourself. In any case, it would probably be pretty hard to make it illegal to offer that sort of feature.)
19:11:25 <tusho> fizzie: well, you can easily identify yourself without automatic recognition...
19:11:32 <tusho> it's...not hard...
19:12:26 <fizzie> A friend with permission, then. And even tagging pictures containing yourself is hard if there are gazillions of them. Although I fail to see why anyone would want to add a "hey_look_its_me_hey_look_hey_look" tag.
19:12:38 <fizzie> eDeath sounds like something far less serious than death.
19:13:16 <AnMaster> <oerjan> seizure the moment <-- heh
19:13:17 <ais523> well lots of people tag photos on places like Facebook, I don't really understand it myself but apparently Facebook's quite popular
19:13:26 <oerjan> there is also the fancy design iDeath, which works straight out of the box
19:13:46 <fizzie> oerjan: You mean with plain old death you need to install all kinds of patches to make it work right?
19:14:09 <oerjan> yeah
19:14:24 <tusho> no, plain old death is ok but kind of buggy
19:14:35 <tusho> dthxi is the patch one
19:14:48 <fizzie> Death bugs might explain all the zombies that seem to be around.
19:14:51 <tusho> iDeath is fashionable. Hipsters use it. Slogan: Die Different.
19:14:56 <AnMaster> hahah
19:15:03 -!- ais523 has left (?).
19:15:12 <AnMaster> tusho, :D
19:15:17 <oerjan> dthxbye _thinks_ it is fashionable
19:15:44 <AnMaster> oerjan, what about plain old Death?
19:16:03 <oerjan> it hasn't been fashionable for eons
19:16:07 <AnMaster> true
19:16:10 <AnMaster> OpenDeath
19:16:13 <AnMaster> there is always that :D
19:16:18 <tusho> uh
19:16:19 <tusho> death = windows
19:16:19 <tusho> :P
19:16:25 <AnMaster> tusho, good point
19:16:25 <oerjan> it _does_ have a large installed base, though
19:16:33 <tusho> dthxi = linux
19:16:33 <tusho> iDeath = os x
19:16:33 <tusho> those were my analogies
19:17:01 <AnMaster> hah
19:17:43 <AnMaster> tusho, But some use the much more secure OpenDeath ;P
19:18:04 <AnMaster> at least they think so
19:18:14 <oerjan> there was the Death Machine with its AI technology, but it was not commercially viable
19:18:20 <tusho> AnMaster: well, I parodied apple with iDeath and am arguably an Apple fanboy but apparently openbsd fanboys can't bring themselves to do that
19:18:35 <AnMaster> tusho, hah you are right
19:18:47 <AnMaster> well I both like and dislike openbsd
19:19:07 <AnMaster> on one hand, they made some pretty good stuff: OpenSSH, the pf firewall...
19:19:26 <AnMaster> on the other: social skills = *even* less than tusho ;)
19:19:58 -!- ais523 has joined.
19:20:17 <tusho> wb ais
19:20:19 <tusho> aos
19:20:20 <tusho> ais523:
19:20:55 <ais523> tusho:
19:20:59 <tusho> ais523:
19:21:49 <fizzie> Your :'s line up! Awesome.
19:21:55 <tusho> fizzie:
19:22:10 <ais523> fizzie: not really, given that the lines contain the same characters in a different order
19:22:38 <oerjan> ooh commutativity
19:25:23 <tusho> 45
19:25:37 <ais523> 656566969667596767665654657767444454646364454423435534432323321
19:25:45 <oerjan> 61
19:26:06 <ais523> (unsigned bignum)-1
19:26:11 <tusho> 0
19:26:25 <tusho> (+ 1 MOST-POSITIVE-BIGNUM)
19:26:32 <oerjan> beth-aleph-aleph-3
19:26:44 <tusho> (http://jwz.livejournal.com/854482.html)
19:26:58 <oerjan> s/-/_/g
19:27:17 <ais523> s/[a-zA-Z]/A/g
19:27:32 <tusho> AAAA_AAAAA_AAAAA_3
19:27:50 <ais523> AAA AAAAA AA AAAAA!
19:28:07 <tusho> oh ha ha, a joke from uncyclopedia
19:28:10 <tusho> those are always funny
19:28:25 <ais523> tusho: someone even based an esolang on it
19:28:31 <tusho> ais523: unfortunately.
19:28:36 <ais523> the strange thing about that joke is it has no obvious reason for existing
19:28:46 <ais523> or even an obvious reason why it's funny
19:28:50 <tusho> ais523: most uncyclopedia jokes are like that.
19:28:52 <Deewiant> http://uncyclopedia.org/wiki/AAAAAAAAA!
19:28:55 <tusho> they don't really have a justification.
19:28:59 <tusho> Deewiant: thank you, captain obvious!
19:29:03 <ais523> hmm... can a joke be funny if it has no punchline, and no setup?
19:29:08 <tusho> ais523: yes
19:29:11 <ais523> like the null string, for instance?
19:29:16 <oerjan> "Very few things are truly justified" -- Oscar Wilde
19:29:25 <Deewiant> tusho: more like, preventing others from having to search for it
19:29:33 <tusho> ais523: here's a funny joke:
19:29:36 <tusho> BUNNIES!
19:29:42 <ais523> oerjan: nowadays, you can justify anything if you have a decent word processor
19:29:44 <tusho> ("BUNNIES!" is not a punchline.)
19:29:56 <tusho> ais523: ragged text is a lot nicer to read, though.
19:30:13 <ais523> I didn't say it was a good idea, and not everyone agrees with you
19:30:19 <tusho> :)
19:30:25 <Deewiant> I think AnMaster would disagree very much
19:30:27 <oerjan> LEMURS!
19:30:30 <tusho> Deewiant: probably.
19:30:36 <tusho> though, uncontroversial is for screen use
19:30:41 <ais523> This sentence is not a punchline.
19:30:44 <AnMaster> <ais523> oerjan: nowadays, you can justify anything if you have a decent word processor << :D
19:30:47 <tusho> it has been studied a lot and proven that for screen use at least, ragged text is a LOT nicer
19:31:00 <ais523> AnMaster: it's not an original joke, I misquoted it from somewhere
19:31:05 <tusho> i prefer it overall, but for screen use there's really no controversy
19:31:08 <oerjan> AnMaster: Oscar Wilde did surprisingly well without one
19:31:16 <AnMaster> well I always use justified text
19:31:19 <AnMaster> much easier to read
19:31:20 <ais523> tusho: on Wikipedia enough people wanted justified that they made it a preference option, and the devs hate adding preferences
19:31:21 <AnMaster> even on screen
19:31:29 <tusho> ais523: ew
19:31:33 <AnMaster> unless I use monospace of course
19:31:37 <ais523> although ragged is the default
19:31:38 <AnMaster> like when programming
19:31:40 <AnMaster> ais523, ^
19:31:59 <ais523> AnMaster: well, justifying program code is the sign either of an insane mind or an IOCCC entry
19:32:10 <AnMaster> ais523, haha :D
19:32:17 <tusho> AnMaster:
19:32:21 <tusho> AnMaster: you do not have to highlight everyone
19:32:22 <tusho> AnMaster: all the time
19:32:26 <oerjan> ais523: um i think one of those is contained in the other
19:32:27 <tusho> AnMaster: because if they've just talked
19:32:31 <tusho> AnMaster: then they're paying attention
19:32:33 <tusho> AnMaster: to the channel.
19:32:34 <AnMaster> ais523, I do tend to justify block comments however
19:32:35 <tusho> AnMaster: thank you.
19:32:46 <AnMaster> tusho, ah thanks for that :D
19:32:52 <AnMaster> much easier to read
19:32:58 * AnMaster ducks
19:33:01 <ais523> I tend to nick-prefix when there's more than one conversation going on at once
19:33:10 <AnMaster> yes and there was there for a bit
19:33:18 * oerjan gooses
19:33:19 <ais523> if I have two conversations at once with the same person in the same channel I normally nick-prefix one and not the opther
19:33:32 <AnMaster> huh
19:33:34 <tusho> AnMaster: ais523: oerjan: In future I'm going to nickping everyone active when I want to address everyone
19:33:35 <AnMaster> ok that is strange
19:33:39 <tusho> AnMaster: ais523: oerjan: so i'm sure they can see it
19:33:51 <AnMaster> I agree with ais523 however there
19:34:04 <AnMaster> and I'm going to do something else: tusho
19:34:04 <ais523> tusho: optbot: fungot: that can get annoying when some of the addressees are irrelevant
19:34:05 <fungot> ais523: gambit's compiler is somewhat better than realtime, meaning joe and jane average don't use linux
19:34:05 <optbot> ais523: No. Everyone would have to leave here to keep the secret.
19:34:11 <AnMaster> I'm going to nick suffix: tusho
19:34:21 <tusho> i'm going to do something different too
19:34:24 <ais523> classic: AnMaster
19:34:31 <tusho> i just did it! ais523: i bet you can guess what it is
19:34:35 <AnMaster> is it classic? didn't know that, ais523
19:35:14 <ais523> anyway, I think I'll have a go at compiling newlib into brainfuck:AnMaster
19:35:19 <AnMaster> middle-fix it, tusho? I guess so
19:35:21 <tusho> ais523: don't wanna guess?
19:35:29 <ais523> that way I don't have to implement more than about 8 or so functions
19:35:38 <ais523> and a couple of them are trivial
19:35:40 <AnMaster> ais523, still don't have internet at home btw?
19:35:49 <ais523> no: AnMaster
19:35:52 <AnMaster> :/
19:35:54 <oerjan> An: i like circumfix :Master
19:36:21 <AnMaster> that doesn't highlight (oerjan) highlight me
19:36:36 <ais523> oTeHrAjTa nC:O U L D M A K E I T H A R D T O H I G H L I G H T
19:36:37 <AnMaster> ooh
19:36:59 <ais523> now please nobody tell me off for shouting
19:36:59 <tusho> ais523: hmm?
19:37:18 <AnMaster> otehrajta, atjarheto?
19:37:22 <AnMaster> huh?
19:37:37 <AnMaster> highlight(ais523).
19:37:43 <ais523> wow, I'm surprised neither of you figured out what I just did
19:37:54 <tusho> i'm waiting ais523
19:37:55 <AnMaster> ais523, rot13?
19:38:03 <ais523> railfence can be hard to read but I put one set of characters in uppercase and the other in lowercase to make it easier
19:38:10 <ais523> read the uppercase and lowercase separately
19:38:25 <oerjan> ais523: what do you mean didn't figure out
19:38:25 <tusho> OMG
19:38:27 <AnMaster> oerja that?
19:38:28 <tusho> all 2003 logs are gone from http://tunes.org/~nef/logs/esoteric/
19:38:35 <AnMaster> tusho, huh?
19:38:37 <AnMaster> that's strange
19:38:50 <ais523> tusho: do you still have them saved for optbot?
19:38:51 <optbot> ais523: nothing really
19:38:54 <oerjan> i don't have to comment on every obvious thing
19:38:58 <tusho> ais523: yep
19:39:24 <AnMaster> tusho, so upload them somewhere
19:39:35 <fizzie> Uh? There's still old/esoteric-03.zip there.
19:39:41 <AnMaster> ah!
19:40:50 <tusho> oh
19:40:55 <tusho> right :P
19:41:23 <tusho> is this nef guy dead?
19:41:34 <tusho> he does't seem to have updated thinsg since like 2006
19:49:52 -!- oerjan has quit ("ZZZZZZZZZZ").
19:55:02 -!- kar8nga has joined.
19:55:30 <fizzie> Oh, right; happened across that old old Penny Arcade comic the earlier webdesign conversation immediately reminded me of: http://www.penny-arcade.com/comic/1999/3/3
19:56:03 <ais523> fizzie: did you visit the website in question with JS on?
19:56:13 <ais523> tusho: is tunes dead?
19:56:17 <tusho> ais523: yep
19:56:20 <tusho> completely
19:56:25 <fizzie> The one discussed here? Nope.
19:56:27 <tusho> for some years now
19:56:30 <tusho> fizzie: tunes.org
19:56:52 <tusho> it was kind of wheezing out the last breaths it could manage in 2003, 2004
19:56:58 <tusho> but had been inactive a little before that
19:57:05 <tusho> since then it's just a ghost town
19:57:23 <tusho> there are still people in #tunes but they never speak until you comment on how dead the place is and they joke that it'll be active again one day.
20:02:48 <tusho> ais523: well, that's the first time I've seen someone claim that the IE team has "imperial contempt for the world and all its people" seriously
20:03:00 <ais523> where?
20:03:09 <tusho> http://www.reddit.com/r/programming/comments/6z460/official_google_blog_a_fresh_take_on_the_browser/c059gba, third child now
20:03:10 <tusho> *down
20:05:24 <tusho> God damn. hoodwink.d (http://hoodwink.d/) is still down.
20:05:28 -!- olsner has joined.
20:05:38 <ais523> .d?
20:05:41 <ais523> is that a real TLD?
20:05:50 <tusho> ais523: no, you have to add hoodwink.d to your hosts file to go to it
20:06:04 <ais523> so does it actually have a domain name then?
20:06:14 <tusho> nope, but the ip doesn't work directly as it hosts multiple sites
20:06:17 <tusho> so you have to add it to your hosts
20:06:18 <ais523> after all you could aim, say, example.com there if you really wanted to
20:06:25 <tusho> no
20:06:27 <tusho> the Host header would be wrong
20:06:37 <tusho> anyway, it's a site+greasemonkey script by why the lucky stiff that lets you comment on any site at all
20:06:43 <tusho> it uses xpath expressions to find out where to put the comment box
20:06:49 <tusho> it's a little underground toy thing and it was a lot of fun
20:06:56 <tusho> but sometime in 2007 it just stopped working. :(
20:07:13 <ais523> that actually sounds like an interesting idea
20:07:30 <tusho> it is
20:07:31 -!- LinuS has joined.
20:07:49 <tusho> ais523: one of the funniest was on wikipedia
20:07:59 <tusho> people put nonsense articles in the comments for nonexistent articles
20:08:10 <tusho> so that you could actually go there and see the article, albeit not in the content box
20:09:17 <tusho> hey perhaps i could revive it myself
20:09:21 <tusho> ... Nah. Nobody would use it.
20:09:44 <fizzie> I think there have been at least some "leave comments on any site" thingies; never have used any of them, though.
20:10:00 <tusho> fizzie: this one was funnier, though, because of the undergroundness of it all
20:10:09 <tusho> it had its own little forum which didn't do any foruming at all
20:10:16 <tusho> it just had a hoodwink.d entry and put that in the content area
20:10:27 <tusho> so all it handled was giving a new uri out on request
20:10:34 <tusho> and to top it off, you couldn't see it
20:10:37 <tusho> if you went there, it just wasn't there
20:10:41 <tusho> because everything was display: none
20:10:44 <tusho> so you had to add a user style
20:12:07 <tusho> bye for a while (hour or so)
20:12:31 <fizzie> What sort of time zone was tusho in, anyway?
20:13:32 <ais523> fizzie: UTC+1
20:13:37 <ais523> the same as me
20:15:36 <fizzie> Oh, okay.
20:17:25 <AnMaster> are there any java fanboys here?
20:17:39 <ais523> I doubt it, we tend to scare them out of existence
20:17:39 <fizzie> The fact that the mentioned zeepmobile.com site only works in the US sort-of confused me.
20:17:47 <AnMaster> ais523, good
20:17:54 <ais523> heh
20:17:58 <fizzie> What do you need a Java fanboy for?
20:18:31 <AnMaster> however I was looking for a fight with someone, since I tried to make a java app run and it just cause all sorts of problems
20:18:53 <AnMaster> oh well
20:19:12 <fizzie> I'm sure there's a ##java or something.
20:19:26 <AnMaster> tusho, are you ignoring randomly currently?
20:20:26 <AnMaster> you will love this (and no: I'm making a joke, I don't really care about it, I was looking for something else when I came a across this) "Intelยฎ VTuneโ„ข Performance Analyzer 9.0 for Linux" ... but I can't use it, not free software
20:20:28 * AnMaster ducks
20:20:33 <AnMaster> http://www.intel.com/cd/software/products/asmo-na/eng/vtune/239145.htm btw
20:20:47 <AnMaster> I was looking for ICC for Linux x86_64 download actually
20:20:53 <AnMaster> since I needed to try something out
20:21:25 <ais523> AnMaster: Intel invented powertop too IIRC, that's something that Windows has no real hope of replicating atm
20:21:39 <AnMaster> ais523, yes but powertop is open source
20:21:43 <fizzie> Isn't ICC a bit non-free, though?
20:21:43 <AnMaster> so I like it and use it
20:21:48 <AnMaster> fizzie, indeed it is
20:21:53 <AnMaster> but I need to make sure stuff compiles
20:22:09 <Deewiant> so does cfunge compile on VC?
20:22:19 <AnMaster> Deewiant, it does compile on ICC
20:22:37 <AnMaster> but current software uses X, my P3 that got ICC on it doesn't have X
20:22:49 <AnMaster> it doesn't even have any screen
20:22:51 <Deewiant> LLVM? DMC? Comeau?
20:23:03 <AnMaster> Deewiant, gcc-llvm tested, works fine
20:23:04 <Deewiant> Borland?
20:23:07 <AnMaster> DMC and comeau?
20:23:11 <AnMaster> I don't know what they are
20:23:17 <AnMaster> MSVC doesn't do C99
20:23:24 -!- oklofok has joined.
20:23:26 <AnMaster> Borland, don't plan to pay anything
20:23:36 <Deewiant> hmm, I'm somewhat surprised you haven't at least heard of Comeau
20:23:46 <Deewiant> but I guess it's more of a C++ thing
20:23:49 <fizzie> Borland compilers are available, I think. At least some of 'em were at some point.
20:23:51 <ais523> AnMaster: pretty much nobody does all of C99, gcc implements the more often used bits though
20:23:52 <AnMaster> Deewiant, Comeau sounds slightly familiar
20:23:56 -!- oklopol has quit (Read error: 113 (No route to host)).
20:24:00 <AnMaster> ais523, err ICC does it more or less
20:24:11 <Deewiant> Comeau has pretty much the best standards support AFAICT
20:24:14 <Deewiant> not free though
20:24:17 <AnMaster> ah
20:24:17 <AnMaster> well
20:24:21 <ais523> what about Sun CC?
20:24:23 <AnMaster> I can get ICC for no cost
20:24:32 <ais523> I thought it supported C99 nowadays, I might be wrong though
20:24:35 <AnMaster> free as in beer, but not open
20:25:05 <AnMaster> ais523, and about C99, iirc the ICC frontend is pretty good, oh and GCC are working on it too
20:25:13 <AnMaster> GCC is getting better at C99
20:25:19 <Deewiant> somewhat evidently: http://docs.sun.com/app/docs/doc/819-5265/bjayy?a=view
20:25:22 <ais523> part of the problem is that gcc's only about two-thirds of a compiler
20:25:29 <fizzie> http://gcc.gnu.org/c99status.html is looking reasonably good already.
20:25:35 <ais523> the libraries need to handle it too, also the linker
20:26:04 <Deewiant> on windows, the problem is the libraries
20:26:22 <Deewiant> MSVCRT doesn't have any C99 stuff
20:26:42 <AnMaster> damn complex.h is broken
20:26:45 <Deewiant> I wouldn't be surprised if it lacked some obscure part of C90, too :-P
20:26:51 <AnMaster> and I was planning a project using complex numbers
20:26:52 <AnMaster> oh well
20:26:56 <AnMaster> have to use something else
20:27:00 <AnMaster> or do the maths myself
20:27:18 <Deewiant> of course you might want to check what "broken" actually means
20:27:30 <Deewiant> for instance, VLAs are "broken" but most cases probably work fine
20:27:30 <AnMaster> Deewiant, and I got syntax errors from Visual Studio C++ Express or whatever it is called
20:27:34 <fizzie> You can also get Borland C++ Compiler 5.5 free-as-in-beer too. Very new; released in the year 2000.
20:27:35 <ais523> AnMaster: it's not very broken, it probably just doesn't conform with the specs in some cases
20:27:38 <AnMaster> was 2005 edition or 2008 edition
20:27:43 <AnMaster> Deewiant, and it was a legal C99 think
20:27:45 <AnMaster> thing*
20:27:50 <ais523> fizzie: where? I still have bc4 at home
20:27:55 <ais523> so it would be an upgrade for me...
20:27:59 <AnMaster> ip ips[];
20:28:01 <Deewiant> AnMaster: well, it doesn't support C99 so that's not unexpected.
20:28:02 <AnMaster> at end of struct
20:28:06 <AnMaster> Deewiant, exactly
20:28:14 <fizzie> www.codegear.com/downloads/free/cppbuilder
20:28:52 <fizzie> I had 4.x from a pcplus magazine cover CD, too. That was some time ago.,
20:29:44 <AnMaster> fizzie, does it do C99 at all?
20:29:49 <AnMaster> and is it for Linux?
20:29:53 <AnMaster> I don't have windows any more
20:29:56 <ais523> AnMaster: no, it's for windows and is C89/C++98
20:29:58 <AnMaster> since several months
20:30:02 <AnMaster> well then
20:30:09 <ais523> that's an improvement, bc4 was well before C++98
20:30:11 <AnMaster> no point in even trying cfunge under it
20:30:25 <fizzie> That's also the command-line stuff only; I had the IDE parts of bc4 too.
20:30:38 <ais523> and so its C++ wasn't very standard, I have #ifdefs all over my C++ code that I wrote to compile on both bc4 and g++
20:30:45 <ais523> fizzie: yes, I have the IDE parts too
20:30:47 <AnMaster> ICC handles the parts of C99 that cfunge use, So does GCC
20:30:55 <AnMaster> however there is a known library issue on FreeBSD
20:31:03 <AnMaster> FreeBSD lacks sinl() cosl() and such
20:31:05 <Deewiant> Comeau is the only compiler that supports the C++98 feature "export templates"
20:31:08 <AnMaster> ie, the long double ones
20:31:20 <AnMaster> Deewiant, "export templates" what is that?
20:31:39 <Deewiant> google it, I can't easily explain it in a few lines
20:31:44 <Deewiant> especially if you're unfamiliar with C++
20:31:50 <AnMaster> well I know some basic stuff
20:31:59 <ais523> oh dear, yes Deewiant's right here
20:32:00 <AnMaster> and I know similiar concepts from other languages
20:32:04 <ais523> templates are bad enough as they are
20:32:05 <AnMaster> I have coded in C#
20:32:07 <AnMaster> I admit that
20:32:23 <AnMaster> ais523, aren't templates like type generic classes or such?
20:32:27 <ais523> can cause all sorts of weirdness in C++, for instance they can do Turing-complete calculations at compile time
20:32:32 <AnMaster> ie List<int> List<string>
20:32:33 <AnMaster> and so on
20:32:35 <AnMaster> right?
20:32:41 <Deewiant> yes, in the simple case
20:32:42 <ais523> AnMaster: a bit, well a lot really except there are a huge number of edge/corner cases
20:32:49 <Deewiant> but also Factorial<10> can give 3628800
20:32:57 <AnMaster> Deewiant, ok *that* is strange
20:32:58 <ais523> as a compile-time constant
20:33:03 <AnMaster> oh my
20:33:14 <Deewiant> AnMaster: hehe, good luck copying stuff from CCBI when the next version comes out
20:33:20 <Deewiant> it uses templates a /LOT/ to generate code
20:33:22 <AnMaster> ah well the simple case here, that is about what C#'s generic classes implement
20:33:28 <AnMaster> Deewiant, ouch why?
20:33:34 <AnMaster> Deewiant, and does D have that really
20:33:36 <Deewiant> simpler that way
20:33:40 <ais523> because they're oh so esoteric
20:33:41 <Deewiant> yes, D's templates are more powerful than C++'s
20:33:43 <AnMaster> Deewiant, + you can't do that for all fingerprints
20:33:51 <Deewiant> what do you mean
20:33:52 <ais523> Deewiant: no they aren't, C++'s are turing-complete
20:33:56 <Deewiant> you don't even know what I do :-P
20:34:13 <AnMaster> Deewiant, the stuff I reuse is basically when the fingerprint specs are too vague and you have already implemented it
20:34:18 <Deewiant> ais523: well, I suppose you know what I meant
20:34:20 <AnMaster> Deewiant, I implemented my SOCK not looking at your
20:34:22 <AnMaster> for example
20:34:36 <Deewiant> and your NULL I suppose ;-)
20:34:44 <fizzie> I think C# generics have more in common with Java generics than C++ templates. Does C# even do code generation with them? Java ones at least are implemented with that type erasure thing.
20:34:54 <AnMaster> Deewiant, and a lot more
20:35:10 <AnMaster> Deewiant, issues are stuff like butterfly operator in TOYS
20:35:27 <AnMaster> and 3DSP since I don't know matrix manipulation
20:35:42 <ais523> fizzie: Java templates are an utter mess, they tried to retrofit them to a language that doesn't like them
20:35:45 <AnMaster> fizzie, I think they could be done at runtime
20:36:06 <ais523> and as a result you have a lot of random arbitrary casts and such trying to get things to the right data type
20:36:13 <AnMaster> anyway doesn't lisp have some sort of powerful macros?
20:36:14 <AnMaster> iirc
20:36:16 <fizzie> Well, they're not even called "templates" there.
20:36:32 <AnMaster> maybe you could approximate that using C++ templates!
20:36:32 <AnMaster> XD
20:36:34 <ais523> AnMaster: Lisp macros are like text substitution on steroids
20:36:38 <AnMaster> ais523, hah
20:36:45 <ais523> they're more like #define than template<typename x>
20:36:47 <Deewiant> D's have approximately the same power as those of Lisp
20:36:47 <AnMaster> ais523, how does that factorial one work?
20:36:53 <Deewiant> but the syntax is of course much uglier
20:36:55 <AnMaster> or wait
20:36:56 <ais523> AnMaster: recursion in the template definition
20:36:59 <AnMaster> ah
20:37:01 <Deewiant> and they don't currently work on ASTs directly
20:37:03 <Deewiant> only strings
20:37:09 <ais523> I couldn't write it offhand though, I'm not very good at writing C++ templates
20:37:16 <Deewiant> which makes it an occasional pain to work with
20:37:24 <AnMaster> also another thing with C++
20:37:31 <AnMaster> cout << foo;
20:37:43 <AnMaster> what the heck does bitshift have to do with STDOUT?
20:37:44 <AnMaster> really
20:37:45 <ais523> AnMaster: operand overloading
20:37:53 <AnMaster> ais523, yes but it is silly operator overloading
20:37:56 <AnMaster> that makes no sense
20:37:57 <AnMaster> I mean
20:37:57 <ais523> the answer is "nothing, so we can use the << operator for something else"
20:38:04 <AnMaster> ais523, well that is confusing
20:38:05 <Deewiant> that was a bad choice
20:38:11 <Deewiant> honestly :-P
20:38:24 <AnMaster> really operator overloading has it's uses
20:38:38 <AnMaster> say you implement a class that does number as fractions of BIGNUMS
20:38:54 <ais523> AnMaster: that's sane operator overloading, go and talk about it in a sane channel
20:38:56 <AnMaster> so you can represent stuff like 1/9 precisely
20:39:04 <AnMaster> then you could overload / * and so on
20:39:15 <AnMaster> but using << for "write to output"
20:39:16 <AnMaster> well
20:39:18 <ais523> you can overload casts too in C++
20:39:20 <AnMaster> that's just insane
20:39:23 <AnMaster> ais523, um huh?
20:39:26 <Deewiant> AnMaster: you've actually seen D's templates in CCBI already, mixin (Code!("NULL")) and so forth
20:39:33 <ais523> like define (int) to mean something different on your class
20:39:37 <ais523> then you can cast it to int easily
20:39:40 <Deewiant> AnMaster: so that you can do (int)bignum
20:39:59 <ais523> although C++ has 4 different types of cast so you can explain to the compiler why you're doing it
20:40:07 <ais523> one of which can only be resolved at runtime
20:40:19 <Deewiant> hooray for 5 different ways to cast
20:40:27 <ais523> because of polymorphism, the time an object looks like at compile time is not necessarily the type it actually is
20:40:34 <ais523> s/time/type/
20:41:22 <fizzie> If you want to see template nastinessitude, Boost is a nice place to look at; for example Boost.Lambda, http://www.boost.org/doc/libs/1_36_0/doc/html/lambda.html -- I _think_ the implementation was pretty template-heavy.
20:41:48 <fizzie> It is rather extreme in any case.
20:41:48 <AnMaster> Deewiant, ah ok
20:41:50 <AnMaster> makes sense
20:42:10 <AnMaster> <ais523> although C++ has 4 different types of cast so you can explain to the compiler why you're doing it
20:42:10 <AnMaster> <ais523> one of which can only be resolved at runtime
20:42:14 <AnMaster> 4 different ones?
20:42:15 <AnMaster> HUH?
20:42:23 <AnMaster> I can think of two
20:42:28 <ais523> AnMaster: const_cast which adds or removes const/volatile
20:42:28 <Deewiant> AnMaster: 5
20:42:32 <AnMaster> "have say (foo) explicitly"
20:42:32 <AnMaster> and
20:42:38 <AnMaster> "happens automatically"
20:42:46 <ais523> static_cast which is for casts that can be calculated at compile time
20:42:47 <AnMaster> like double bar = somefloat
20:42:56 <Deewiant> AnMaster: the latter, implicit casting, wasn't included
20:42:58 <ais523> dynamic_cast is the one that only works at runtime
20:42:59 <AnMaster> ais523, ah ok, makes sense I guess
20:43:00 <Deewiant> AnMaster: with that, it's 6. :-P
20:43:06 <ais523> I've forgotten what the fourth named one is
20:43:10 <AnMaster> ais523, dynamic cast?
20:43:11 <AnMaster> huh
20:43:12 <Deewiant> reinterpret_cast
20:43:21 <AnMaster> Deewiant, and that is?
20:43:26 <Deewiant> I can't remember
20:43:29 <ais523> Deewiant: ah yes, taking the bit pattern of something and interpreting it as a different data type
20:43:30 <Deewiant> I only ever use static_cast
20:43:32 <fizzie> With dynamic_cast<Foo*>(bar); you get a NULL out of it if "bar" is not a Foo pointer. Or something like that.
20:43:36 <ais523> like interpreting a pointer as an int
20:43:41 <AnMaster> ais523, ever heard of union
20:43:42 <AnMaster> ...
20:43:57 <fizzie> And reinterpret_cast is the one which looks most like the C casts.
20:43:57 <Deewiant> AnMaster: want to define a new union type every time you do that?
20:44:01 <ais523> AnMaster: yes, but that's type-punning and that's wrong, in fact it can be optimised to not work correctly in some cases in C++ I think
20:44:03 <AnMaster> hm
20:44:14 <AnMaster> ais523, type-punning?
20:44:17 <ais523> even in C
20:44:25 -!- minirop has joined.
20:44:44 <ais523> AnMaster: there's an example in the GCC docs, say you have a union of a float and an int, then you assign to the int and return a pointer to the float to the function, then access a float through that pointer
20:44:45 <Deewiant> AnMaster: http://en.wikipedia.org/wiki/Type_punning
20:44:47 <AnMaster> ais523, if union breaks the compiler is obviously wrong
20:45:04 <ais523> it's not necessarily going to have been set from the bits of the int, according to the C standard, it might just read garbage
20:45:07 <AnMaster> ais523, well I do use float/int unions
20:45:08 <ais523> due to the aliasing rules
20:45:15 <AnMaster> don't think I return pointers to one of them
20:45:19 <ais523> AnMaster: well on gcc it only breaks when pointers are involved
20:45:30 <AnMaster> ais523, no pointers except to the whole union
20:45:33 <fizzie> Yes; the C standard says that if you write a union using one member, you must not read it through any other member.
20:45:43 <ais523> <wikipedia> For example, reading from a different union member than the last one written invokes undefined behavior, but the effect in practice is usually to permit type punning.
20:45:54 <AnMaster> fizzie, it does?
20:45:58 <Deewiant> AnMaster: it does.
20:46:02 <fizzie> Well, there was the wikipedia quote.
20:46:04 <AnMaster> how the heck can you then store a float in an int
20:46:07 <ais523> gcc deliberately allows it to work in the situation when you write from one and read from the other without doing anything tricky
20:46:09 <Deewiant> AnMaster: you can't.
20:46:15 <AnMaster> -_-
20:46:20 <ais523> AnMaster: read up about the strict aliasing rules some time
20:46:23 <ais523> Deewiant: you can, memcpy()
20:46:25 <Deewiant> implementation-defined, not portable and all that.
20:46:28 <AnMaster> ais523, it works under other compilers too
20:46:34 <Deewiant> ais523: eh?
20:46:39 <AnMaster> ais523, ah good point
20:46:45 <ais523> Deewiant: you can access both of them via unsigned char pointers
20:46:48 <ais523> safely
20:46:57 <Deewiant> that's actually well-defined? wow.
20:46:58 <ais523> unsigned char is special with respect to the aliasing rules
20:47:05 <ais523> it was special-cased in the standard
20:47:07 <Deewiant> ah, that rings a bell, yes indeed
20:47:08 <AnMaster> ais523, nice, so I just do: (float*)(unsigned char*)&myint?
20:47:27 <AnMaster> presumably that should work
20:47:41 <ais523> I think so, not sure though
20:47:51 <ais523> float would have to be the same size as int for that to make sense
20:48:00 <ais523> and the result's going to differ depending on padding, etc
20:48:11 <AnMaster> ais523, yes it would be int32_t actually
20:48:34 <fizzie> ais523: I'm not certain the memcpy apporach is safe; surely you can read all the bits of a float with memcpy (or through a unsigned char *), but the bit pattern might be some sort of a trap representation when interpreted as int. You could store the _value_ of the bytes in the integer if it's large enough, of course.
20:48:38 <AnMaster> ais523, so you mean you can't implement FPSP, FPDP and 3DSP in any portable way?
20:48:50 <ais523> course you can, you can memcpy
20:49:08 <ais523> and emulate 32-bit float yourself on targets which don't have it
20:49:18 -!- LinuS has quit ("Puzzi. S์, parlo proprio con te. Puzzi.").
20:49:22 <ais523> fizzie: unsigned int isn't allowed to have trap representations
20:49:26 <ais523> but apart from that you're right
20:49:27 <AnMaster> ais523, well actually I would just error out on those
20:49:32 <ais523> well, uint32_t isn't
20:49:35 <AnMaster> I was adding size checks in cmakelists today
20:49:36 <ais523> unsigned int is
20:49:51 <AnMaster> ais523, "trap representations"?
20:49:55 <fizzie> ais523: Okay, I was in fact thinking there might be something special when one of the parties is an integer.
20:50:07 <ais523> well, if it's signed, you can have problems
20:50:17 <ais523> a trap representation's a number that causes a program to error if it's used
20:50:19 <AnMaster> well it would be in FPSP and FPDP
20:50:24 <AnMaster> since funge space is signed
20:50:31 <AnMaster> same for 3DSP
20:50:46 <ais523> 0x80000000 is common as a trap representation on 32-bit systems, and is in fact the only value allowed for one in a 32-bit signed int by the standard
20:50:56 <ais523> even more systems don't have a trap representation at all
20:51:00 <ais523> though
20:51:00 <AnMaster> ais523, anyway how comes no tools "warn portability" checks actually warn about using an union there?
20:51:15 <ais523> AnMaster: because everyone does it anyway so no sane compiler manufacturer would break it
20:51:19 <fizzie> Still, with a large enough signed integer you could store the value of the float bytes in there.
20:51:21 <AnMaster> ais523, ah good
20:51:27 <AnMaster> so I'll just depend on it then :)
20:51:35 <ais523> fizzie: or enough unsigned chars
20:51:55 <fizzie> Yes, but if you only have a single funge-cell to work with.
20:51:57 <AnMaster> ais523, um what if I want to use something that happens to be 0x80000000
20:52:26 <AnMaster> for example will those systems crash when the unix timestamp hit that value?
20:52:26 -!- moozilla has joined.
20:52:28 <ais523> AnMaster: the range of int doesn't include that number
20:52:32 <ais523> on such systems
20:52:34 <ais523> that's signed int
20:52:41 <AnMaster> ais523, so int isn't 32-bit?
20:52:43 <ais523> so such systems break 1 second earlier than other systmes
20:53:02 <ais523> AnMaster: yes it is, it's -2^31-1 to +2^31-1 with one trap representation
20:53:10 <ais523> that's 2^32 possibilities total, so 32 bit
20:53:18 <AnMaster> anyway we will all have 64-bit timestamps by then
20:53:29 <fizzie> And they might break harder; a trap representation might cause hard abort()s or something, instead of some sort of wrap-around.
20:53:32 <Deewiant> will we? I doubt it.
20:53:35 <AnMaster> ais523, so what about those systems that doesn't have a trap?
20:53:41 <ais523> AnMaster: they roll over, normally
20:53:44 <AnMaster> Deewiant, well linux already got it in kernel iirc
20:53:59 <ais523> but incrementing a signed int past its maximum is undefined behaviour
20:54:06 <Deewiant> I wonder what will happen to embedded systems
20:54:09 <ais523> and in fact gcc takes advantage of this on occasion
20:54:16 <AnMaster> Deewiant, good question
20:54:38 <AnMaster> ais523, it does?
20:54:57 <AnMaster> Deewiant, does Funge-98 say what should happen on funge cell overflow?
20:55:01 <AnMaster> undefined I think?
20:55:10 <Deewiant> not sure
20:55:27 <AnMaster> Deewiant, does CCBI trap SIGPIPE?
20:55:29 <fizzie> I think it doesn't.
20:55:43 <ais523> AnMaster: it's undefined in C for signed integers, wraparound for unsigned
20:55:43 <Deewiant> the bit representation is probably also unspecced
20:55:54 <ais523> this implies that unsigned can only have trap representations if it also has padding
20:55:54 <Deewiant> AnMaster: no, CCBI does nothing with signals.
20:55:58 <AnMaster> Deewiant, if it doesn't your SOCK could be non-conforming
20:56:09 <AnMaster> Deewiant, since you would crash on a SIGPIPE iirc if not handled
20:56:13 <Deewiant> AnMaster: do the SOCK specs say I have to trap SIGPIPE?
20:56:13 <AnMaster> instead of reversing
20:56:20 -!- RodgerTheGreat has joined.
20:56:21 <AnMaster> Deewiant, they say you have to reverse on error iirc
20:56:24 <RodgerTheGreat> http://archive.computerhistory.org/resources/text/GE/GE.Basic.1965.102646121.pdf
20:56:31 <AnMaster> Deewiant, and you get SIGPIPE on error
20:56:43 <Deewiant> AnMaster: that's not an error, that's a signal. :-P
20:56:48 <AnMaster> Deewiant, so just ignore SIGPIPE and use the PIPE return value
20:56:55 <AnMaster> Deewiant, yes but it is caused by an error
20:56:56 <Deewiant> AnMaster: but in all honesty most likely tango does something
20:57:04 <AnMaster> ah I guess so
20:57:08 <Deewiant> AnMaster: can you whip up a test program?
20:57:40 <AnMaster> Deewiant, not really, it happens on network errors iirc
20:58:24 <Deewiant> well I can just netcat something and Ctrl-C, or?
20:58:25 <AnMaster> actually hm
20:58:50 <AnMaster> I always heard it applies to sockets too, however http://en.wikipedia.org/wiki/SIGPIPE seems to say it is pipes only
20:58:58 <AnMaster> huh
20:58:58 <ais523> Deewiant: netcat and ctrl-d probably
20:59:20 <AnMaster> ais523, it is for sockets too right?
20:59:37 <olsner> sigpipe verily applies to sockets as well
20:59:43 <AnMaster> ah :)
20:59:46 <ais523> AnMaster: not sure, I don't know all that much POSIX yet
20:59:58 <AnMaster> ais523, you edit on wikipedia right? go fix http://en.wikipedia.org/wiki/SIGPIPE :P
21:00:19 <AnMaster> ah yes
21:00:19 <ais523> AnMaster: anyone can edit Wikipedia
21:00:22 <AnMaster> send() can return EPIPE
21:00:32 <AnMaster> ais523, except I refuse for religious reasons :P
21:01:01 <Deewiant> and your religion doesn't prevent you from inciting others to do so?
21:01:11 <fizzie> Yes, and send() will give you a SIGPIPE if the socket has been shutdown(foo, SHUT_WR)ed, for example.
21:01:11 -!- megatron has quit (Read error: 110 (Connection timed out)).
21:01:40 <fizzie> I guess it might happen because of some network error too; at least it doesn't seem to be forbidden.
21:01:56 <AnMaster> Deewiant, indeed doing that is the command of the higher force
21:02:25 <Deewiant> this higher force sounds like an idiot
21:02:31 <AnMaster> fizzie, ah yes so if remote end does shutdown() on it?
21:02:39 <AnMaster> Deewiant, hehe :D
21:11:42 <AnMaster> "one of the changes from C90 to C99 was to remove any restriction on accessing one member of a union when the last store was to a different one"
21:11:42 <AnMaster> hm
21:11:47 <ais523> AnMaster: http://wwwold.dkuug.dk/JTC1/SC22/WG14/www/docs/dr_257.htm
21:11:52 <ais523> that's to do with type punning in unions
21:11:56 <AnMaster> ais523, that was I was reading
21:11:59 <AnMaster> and quoting above
21:12:05 <ais523> basically someone suggested that it should work the way that you suggested
21:12:09 <ais523> and the standards body said no
21:12:19 <ais523> but then, they say no to just about every defect report raised
21:12:25 <ais523> and it costs a lot of money to submit one to them
21:13:27 <AnMaster> <AnMaster> "one of the changes from C90 to C99 was to remove any restriction on accessing one member of a union when the last store was to a different one"
21:13:35 <AnMaster> ais523, what about that then?
21:13:45 -!- LinuS has joined.
21:14:00 <ais523> from that sentence I can't figure out which direction the change was in
21:20:09 <AnMaster> ais523, hm http://wwwold.dkuug.dk/JTC1/SC22/WG14/www/docs/dr_283.htm
21:20:55 <ais523> AnMaster: well they didn't even answer...
21:21:22 <AnMaster> http://std.dkuug.dk/jtc1/sc22/wg14/www/docs/n980.htm
21:21:25 <AnMaster> there is that too
21:21:39 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
21:25:21 <AnMaster> ais523, http://wwwold.dkuug.dk/JTC1/SC22/WG14/www/docs/dr_236.htm
21:27:34 <fizzie> Even if C99 had relaxed the aliasing rules re type-punning with unions, I'm still pretty sure that a float interpreted as int might well be that one allowed trap representation of a signed integer.
21:28:24 <AnMaster> fizzie, So FPSP and FPDP are basically broken?
21:28:47 <AnMaster> fizzie, for me it is just int64_t btw
21:28:51 <AnMaster> not int32_t
21:28:55 <ais523> fizzie: AnMaster: luckily not with IEEE floats, 0x80000000 happens to be an invalid float
21:29:09 <AnMaster> ais523, ah which I actually say in README is needed
21:29:29 <AnMaster> * cfunge requires IEC 60559 floating-point arithmetic (please see Annex F in
21:29:29 <AnMaster> ISO/IEC 9899 for more details.)
21:29:43 <ais523> AnMaster: why does it require that sort of float arithmetic?
21:30:10 <ais523> hmm... I'm not sure if 0x00000080 is an invalid float though, what if floats are big-endian and ints are little-endian?
21:30:29 <AnMaster> ais523, because it is needed for FPDP and FPSP. You can't be sure it works otherwise
21:30:36 <AnMaster> anyway I do double too
21:30:39 <AnMaster> in FPDP
21:30:48 <AnMaster> union over 2 32-bit ints
21:31:22 <ais523> AnMaster: what if you're using 64-bit funge?
21:31:44 <ais523> actually, that could break badly if you're compiling 32-bit on a 64-bit system
21:31:56 <ais523> because the two ints could quite possibly have 32 bits of padding between them
21:32:19 <AnMaster> ais523, hm
21:32:26 <AnMaster> well that I know a way to fix
21:32:30 <AnMaster> called pointers
21:32:44 <ais523> in theory they could have 32 bits of padding between them anyway, but compilers tend not to do that without a reason
21:33:18 <AnMaster> it should be possible to access an int32_t at an address evenly divisible by sizeof(int32_t) I assume?
21:33:53 <AnMaster> it would be rather tricky to handle stuff if that wasn't true
21:34:04 <ais523> I'm not convinced, probably, but that's asking about alignment and all sorts of weird stuff happens when you think about alignment
21:34:17 <ais523> maybe someday I'll write a DS9K implementation that aligns all structs to prime numbers
21:34:23 <AnMaster> ais523, anyway if you like, rewrite FPSP and FPDP to be strictly conforming then!
21:34:42 <ais523> memcpy is your friend
21:34:44 <ais523> if a little slow
21:34:50 <AnMaster> ais523, a little slow yes...
21:35:05 <AnMaster> ais523, anyway that wouldn't work for double
21:35:07 <AnMaster> on int32_t
21:35:15 <fizzie> I can easily imagine a system where int32_t is implemented as a 64-bit quantity with padding; perhaps because the system does not do any <64-bit access and the implementor doesn't want to do any shifting around.
21:35:17 <AnMaster> if what you say about padding ever happens
21:35:18 <ais523> AnMaster: accessing a char is always aligned
21:35:33 <ais523> so you just memcpy 4 chars at a time
21:35:53 <ais523> presumably you're assuming 8-bit char, some systems have 9-bit char but I seriously doubt cfunge would run on those the way you're doing things
21:36:15 <AnMaster> ais523, well I need to handle FPSP and FPDP
21:36:25 <AnMaster> and I need to conform to other parts of the befunge specs
21:36:32 <fizzie> With that int64_t, you could also store the 32-bit float bit-pattern as the value of an integer with something like: float f; int64_t i; ... unsigned char *p = (unsigned char *)&f; i = p[0] | (p[1] << 8) | (p[2] << 16) | (p[3] << 24);
21:36:33 <AnMaster> so...
21:36:57 <ais523> fizzie: yes, that's the sort of thing that can be done correctly
21:37:03 <AnMaster> hm
21:37:14 <AnMaster> fizzie, USE64 vs. USE32 is decided at compile time
21:37:17 <ais523> if -fweb and -O3 are on then gcc might not even slow down as a result
21:37:18 <AnMaster> for the size of funge cells
21:37:19 <fizzie> Of course that assumes CHAR_BIT == 8, sizeof(float) == 4 and sizeof(int64_t) == large enough.
21:37:25 <AnMaster> so that makes everything more complex
21:37:30 <ais523> and -fweb is implied by -funroll-loops
21:37:51 <ais523> fizzie: sizeof(int64_t) == 64/CHAR_BIT
21:37:52 <ais523> always
21:37:56 <ais523> that's how int64_t is defined
21:38:18 <AnMaster> -fweb... oh god
21:38:27 <AnMaster> what exactly does -fweb do?
21:38:41 <ais523> AnMaster: allows the compiler to change which register it's holding a register variable in midfunction
21:39:02 <AnMaster> ais523, well I don't declare any variable with register...
21:39:03 <ais523> it makes it near-impossible to explain to a debugger what's going on, but if you ask for funroll-loops it assumes you don't care much about that anyway
21:39:13 <ais523> AnMaster: -O3 auto-registers variables when it helps
21:39:20 <ais523> I think -O2 does too, for that matter
21:39:24 <tusho> BaKKK
21:39:42 <AnMaster> ais523, ggdb4 obviously needs to be invented ;)
21:39:59 <tusho> ais523: google chrome is out
21:40:01 <tusho> only for windosw
21:40:02 <tusho> atm
21:40:05 <tusho> http://www.google.com/chrome
21:40:09 <ais523> tusho: does it run in Wine, I wonder?
21:40:13 <tusho> maybe
21:40:20 <AnMaster> their own browser?
21:40:32 <AnMaster> can you use Windows Live search in it? XD
21:40:34 * tusho parallelz it up
21:41:23 <fizzie> I guess you should be able to "portably" store a 32-bit IEEE float in a "long", since the value range of long is [-(2^31-1), 2^31-1] and that's enough distinct values to hold all the IEEE floats, which have at least that one illegal value.
21:42:06 <AnMaster> well unless anyone complains I won't change current one, unless you can come up with one universal and sane solution :P
21:42:23 <AnMaster> I hardly expect anyone to use cfunge on non-x86/x86_64
21:42:35 <ais523> tusho: I'm not downloading it anyway because I don't like their EULA
21:42:43 <AnMaster> and if someone actually hits an issue with it in a non-contrived case then I shall fix it
21:42:48 <ais523> which is actually potentially enforceable because you have to agree to it pre-download
21:42:49 <fizzie> Given how common the "union of float and int" (or even "union of int and pointer") approaches are, the current way probably works just about anywhere.
21:42:52 <AnMaster> however until that happens...
21:43:01 <ais523> at least it gets around many of the common problems with enforcing EULAs
21:43:09 <fizzie> Don't you want your cfunge to work on a DS9K? :p
21:43:21 <AnMaster> fizzie, well tell me what DS9K is
21:43:25 <AnMaster> then I may answer
21:43:26 <ais523> AnMaster: would you consider an automated C to brainfuck translater to be a contrived case
21:43:34 <ais523> AnMaster: http://en.wikipedia.org/wiki/Special:Search?go=Go&search=DS9K, I wrote that article
21:43:38 <AnMaster> ais523, does it do such aligning issues?
21:43:48 <AnMaster> have*
21:44:02 <AnMaster> fizzie, oh that, and then: yes
21:44:03 <ais523> AnMaster: no alignment issues on gcc-bf, it aligns to 8 bits
21:44:09 -!- tusho has quit ("And then-").
21:44:16 <ais523> the DS9K has all alignment issues possible, except when you want it to
21:44:25 -!- oklofok has quit (Read error: 113 (No route to host)).
21:44:26 <AnMaster> ais523, well I checked it on 32-bit and 64-bit x86
21:44:29 <AnMaster> GCC and ICC
21:44:31 -!- tusho has joined.
21:44:39 <AnMaster> once clang is ready I plan to make sure it works there too
21:44:44 <tusho> ais523:
21:44:46 <tusho> 1. it's open source, just remove the eula
21:44:47 <AnMaster> currently I can't get clang to build even so ;P
21:44:48 <tusho> then recompile
21:44:57 <tusho> ais523: 2. is it the stuff about sending your browser history to google
21:45:00 <tusho> because that has a setting to turn it off
21:45:09 <tusho> and yeah, that being default is the most braindeaded thing ever
21:45:34 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | i just meant, when you start going oracle, you might wanna rethink what it means for something to be "O(n)".
21:45:53 <fizzie> AnMaster: Was cfunge-0.3.0 recent enough to run fungot?
21:45:53 <ais523> tusho: it's the stuff about if you use any of their services they can change their Ts&Cs without telling you and if you use their services again you're bound by the new Ts&Cs
21:45:53 <fungot> fizzie: and more plus shipping ( honest). other scheme implementations but guile is my favorite. i.e. you never have to
21:46:03 <tusho> ais523: dude. everything has that
21:46:07 <AnMaster> fizzie, hm... let me check
21:46:08 <tusho> seriously: everything
21:46:25 <ais523> tusho: well nowadays I don't agree to EULAs that require that, that's like zombifying yourself in Agora
21:46:39 <tusho> ais523: every EULA has done that since I can remember.
21:46:40 <fizzie> I don't think I have bzr here. :/
21:46:42 <ais523> how am I meant to check the Ts&Cs for scams when they can change while I'm looking
21:46:42 <AnMaster> fizzie, no
21:46:46 <tusho> you can't avoid it.
21:46:50 <AnMaster> fizzie, only later ones got SOCK it seems
21:47:01 <ais523> tusho: you can, most computer games come with a fixed EULA for instance
21:47:05 <ais523> that doesn't change behind your back
21:47:07 <tusho> ais523: ok, games
21:47:10 <tusho> apart from that/
21:47:14 <tusho> all online services have it
21:47:15 <tusho> and most software.
21:47:31 <AnMaster> fizzie, so next release (a few weeks I guess, but I never make promises about that) will have it
21:47:38 <ais523> tusho: well I don't agree to online services with those sorts of rules nowadays, and most software I use doesn't have EULAs at all
21:47:43 <AnMaster> fizzie, the current development version is stable enough to run it though
21:47:47 <tusho> ais523: enjoy your 1999
21:47:48 <ais523> just 28 different trivial modifications to BSD
21:47:51 <AnMaster> fizzie, actually core is pretty much stable
21:48:03 <ais523> tusho: I'm not on the Internet that much, so why should I rely on online services?
21:48:04 <AnMaster> tusho, ais523: about the aliasing issue
21:48:09 <AnMaster> berkely sockets
21:48:16 <ais523> most of the time I spend on the Internet is on IRC and email...
21:48:16 <AnMaster> you need to cast there
21:48:30 <tusho> damn chrome is fast
21:48:33 <tusho> even in parallels
21:48:34 <ais523> AnMaster: there's an exception in C99 just so berkeley sockets work, amazingly
21:48:36 <tusho> INFORMATION SUPER HIGHWAY
21:48:42 <AnMaster> ais523, there is?
21:49:05 <ais523> AnMaster: you can union structs as long as they start with the same members and you only access those members, and the union's visible from the declaration of both structs
21:49:08 <AnMaster> tusho, any browser is fast here...
21:49:12 <ais523> which is a really weird rule when you think about it
21:49:17 <tusho> AnMaster: but this is superspeed. :)
21:49:29 <AnMaster> tusho, would anyone notice?
21:49:33 <tusho> yes
21:49:40 <tusho> rendering times have a long way to go
21:49:47 <AnMaster> tusho, it is still restricted by network speed for me
21:49:51 <AnMaster> 8 mbit down
21:50:00 <tusho> AnMaster: no, you're bound by rendering speed
21:50:02 <tusho> almost certainly
21:50:05 <ais523> tusho: I wonder how much they modified WebKit?
21:50:11 <tusho> ais523: i don't think much
21:50:19 <AnMaster> tusho, they based it on webkit?
21:50:22 <tusho> AnMaster: yes
21:50:24 <ais523> is it just unmodified Safari or Konqueror stuff, or is it Special Google Nonevil Webkit
21:50:25 <tusho> it's open source, too
21:50:26 <AnMaster> well long live konqueror then
21:50:29 -!- sebbu2 has joined.
21:50:38 <AnMaster> ais523, nonevil? is webkit evil?
21:50:44 <tusho> AnMaster: konqueror is pretty much terrible.
21:50:58 <ais523> AnMaster: when Google make a version of something, their version is by definition less evil than the original
21:51:00 <AnMaster> tusho, agreed, but not the rendering really, it is a bad browser in other aspects
21:51:15 <ais523> if Google sold fluffy kittens then your fluffy kittens would be evil by comparison to theirs
21:51:20 <tusho> ais523: have you slept yet.
21:51:24 <ais523> tusho: no
21:51:25 <AnMaster> ais523, google is evil :P
21:51:33 <AnMaster> probably
21:51:39 <ais523> AnMaster: I may have been sarcastic over my past few comments
21:51:39 <tusho> google are as evil as any corp except they're cooler so.
21:51:51 <AnMaster> tusho, does it support gopher ;)
21:51:59 <tusho> gimme a gopher link, i'll test.
21:52:08 <AnMaster> a sec
21:52:13 <ais523> tusho: try it on anagolf with the back buttons, that has some weird breakage on Konq
21:52:21 <AnMaster> tusho, gopher://inspircd.dyndns.org/
21:52:28 <tusho> AnMaster: nope, treats it as a "needs external program"
21:52:35 <AnMaster> aww
21:52:41 <AnMaster> useless then
21:52:47 <AnMaster> long live lynx!
21:52:48 <AnMaster> ;)
21:52:59 <tusho> ais523: works fine
21:53:06 <ais523> ah, they must have fixed that bug then
21:53:17 <ais523> Konq is really confusing, all the labels end up on the wrong buttons
21:53:23 <ais523> or inside text boxees
21:53:24 * tusho sees how fast gmail is
21:53:27 <fizzie> Just for the heck of it, tried to build cfunge development version on this 32-bit ppc OS X thing. Dies when building SOCK; INADDR_NONE not defined.
21:53:47 <ais523> INADDR_NONE's just a constant 0, isn't it?
21:53:49 <tusho> this shit owns, even in parallels
21:53:51 <tusho> and parallels is a dog
21:54:33 <tusho> ok, google, now you have to release an os x version
21:54:35 <tusho> immediately.
21:54:36 <AnMaster> tusho, chrome doesn't have a search box?
21:54:40 <AnMaster> huh
21:54:43 <ais523> AnMaster: it's the URL bar
21:54:45 <tusho> AnMaster: the address bar is an everything bar
21:54:51 <tusho> it's like the awesomebar, except even more awesome.
21:54:54 <AnMaster> well maybe I don't want to end up on google every time
21:55:02 <tusho> AnMaster: you can configure the search engine
21:55:02 <AnMaster> maybe I want another search engine
21:55:08 <tusho> believe it or not
21:55:08 <ais523> tusho: I'd argue less awesome, in that the awesomebar adjusts itself to websites you visit
21:55:15 <tusho> ais523: as does this
21:55:19 <AnMaster> tusho, actually I prefer firefox 1.5 theme
21:55:22 <AnMaster> I prefer that look
21:55:26 <AnMaster> I guess few agree
21:55:30 <AnMaster> but to me it is great
21:55:47 <ais523> well, I'm one of the 3 people in the world who actually likes Ubuntu's default colour scheme
21:55:53 <tusho> ais523: i'm another
21:55:56 <fizzie> ais523: Usually I think it's ((in_addr_t)-1). It's the "error value" from inet_addr, but it's a bit problematic since it's also a valid address.
21:55:58 <AnMaster> "By keeping each tab in an isolated "sandbox", we were able to prevent one tab from crashing another"
21:55:59 <AnMaster> um
21:56:02 <AnMaster> http://www.google.com/chrome/intl/en/why.html?hl=en
21:56:03 <AnMaster> wtf
21:56:09 <tusho> what is wtf about that
21:56:09 <AnMaster> any browser should do that
21:56:11 <tusho> it's perfectly reasonable
21:56:16 <tusho> AnMaster: they don't
21:56:19 <tusho> only chrome and IE8
21:56:24 <AnMaster> really?
21:56:29 <tusho> yep
21:56:43 <tusho> AnMaster: it takes the tab=sandbox idea even further
21:56:47 <tusho> all JS alerts, etc are contained within it
21:56:51 <Deewiant> they're not separate OS processes though?
21:56:53 <AnMaster> I expect ff people are working on it
21:57:00 <tusho> you can't lock up the browser with [[while (true) { alert("lol") }]]
21:57:03 <Deewiant> for JS alerts, I think they are
21:57:10 <Deewiant> or there's an open bug for that anyway
21:57:40 <fizzie> Heh: "/usr/bin/ld: unknown flag: -O1"
21:57:43 <ais523> one annoying thing about that site is it seems to do OS detection
21:57:50 <ais523> so I had to fake my useragent to get the Windows download
21:57:58 <tusho> ais523: well, i can understand why they did that
21:57:59 <AnMaster> does it have support for addons?
21:58:02 <AnMaster> like firefox does
21:58:03 <ais523> otherwise it just links to the Linux deveopment plac
21:58:05 <tusho> AnMaster: i don't think so not yet
21:58:06 <ais523> s/$/e/
21:58:08 <tusho> but it's open source
21:58:10 <tusho> = only a matter of time
21:58:12 <AnMaster> so you can create googlecustomise for it
21:58:13 <AnMaster> wlel
21:58:14 <AnMaster> well
21:58:15 <tusho> and this isn't really a 1.0 release anyway
21:58:28 <AnMaster> removing click tracking and ads from google using their browser would rock
21:58:28 <tusho> ais523: i just used firefox in parallels
21:58:29 <tusho> :P
21:58:29 <AnMaster> :D
21:58:53 <ais523> tusho: now compare it to the blazingly fast speed of C-INTERCAL's INTERCAL-to-C conversion
21:59:01 <tusho> ais523: does that render HTML yet?
21:59:03 <tusho> if not MAKE IT SO
21:59:09 <ais523> which is so much faster than the gcc step that runs after it there's no point optimising
21:59:09 <AnMaster> c2html
21:59:13 <AnMaster> pretty sure that exists
21:59:19 <AnMaster> or something like it
21:59:20 <tusho> AnMaster: nothing to do with this
22:00:07 -!- fungOSX has joined.
22:00:19 <tusho> wow
22:00:20 <fizzie> There's fungot running with cfunge on ppc-32/OS X.
22:00:21 <fungot> fizzie: it's a nice way to remember that? tell me a good number, though? is it php? peice of cake
22:00:25 <tusho> best bug ever
22:00:30 <tusho> i closed a rickroll tab
22:00:31 <ais523> hi fungOSX
22:00:34 <tusho> and the music CONTINUED PLAYING
22:00:35 <tusho> XD
22:00:37 <ais523> hmm... hi fungot
22:00:38 <fungot> ais523: did you read my article in the kb has character fragments on it which the computer executes. it's intended to implement a ports driver? my current one, looping back to where/ how to start doesn't seem that bad
22:00:40 <tusho> fuck!
22:00:41 <fizzie> I don't have the language model files there, so no talking. :p
22:00:43 <tusho> make it stop!
22:00:47 -!- oklopol has joined.
22:00:54 <ais523> tusho: permanent rickrolls?
22:01:01 <tusho> ais523: bet they did it intentionally
22:01:01 <ais523> is that a new browser feature?
22:01:22 <ais523> tusho: does it happen for anything but rickrolls?
22:01:24 <Deewiant> ^echo optbot
22:01:24 <fungot> optbot optbot
22:01:25 <tusho> "The following page(s) have become unresponsive. You can wait for them to become responsive or kill them.
22:01:25 <optbot> Deewiant: HP 48gII.
22:01:25 <tusho> [gmail]"
22:01:25 <optbot> fungot: What's so fucked about it?
22:01:26 <fungot> optbot: i meant the bored thing :) like forcer and riastradh, and lecture him. i didn't download any software. that's just the highscores :p) with the bad decisions.
22:01:27 <optbot> fungot: 2(d-1)
22:01:27 <fungot> optbot: that's rather strange. looks fine to me
22:01:28 <tusho> How ironic!
22:01:28 <optbot> fungot: well we have nothing to worry about
22:01:29 <fungot> optbot: or, as liquidengineer might say, i'm a tcler when being serious. and a bad thing... i learn very much from your solution... thanks :)
22:01:29 <optbot> fungot: ~exec sys.stdout( [i[1] for i in inspect.getmembers(self.f) if i[0] == "func_code"][0] )
22:01:30 <fungot> optbot: i'll try to explain with a srfi? the editors were constrained to quite a few!!! fnord! fnord
22:01:31 <optbot> fungot: it can't curry a lambda yet
22:01:33 <tusho> OH MAN
22:01:34 <tusho> HAHAHA
22:01:38 <tusho> you know the sad macs?
22:01:42 <tusho> we get a sad tab.
22:01:50 <Deewiant> yes, that was in the cartoon
22:01:51 <tusho> right down to the pixelly black-and-white
22:01:55 <tusho> Deewiant: yes
22:01:56 <tusho> but in person...
22:02:10 <Deewiant> the cartoon also said "it really does look like that" OWTTE
22:02:16 <ais523> tusho: oh dear, I'm starting to like Chrome less and less as time goes on
22:02:22 -!- fungOSX has quit (Client Quit).
22:02:26 <tusho> ais523: not a fan of the sad mac?
22:02:35 <ais523> tusho: in a browser?
22:02:43 <tusho> ais523: it's after a tab has been killed due to crashes
22:02:47 <tusho> it's just a tab with a sad face
22:02:52 <tusho> it just happens to be pixelly and black and white
22:02:56 <tusho> and say "Aw, snap!"
22:02:56 <tusho> :)
22:03:08 <tusho> also a lot of this crap is due to me running it under parallels
22:03:11 <tusho> which is less than perfect.
22:04:16 -!- sebbu has quit (No route to host).
22:06:23 <tusho> oh man
22:06:26 <tusho> resizable input widgets
22:06:28 <tusho> thank GOD
22:06:39 <tusho> nevermore will i have to deal with shitty tiny text areas
22:07:48 -!- KingOfKarlsruhe has quit (Remote closed the connection).
22:09:27 -!- chromeeeee has joined.
22:09:35 <chromeeeee> fuck that was fast.
22:09:36 <chromeeeee> :~
22:09:37 <tusho> test
22:09:52 <chromeeeee> i am typing to you from mibbit running in google chrome running in parallels running in os x
22:09:55 <chromeeeee> :3
22:10:05 -!- LinuS has quit (Read error: 104 (Connection reset by peer)).
22:10:13 <ais523> hi chromeeeee, presumably you're tusho?
22:10:13 <chromeeeee> byebye linus
22:10:16 <chromeeeee> ais523: no
22:10:32 <chromeeeee> my name is Ritanj
22:10:33 <ais523> well, same IP, anyway
22:10:39 <chromeeeee> Ritanj Urban Muller
22:10:43 <chromeeeee> Ritanj Urban Muller Lite
22:10:58 <chromeeeee> To be specific, Ritanj Urban Cherry-On-Top Muller Advertising Campaign Lite-Lite
22:11:17 <ais523> yep, definitely tusho
22:11:21 -!- LinuS has joined.
22:11:23 <chromeeeee> what.
22:11:25 <chromeeeee> who is tusho.
22:11:42 <ais523> chromeeeee: the other person in this channel from the same IP who talks the same way as you
22:11:47 <chromeeeee> ais523: ah, him
22:11:48 <chromeeeee> ignore him
22:11:50 <chromeeeee> he's stupid
22:12:35 <oklopol> yeah he should be banned
22:12:54 <oklopol> lament has already banned him many times because of his outrageous behavior
22:13:09 <oklopol> but his brother is an fbi agent, so there's not much we can do
22:13:45 <oklopol> what with all the drugs and prostitution going on @ the esolang wiki
22:14:01 <chromeeeee> i am a prostitute and a drug
22:14:02 <AnMaster> night
22:14:15 <AnMaster> <fizzie> There's fungot running with cfunge on ppc-32/OS X.
22:14:16 <AnMaster> cool
22:14:16 <fungot> AnMaster: ask again?) :) smileys fall from the blue sky, sadly.)) the .x. .y. stuff is code that loops over each ip....
22:14:19 <AnMaster> so it compiled?
22:14:28 <ais523> <fungot> :) smileys fall from the blue sky, sadly.
22:14:28 <fungot> ais523: so what's the optimal compression thingy for bf-sc? :) imagine if the state paid for the fnord health, therefore you might now want him to beg?!
22:14:29 <chromeeeee> fungot: you are not a prostitute or a drug
22:14:30 <fungot> chromeeeee: hah perl again
22:14:33 <ais523> that's poetry
22:14:46 -!- ais523 has changed nick to fungotty.
22:14:50 <fungotty> fungot: hi
22:14:51 <fungot> fungotty: using esc all the time while awake.' wikipedia
22:14:58 <fungotty> optbot: hi
22:14:59 <optbot> fungotty: yeah
22:15:00 <chromeeeee> wow
22:15:01 <fungot> optbot: one of the copies in http://www.bloodandcoffee.net/ campbell/ proposals/ optional.text. but before css, the scheme model of efficient and concise elegance wins me over the nose every time i see it
22:15:01 <optbot> fungot: what other things?
22:15:02 <fungot> optbot: waiting at 4am for code to be portable i assume? and the tools fro eopl on a regular basis is firefox.
22:15:02 <optbot> fungot: :P
22:15:03 <AnMaster> fizzie, did you need to do anything special to make it compile and work?
22:15:03 <fungot> optbot: ah. of course, impossible in any lower scheme) but it looks like it's fairly simple :p
22:15:03 <chromeeeee> this is amazing micropoetry
22:15:04 <optbot> fungot: G! {M[m(_f)(Fib)!<20>(_f)(fib).?]}
22:15:04 <fungot> optbot: also tell me if this isn't required to actually mutate the original list? ( cadr expr) is sufficient."
22:15:06 <optbot> fungot: ok
22:15:20 -!- fungotty has changed nick to ais523.
22:15:38 <chromeeeee> ":) smileys fall from the blue sky, sadly." "using esc all the time while awake.' wikipedia"
22:15:43 <chromeeeee> two great peieces of art from fungot
22:15:43 <fungot> chromeeeee: now youve failed 365 times.
22:15:48 <chromeeeee> three pieces.
22:16:04 <AnMaster> fizzie, can you run mycology under cfunge on PPC?
22:16:07 <ais523> I like fungot's last comment, I thought it was from a human for a moment
22:16:08 <fungot> ais523: is there an irp interpreter in the mini-funge..." you said did it... :)
22:16:10 <AnMaster> fizzie, I'd love to see the results
22:16:19 <tusho> hmm
22:16:22 <tusho> mibbit died
22:16:43 <ais523> tusho: chromeeeee's still responding to pings
22:16:52 <chromeeeee> butts
22:16:53 <chromeeeee> ah
22:16:54 <chromeeeee> now it works
22:17:43 <AnMaster> fizzie, well I need to sleep, hope you will tell me tomorrow
22:17:44 <AnMaster> night
22:17:56 <chromeeeee> fungot: forth line of poetry?
22:17:57 <fungot> chromeeeee: i must depart now. i'll fix it.)) the golden ratio" achieved by the shortest known 99 bottles of beeron the wall! 97 bottles of beer
22:18:10 <tusho> the longest line yet, and the best
22:18:14 <tusho> the whole thing is poetry don't you think ais523?
22:18:28 <oklopol> what are all these "'s and ))'s
22:18:28 <ais523> 99 bottles of beeron the wall! 97 bottles of beer
22:18:33 <ais523> we should have fungot in #irp
22:18:34 <tusho> it's lamenting on how fast things end (i must depart now)
22:18:34 <fungot> ais523: not exactly scheme, but i didn't had his code and he hadn't died. he was supposed to combine these so that the left and right chunks, would not treat ( foo fnord fnord) are best at fnord fast code by way of combinatory logic, as opposed to
22:18:39 <tusho> and yet how they can continue within ourselves
22:18:40 <ais523> oklopol: fungot isn't very good at punctuation yet
22:18:41 <fungot> ais523: please tell me :) but i guess i left it around here somewhere. i've only skimmed the paper. the web server has been rebooted though the program doesn't
22:18:41 <tusho> (i'll fix it.)
22:18:45 <tusho> and then it has a seperator, ))
22:18:48 <tusho> as if a buffer
22:18:52 <tusho> and we're hit by the next piece of text
22:18:57 <tusho> the golden ratio"
22:18:58 <tusho> cut off
22:19:00 <tusho> what could be there?
22:19:03 <tusho> the point is: we can't know.
22:19:06 <tusho> things are fleeting.
22:19:12 <tusho> "achieved by the shortest known 99 bottles of beeron the wall! 97 bottles of beer"
22:19:21 <tusho> our obsession with achivements, and our illogicalness: 99 to 97?
22:19:24 <tusho> it goes 99, 98, 97
22:19:27 <ais523> someone quotedb this whole conversation for about two screensworth, please
22:19:27 <tusho> but that is mathematics
22:19:35 <tusho> humans are not based on mathematics.
22:19:36 -!- chromeeeee has quit ("http://www.mibbit.com ajax IRC Client").
22:19:40 <tusho> we are illogical, and fungot help us realise this.
22:19:41 <fungot> tusho: well nm then but thx for help :) the number tower is one thing which you might want to sync all possible disks and so on. the scheme system has the best design; however, i'm doing it
22:19:57 <tusho> "well nm then but thx for help :)" the humbleness, denying its own meaning, somehow enrichens the meaning
22:20:06 <tusho> ironically using net speak
22:21:00 <AnMaster> ais523, you do it!
22:21:10 <oklopol> such overwhelming irony
22:21:12 <AnMaster> night really!
22:21:15 <ais523> AnMaster: I have no idea how quotedbs work
22:21:17 <ais523> and night
22:21:21 <tusho> ais523: you select text
22:21:24 <tusho> then you put it in the box
22:21:25 <tusho> and hit submit
22:21:28 <tusho> and watch it get rejected.
22:22:03 <ais523> well let's use ESO's quotedb, then
22:22:10 <ais523> that way you can choose not to reject it
22:22:10 <tusho> yes, that bastion of existance
22:22:25 <tusho> exemplifying the best virtues of existance, apart from existence
22:23:12 <ais523> Define an existing unicorn to be a unicorn that exists. By definition, an existing unicorn exists. As some kind of unicorn exists, therefore, at least one unicorn exists.
22:23:24 <tusho> And it's pink and invisible.
22:23:38 <tusho> (Praise be.)
22:24:08 <ais523> well in NetHack unicorns can be invisible and still black/grey/white
22:24:51 <oklopol> night AnMaster
22:27:44 <oklopol> ais523: where's the logical fallacy in that?
22:29:27 <fizzie> AnMaster: Here's everything I did to make it compile: http://zem.fi/~fis/cfunge.diff.txt -- this is gcc-4.0.1 so therefore the -Wfoo flag commenting; linker here is not GNU ld but "Apple Computer, Inc. version cctools-622.5.obj~13" so the linker flags had to go; and the SOCK getaddrinfo usage would make that last change unnecessary.
22:30:06 <tusho> ((in_addr_t)-1) is a wonderful example of C's ambiguity
22:30:13 <tusho> is that a cast or a subtraction
22:30:32 <ais523> tusho: depends on the namespace of in_addr_t
22:30:38 <oklopol> ais523: well i know the answer myself, so no need to answer, since you most likely know more about logic than me :P
22:30:38 <AnMaster> fizzie, yes FIXME comment is there
22:30:40 <tusho> ais523: of course
22:30:42 <tusho> but even so
22:30:51 <AnMaster> fizzie, as for linker flags please provide a patch that detects linker
22:30:55 <AnMaster> I can fix to detect compiler
22:30:59 <AnMaster> but not linker
22:31:09 <AnMaster> if you can do that: great!
22:31:11 <ais523> AnMaster: autotools?
22:31:18 <AnMaster> better even: check if flag is supported
22:31:21 <AnMaster> by trying to link
22:31:22 <fizzie> AnMaster: And mycology results: http://zem.fi/~fis/mycology.txt
22:31:26 <tusho> http://code.google.com/chromium/ google chrome source
22:31:33 <AnMaster> fizzie, ah no bad
22:32:17 <AnMaster> btw iirc INADDR_NONE is POSIX?
22:32:47 <fizzie> I don't have my copy of POSIX here on this laptop right now.
22:33:04 <ais523> fizzie: what OS is it running? Windows?
22:33:10 <tusho> ais523: os x.
22:33:29 <AnMaster> fizzie, what version of OS X btw?
22:33:39 <ais523> OSX is POSIX, isn't it
22:33:45 <tusho> ais523: and certified unix
22:33:53 <fizzie> AnMaster: It might need some other header, then.
22:34:04 <fizzie> AnMaster: INADDR_NONE is mentioned in the inet_addr man page of this thing.
22:34:12 <ais523> well, Windows didn't fail the UNIX certification tests when it was tested, it's not entirely obvious that it passed either
22:34:22 <tusho> ais523: How on earth did that work?
22:34:25 <tusho> I mean ... fork.
22:34:39 <AnMaster> #include <sys/socket.h>
22:34:39 <AnMaster> #include <netinet/in.h>
22:34:39 <AnMaster> #include <arpa/inet.h>
22:34:44 <ais523> tusho: apparently certain things are allowed to be unimplemented
22:34:49 <AnMaster> fizzie, those are mentioned in my inet_addr man page
22:34:53 <tusho> ais523: But fork is a basic pillar of UNIX!
22:35:02 <fizzie> AnMaster: Same here plus <sys/types.h>.
22:35:02 <AnMaster> fizzie, I include all three
22:35:19 <AnMaster> fizzie, check if it is in sys/types.h please
22:35:30 <ais523> tusho: well Windows has CreateProcess, doesn't it?
22:35:33 <AnMaster> fizzie, anway I include sys/types.h already too
22:35:36 <AnMaster> for other reasons
22:35:36 <tusho> ais523: nowhere near the same thing!
22:35:36 <ais523> that can be used to implement fork eventually
22:35:37 <AnMaster> so..
22:35:54 <ais523> and they'd only have needed an implementation that produced the right answers on the testsuite
22:36:14 <fizzie> It's in <netinet/in.h>, actually; I wonder why it didn't see it.
22:36:50 <AnMaster> #include <netinet/in.h>
22:36:50 -!- ais523 has quit ("going home").
22:36:53 <AnMaster> fizzie, that is included
22:36:55 <tusho> Here is the First Poem of Fungot:
22:36:57 <tusho> [[:) smileys fall from the blue sky, sadly.
22:36:57 <tusho> using esc all the time while awake.' wikipedia
22:36:57 <tusho> now youve failed 365 times.
22:36:57 <tusho> i must depart now. i'll fix it.)) the golden ratio" achieved by the shortest known 99 bottles of beeron the wall! 97 bottles of beer
22:36:58 <tusho> well nm then but thx for help :)]]
22:37:02 <AnMaster> fizzie, so that makes no sense
22:37:29 <fizzie> AnMaster: Ah, it's in <netinet/in.h> but inside a #ifndef _POSIX_C_SOURCE .. #endif block.
22:37:48 <AnMaster> ADD_DEFINITIONS(-D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED)
22:37:59 <AnMaster> fizzie, unless you messed with that too?
22:38:05 <fizzie> I don't think I did.
22:38:10 <AnMaster> fizzie, then why the heck?
22:38:17 <AnMaster> and wtf
22:38:22 <AnMaster> "#ifndef _POSIX_C_SOURCE"?
22:38:26 <AnMaster> you mean "#ifdef"?
22:39:07 <fizzie> No; #ifndef.
22:39:18 <AnMaster> fizzie, ok that is strange
22:39:35 <AnMaster> fizzie, anyway since I plan to replace that :)
22:39:53 <AnMaster> fizzie, oh and you need to come up with a way to find what linker flags are ok
22:40:01 <fizzie> I guess they don't think it's POSIX, and therefore want to avoid introducing that identifier if the program requests POSIX compliance. Can't check the standard right now, though.
22:40:02 <AnMaster> I can do it for compiler flags
22:40:03 <AnMaster> sure
22:40:14 <AnMaster> there is a command for that in cmake
22:40:15 <fizzie> No, I need to sleep. I'll consider that tomorrow. ->
22:40:22 <tusho> fizzie:
22:40:23 <tusho> why
22:40:24 <tusho> do you fins
22:40:24 <AnMaster> fizzie, thanks
22:40:25 <AnMaster> :)
22:40:26 <tusho> all use that ->
22:40:28 <tusho> nobody else does
22:40:42 <AnMaster> tusho, interesting observation
22:40:48 <fizzie> tusho: It's a cultural thing. Being a heathen foreigner, you wouldn't understand.
22:40:50 <AnMaster> night too
22:40:50 <tusho> AnMaster: i've observed it before
22:40:53 <tusho> with oklopol and Deewiant
22:40:54 <tusho> but now fizzie too!
22:40:58 <tusho> also, they all use iki.fi
22:41:07 <tusho> and they all act in just about the same way
22:41:24 <AnMaster> tusho, they are the same person
22:41:28 <AnMaster> using different nicks
22:41:28 <fizzie> It's because we're all clones. Uh, I mean, nothing.
22:41:33 <fizzie> No, really, sleepery.
22:41:33 <tusho> AnMaster: no, there are 2 people in finland
22:41:40 <tusho> i guess they're just really similar.
22:41:45 <tusho> 5 of them are in this channel
22:42:04 <AnMaster> tusho, how many are there in UK and Sweden in your opinion?
22:42:14 <tusho> none
22:42:17 <tusho> UK is finland
22:42:20 <tusho> sweden is the UK
22:42:39 <AnMaster> tusho, ah that is just a fake
22:42:43 <tusho> AnMaster: no
22:42:47 <tusho> you'll understand one day
22:42:49 <AnMaster> tusho, the real Sweden is hidden
22:42:53 <tusho> oh
22:42:57 <tusho> like the swedish language is a hoax?
22:43:05 <tusho> tricksy buggers, you swedes
22:43:06 <AnMaster> tusho, ah no it actually isn't
22:43:08 <tusho> let's ban them all
22:43:09 <tusho> AnMaster: yes it is
22:43:12 <tusho> you talk telepathically
22:43:20 <AnMaster> tusho, not really, we make everyone think it is a hoak
22:43:22 <AnMaster> hoax*
22:43:26 <tusho> wow
22:43:26 <AnMaster> so no one tries to learn it
22:43:41 <tusho> what about hoaxologists
22:43:44 <AnMaster> thus we can talk shit about other ppl on IRC
22:43:48 <AnMaster> without those understanding
22:43:48 <AnMaster> :D
22:43:59 <AnMaster> tusho, what are hoaxologists?
22:44:00 <tusho> noble cause
22:44:06 <tusho> AnMaster: people who olog hoaxes
22:44:19 <AnMaster> tusho, hm I'm not familiar with that
22:44:28 <AnMaster> so afraid I can't really answer
22:44:31 <tusho> AnMaster: they're secret
22:44:34 <tusho> they're hoaxes, too
22:44:37 <AnMaster> tusho, interesting
22:44:58 <tusho> for example: ais523 is a hoax
22:45:02 <AnMaster> tusho, you?
22:45:04 <tusho> but not a hoax if a hoax hoaxes a olog
22:45:09 <tusho> AnMaster: i am an olog
22:45:24 <AnMaster> well I got to say I can't follow you
22:45:30 <AnMaster> you confused me :P
22:45:43 <AnMaster> anyway
22:45:47 <AnMaster> it shouldn't be a olog
22:45:53 <AnMaster> it would be an olog
22:45:57 <AnMaster> tusho, ;P
22:46:09 <tusho> AnMaster: swedes olog hoaxes if they olog hoaxes telepathically with the 5 of the 2 people of sweden in a box that carries the car over there.
22:46:29 <AnMaster> tusho, um we hidden the rest
22:46:36 <AnMaster> there is a total of five billion
22:46:37 <AnMaster> really
22:46:42 <AnMaster> just we hide that too
22:46:45 <tusho> AnMaster: no, no, no, they're like finland
22:46:49 <tusho> except their finland is not a UK
22:46:50 <tusho> hoax
22:46:52 <tusho> ologising
22:46:53 <AnMaster> tusho, no that is *another* hoax
22:47:06 <tusho> AnMaster: no, you're a hoax
22:47:08 <tusho> this conversation is a hoax
22:47:11 <tusho> it doesn't really exist.
22:47:13 <AnMaster> tusho, we really pulled the best 1 April joke on the world
22:47:13 <tusho> you must olog it.
22:47:18 <AnMaster> except we never told anyone
22:47:21 <AnMaster> so they still believe it
22:47:21 <AnMaster> !
22:47:22 <AnMaster> :D
22:47:39 <AnMaster> tusho, not sure I can olog it...
22:47:40 <tusho> AnMaster: ah, but the hoax is not believed by the hoaxologists, who olog hoaxes so that finland is ended
22:47:42 <AnMaster> I can log it though
22:47:45 <AnMaster> just not the o bit
22:47:46 <tusho> simple, really
22:48:03 <AnMaster> oh?
22:48:06 <AnMaster> O(log n)?
22:48:09 <AnMaster> maybe
22:48:14 <tusho> no, that has an n
22:48:15 <tusho> O(log)
22:48:17 <tusho> the very FUNCTION log
22:48:20 <tusho> it's first-class
22:48:21 <AnMaster> ooh
22:48:24 <AnMaster> tusho, hm
22:48:25 <tusho> and a lambda hoax, passed around by finns
22:48:26 <tusho> via UK post
22:48:31 <tusho> in their hoax domes
22:48:37 <tusho> where they invent poems and irc bots and ->
22:48:59 <AnMaster> ok as they said in some Monty Python (dead parrot iirc): This sketch is getting too silly
22:49:06 <AnMaster> and really I need to sleep
22:49:24 <AnMaster> ^<->v
22:55:44 <tusho> but...hoax domes
22:56:55 -!- LinuS has quit ("Puzzi. S์, parlo proprio con te. Puzzi.").
23:18:07 -!- jix has quit (Read error: 104 (Connection reset by peer)).
23:18:11 <tusho> Ok. Ok.
23:18:12 <tusho> Swedes.
23:18:13 <tusho> Finns.
23:18:14 <tusho> UKs.
23:18:17 <tusho> Hoax domes?
23:18:26 <tusho> Not IRC bots, unsurely. ->?
23:33:38 <dogface> Who the heck taught me how a rocket works?
23:33:58 <dogface> Quit parodying my surelies. :-P
23:36:45 -!- minirop has left (?).
โ†2008-09-01 2008-09-02 2008-09-03โ†’ โ†‘2008 โ†‘all