←2008-12 2009-01 2009-02→ ↑2009 ↑all
2009-01-01
00:00:05 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
00:00:21 <oerjan> wow that was rough
00:00:24 <ais523> stupid time.gov missed the leap second
00:00:26 <AnMaster> yes
00:00:27 <ehird> agh
00:00:30 <ehird> i missed it
00:00:31 <ehird> fuck my LIFE
00:00:34 <ais523> I think it stayed on 23:59:59 for two seconds
00:00:36 <ehird> :'(((((((((
00:00:39 <ehird> eklw;rlewjkljfksldffd
00:00:39 <ais523> I know, I was refreshing really quickly
00:00:45 <ais523> that site's clearly badly written
00:00:47 <ehird> ais523: it has a java applet.
00:00:51 <AnMaster> ais523, ntp.lth.se had 59 for 2 seconds
00:00:53 <AnMaster> I think
00:00:54 <ehird> also, it's the official site.
00:01:02 <ais523> ehird: but I don't have javascript on
00:01:07 <ehird> java
00:01:08 <ehird> javascript
00:01:11 <ehird> lern2differenciate
00:01:17 <ais523> I refreshed more than once a second for the relevant period, and it never said 23:59:60
00:01:20 <ais523> ehird: I know the difference
00:01:31 <ais523> but if I don't even turn JS on, what's the chance I run Java?
00:01:58 <ehird> gah, I had all the computery time-keeping devices all loadde
00:02:01 <ehird> and I bloody missed it.
00:02:56 <AnMaster> ehird, look there will be another leap second in a few years
00:03:03 -!- oerjan has set topic: Logs: http://tunes.org/~nef/esoteric/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY NEW YEAR ICELAND.
00:03:06 <ehird> which I'll miss. again.
00:03:41 <AnMaster> oerjan, haha
00:04:05 <Warrigal> Is there a leap second tonight?
00:04:10 <Warrigal> Oh, wait a minute.
00:04:16 <AnMaster> Warrigal, there *was*
00:04:22 <AnMaster> like 4 minutes ago
00:04:27 <Warrigal> Darn, that means I missed it.
00:04:34 <AnMaster> also
00:04:42 <AnMaster> why didn't anyone say: "Happy leap second"
00:04:43 <AnMaster> :(
00:04:58 <Warrigal> I'll have to wait until... not many years from now.
00:04:59 <oerjan> <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
00:05:19 <oerjan> it was that bad. just be glad you missed it.
00:05:28 <ais523> AnMaster: because time.gov missed it
00:05:35 <AnMaster> hah
00:08:30 -!- Mony has joined.
00:16:37 <Mony> re
00:16:50 <oerjan> mi
00:18:51 <ehird> do
00:19:17 <oerjan> sol
00:19:19 <ais523> fa
00:20:39 <Mony> la
00:20:53 <oerjan> ti
00:21:01 <ehird> x
00:21:02 <ehird> i win
00:21:08 <Mony> heh
00:21:11 <Mony> I win
00:21:12 -!- moozilla has joined.
00:22:36 <ehird> moozilla: mooz_?
00:29:18 <oerjan> beware of the mööse for they are böse
00:32:31 <Warrigal> oerjan, is that your final answer?
00:32:36 <Warrigal> You may want to consider "si" instead.
00:33:06 <oerjan> mais non
00:33:39 <fizzie> Despite the superficial similarity, I think it was established that moozilla and mooz are completely separate people.
00:33:44 <ehird> o
00:33:46 <ehird> heyyy fizzie
00:33:50 <ehird> start using lowercase again
00:33:51 <ehird> :\
00:34:03 <ehird> atm you're one of two fizzies, one was in 2002/2003
00:34:09 <ehird> and this one is in now
00:34:13 <oerjan> fizzie: do they look similar except for glasses?
00:35:11 <oerjan> also, happy new year
00:36:06 <fizzie> Happy new; although this time zone had it quite a while ago.
00:36:15 <fizzie> I don't think I'll go back to lowercase, though.
00:36:27 <ais523> Happy today!
00:36:31 <ehird> fizzie: DO IT
00:36:32 <oerjan> but it's all the rage
00:38:46 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
00:38:52 -!- moozilla has joined.
00:40:02 <AnMaster> ehird,
00:40:04 <AnMaster> /var/log/kern.log:Jan 1 00:59:59 tux [903182.515007] Clock: inserting leap second 23:59:60 UTC
00:40:06 <AnMaster> :P
00:40:11 <ehird> 00:59:59
00:40:16 <ehird> QED
00:40:25 <AnMaster> well
00:40:32 <AnMaster> how did the kernel know how to do it?
00:40:37 <ais523> it inserted the leap second at 00:59:59 so it was there at 00:59:60
00:40:39 <ais523> and ntpd tells it
00:40:39 <AnMaster> does it contain a database or something
00:40:43 <ehird> bto
00:40:46 <ehird> ntp
00:40:46 <ehird> also
00:40:50 <ehird> just tried it locally
00:40:52 <AnMaster> ais523, oh? a special system call or?
00:40:52 <ehird> leap second just delays
00:40:56 <AnMaster> ehird, ah
00:41:00 <ehird> AnMaster: no, just ntp
00:41:03 <AnMaster> well
00:41:04 <ais523> Jan 1 00:00:00 dell kernel: [ 9654.690507] Clock: inserting leap second 23:59:60 UTC
00:41:05 <ehird> it just delays the clock
00:41:07 <AnMaster> it was in kern.log
00:41:08 <ehird> ais523: yes but
00:41:09 <ais523> there's something wrong about the timing there...
00:41:10 <AnMaster> which means kernel source
00:41:12 <ehird> it doesn't actually hit 23:59:60
00:41:16 <ehird> it emulates the leap second
00:41:17 <ehird> = broken
00:41:20 <ehird> time _repeats_
00:41:21 <ehird> seriously
00:41:23 <ais523> yes, POSIX leap seconds are broken
00:41:24 <ehird> it actually repeats the second
00:41:27 <AnMaster> well
00:41:29 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
00:41:31 <AnMaster> it was in the kernel log
00:41:34 -!- metazilla has joined.
00:41:40 <ehird> AnMaster: and?
00:41:42 <AnMaster> the message did not come from ntp, but from the kernel
00:41:46 <Warrigal> What Unix time were the leap second and its twin sister?
00:41:55 <AnMaster> Warrigal, no idea
00:41:58 <ehird> AnMaster: the kernel would never do leap seconds if ntp didn't tell it to.
00:42:05 <Warrigal> Hm.
00:42:09 <ehird> as they're set arbitrarily by humans
00:42:18 <AnMaster> ehird, yes but what system call...
00:42:36 <ehird> shrug
00:43:03 <ais523> there is a system call in there somewhere, almost certainly
00:43:03 <Warrigal> The twin sister is 00:00:00 on January 1, 2009. So 2009 - 1970 plus leap years, times 86400.
00:43:05 <AnMaster> getdate(3p):
00:43:05 <AnMaster> %S Seconds [00,60]. The range goes to 60 (rather than stopping at 59) to allow positive leap seconds to be expressed. Since leap
00:43:06 <AnMaster> seconds cannot be predicted by any algorithm, leap second data must come from some external source.
00:43:08 <AnMaster> interesting
00:43:10 <AnMaster> so
00:43:15 <AnMaster> that is a posix man page
00:43:16 <ehird> AnMaster: yes, but it's not actually used.
00:43:21 <ehird> also
00:43:23 <AnMaster> heh
00:43:24 <ehird> that is not posix
00:43:25 <ehird> almost certainly
00:44:00 <ehird> hrm.
00:44:00 <ehird> http://cr.yp.to/proto/utctai.html
00:44:46 <AnMaster> ehird, it is a 3p page
00:44:53 <AnMaster> that is text copied from posix standard
00:44:54 <ehird> yeah its localtime() that's fucked
00:44:55 <ehird> it seems
00:45:20 <ais523> AnMaster: it's adjtimex(2)
00:45:26 <AnMaster> ah
00:45:26 <ais523> that deals with leap seconds
00:46:25 <AnMaster> hum
00:46:29 <AnMaster> only in return value?!
00:46:38 <AnMaster> according to man page
00:46:43 <ais523> yes, that puzzled me too
00:46:53 <ehird> i wonder how much yp.to costs djb
00:47:10 <ais523> I think it's one of the possible options for the "mode selector" option in the struct
00:47:25 <AnMaster> ais523, well the mode selector doesn't define such an option there
00:47:31 <ais523> "time offset"?
00:47:48 <ais523> no idea, really
00:47:50 <AnMaster> ais523, that could be ntp doing "jump time" and it may do that for lots of other reasons
00:47:51 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy.").
00:47:55 <AnMaster> like initial adjustment
00:47:57 <AnMaster> and so on
00:48:06 <AnMaster> which happens most of the time at boot
00:48:22 <ais523> yes, I suppose so
00:48:41 <AnMaster> and I don't get leap seconds then
00:49:17 <AnMaster> int status; /* clock command/status */
00:49:24 <AnMaster> maybe that?
00:49:33 <AnMaster> can't find a description of it there
00:52:29 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
00:52:36 -!- moozilla has joined.
00:55:14 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
00:55:22 -!- moozilla has joined.
00:58:35 -!- atrapado has quit ("Abandonando").
01:05:13 <GregorR> Argh, I'm being defeated by plastic
01:05:17 <GregorR> (And glue)
01:05:21 <ehird> coo
01:06:39 <flexo> JNGNEUGNEGNE
01:06:40 <flexo> neughara
01:06:45 <flexo> idsnrt ibepm zu b eutrjne
01:06:47 <ehird> ...
01:06:48 <flexo> ,..,,,,,,,,,,,,,
01:06:49 <ehird> flexo: stop
01:06:53 -!- oerjan has set topic: Logs: http://tunes.org/~nef/esoteric/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY NEW YEAR AZORES.
01:06:53 <flexo> no nwayx
01:06:58 <flexo> NEYWAEREar
01:07:02 <ehird> flexo: you're drunk
01:07:03 <ehird> confirm/deny
01:07:03 <flexo> way to guvkreignv
01:07:04 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
01:07:05 <flexo> yes i wam
01:07:15 <ais523> who's flexo?
01:07:17 <ehird> flexo: you might want to avoid irc :P
01:07:20 <ehird> ais523: person
01:07:21 <flexo> O
01:07:24 <flexo> _IEAM NO'
01:07:24 <flexo> tt
01:07:32 <flexo> baoyy
01:07:35 <flexo> new year
01:07:37 <flexo> evesonw
01:07:37 -!- moozilla has joined.
01:07:37 <flexo> e
01:07:39 <ehird> gdf
01:07:40 <ehird> afij
01:07:41 <ehird> new
01:07:43 <ehird> yarjijoer
01:07:45 * ehird is cool
01:07:46 <flexo> this might be just noehtier
01:07:49 * oerjan doesn't have _that_ much trouble typing on irc when drunk. admittedly that's not often.
01:07:50 <flexo> esoteric
01:07:52 <ais523> hapy new years eve, flexo
01:07:53 <flexo> langwuaflege
01:07:54 <flexo> wo whar
01:07:55 <flexo> :)
01:07:59 <ehird> esoteric langwuaflege. :D
01:08:01 <ais523> or happy new year
01:08:06 <ais523> which it probably is, at least to me
01:08:08 <ais523> *for me
01:08:14 * ais523 is not drunk, just tired
01:08:28 <flexo> you know
01:08:31 <flexo> i can tyepe
01:08:40 <ehird> not very well.
01:08:45 <flexo> xa well
01:08:53 <ehird> no, i assure you you are typing badly
01:09:01 <flexo> :)
01:09:04 <flexo> bu
01:09:05 <flexo> t
01:09:12 <flexo> i wote some
01:09:20 <flexo> whatsd the wor
01:09:21 <flexo> e
01:09:21 <flexo> d
01:09:24 <ehird> flexo: write an esoalng interpreter while drunk
01:09:27 <ehird> it will be amazing
01:09:40 <flexo> i'm jus t deayoing
01:09:41 <oerjan> it will cmolipe pfercetly
01:09:45 <flexo> i wrong yapi.b
01:09:48 <flexo> hence
01:09:50 <flexo> i
01:09:54 <flexo> ', entitelted
01:10:00 <ehird> this is great
01:10:00 <flexo> to be drunkt
01:10:02 <flexo> rihgt now
01:10:56 <flexo> sorry
01:11:05 <flexo> maybe you know
01:11:10 <flexo> maybe you dont
01:11:13 <flexo> aynway
01:11:14 <flexo> im
01:11:16 <flexo> knida
01:11:18 <flexo> drunk
01:11:28 <ehird> flexo: "kinda"
01:11:34 <flexo> yeqa :)
01:11:41 <ehird> i'm going to ping AnMaster now so I can laugh at him ranting against alcohol, twice the fun
01:11:45 <flexo> gotta eat some paracetamol
01:11:53 <flexo> oh
01:11:58 <flexo> a nd i stole some..d
01:12:05 <flexo> dont know the name
01:12:12 <ehird> XD
01:12:12 <flexo> christmas tree balls?
01:12:16 <AnMaster> night all
01:12:24 <ais523> night AnMaster
01:12:24 <ehird> WAIT AnMaster
01:12:34 <flexo> very shiny balls
01:12:39 <ais523> ehird: why is it AnMaster you expect to rant against alcohol?
01:12:40 <flexo> glizering
01:12:42 <ais523> why not me, for instance/
01:12:46 <ehird> ais523: because he always does
01:12:50 <ehird> whenever alcohol is mentioned
01:12:57 <ais523> ehird: well, I haven't drunk in years
01:13:05 <flexo> but i only got threee
01:13:14 <ehird> flexo: only three?! ;'(
01:13:14 <flexo> other balls were too risky
01:13:45 <flexo> anyway
01:13:51 <flexo> i'm getting sobar eninga
01:13:52 <flexo> aain
01:13:54 <flexo> gai
01:13:55 <ehird> sure you are
01:13:56 <flexo> gains
01:13:58 <flexo> again
01:14:00 <flexo> so
01:14:14 <AnMaster> well
01:14:15 <ehird> flexo: are yuo sure? yuo seem a bdrit drunnnnkkkkkk
01:14:18 <AnMaster> who is flexo?
01:14:19 <AnMaster> new here?
01:14:26 <ehird> few ddays nwew
01:14:29 <AnMaster> ais523, also I never ever drunk alcohol
01:14:32 <ehird> see
01:14:34 <ehird> told ya
01:14:43 <flexo> AnMaster: i invedted the brainfuck module divission aivleorighe :(
01:14:46 <flexo> algithrihmn
01:14:51 <AnMaster> but talking to a currently drunk person about it would be useless
01:14:52 <ehird> yeah he's famous.
01:14:54 <ehird> an oldbie.
01:14:55 <AnMaster> ehird, ^
01:14:58 <flexo> :)
01:15:02 <flexo> exacgtly
01:15:02 <ehird> AnMaster: talking to drunk people is easy.
01:15:06 <ais523> AnMaster: I used to, but I haven't for years
01:15:10 <ais523> because I realised I didn't like it
01:15:14 <AnMaster> ehird, what he says make no sense
01:15:18 <AnMaster> when he is drunk
01:15:21 <ehird> sure it does, he's just making typos.
01:15:21 <AnMaster> it is unreadable
01:15:22 <flexo> no it makes all sense
01:15:25 <flexo> see
01:15:31 <flexo> i wrote a setence without errors
01:15:36 <ehird> not that one :P
01:15:36 <AnMaster> lucky
01:15:42 <AnMaster> and what ehird said
01:16:35 <flexo> d*b stil sinst here
01:16:45 <flexo> wjat am i doing here
01:17:03 <ehird> flexo: talking
01:17:06 <flexo> right
01:17:06 <flexo> so
01:17:09 <flexo> you people
01:17:13 <flexo> awake an andthing
01:17:20 <ehird> yeah i'm awake
01:17:22 <flexo> can solve my.. rjomg
01:17:24 <flexo> thing
01:17:27 <flexo> so
01:17:28 <ehird> whats the problem
01:17:32 <flexo> toadskin
01:17:38 <flexo> you know TS?
01:17:45 <ehird> yeah
01:17:48 <flexo> alright
01:17:48 <ehird> isn't that a sub-tc thingy?
01:17:53 <flexo> TS is not CS
01:17:54 <flexo> TC
01:17:56 <flexo> but!
01:18:02 <ehird> http://billglover.com/software/toadskin/ hm
01:18:03 <flexo> if TC hat no ring-buffer
01:18:04 * ais523 gives themself a link: http://esolangs.org/wiki/Toadskin
01:18:12 <flexo> nd the accumulator was stored on the callstack
01:18:17 <flexo> would it be TC?
01:18:22 <ehird> hrm.
01:18:24 <ehird> dunno :D
01:18:36 <flexo> figure it out plz, thanks
01:19:00 <flexo> i think it woudl be
01:19:11 <ais523> the Toadskin page says it's TC; is it lying?
01:19:11 <flexo> but it's just an assumption
01:19:15 <flexo> ydes
01:19:17 <flexo> it's lying
01:19:21 <ehird> why is it not tc?
01:19:22 <flexo> in many ways
01:19:38 <flexo> the referene tc interpreter it so buggy, it's not usable
01:19:42 <ais523> well, its only unlimited-size storage is a single stack
01:19:53 <flexo> [] is broken in the rereference interpreter
01:19:54 <ais523> which just screams "PDA" to me
01:20:03 <ehird> ah
01:20:24 <flexo> and even if it was implemented correctly its still not TC
01:20:25 <ais523> it also has a "ring buffer" for the arguments
01:20:31 <ais523> but the spec doesn't explain how that works
01:20:38 <flexo> because it's jujst a stimple 1 stackmachine
01:20:40 <ais523> and IME ring buffers have been finite-sized
01:20:45 <flexo> but
01:20:51 <flexo> if you remove the stupid ringbbuffer
01:20:59 <flexo> and add the accumulator to the callstack
01:21:08 <flexo> i thing it *might* m
01:21:10 <flexo> be TC
01:21:15 <flexo> not sure thoufht
01:21:16 <ais523> flexo: can you get variables unlimitedly deep in the callstack?
01:21:18 <ehird> maybe
01:21:22 <flexo> ais523: nope
01:21:24 <flexo> you dont need to
01:21:27 <ais523> if there's any limit at all, it can't be TC without some other sort of data storage
01:21:52 <flexo> ais523: well, as long as the callstack and the argstack are not limited....'
01:21:56 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
01:22:03 -!- moozilla has joined.
01:22:08 <ais523> flexo: wait, would there be two stacks then?
01:22:09 <flexo> the problem is that the ampoutnt of words you can define are limited
01:22:12 <flexo> yes
01:22:13 <ais523> and could you pop one whilst pushing the other?
01:22:17 <ais523> in that case, it might work
01:22:19 <flexo> yes
01:22:28 <flexo> but the amount of words are limied
01:22:43 <flexo> the question is if the amount of words are enough to prove TC
01:23:01 <flexo> (in my "enhanced" TS)
01:23:06 <ehird> write a bf interp in them.
01:23:14 <flexo> thats my plan
01:23:16 <flexo> but im drunk#
01:23:17 <flexo> :)
01:23:21 <ehird> flexo: alternatively, turing machine
01:23:23 <ehird> minsky machine
01:23:24 <ehird> iota
01:23:24 <ehird> ...
01:23:27 <flexo> 2,3 TM, yea
01:23:28 <ehird> the possibilities are endless
01:23:33 <ehird> 2,3? thank ais523 for that
01:23:41 <ehird> if he hadn't proved it was TC that might not be enough ;-)
01:23:43 <ais523> don't try to implement the 2,3 to prove TCness
01:23:47 <flexo> oh. that was him?
01:23:51 <ehird> flexo: yeah
01:23:53 <ehird> ais523: why not?
01:23:55 <ais523> because you need some way to set up the input tape correctly
01:23:55 <flexo> oh.
01:23:57 <ais523> which is a pain
01:24:06 <ehird> sure, but as long as you can prove its the right 2,3...
01:24:07 <flexo> famous people in here
01:24:10 <ais523> most programming languages don't like handling an infinite amount of input
01:24:13 <ehird> flexo: indeed
01:24:22 <flexo> :)
01:24:33 <ais523> and "this program is TC, but it takes infinitely long to run" tends not to ring well with programmers
01:24:43 <ehird> a program cannot be tc...
01:24:53 <ais523> well, it could be an interpreter for a TC language
01:25:13 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
01:25:14 -!- metazilla has joined.
01:25:15 <ehird> yeah
01:25:35 <flexo> so
01:25:44 <flexo> ais523, being my personal god
01:25:54 <flexo> is my enhanced TS TC?
01:26:06 <ais523> flexo: I admit I don't understand exactly how it works
01:26:09 <ais523> I think it's likely to be, though
01:26:22 <ais523> as you have recursion to manipulate the function stack
01:26:26 <ais523> and < and > to manipulate the arg stack
01:26:28 <ais523> it'll look weird, though
01:26:37 <flexo> yes.. but a limited amount of words
01:26:49 <flexo> so you cant go as deep in the callstack as you want
01:26:50 <ais523> you don't normally need many if it's TC at all
01:26:54 <flexo> thats the problem
01:26:55 -!- LinuS has quit ("Puzzi. S, parlo proprio con te. Puzzi.").
01:26:58 <ais523> it might be doable even with 1
01:27:18 <ais523> although when I've done TCness proofs before normally about 5 or 6 of what corresponds to a Toadskin function is enough
01:27:23 <ais523> do you have a fixed interp I could tinker with?
01:27:30 <flexo> yes
01:27:38 <flexo> but only for the "described" TS
01:27:43 <flexo> not for my improved one
01:27:53 <flexo> but it should be easy to extend
01:27:55 <flexo> :)
01:28:12 <flexo> my interpreter doesnt push acc to cs
01:28:14 <flexo> ts
01:28:16 <flexo> cs
01:28:42 <flexo> http://flexotec.eu/~flexo/toadskin.rbhttp://flexotec.eu/~flexo/toadskin.rb
01:28:44 <flexo> errr
01:28:50 <flexo> http://flexotec.eu/~flexo/toadskin.rb
01:29:09 <flexo> that one is not TC for sure
01:29:21 <flexo> just a simple stackmachone
01:30:04 <flexo> okay
01:30:06 <flexo> i think
01:30:10 <flexo> i just got to the point
01:30:19 <flexo> phoning ex-gilfrirends
01:30:46 <flexo> luckily i rembembered to get my phone off the cord a couple o ouard ago
01:31:28 <ehird> flexo: you said you were getting sober :P
01:32:45 <flexo> oh amnit
01:33:00 <flexo> "the requested .. thinge.. doesnt ajsnwer"
01:33:03 <flexo> :(
01:33:03 -!- KingOfKarlsruhe has quit (Remote closed the connection).
01:33:56 <flexo> i think i should tkae some paracetammal
01:34:01 <flexo> and get som slee
01:34:01 <flexo> p
01:34:56 <ehird> flexo: ++
01:35:40 <flexo> anforunatly
01:35:52 <flexo> i cant talk to ##c without being id.djd
01:35:55 <flexo> id-ed
01:35:59 <flexo> so i geusss
01:36:08 <flexo> this kinda makes a ponit for paracetmaotl
01:36:11 <flexo> +sleeep
01:36:43 <flexo> but
01:36:43 <ehird> bye.
01:36:48 <flexo> ex-girlfriends :(
01:36:51 <ehird> bye.
01:36:53 <ehird> :P
01:37:13 <flexo> i dont wanna annoy them... butl... but!
01:37:18 <ehird> BYE.
01:37:36 <oerjan> ^ul (sl)S(e)(:^)(::::^^^^)^^S(p)S
01:37:36 <fungot> sl ...out of time!
01:37:38 <flexo> what about the last one?
01:37:41 <oerjan> what the
01:37:46 <ehird> flexo: no. sleep.
01:37:50 <flexo> :(
01:38:02 <oerjan> oh wait
01:38:12 <oerjan> ^ul (sl)S(e)(:*)(::::****)^^S(p)S
01:38:12 <fungot> sleeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeep
01:38:15 * ais523 tries to figure out what oerjan was doing
01:38:18 <ehird> flexo: sleep so you don't regret it tomorrow. :P
01:38:29 <ais523> and ah, it becomes a lot more obvious once I see the corrected program
01:38:39 <oerjan> how surprising
01:38:41 <flexo> ehird: good poinr
01:38:53 <ehird> :)
01:39:09 <flexo> alright then
01:39:14 <flexo> goot night ;)
01:39:35 <ehird> bye :)
01:42:32 <flexo> alright
01:42:42 <oerjan> ^ul (sl)S(e)(:*)(:*)(::**)^^^S(p)S
01:42:42 <fungot> sleeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeep
01:42:45 <flexo> gave root-access o my servers to some scriptkiddie
01:42:49 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
01:42:52 <flexo> reaylly time to go now#
01:42:53 <ais523> flexo: why?
01:42:54 <ehird> flexo: don't.
01:42:56 <ehird> morning.
01:42:57 <ehird> regret.
01:42:59 <ehird> undo. that.
01:43:12 <flexo> no. known him for like... 8 years
01:43:18 -!- metazilla has joined.
01:43:20 <ehird> some script kiddie
01:43:24 <flexo> he's okay. somewhat:)
01:43:42 <flexo> he just wants to flood some servers
01:43:52 <ehird> i see.
01:43:58 <oerjan> friends help you move. real friends help you move bodies.
01:43:58 <flexo> my ones being hosted in .nl i'm okay with that
01:44:35 <ehird> script kiddie friends ask you to help them flood servers
01:45:01 <flexo> worst case scenario - my ex-gf can no longer convert youtbue videos to mp3 with that box
01:45:07 <flexo> i suppose i can live with that
01:45:21 <ehird> aren't you, y'know, legally liable?
01:45:29 <flexo> .nl
01:45:55 <ehird> it's legal to ddos in .nl? er, k.
01:45:58 <flexo> even if ".nl" is not so much of a legally argument
01:46:00 <oerjan> so tomorrow we wake up to learn someone nuked the netherlands. nothing to worry about.
01:46:12 <flexo> the people hes attacking are scrkiptkiides aswell ;)
01:46:28 <ehird> the only winning move is to kill yourself.
01:46:49 <flexo> oh well
01:47:00 <flexo> i'm way to drunk to think about these things
01:47:09 <flexo> the funny thing is
01:47:25 <flexo> that guy got some other guy to got me drunk in the first place
01:47:33 <flexo> and i know that before i got there
01:47:36 <flexo> :)
01:48:16 <flexo> but i demolished a bank before that
01:48:26 <flexo> i got other stuff to worry about
01:48:42 <flexo> (you know, with video surveilannce and stuff)
01:48:58 <ehird> ah. had you mentioned the bank demolishing
01:48:59 <flexo> fun fun fun
01:49:06 <ehird> i don't thikn i would have worried about the script kiddie root access.
01:49:11 <flexo> :)
01:49:17 <ais523> note that I cannot condone any illegal behaviour
01:49:27 <flexo> yea well
01:49:28 <ehird> ais523: what, is silence implicit consent now?
01:49:31 <flexo> it's new year
01:49:35 <flexo> everything
01:49:36 <oerjan> depends. did the script kiddie help him with the bank demolishing?
01:49:38 <flexo> 's forgiven
01:49:39 <ehird> rapists all around the world are excited
01:49:42 <ais523> ehird: no, only in B
01:50:02 <ehird> how do you demolish a bank anyway
01:50:03 <ehird> bulldozer it?
01:50:18 <flexo> nah, just the stuff you can access
01:50:23 <flexo> like the doors, ATMs and stuff
01:50:40 <ehird> new year sure does bring out the best in everyone.
01:50:46 <flexo> :)
01:51:08 <flexo> living in a hicksville
01:51:18 <flexo> moving to munich tomorrow
01:51:35 <flexo> i'm failry certain noone will ever trace this to me :)
01:51:56 <oerjan> i suggest you make a new year's resolution not to demolish any more banks.
01:52:05 <flexo> eehehee
01:53:18 <flexo> koaky
01:53:20 <flexo> sleepp
01:53:23 <flexo> defnitnv now
01:53:25 <flexo> *sleeeps*
01:58:56 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
01:59:03 -!- moozilla has joined.
01:59:41 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
01:59:45 -!- metazilla has joined.
02:02:26 -!- oerjan has set topic: Logs: http://tunes.org/~nef/esoteric/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY NEW YEAR SOUTH GEORGIA.
02:03:15 <ehird> i want to be drunk without the drunkness
02:03:19 <ehird> therefore I will pretend to be drunadjsh
02:03:20 <ehird> kd
02:03:22 <ehird> drn
02:03:23 <ehird> driml
02:03:25 <ehird> drunk
02:04:10 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
02:06:40 <oerjan> a itn of drynkent meoer jut anpone
02:06:58 <ehird> pradon
02:07:03 <ehird> i k;'' think i should lslepp
02:07:10 <ehird> i murederjded thre r dogs
02:08:27 <oerjan> i tnink yno sjoukd bt jubd to amimajs
02:09:08 <oerjan> imless tgir trsllt annyiobd
02:09:26 <ehird> sory, i have iouhr no ufkcings iodea what you are talking abtiuuuuu
02:09:56 <oerjan> i guess typing with one finger without looking at the keyboard is sorta overdoing it
02:10:49 <Warrigal> I will type with one finger without looking at the keyboard now.
02:11:00 <Warrigal> hpe sm iu cffoiungh
02:11:10 <Warrigal> Again...
02:11:23 <oerjan> yfat pribrs my tdeiry
02:12:22 <Warrigal> csm i[p jtdu mt npe
02:12:52 <Warrigal> can you hear me now
02:12:57 <Warrigal> I was consistently too far right.
02:13:13 <ehird> aopky doooooooooooo
02:13:15 <ehird> p eople
02:13:16 <Warrigal> Just like [disliked right-leaning political group]!
02:13:17 <ehird> how mnay banks
02:13:20 <ehird> dhave you demofloished
02:13:23 <ehird> ttttttttttttttttttttttttttttttttttttttttttttttttttt
02:13:25 <ehird> toady
02:13:28 <ehird> a]]]at onnnnnnkewsyears
02:13:35 <ehird> ]]]]]]]]]]]]I Aowojjjjjjist u kinda lisloiding ojver thek eynabrbod
02:13:37 <ehird> keyboard
02:13:40 <oerjan> in soviet russia, banks demolish YOU
02:13:40 <ehird> sliding
02:13:42 <ehird> im
02:14:26 <oerjan> impnbsetbetil
02:15:04 <oerjan> once mire eoth geekunf
02:15:28 <oerjan> geekunf is such a household word
02:15:59 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
02:16:08 -!- moozilla has joined.
02:16:20 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:16:28 -!- moozilla has joined.
02:17:57 <oerjan> hmph 2009 is not prime. i want my money back!
02:18:40 <bsmntbombdood> 7 7 41
02:20:10 <Warrigal> 2009 -> 2030 -> 203 -> 210 -> 21 -> eh, that's a multiple of 7.
02:20:27 <oerjan> i guess we'll have to wait until 2011.
02:21:47 * Warrigal ponders the primeness of 2003
02:22:13 <oerjan> seems so
02:22:25 <Warrigal> Not divisible by 7, or 11... I'm bored.
02:32:54 <psygnisfive> wait till 2012
02:32:58 <psygnisfive> ZOMG ESCHATON
02:33:11 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:33:11 -!- metazilla has joined.
02:33:31 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
02:33:37 -!- moozilla has joined.
02:36:57 -!- oerjan has quit ("You Maya KEEPA YOUR 2012").
02:51:08 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:51:20 -!- moozilla has joined.
02:55:29 <GregorR> SO CLOSE TO HEAD MOUNTED DISPLAY
03:10:11 <psygnisfive> guys
03:10:28 <psygnisfive> the mayan writing system has got to be the best example of an esoteric writing system
03:10:30 <psygnisfive> seriously
03:10:56 <GregorR> Idonno, Linear-A is pretty esoteric (by the actual meaning of the word)
03:11:00 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:11:05 -!- moozilla has joined.
03:11:10 <psygnisfive> Linear A isn't esoteric at all :P
03:12:04 <psygnisfive> mayan glyphs are mostly phonemic so they represent sounds
03:12:16 <psygnisfive> but they have crazy rules for how you write the sounds
03:12:37 <psygnisfive> and not only that but each sound has something like an average of 15 ways it can be written, simply for diversity's sake
03:13:19 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:13:27 -!- moozilla has joined.
03:19:46 -!- Mony has quit ("Quit").
03:35:46 -!- moozilla has quit (Connection reset by peer).
03:44:26 -!- kar8nga has joined.
04:00:21 <bsmntbombdood> hrm
04:00:40 <bsmntbombdood> don't they say that C isn't turing-complete because you can do sizeof(int*)?
04:00:52 <bsmntbombdood> but you don't need pointers to be turing complete do you?
04:01:10 <bsmntbombdood> you can just use recursion and allocate as much as you need on the stack
04:01:59 <psygnisfive> the argument is fallacious
04:02:27 <psygnisfive> any given C program as compiled at any given moment cannot be turing complete because of that
04:02:35 <bsmntbombdood> huh?
04:02:38 <psygnisfive> but the same is true of any program period, since no computer has infinite memory
04:02:46 <bsmntbombdood> ...you're an idiot
04:02:49 <psygnisfive> what?
04:02:54 <psygnisfive> excuse me?
04:03:02 <bsmntbombdood> i'm talking about C the language, not an implementation thereof
04:03:02 <psygnisfive> im answering your question, asshole
04:03:05 <psygnisfive> yes i know that
04:03:08 <psygnisfive> now shut up and listen
04:03:41 <psygnisfive> the argumentation for saying that C as a language isn't turing complete comes from the fact that sizeof(int*) is defined at compile time for the intended machine its supposed to run on
04:04:16 <GregorR> DAMN YOU PLASTIC
04:04:16 <bsmntbombdood> C isn't necessarily compiled
04:04:19 <GregorR> DAAAAAMN YOOOOOOU
04:04:38 <psygnisfive> furthermore, since sizeof(int*) can never be infinite, you never can address infinite memory
04:04:57 <psygnisfive> so, the argument goes, C cannot be TC
04:05:02 <bsmntbombdood> ...
04:05:12 <psygnisfive> thats what they say. not me.
04:05:20 <bsmntbombdood> C is turing complete without pointers
04:05:31 <psygnisfive> listen, im just telling you what they say :)
04:05:42 <GregorR> Yes, C minus pointers is TC.
04:05:47 <bsmntbombdood> ...i know what they say
04:05:51 <psygnisfive> the argument is irrelevant anyway since all programming languages are like that in some regard
04:05:55 <bsmntbombdood> <bsmntbombdood> don't they say that C isn't turing-complete
04:06:05 <GregorR> C with pointers is not. Just choosing not to use pointers is not sufficient, since by the definition of C everything is addressable, even if you don't use the address.
04:06:36 <psygnisfive> furthermore, any program imaginable can infact be run so C-as-a-whole (INCLUDING compile-time definition of sizeof(int*)) is turing complete
04:08:42 <psygnisfive> because if your machine doesnt have enough memory you do what everyone does, add more, then try again.
04:08:54 <psygnisfive> (actually i think i misspoke, i think sizeof(int*) is run-time defined not compile time)
04:09:16 <bsmntbombdood> a machine can't be turing complete
04:09:21 <psygnisfive> no real machine can, no.
04:09:23 <bsmntbombdood> we already know that
04:09:29 <psygnisfive> but you know what i mean
04:10:00 <psygnisfive> the language is TC if you talk about C as a whole, not just C-as-it-is-wrought-with-some-particular-sizeof(int*)
04:22:22 -!- kar8nga has left (?).
04:40:44 <Ilari> Err... How one would store the potentially unbounded amount of data in C without using pointers (assuming elements don't have to have valid addresses)?
04:42:38 <Ilari> The call stack could store unbounded amount of data, but its just one LIFO stack, which is not sufficent for TC.
04:58:12 -!- Warrigal has left (?).
05:24:44 <psygnisfive> sure it is, ilari. functional programming languages do it perfectly well.
05:24:59 <psygnisfive> granted you dont use just a stack. you do all sorts of substitution stuff as well in that model
05:25:23 <psygnisfive> but thats not the same as just stack machine
05:25:24 <psygnisfive> far from it.
05:44:57 <GregorR> Step one of my wearable computer is done :)
06:09:21 <psygnisfive> oh?
06:18:16 <GregorR> I've converted a Myvu Crystal into a compact one-eye version for mounting onto glasses.
06:29:00 <psygnisfive> cool
06:35:32 -!- moozilla has joined.
06:35:35 <GregorR> http://www.facebook.com/photo.php?pid=30230927&l=7b22a&id=1055580469
06:38:07 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
06:38:08 -!- metazilla has joined.
06:49:52 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
06:49:55 -!- metazilla has joined.
06:52:36 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
06:52:55 -!- metazilla has joined.
07:04:48 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
07:04:50 -!- moozilla has joined.
07:07:29 -!- metazilla has joined.
07:07:34 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
07:07:39 -!- metazilla has changed nick to moozilla.
07:22:23 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
07:22:49 -!- moozilla has joined.
07:29:55 <psygnisfive> lol
07:29:56 <psygnisfive> cute
07:40:23 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
07:40:49 -!- moozilla has joined.
07:41:07 -!- SpaceManPlusPlus has joined.
07:42:03 -!- SpaceManPlusPlus has quit (Client Quit).
07:58:20 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
11:26:41 -!- moozilla has joined.
11:37:14 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
12:03:56 -!- ais523 has joined.
12:04:17 <ais523> is the new year counter still going?
12:39:49 -!- DonQuijote has joined.
12:39:55 <DonQuijote> hi
12:40:13 <ais523> hi
12:41:20 -!- DonQuijote has left (?).
12:41:30 <ais523> ...
12:50:36 -!- moozilla has joined.
13:02:17 -!- metazilla has joined.
13:02:17 -!- moozilla has quit (Connection reset by peer).
13:02:29 -!- metazilla has changed nick to moozilla.
13:04:38 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:20:07 -!- oerjan has joined.
13:20:29 <oerjan> it's STILL on South Georgia? how disappointing
13:20:42 <ais523> well, I don't think there are any countries at -13
13:20:52 <ais523> so we've reached the end of our new year updater
13:21:11 <oerjan> s/reached/crashed/
13:21:32 <oerjan> hm indeed
13:21:52 <ais523> oerjan: it's having a sort of Y2K bug
13:21:55 <ais523> but with hours rather than years
13:21:56 -!- oerjan has set topic: Logs: http://tunes.org/~nef/esoteric/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY NEW YEAR EARTH.
13:26:04 -!- KingOfKarlsruhe has joined.
14:13:59 -!- oerjan has quit ("leaving").
14:26:28 <flexo> oh.. my head..
14:30:39 -!- moozilla has joined.
14:31:38 -!- ehird has left (?).
14:31:40 -!- ehird has joined.
14:31:42 -!- ehird has left (?).
14:31:46 -!- ehird has joined.
14:31:48 -!- ehird has left (?).
14:31:52 -!- ehird has joined.
14:31:54 -!- ehird has left (?).
14:31:58 -!- ehird has joined.
14:32:00 -!- ehird has left (?).
14:32:04 -!- ehird has joined.
14:32:06 -!- ehird has left (?).
14:32:10 -!- ehird has joined.
14:32:12 -!- ehird has left (?).
14:32:16 -!- ehird has joined.
14:32:24 -!- ehird has left (?).
14:32:28 -!- ehird has joined.
14:32:30 -!- ehird has left (?).
14:32:34 -!- ehird has joined.
14:32:36 -!- ehird has left (?).
14:32:40 -!- ehird has joined.
14:32:42 -!- ehird has left (?).
14:32:46 -!- ehird has joined.
14:32:48 -!- ehird has left (?).
14:32:52 -!- ehird has joined.
14:32:54 -!- ehird has left (?).
14:32:58 -!- ehird has joined.
14:33:06 -!- ehird has left (?).
14:35:42 -!- ehird has joined.
14:36:06 <ehird> that was some _nasty_ bouncerfuckage
14:36:14 <ehird> that was some _nasty_ bouncerfuckage
14:36:21 <ais523> ehird: you're repeating yourself
14:36:32 <ehird> ais523: the logs didn't show me as saying that yet
14:36:34 <ehird> they're lagged
14:36:35 <ehird> so I tried again
14:36:36 <ais523> I'm not sure if it's deliberate or more bouncer weirdness
14:36:39 <ais523> ah, and ok
14:36:45 <ehird> happy mailman lists reminder day
14:37:02 <ais523> why is the Australian reminder day /after/ the European and American ones today?
14:37:17 <ehird> because australia went forward in time or sth
14:37:21 <ehird> xD
14:38:54 <ehird> http://www.facebook.com/photo.php?pid=30230927&l=7b22a&id=1055580469
14:38:57 <ehird> ^ lol
14:38:59 <ehird> (from GregorR)
14:39:07 <ehird> it looks like 2000 as seen from 1970
14:43:59 -!- ehird has set topic: Logs: http://tunes.org/~nef/esoteric/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY BIRTHDAY EARTH.
14:44:10 -!- ehird has set topic: LOGS: HTTP://TUNES.ORG/~NEF/ESOTERIC/ | WE SURVIVED THE LEAP SECOND AND ALL WE GOT WAS ... WAIT, WHERE IS MY T-SHIRT? | HAPPY BIRTHDAY EARTH.
14:47:45 <GregorR> Yes, because the world was "born" on New Years day :P
14:47:55 <ehird> Yes.
14:47:56 <ehird> Yes it was.
14:48:16 <ais523> GregorR: there's about a 1 in 365.2422 chance...
14:48:24 <ehird> GregorR: If you prefer, I could change it to "HAPPY BIRTHDAY CALENDAR".
14:49:15 <ais523> ehird: what makes you think the calendar was started on january 1?
14:49:19 <GregorR> ais523: No. No there is not. As the formation of a planet takes substantially longer than a day, and there's no agreement on what exact moment the planet is considered to be a planet rather than a ball of primordial ooze.
14:49:21 <ais523> especially as new year used to be march 1
14:49:25 <ehird> it wasn't
14:49:29 <ehird> duh
14:49:29 <ehird> :P
14:49:40 <ais523> GregorR: hmm... you could take the median opinion, or something
14:49:55 <ais523> and I think the exact moment is the moment it pulls itself into an approximate sphere under its own gravity
14:50:17 <ais523> I think it's a mathematical fact whether an object is doing that or not
14:51:11 <ehird> not mathematical fact, surely
14:51:17 <ehird> scientific, sure
14:51:25 <ais523> ehird: if you have accurate enough measurements of the location of all the relevant rocks
14:51:35 <ais523> and their velocities and weights
14:51:38 <ehird> well, tru.
14:51:49 <ais523> you can determine via simulation if they're pulling themselves into a sphere under their own gravity or not
14:53:13 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:53:21 -!- moozilla has joined.
14:53:53 <ehird> I want to build a full universe simulator. (For a quantum Infinity Machine, naturally.)
14:55:46 -!- metazilla has joined.
14:55:46 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:55:56 -!- metazilla has changed nick to moozilla.
15:01:31 <ais523> ehird: not a multiverse simulator?
15:01:37 <ais523> you'll need one to simulate quantum stuff
15:01:37 <ehird> ais523: Just run multiple instances.
15:01:50 <ehird> Also, isn't that only with many worlds?
15:02:06 <ehird> Many Worlds would be fun though. I'd tune into the world where everything was batshit insane.
15:08:04 <ehird> You know, I never thought I'd come up with an actual use for markov chains.
15:08:29 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
15:08:31 <ais523> ehird: LZMA?
15:08:39 <ehird> LZMA compresses with markov chains?
15:08:45 <ehird> Weird
15:08:47 <ais523> among other things
15:08:48 <ehird> .
15:08:52 <ais523> it doesn't exactly use markov chains
15:08:57 <ais523> not random ones, anyway
15:09:19 <ais523> I think recording the 'random' numbers needed to generate the actual text is shorter than recording the text itself
15:09:24 <ais523> and that's how the trick works
15:09:30 <ehird> ha
15:09:41 <ehird> but no, that's not it
15:09:53 <ais523> ofc it's not that simple
15:11:29 <ehird> now I will wait for someone to ask me what
15:11:59 <AnMaster> I heard lzma was very good
15:12:09 <AnMaster> and my tests shows it is slightly better than bzip2
15:12:19 <ais523> more than slightly better IME
15:12:20 <AnMaster> for your average tar file at least
15:12:42 <AnMaster> ais523, may depend on size I guess, for example gzip is better than bzip2 at really small files
15:12:52 <AnMaster> I guess bzip2 has more header overhead
15:12:57 <AnMaster> or something like that
15:13:01 <ais523> lzma compresses really slowly but decompresses quickly
15:13:05 <AnMaster> true
15:13:20 <AnMaster> ais523, isn't it what 7zip use too?
15:13:27 <ehird> yes
15:13:29 <ais523> I don't know
15:13:33 <ehird> the reference lzma impl is from 7zip iirc
15:13:51 <AnMaster> heh
15:14:00 <ehird> thing about windows archivers (not 7zip):
15:14:02 <AnMaster> ehird, 7zip compresses very well, even for zip and such too
15:14:06 <ehird> they all give you like a 1000 day trial
15:14:07 <ehird> and then
15:14:10 <ehird> LET YOU KEEP USING IT
15:14:25 <AnMaster> advpng uses 7zip's deflate compression implementation to shrink pngs by quite a bt
15:14:26 <AnMaster> bit*
15:14:27 <ehird> they just make you wait $days_product_has_been_used settings before de-graying "Continue"
15:14:34 <ehird> wel
15:14:35 <ehird> l
15:14:35 <ehird> less
15:14:41 <ehird> it's like 5 seconds per year.
15:14:56 <AnMaster> ehird, eh?
15:15:24 <AnMaster> also I never used those windows compression programs
15:15:27 <AnMaster> apart from 7zip
15:15:32 <AnMaster> and 7zip has been ported to *nix too
15:15:33 <ehird> eh what?
15:15:35 <ais523> ehird: that's because they can't compete against each other if they try to charge
15:15:41 <ehird> ais523: well, exactly
15:15:43 <AnMaster> ehird, oh yes windows xp has zip built in
15:15:43 <ehird> but it's ridiculous
15:15:48 <ehird> AnMaster: yeah, it's awful.
15:15:53 <AnMaster> ehird, indeed
15:16:17 <ais523> p7zip is the Unix port of 7-Zip, a file archiver that archives with
15:16:18 <ais523> very high compression ratios.
15:16:22 <AnMaster> ehird, I just use tar.bz2 since it support for opening it is way more common than tar.lzma
15:16:30 <ais523> although they just ported the algo, not the interface
15:16:36 <AnMaster> ais523, I have it installed if I need to use it
15:16:40 <ehird> AnMaster: And much less common than tar.gz & .zip
15:16:43 <ehird> :P
15:16:50 <AnMaster> ehird, depends on your audience
15:16:51 <ais523> I think it's best to offer in multiple formats
15:16:58 <AnMaster> tar.gz is more common yes
15:16:58 <ais523> ideally ones that people haven't heard of but can open anyway
15:17:02 <ehird> I download code in tar.bz2, offer it in tar.gz, and offer other things in .zip
15:17:24 <AnMaster> ehird, I see no reason to use zip
15:17:38 <ehird> yes because you live in a world where everyone uses linux.
15:17:44 <AnMaster> or *bssd
15:17:47 <AnMaster> *bsd
15:17:53 <AnMaster> also I know OS X can open them
15:17:56 <ais523> ehird: it's not like the average Windows user can't open a .gz nowadays
15:18:00 <ehird> yes, it would help if your world was less of a fantasy
15:18:03 <ehird> ais523: can winzip do it?
15:18:09 <ais523> on most of the random cybercafe Windows computers I find, double-clicking a .gz works
15:18:16 <ehird> I regularly encounter people asking what a .rar is, and afaik only 7zip/winrar are the common archivers that can do .gz on windows
15:18:22 <ais523> all sorts of random programs open them, I think winzip might be one
15:18:26 <AnMaster> ehird, .rar is a pain
15:18:29 <AnMaster> closed
15:18:37 <ehird> AnMaster: it is useful for certain cases
15:18:44 <ais523> actually, IIRC winzip decompresses .tar.gz into .tar
15:18:47 <ais523> and can also open .tar
15:18:48 <ehird> due to its built-in split-archive-in-multiple-parts and verification stuff
15:18:50 <ais523> so you have to run two nested instances
15:18:56 <AnMaster> ehird, oh? compression ratio is less than 7zip iirc
15:19:04 <ehird> compression ratio isn't always everything
15:19:06 <ais523> also, IE saves .tar.gz files as .tar.tar because it confuses the file associations
15:19:23 <AnMaster> ais523, nice one
15:19:28 <AnMaster> so
15:19:30 <AnMaster> .tgz
15:19:34 <AnMaster> and .tbz2
15:19:38 <ais523> I had great fun after downloading CLC-INTERCAL
15:19:44 <AnMaster> ais523, oh?
15:19:46 <ais523> because the uncompressed files ended .tar
15:19:47 <AnMaster> it uses compress?
15:19:52 <ais523> wait, no
15:19:55 <AnMaster> ais523, huh what?
15:19:55 <ais523> the compressed files ended .tar
15:19:59 <ais523> and the uncompressed files ended .gz
15:20:03 <AnMaster> haha
15:20:05 <ais523> for some reason I fail to figure out
15:20:11 <ehird> i think that the separation of tar and gzip/bzip2/etc is a problem
15:20:16 <AnMaster> ais523, err the reason: it's intercal
15:20:26 <ehird> if the compression format knows more about the structure of the directory tree, surely it could do a better job?
15:20:35 <AnMaster> maybe
15:20:56 <AnMaster> ehird, on the other hand separating them follows the unix philosophy
15:21:05 <ais523> AnMaster: no, it was browser+decompresser borkage
15:21:10 <ehird> the unix philosophy isn't exactly ideal in all cases.
15:21:10 <AnMaster> ais523, ah
15:21:15 <AnMaster> ehird, true
15:21:24 <ais523> I thought CLC had done it deliberately, but it turned out he hadn't
15:21:27 <ehird> and I highly doubt anyone here uses a machine that actually subscribes to it
15:21:39 <AnMaster> ais523, is that the usual result of .tar.gz?
15:21:40 <ais523> although with a note that he might have done it if he thought of it
15:21:40 <ehird> e.g. find(1)
15:21:42 <AnMaster> on windows
15:21:45 <ehird> a kitchen sink program if I ever saw one
15:21:50 <ais523> AnMaster: I don't think so, it depends a lot on what's in the registry
15:21:57 <ais523> which rather depends on the order in which you installed things
15:21:59 <ehird> $any_desktop_environment_ever
15:22:04 <AnMaster> ehird, I use find a lot and yes it is too complex
15:22:20 <ais523> ehird: find is actually a generalised iteration command
15:22:24 <AnMaster> need to check man page a lot
15:22:32 <ais523> it's sort of like the loop construct in MAGENTA
15:22:33 <ehird> not only does it dump a directory tree, it also filters based on a myriad of things, executes programs, and its command-line syntax is different from just about every other unix command
15:22:45 <ais523> which IIRC can take while and if and do and for and until and unless and foreach all at the same time
15:22:47 <ehird> heck, it even bloody has boolean operations with parenthical grouping!!
15:22:52 <ais523> ehird: so does test
15:22:59 <ehird> ais523: and it's not unixy either
15:23:19 <ais523> would you call awk unixy?
15:23:21 <ais523> what about sed?
15:23:28 <ais523> what about bc?
15:23:29 <ehird> that's different, they're metaprograms
15:23:32 <ehird> they're minilanguages
15:23:32 <AnMaster> what about sh?
15:23:35 <ais523> ehird: so is find
15:23:39 <AnMaster> and so is test
15:23:42 <ehird> ais523: yes, but it's an unneeded one
15:23:45 <ehird> because it integrates into sh
15:23:50 <AnMaster> ehird, err find doesn't
15:23:50 <ehird> and yet disobeys sh's general principle
15:23:51 <ehird> s
15:23:54 <ehird> AnMaster: yes it does
15:23:54 <AnMaster> and
15:23:59 <ehird> you're meant to use it in a shell script or from the command line
15:24:03 <AnMaster> ehird, no it is a separate program, not a builtin
15:24:07 <ehird> /facepalm
15:24:08 <ehird> shut up.
15:24:12 <ais523> ehird: would you be happier if find were a shell builtin?
15:24:15 <ehird> ais523: no
15:25:02 <AnMaster> ais523, I think he would be happier if find read the parameters from stdin
15:25:03 <AnMaster> :D
15:25:13 <ehird> sigh
15:25:27 <ais523> ehird: would you consider ls -R | grep to be more unixy?
15:25:34 <ehird> Yes.
15:25:45 <AnMaster> ais523, I would consider it to be buggy for edge cases and a lot slower
15:25:47 <ehird> It does one thing, does it well, and slots into other programs in a pipe.
15:25:48 <ais523> ehird: the problem is that it runs kind-of slowly on a large directory tree
15:25:55 <AnMaster> just consider newlines in filenames
15:25:57 <ehird> Although `ls -R` is a bit suspicious.
15:25:58 <AnMaster> and yes it is slow
15:26:03 <ehird> yes, of course it's freaking slow
15:26:06 <ais523> AnMaster: ls -R0, then
15:26:13 <ehird> unix-philosophy-compliant software _is_ slo
15:26:13 <AnMaster> ais523, is that posix?
15:26:13 <ehird> w
15:26:16 <ehird> that's why it's not always ideal
15:26:19 <ais523> AnMaster: no, it's GNU
15:26:25 <AnMaster> ais523, then...
15:26:25 <ehird> but that does not change the fact that find is not UNIXy
15:26:41 <GregorR> ...
15:26:44 <ais523> ehird: do you think it's OK to have non-UNIXy things in UNIX, as an optimisation?
15:26:49 <GregorR> 'find' is not unixy?!
15:26:57 <ais523> which does the same as a unixy thing would, but faster and more reliably?
15:26:58 <AnMaster> ehird, also you could do find . -name 'foo' | xargs foo
15:27:11 <ehird> GregorR: Plz look up the UNIX philosophy. ais523: Yeah. I don't like how find does it, though.
15:27:24 <AnMaster> ehird, how do you dislike find?
15:27:30 <ehird> I've already listed that.
15:27:42 <ais523> ehird: I think the UNIX philosophy is at least partially to do with not allowing philosophy to get in the way of useful productivity
15:27:43 <AnMaster> that it isn't unixy?
15:27:52 <ehird> ais523: no, that's worse is better
15:27:54 <GregorR> ehird: So is test un-unixy?
15:27:58 <ehird> GregorR: Yes.
15:28:04 <AnMaster> GregorR, no
15:28:06 <ehird> AnMaster: You can do a non-unixy program and still have it look like other unixy programs.
15:28:11 <AnMaster> it is a mini language like sed
15:28:11 <ais523> ehird: what about pcregrep?
15:28:11 <GregorR> ehird: I'd love to see your if expressions in sh scripts X_X
15:28:13 <ehird> Also, I believe he addressed _me_.
15:28:22 <ehird> GregorR: I am not advocating for the unix philosophy.
15:28:33 <ehird> Find is useful. I use it.
15:28:33 <ais523> ehird: Just because someone asks you a question, does that mean that other people can't answer/
15:28:35 <ehird> But it's not UNIX-y.
15:28:54 <ehird> ais523: when it's a totally subjective question addressed to a person on one side of an argument, the other side butting in with an answer without reasoning is pretty stupid.
15:29:04 <ais523> ehird: I was hoping someone else would answer
15:29:04 <AnMaster> ehird, I did reason
15:29:05 <AnMaster> :P
15:29:17 <AnMaster> <AnMaster> it is a mini language like sed
15:29:17 <GregorR> ehird: Is /lib/ld.so UNIXy?
15:29:19 <GregorR> X-P
15:29:28 <ehird> Your mom is UNIXy.
15:29:31 <ehird> Apart from the "do it well part".
15:29:32 <ehird> Oh snap.
15:29:37 <ehird> s/well part"/well" part/
15:29:59 <AnMaster> GregorR, ls: cannot access /lib/ld.so: No such file or directory
15:30:09 <GregorR> AnMaster: On Linux it's ld-linux.so
15:30:13 <AnMaster> GregorR, here it is /lib/ld-linux-x86-64.so.2
15:30:13 <GregorR> I was using the classic UNIX name :P
15:30:17 <ais523> personally, I think the main /practical/ implications of the UNIXy philosophy is to have a breakable pipe
15:30:28 <ais523> so you can look at intermediate state anywhere, and tinker
15:30:29 <AnMaster> GregorR, that is yet another one
15:30:33 <ehird> % ls /lib
15:30:33 <ehird> ls: cannot access /lib: No such file or directory
15:30:35 <ais523> * fix the grammar in that
15:30:38 <ehird> Look at me! My system is different too!
15:30:46 <ais523> ehird: Mac OS, or GoboLinux?
15:30:50 <ehird> Former.
15:30:55 <ehird> GoboLinux br0ked up.
15:31:02 <ais523> actually, GoboLinux probably has a /lib, just it's full of symlinks to where everything actually is
15:31:03 <GregorR> /AbsurdLibraryDirectoryName
15:31:14 <ehird> [ehird:/] % ls -l .|grep etc
15:31:15 <ehird> lrwxr-xr-x 1 root admin 11 2006-12-14 12:34 etc -> private/etc
15:31:18 <ehird> WHAT IS THIS HERESY
15:31:25 <AnMaster> ehird, eh?
15:31:38 <AnMaster> ehird, yes OS X has those
15:31:45 <ehird> What?
15:31:49 <ehird> Has those whats.
15:31:51 <AnMaster> iirc it has a /lib symlink too
15:31:54 <ehird> No.
15:31:55 <ehird> It doesn't.
15:32:01 <ehird> It has /usr/lib, but not /lib.
15:32:01 <AnMaster> ehird, /etc symlink at least
15:32:08 <ehird> what the fuck did I just paste?
15:32:11 <ehird> 15:31 <ehird> [ehird:/] % ls -l .|grep etc
15:32:12 <ehird> 15:31 <ehird> lrwxr-xr-x 1 root admin 11 2006-12-14 12:34 etc -> private/etc
15:32:15 <AnMaster> ehird, yes
15:32:16 <AnMaster> indeed
15:32:24 <AnMaster> <ehird> [ehird:/] % ls -l .|grep etc
15:32:24 <AnMaster> <ehird> lrwxr-xr-x 1 root admin 11 2006-12-14 12:34 etc -> private/etc
15:32:24 <AnMaster> <ehird> WHAT IS THIS HERESY
15:32:24 <AnMaster> even
15:32:34 <AnMaster> so I thought you were shocked at your find
15:32:43 <ehird> no, I was joking
15:32:44 <ehird> % which python
15:32:44 <ehird> /Library/Frameworks/Python.framework/Versions/2.6/bin/python
15:32:48 <ehird> ^ more unix sins
15:32:56 <AnMaster> /usr/bin/python here
15:33:09 <AnMaster> ehird, echo $PATH | wc -c
15:33:13 <AnMaster> :P
15:33:28 <ehird> 304 but I have a bunch of unrelated crap in it that i used ages ago
15:33:44 <ehird> AnMaster: also
15:33:44 <AnMaster> 97 on freebsd, 150 on gentoo
15:33:52 <ais523> 155 here
15:34:00 <AnMaster> ehird, yes?
15:34:01 <ehird> [ehird:/] % ls -l /usr/local/bin/python
15:34:01 <ehird> lrwxr-xr-x 1 root wheel 24 2008-12-15 16:57 /usr/local/bin/python -> /usr/local/bin/python2.6
15:34:02 <ehird> [ehird:/] % ls -l /usr/local/bin/python2.6
15:34:04 <ehird> lrwxr-xr-x 1 root wheel 63 2008-12-15 16:52 /usr/local/bin/python2.6 -> /Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
15:34:08 <AnMaster> right
15:34:16 <AnMaster> ehird, tell me, why is the first one not a relative symlink?
15:34:17 <Asztal> 568, I win
15:34:23 <Asztal> (windows)
15:34:26 <ehird> AnMaster: Dunno.
15:34:26 <AnMaster> Asztal, err going low was the goal
15:34:32 <ehird> Yes, he was being sarcastic.
15:34:36 <Asztal> I set my own goals :D
15:34:44 <AnMaster> Asztal, fine :)
15:34:47 <ehird> ehird@rutian:~$ echo $PATH
15:34:47 <ehird> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
15:34:57 <ehird> /usr/games should be at the start :|
15:34:58 <ais523> here's a good way to chear
15:35:01 <AnMaster> $ echo $PATH
15:35:01 <ais523> *cheat
15:35:03 <AnMaster> /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin
15:35:05 <AnMaster> which is odd
15:35:07 <ehird> the single most important directory on a unix system
15:35:07 <ais523> $ PATH=""; echo $PATH | wc -c
15:35:09 <AnMaster> since X11 isn't installed
15:35:12 <AnMaster> on that freebsd box
15:35:14 <ais523> guess what that prints (where the $ is the prompt)
15:35:17 <ehird> ais523: YOU ONLY CHEAT YOURSELF
15:35:26 <ehird> zsh: command not found: wc
15:35:30 <ehird> I WIN
15:35:34 <ehird> that's a base 255 number
15:35:40 <ais523> well, yes, although not zsh for me
15:35:41 <AnMaster> ais523, "sh: command not found"
15:35:43 <AnMaster> or something like that
15:35:56 <ehird> >>> sum(map(ord,a))
15:35:56 <ehird> 2415
15:36:02 <ehird> that can't be right
15:36:02 <ehird> oh
15:36:05 <ehird> I need the * 255
15:36:26 <ehird> 178431884530883387476741383738549825960794060434521223987627869
15:36:29 <ehird> that's how long my PATH is.
15:36:31 <AnMaster> ehird, what?
15:36:41 <ais523> AnMaster: ehird interpreted their path as a base 255 number for some reason
15:36:45 <AnMaster> ah
15:36:46 <ehird> no
15:36:48 <ehird> I did ais523's command
15:36:49 <ais523> given that there are 256 possibilities for bytes
15:36:49 <ehird> and got this
15:36:50 <ehird> zsh: command not found: wc
15:36:53 <ais523> oh, ok
15:36:56 <ehird> so that's obviously my path length as a base 256 number
15:37:05 <ehird> oh wait it's actually 196770863739160564595263608359723940742411945884540670408947555
15:37:11 <AnMaster> haha
15:37:16 <ais523> btw, you'd probably better restart that shell
15:37:16 <ais523> unless you have some way to get your path back to normal
15:37:29 <ehird> "source .zshrc" would do it.
15:37:30 <AnMaster> ais523, . /etc/profile?
15:37:32 <ehird> but I just closed it.
15:37:50 <AnMaster> ais523, you could just do it in a subshell
15:37:51 <ehird> fun fact: my .zshrc loads my .bash_profile
15:37:54 <ehird> and that's where my PATH is.
15:37:57 <AnMaster> by doing ( ) around it
15:38:04 <ehird> i don't know why either
15:38:04 <AnMaster> (PATH=""; echo $PATH | wc -c)
15:38:05 <ais523> yes, I know
15:38:10 <ais523> I thought the joke was funnier this way
15:38:17 <AnMaster> heh
15:38:44 <AnMaster> ehird, err it isn't base 256
15:38:48 <AnMaster> it is base 128
15:39:04 <ehird> "zsh: command not found: wc"
15:39:06 <ehird> that's a sequence of bytes.
15:39:11 <ehird> a byte is 0..255
15:39:19 <AnMaster> ehird, yes but notice all are below 127
15:39:24 <Asztal> heh, 879 characters in MSYS. :)
15:39:24 <ehird> 444
15:39:29 <ehird> that's a base 5 number
15:39:30 <AnMaster> so I suggest they are in fact signed
15:39:34 <ehird> because it has no digits above 4.
15:39:43 <ais523> AnMaster: in fact, all are below 126
15:39:50 <AnMaster> ais523, that too then
15:39:51 <ais523> also, balanced base 256?
15:39:56 <ais523> that would be ridiculous
15:40:01 <AnMaster> ais523, sounds great
15:40:19 <AnMaster> ais523, but how would it work?
15:40:39 <ais523> AnMaster: the same way as balanced base 3
15:40:39 <AnMaster> ais523, -256..256?
15:40:45 <AnMaster> ah wait
15:40:46 <ais523> and no, -128..127
15:40:50 <AnMaster> -128..127 yes
15:40:54 <AnMaster> ais523, signed char in fact
15:40:56 <ais523> just like any well-behaving 8-bit signed char
15:41:00 <ais523> in 2's complement
15:41:04 <AnMaster> yes
15:41:25 <ehird> incidentally, did you guys hear about the zune bug?
15:41:28 <AnMaster> hm what is it for base 4.. quaternary?
15:41:33 <ehird> all first generation 30gb zunes broke at exactly the same time
15:41:40 <ehird> well, within an hour or so of each other
15:41:49 <AnMaster> ehird, wtf?
15:41:50 <ais523> ehird: yes, because the firmware didn't take the possibility of a leap year into account
15:41:53 <ehird> yep
15:41:53 <ehird> http://www.zuneboards.com/forums/zune-news/38143-cause-zune-30-leapyear-problem-isolated.html
15:41:55 <AnMaster> hah
15:41:56 <ehird> the code that caused the problem
15:41:57 <ehird> hilarious
15:42:03 <AnMaster> ais523, will they unbrick them?
15:42:13 <AnMaster> or are they not bricked?
15:42:13 <ehird> AnMaster: just reset the clock
15:42:26 <ehird> so it doesn't go into that code path
15:42:31 <ais523> AnMaster: apparently you can get them working again by draining the battery, then turning them on some time that isn't in 2008
15:42:42 <AnMaster> ais523, and update the firmware?
15:42:42 <ehird> ais523: which amounts to resetting the clock.
15:42:46 <ais523> ehird: yes
15:42:48 <ehird> AnMaster: they haven't released a fix yet
15:42:52 <ehird> i guess they're waiting until tuesday :-P
15:42:55 <ais523> ehird: actually, that is the fix they released
15:43:00 <ehird> heh
15:43:05 <ehird> they have 4 years to fix it
15:43:10 <ehird> although wait that'll be 2012
15:43:14 <ehird> we'll be dead by the time it matters.
15:43:17 <Badger> oh shi-
15:43:21 <ehird> ...
15:43:22 <ehird> maybe
15:43:22 <ehird> zunes
15:43:24 <ehird> locking up
15:43:26 <ehird> destroys the universe
15:43:30 <Badger> :o
15:43:33 <ehird> like, they power the dyson sphere we're in
15:43:35 <ehird> and it like explodes
15:43:37 <ehird> and the universe ends
15:43:38 <ais523> ehird: or maybe the universe doesn't end in 2012?
15:43:42 <ehird> ais523: SHUT UP
15:43:47 <Badger> agreed
15:43:50 <ehird> :D
15:44:00 <AnMaster> why on earth
15:44:02 <GregorR> Badger: Badger Badger Badger Badger Badger Badger Badger Badger Badger Badger Badger
15:44:02 <AnMaster> a loop
15:44:06 <AnMaster> that makes no sense
15:44:06 <ais523> IIRC Discordianism says it'll end in 9661, they thought it was 1996 but they were reading it upside-down
15:44:07 <ehird> GregorR: MUSHROOM MUSHROOM
15:44:08 <Badger> GregorR: GregorR GregorR GregorR GregorR GregorR GregorR GregorR GregorR GregorR
15:44:14 <AnMaster> some simple math would be way faster
15:44:20 <ehird> AnMaster: it's embedded software.
15:44:23 <ehird> who knows what the fuck it's for.
15:44:29 <AnMaster> ehird, it lacks integer division?
15:44:37 <ehird> i bet it ends up as more efficient than arithmetic
15:44:40 <AnMaster> could be
15:44:44 <ehird> :D
15:45:05 <ehird> although "year += 1"? please, everyone knows "++year" is faster</troll>
15:45:31 <ais523> ehird: year += 1 is equivalent to ++year
15:45:34 <AnMaster> ehird, only if the compiler really really sucked at optimising
15:45:36 <Asztal> no, you have to do asm("inc year") if you want the real power!
15:45:38 <ehird> jesus fucking christ
15:45:39 <ehird> '</troll>'
15:45:41 <ehird> are you all DENSE
15:45:42 <ais523> but in theory, both are faster than year++ without optimisation
15:45:44 <Badger> YES
15:45:44 <ehird> it means i'm making a goddamn JOKE
15:45:50 <AnMaster> ehird, I was playing along
15:45:52 <ais523> ofc, everyone optimises it away in practice
15:45:56 <ehird> AnMaster: no, no you weren't
15:45:57 * Badger whacks ehird with a cluebat
15:45:58 <ehird> playing along wiould be
15:46:01 <ehird> 15:45 <Asztal> no, you have to do asm("inc year") if you want the real power!
15:46:01 <ais523> well, every even slightly optimising compiler
15:46:06 <ehird> this:
15:46:07 <ehird> 15:45 <AnMaster> ehird, only if the compiler really really sucked at optimising
15:46:08 <ehird> is not playing along
15:46:09 <AnMaster> <ais523> but in theory, both are faster than year++ without optimisation <-- hm?
15:46:29 <ais523> AnMaster: year++ has to initialise a temporary register to hold the old value of year, in theory
15:46:36 <AnMaster> ais523, oh, right
15:46:39 <ais523> in practice it makes no difference as any sane compiler notices it isn't used
15:46:49 <ehird> Note to self: never, ever make a joke in #esoteric.
15:46:59 <ais523> ehird: why not, I enjoy the resulting discussions
15:47:05 <Badger> crazy people have no sense of humou
15:47:07 <ehird> it's not a discussion, it's tedious crap that we all know
15:47:07 <Badger> r
15:47:16 <ehird> we all know it's optimized to be the same
15:47:19 <ehird> that's why it's a joke
15:47:29 <ehird> unless someone is confused, it can be taken as read that we get the bloody context
15:47:46 <ais523> the context can still be interesting, though
15:47:53 <ehird> :|
15:47:56 <ais523> and just because you get it, doesn't mean that clog does. Or fungot.
15:47:56 <fungot> ais523: man, this fucking sucks. teddy rubskin also has a presentation on wheat that i think about it.
15:48:16 * ais523 tries to figure out whether that's an argument for or against
15:48:43 <ehird> ais523: fungot never gets anything though.
15:48:44 <fungot> ehird: hey, i brought you here today. sonic heroes sucks. teddy rubskin also has a presentation on wheat that i think we're the only people who give two shits about you. do you ever think maybe it was your problem? maybe you just can't handle all the data i'm sending you.
15:48:45 <ehird> nor does clog.
15:48:52 <Badger> fungot is fast.
15:48:53 <fungot> Badger: i mean, there's a huge grasshopper in here and he's flying all around! somebody get this grasshopper out of here, or is it just me?
15:48:54 <ehird> fungot: that is a lot of data.
15:48:55 <fungot> ehird: listen. that ball thing hurts. and that suit? it never comes off.
15:48:57 <ehird> ^style
15:48:58 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft pa* speeches ss wp
15:49:02 <ehird> i guessed it was PA
15:49:08 <ais523> ^style pa
15:49:08 <fungot> Selected style: pa (around 1200 transcribed Penny Arcade comics)
15:49:28 <ehird> "sonic heroes sucks." and the apparent large-amounts-of-verbatim-text tipped me off
15:49:41 <ehird> also, profanity
15:49:42 <Badger> ^style discworld
15:49:43 <fungot> Selected style: discworld (a subset of Terry Pratchett's Discworld books)
15:49:46 <ehird> i am the master of fungot
15:49:46 <fungot> ehird: " oook?" said nanny, running along behind. he had a fnord look.
15:49:48 <Badger> fungot: o hai
15:49:49 <fungot> Badger: a flicker made her turn her head. the world isn't always as people see it." vimes hesitated. " i never said he was always the first to bustle up to vimes was mr boggis of the thieves' guild this morning?"
15:50:05 <Badger> ^style speeches
15:50:05 <fungot> Selected style: speeches (misc. speeches from Project Gutenberg)
15:50:14 <AnMaster> fungot, hello
15:50:15 <Badger> uh-huuuhhh.
15:50:16 <fungot> AnMaster: a popular origin cannot therefore be the characteristical distinction of a popular representative. this belongs equally to all parts of legislature the most odious and imbecile misgovernment. but, if i could say one word out of my wits. i don't allow any ghosts to bite me, and i do not remember that in speaking to you with a text, and i bless god for my safe fnord i know of no set of men living. these he does not unde
15:50:26 <ehird> ^style
15:50:26 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches* ss wp
15:50:32 <ehird> ^style ic
15:50:33 <fungot> Selected style: ic (INTERCAL manual)
15:50:39 <AnMaster> that one rocks
15:50:39 <ehird> PLEASE NOTE FUNGOT
15:50:39 <Badger> fungot: o hai
15:50:40 <fungot> Badger: e017 do you expect the logical and orthogonal behaviour?)
15:50:44 <ehird> PLEASE NOTE fungot
15:50:44 <fungot> ehird: the first intercal compiler apart from constant folding optimization). whitespace is ignored nearly everywhere; the only potential problems may be missing the shell `bash' which can be considered to be abstained from and therefore problems may be able to concatenate together your input is being linked to the optimizer can't guarantee at compile time in some ways than some other languages.
15:50:53 <ehird> :DDDDDDDDDD
15:50:58 <ehird> ais523: plz use this as the c-intercal manual
15:51:10 <ais523> ehird: I could just run it through M-x dissociated-press
15:51:14 <ais523> but it might garble the formatting
15:51:17 <ehird> this is better
15:51:21 <ais523> besides, I like the manual to actually be useful
15:51:21 <AnMaster> ais523, wtf is M-x dissociated-press
15:51:25 <ehird> ...
15:51:25 <ais523> AnMaster: what fungot does
15:51:26 <fungot> ais523: there are more limited.) he also invented in 1972, but you use, you can uninstall it by using an appropriate logic operation on them; and sets it to unweave from all other threads that is, 16- or 32-bit).
15:51:29 <GregorR> ^style ff7
15:51:29 <fungot> Selected style: ff7 (Full script of the game Final Fantasy VII)
15:51:30 <ais523> if I've got the name right
15:51:30 <AnMaster> ais523, ah
15:51:34 <Badger> fungot: wuh
15:51:34 <fungot> Badger: spying, murder... you just might be pretty exciting. i almost fell over....
15:51:35 <GregorR> fungot: Hello
15:51:36 <fungot> GregorR: please help me! the power of science.
15:51:36 <ehird> actually ais523 dissociated-press is letter based
15:51:41 <ehird> hahaha
15:51:42 <ais523> ehird: I think it has the option
15:51:43 <ehird> those two were great
15:51:50 <GregorR> ^style
15:51:51 <fungot> Available: agora alice darwin discworld europarl ff7* fisher ic irc lovecraft pa speeches ss wp
15:51:57 <GregorR> ^style irc
15:51:57 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
15:52:01 <GregorR> fungot: Hi
15:52:01 <fungot> GregorR: it's an example
15:52:08 <GregorR> ... ohhhh kay :P
15:52:11 <AnMaster> fungot, what is?
15:52:11 <fungot> AnMaster: name ' n' and skipping it... not sure i have a problem with
15:52:17 <Badger> fungot: madness!
15:52:17 <fungot> Badger: it hurts." minutes ago! :p)
15:52:23 <ehird> ^style agora
15:52:23 <fungot> Selected style: agora (a large selection of Agora rules, both current and historical)
15:52:24 <AnMaster> fungot, really?
15:52:24 <fungot> AnMaster: each player has not made before the start of the voting period.
15:52:25 <ehird> fungot: WHEREAS
15:52:26 <fungot> ehird: that the parties) a successful revolt has been a player ceases to be
15:52:31 <ehird> fungot: ha, Revolution
15:52:31 <fungot> ehird: the recordkeepor of a currency, and the
15:52:34 <ehird> fungot: WHICH ONE
15:52:34 <fungot> ehird: the assessor is responsible for communicating the group's vizier.
15:52:35 <AnMaster> ehird, nah that one isn't good
15:52:39 <ehird> yes it is
15:52:39 <AnMaster> what is ss?
15:52:41 <AnMaster> ^style ss
15:52:41 <fungot> Selected style: ss (Shakespeare's writings)
15:52:41 <ehird> 15:52 <fungot> ehird: the assessor is responsible for communicating the group's vizier.
15:52:42 <fungot> ehird: par. good, my lord, and master
15:52:43 <ehird> that's golden
15:52:44 <AnMaster> ah
15:52:46 <Badger> hahaha
15:52:47 <AnMaster> hello fungot
15:52:47 <ehird> ^style agora
15:52:47 <fungot> AnMaster: immortal gods, i am no fighter: i am
15:52:47 <fungot> Selected style: agora (a large selection of Agora rules, both current and historical)
15:52:52 <AnMaster> ..
15:52:53 <ehird> fungot: aaaaaa
15:52:53 <fungot> ehird: ( +k) when a player is electee to that office during that month, every player's lobbying strength of
15:52:57 <ehird> fungot: of.
15:52:57 <fungot> ehird: b) if this rule defers to all active sentences. the
15:53:00 <ehird> fungot: the
15:53:01 <fungot> ehird: the speaker publicly announces that e
15:53:03 <ehird> fungot: e...
15:53:04 <fungot> ehird: 7) a list of all players
15:53:07 <ehird> fungot: MAKE UP YOUR MIND
15:53:10 <ehird> I think it's treating \n as \n
15:53:13 <ehird> and the word wrapping messes it up
15:53:24 <ehird> ^style
15:53:24 <fungot> Available: agora* alice darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp
15:53:31 <ehird> ^style wp
15:53:31 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
15:53:39 <ehird> fungot: CONSENSUS
15:53:41 <ehird> ...
15:53:45 <ehird> someone else say hi to fungot
15:53:57 <AnMaster> fungot, hellp
15:53:58 <fungot> AnMaster: the explanation of the elijah story doesn't hold up, but to index other articles sorted, perhaps, for those pictures available, perhaps this one straight from the souls of black folk. but, i think
15:54:03 <AnMaster> hello*
15:54:07 <ehird> fungot: you think what
15:54:07 <fungot> ehird: if you have any questions please ask them at the wikipedia:media copyright questionsmedia copyright questions page. thank you.!-- template:missing rationale2
15:54:14 <ehird> ais523: sentient templates!
15:54:16 <ehird> fungot: really?
15:54:16 <fungot> ehird: the plan is to move forward. thanks user:naadapriyanaadapriya ( user talk:naadapriyatalk) 22:24, 19 may 2005 ( utc)
15:54:24 <ehird> fungot: what plan ey?
15:54:25 <fungot> ehird: and, dab, words like pop-culture should not be present because other neighbourhoods are not add the article about most existentialists being atheistic seems to be a calming grounding influence, a bit of old-fashioned stunt casting, spiner downplays the timing.
15:54:58 <ais523> fungot doesn't really seem to strip MediaWiki markup well
15:54:58 <fungot> ais523: apparently she wasn't the first person to discover something is in some kind new to me, deserve to be listed in wikipedia.
15:57:25 -!- ais523 has quit (Remote closed the connection).
16:11:48 -!- KingOfKarlsruhe has quit (Remote closed the connection).
16:51:20 -!- Judofyr has joined.
17:25:08 -!- moozilla has joined.
17:41:30 <AnMaster> oh btw
17:41:34 <AnMaster> Happy mailman day
17:41:46 * AnMaster just got a few of them from various freebsd lists
17:45:19 -!- metazilla has joined.
17:45:20 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:45:27 <ehird> AnMaster: I beat you to it.
17:45:28 <ehird> "If this design sounds familiar it’s probably because it’s exactly like Lucene. "
17:45:31 -!- metazilla has changed nick to moozilla.
17:46:14 <AnMaster> ehird, didn't see you saying it
17:46:19 <AnMaster> when did you do that
17:46:30 <ehird> a bit after I came in here first
17:47:36 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
17:47:43 -!- moozilla has joined.
17:55:42 <AnMaster> ehird, hm you were disconnected today?
17:55:54 <ehird> My bouncer thought it was in #esoteric, it wasn't.
17:55:59 <AnMaster> hm ok
17:56:09 <ehird> http://tunes.org/~nef/logs/esoteric/09.01.01
17:56:12 <AnMaster> * ehird (n=ehird@eso-std.org) has left #esoteric ("Furthermore,")
17:56:12 <AnMaster> * ehird (n=ehird@eso-std.org) has joined #esoteric
17:56:12 <AnMaster> * ehird (n=ehird@eso-std.org) has left #esoteric ("Furthermore,")
17:56:12 <AnMaster> * ehird (n=ehird@eso-std.org) has joined #esoteric
17:56:12 <AnMaster> <ehird> that was some _nasty_ bouncerfuckage
17:56:15 <AnMaster> ah right
17:58:47 <AnMaster> <ais523> especially as new year used to be march 1 <ehird> it wasn't <ehird> duh <ehird> :P <-- if it had been me you would have said something about my lack of humor
17:59:05 <ehird> AnMaster: your lack of humour is a running joke.
17:59:22 <AnMaster> ehird, yes right, except only for you
17:59:22 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
17:59:28 -!- moozilla has joined.
17:59:32 <ehird> but i am hilarious
17:59:49 <AnMaster> no you aren't
18:00:02 <AnMaster> Monty Python is a good example of "sometimes hilarious"
18:00:53 <ehird> no, I'm very hilarious
18:01:34 <AnMaster> GregorR, oh http://www.facebook.com/photo.php?pid=30230927&l=7b22a&id=1055580469, wtf is the thing on the side of the glasses?
18:02:07 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
18:02:12 -!- moozilla has joined.
18:02:13 <AnMaster> ehird, maybe you know? You linked it
18:02:24 <ehird> AnMaster: those glasses are a SCREEN
18:02:29 <AnMaster> ah
18:02:32 <ehird> it's a DISPLAY
18:02:33 <ehird> :DDDDDDD
18:02:33 <AnMaster> right, I heard of them
18:02:38 <AnMaster> I never seen them though
18:02:45 <AnMaster> such glasses with built in displays
18:02:49 <AnMaster> cool
18:02:54 <AnMaster> what do you use it for? map?
18:03:22 <ehird> more like HACKING INTERFACE
18:03:25 <ehird> of CYBERWEB
18:03:39 <AnMaster> ehird, don't be silly, this isn't some low budget movie
18:03:46 <ehird> it looks like it
18:04:02 <AnMaster> well yes, but it doesn't mean Holy Wood is right
18:04:16 <AnMaster> if they were it would emit light
18:04:19 <ehird> they are always right
18:04:20 <ehird> also, they do
18:04:22 <ehird> it's just invisible light
18:06:13 <AnMaster> heh
18:11:21 <ehird> I should be boring and write another markov chain. i think I know enough now to get it to handle punctuation correctly.
18:11:33 <AnMaster> ehird, heh
18:11:41 <ehird> I'm not sure how to handle nested punctuation though.
18:11:43 <AnMaster> ehird, how does lzma use it btw?
18:11:48 <ehird> That is, how can I make sure parentheses are always balanced?
18:11:51 <ehird> Without just adding them to the end.
18:11:55 <ehird> I guess I could recurse or something.
18:12:32 <AnMaster> ehird, they aren't always balanced on irc normally
18:13:06 <ehird> so what, i always balance my parens :P
18:13:11 <ehird> well aprt from :)
18:13:14 <ehird> but :) is a seperate token
18:13:52 <AnMaster> ehird, and variants like ;) and such
18:13:56 <ehird> Yeah.
18:14:12 -!- metazilla has joined.
18:14:18 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:14:22 -!- metazilla has changed nick to moozilla.
18:14:33 <AnMaster> ehird, still recursion sounds like it could work as long as you somehow limit the depth
18:14:50 -!- metazilla has joined.
18:14:51 <AnMaster> would be nasty if it got stuck
18:14:51 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
18:15:00 <AnMaster> in deep recursion
18:15:02 -!- metazilla has changed nick to moozilla.
18:15:11 <AnMaster> heh, "in the deep lands of recursion"?
18:15:21 <ehird> AnMaster: problem is, when you reach EOF to stop recursing, that's end of messag
18:15:22 <ehird> e
18:15:23 <AnMaster> thriller movie
18:15:26 <ehird> so it won't work parenthically
18:15:41 <ehird> Hello, who are you? I am cool (a word for being awesome. Anyway, I must go now. Bye.) Actually wait, I'm not going.
18:15:44 <AnMaster> ah you mean you get lots of end of sentences then?
18:15:47 <ehird> ^ that's not the best usage of parentheses
18:15:50 <AnMaster> indeed
18:15:54 <ehird> but if you just wait until ), that rarely happens
18:16:03 <AnMaster> ehird, it could get too long
18:16:05 <ehird> as a close parenthesis rarely follows another word compared to, you know, other words
18:16:13 <ehird> maybe I could use a weighted markov chain like bayes does
18:16:18 <ehird> comex coded it I don't know how it works
18:16:22 <AnMaster> oooh I like that
18:16:26 <ehird> (it "directs" it to a certain token)
18:16:28 <AnMaster> a reverse bayesian filter?
18:16:34 <ehird> nah
18:16:36 <AnMaster> could be used to *GENERATE* spam
18:16:37 <ehird> bayes is a nomic-playing bot
18:16:41 <AnMaster> ah
18:16:42 <AnMaster> right
18:16:46 <ehird> it's called so because it votes using a bayesian spam filter
18:16:49 <ehird> anyway, unfortunately it takes like
18:16:51 <AnMaster> right
18:16:57 <ehird> (n!)^2 or something storage space
18:16:59 <ehird> for the directed stuff :-P
18:17:03 <AnMaster> ouch
18:17:07 <ehird> well, not that bad
18:17:09 <ehird> but it's biggg
18:17:59 <AnMaster> ehird, well what is the value of n
18:18:22 <ehird> dunno.
18:18:24 <AnMaster> a few MB? GB?
18:18:27 <ehird> all I know is it's way bigger than the actual chain
18:18:57 <AnMaster> ehird, right
18:20:11 <AnMaster> ehird, hm it would be cool if you could make your mail server somehow return "no such user" to spammers *after* you received it..
18:20:14 <AnMaster> hm
18:20:21 <AnMaster> doesn't work I guess
18:20:28 <ehird> most mail servers silently accept bad addresses :\
18:20:30 <ehird> or at least some
18:20:31 <AnMaster> you can reject with no such user
18:20:32 <ehird> anyway
18:20:41 <ehird> i once made a plan for an elaborate spam-fighting system
18:20:46 <AnMaster> ehird, reject with no such user and they will think the email is invalid
18:20:48 <ehird> but i was too lazy to writ eit
18:20:48 <AnMaster> oh? details?
18:20:53 <AnMaster> remember it?
18:20:57 <ehird> basically
18:21:03 <ehird> you know those honeypot scripts
18:21:06 <AnMaster> yes
18:21:07 <ehird> that give a bunch of fake emails
18:21:07 <AnMaster> I run one
18:21:08 <ehird> and a link for more
18:21:13 <ehird> it'd that, but improved by loads
18:21:19 <ehird> on domain foobar.com
18:21:19 <ehird> it'd be
18:21:28 <ehird> dsfjeii@honeypot.foobar.com
18:21:30 <ehird> now
18:21:36 <ehird> whenever a spambot sent mail to one of those
18:21:47 <ehird> it'd ban them from the mail server
18:21:48 <AnMaster> well it wouldn't contain honeypot hopefully
18:21:50 <ehird> and mark them as spam
18:21:56 <ehird> that address
18:21:57 <ehird> forever
18:22:03 <AnMaster> ehird, yes that is how honeypots work
18:22:06 <AnMaster> kind of
18:22:06 <ehird> no, it's not
18:22:16 <ehird> honeypot cgi scripts generally just give fake addresses
18:22:18 <ehird> to pollute their database
18:22:31 <ehird> this one waits for them to actually spam, and then permanently marks them as a spammer
18:22:33 <AnMaster> ehird, oh I have mine set up to give emails to a special blackhole server
18:22:37 <AnMaster> that auto blacklists
18:22:40 <AnMaster> on the real server
18:22:42 <ehird> link?
18:22:46 <AnMaster> a sec
18:23:02 <AnMaster> ehird, I placed it in the footer on the supertux website iirc
18:23:26 <ehird> note that my real solution for such things is to let google figure it out for me. :P
18:23:41 <ehird> http://supertux.lethargik.org/ I don't see it
18:23:47 <AnMaster> no on the wiki
18:24:13 <ehird> lol, old supertux is so cheesy
18:24:14 <AnMaster> ah yes
18:24:26 <ehird> also
18:24:27 <AnMaster> ehird, http://supertux.lethargik.org/development/information.php
18:24:29 <ehird> I don't see it yo
18:24:46 <AnMaster> ehird, check the source
18:24:50 <ehird> AnMaster: that doesn't work, that license thing
18:24:51 <AnMaster> humans don't see it
18:25:02 <AnMaster> ehird, see the source
18:25:05 <ehird> yes
18:25:07 <ehird> but I mean the license notice
18:25:16 <ehird> if that works, the batshit insane lady who sued archive.org for copying her web pages when her page footer forbid it in english is RIGHT
18:25:19 <ehird> and... she's not
18:25:40 <ehird> also, needs moar emails
18:25:47 <ehird> to give a higher chance of being spammed
18:26:02 <AnMaster> ehird, anyway the emails in it are valid, there is a global project for this
18:26:19 <AnMaster> project honeypot
18:26:31 <ehird> i'm pretty sure project honeypot is different
18:26:32 <AnMaster> ehird, it basically does what you suggested
18:26:46 <ehird> http://www.spampoison.com/ t his is the most common anti-spam thing i've seen
18:29:26 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:31:22 <ehird> hrm.
18:31:37 <ehird> AnMaster: great now you've got me playing supertux
18:31:43 <AnMaster> ehird, haha
18:31:51 <ehird> only because I don't have super mario bros to hand though :P
18:31:59 <AnMaster> :P
18:32:11 <ehird> i am awful at supertux
18:32:14 <ehird> can't beat level 5 :||||||
18:32:25 <AnMaster> ehird, oh? 0.1.3 or 0.3.1?
18:32:30 <ehird> 0.1.3
18:32:34 <AnMaster> right
18:32:38 <AnMaster> more balanced
18:32:41 <AnMaster> anyway
18:32:45 <AnMaster> I can beat that level :P
18:32:56 <ehird> heh the older version is better?
18:33:15 <AnMaster> ehird, we adopted an odd/even versioning scheme
18:33:19 <AnMaster> after 0.1
18:33:26 <AnMaster> so that is why there is no 0.2
18:33:35 <ehird> right, but 0.1.3 is better?
18:33:51 <AnMaster> ehird, currently it is more balanced yes
18:34:02 <AnMaster> 0.3.1 has lots of cool new features, but some are a bit buggy
18:34:15 <ehird> also, there is not enough fuel in my body to describe my hatred of odd/even versioning systems.
18:34:18 <AnMaster> and the game isn't always well balanced when it comes to speed and jumping force and such
18:34:26 <AnMaster> ehird, not my choice
18:34:29 <ehird> :D
18:34:53 <AnMaster> ehird, "the somewhat smaller bath"?
18:35:01 <ehird> ?
18:35:07 <AnMaster> is that the level name
18:35:15 <ehird> i dont think so
18:35:20 <AnMaster> for some odd reason I don't see the numbers here
18:35:54 <ehird> AnMaster: the frosted fields
18:36:19 <AnMaster> that is level 6..
18:36:23 <ehird> oh
18:36:23 <ehird> k
18:36:53 * AnMaster is playing it now
18:37:01 <AnMaster> was a while ago I played 0.1.x
18:38:51 <ehird> ooh, a bug
18:38:56 <AnMaster> oh?
18:39:27 <ehird> yeah.
18:39:29 <ehird> i was standing on air
18:39:32 <AnMaster> err
18:39:41 <AnMaster> ehird, could be invisible secret block
18:39:45 <ehird> no
18:39:47 <AnMaster> for some secret area
18:39:50 <ehird> no
18:39:52 <AnMaster> ok
18:40:01 <AnMaster> there *are* a few such
18:40:16 <AnMaster> just screenshot and I can tell you if that was the case
18:41:02 <AnMaster> ehird, ?
18:41:03 <ehird> level 1: http://xs435.xs.to/xs435/09014/picture1775.png
18:41:06 <ehird> oh shit
18:41:08 <ehird> it didn't work
18:41:08 <ehird> XD
18:41:11 <ehird> fucking sdl
18:41:16 <AnMaster> ehird, no clue about that
18:41:23 <ehird> basically
18:41:24 <ehird> level 1
18:41:24 <AnMaster> screenshots work for me here on supertux
18:41:29 <ehird> the bunch of block
18:41:29 <ehird> s
18:41:31 <ehird> wooden
18:41:32 <ehird> with coins in them
18:41:36 <AnMaster> hm right
18:41:40 <ehird> third from the right box, I had destroyed
18:41:43 <ehird> and I could walk over it
18:41:47 <ehird> but I dropped down a tiny bit but stayed there
18:41:49 <ehird> stopped when I jump
18:41:53 <ehird> Collision box thing I think
18:42:10 <AnMaster> hm
18:42:12 <AnMaster> level 1?
18:42:21 <AnMaster> ah
18:42:27 <AnMaster> ehird, right
18:42:33 <AnMaster> did you have a block on either side
18:42:36 <ehird> yeo
18:42:37 <ehird> yep
18:42:42 <AnMaster> so it was a 1-width
18:42:43 <AnMaster> right
18:42:53 <AnMaster> ehird, known 0.1.3 bug, that one is fixed in 0.3.x
18:42:57 <ehird> kay
18:43:03 <AnMaster> along with support for slope added
18:43:07 <AnMaster> slopes*
18:43:14 <AnMaster> and a lot more
18:43:38 <ehird> is there a debug mode that unlocks all the levels? :D
18:43:57 <AnMaster> there is a debug mode with cheat keys
18:44:04 <AnMaster> as a side effect it draws collrects
18:44:06 <AnMaster> for everything
18:44:19 <AnMaster> which looks pretty ugly
18:44:22 <ehird> ew
18:44:28 <AnMaster> ehird, 0.3.x have a console however
18:44:50 <AnMaster> since it has a scripting language built in for cut scenes and switches in levels and such
18:44:55 <AnMaster> it is used for console too
18:45:05 <AnMaster> called squirrel
18:45:12 <AnMaster> like lua but less known and fewer features
18:45:18 <ehird> first rule of scripting languages: write your game in an existing one with eval and use that :P
18:45:20 <AnMaster> again not my choice
18:45:36 <ehird> also wtf you can do small jumps if you don't hold space down
18:45:36 <ehird> WH
18:45:37 <AnMaster> ehird, heh, it is using an existing scripting language
18:45:38 <ehird> WHY
18:45:46 <AnMaster> ehird, eh? what do you mean
18:45:56 <ehird> if you hold space down for a millisecond more you go high
18:45:58 <ehird> but otherwise you just hop tiny bit
18:46:33 <AnMaster> ehird, yes that makes sense, if you had a joystick it would be related to the axis
18:46:37 <AnMaster> iirc
18:46:52 <AnMaster> or wait, joystick is 0.3.x only?
18:46:53 <AnMaster> hm
18:47:04 <AnMaster> ehird, anyway it is a feature and useful
18:47:25 <AnMaster> if you want to take a small jump, like cave and low ceiling
18:47:40 <AnMaster> if you hit your head then it will be harder to make a long jump
18:49:26 * ehird tries his new play style: hold down control and jump everywhere and never hit any enemies
18:49:33 <ehird> if you do, only hit them without trying to
18:49:48 <AnMaster> ehird, less score then
18:49:49 <ehird> dead
18:49:50 <ehird> :D
18:49:54 <AnMaster> ehird, get the egg
18:50:00 <AnMaster> and fireflower
18:50:10 <AnMaster> lot easier then
18:50:13 <ehird> meh :D
18:50:25 <AnMaster> ehird, the egg looks like a snowball though
18:50:54 <ehird> :)
18:54:47 -!- kar8nga has joined.
19:00:11 <AnMaster> ehird, also project honeypot is like that: http://www.projecthoneypot.org/httpbl_api
19:00:23 <AnMaster> only issue is dynamic ips
19:01:55 -!- Asztal has quit (Remote closed the connection).
19:02:06 -!- Asztal has joined.
19:08:00 <GregorR> AnMaster: Presently the display doesn't display anything, I don't have the computer :P
19:08:06 <GregorR> AnMaster: But it will be a general-purpose computer.
19:08:16 <GregorR> A GPS-powered map would be one excellent use for it.
19:08:22 <AnMaster> GregorR, yes indeed
19:08:26 <AnMaster> what about traffic info?
19:08:27 <AnMaster> or news?
19:08:34 <GregorR> It's a computer.
19:08:41 <AnMaster> GregorR, yes but with an antenna
19:08:41 <GregorR> The computer I'm hooking it to has wifi and bluetooth
19:08:48 <AnMaster> hm ok
19:08:58 <AnMaster> GregorR, how large is the computer?
19:09:04 <GregorR> http://openpandora.org/
19:09:14 <AnMaster> oh quite small
19:09:19 <GregorR> That's the idea :)
19:09:25 <AnMaster> GregorR, yeah of course
19:09:37 <GregorR> Whole setup should cost me ~$700
19:09:40 <AnMaster> GregorR, but yes gps + map would rock
19:09:47 <AnMaster> and something to calculate best route
19:10:22 <ehird> walking gps
19:10:23 <ehird> XD
19:10:25 <AnMaster> GregorR, a pitty you won't be able to overlay the directions directly on the perspective
19:10:36 <ehird> that would be awesome, walking gps with overlayed directions
19:10:39 <AnMaster> like arrow showing what door to actually enter
19:10:43 <ehird> I'd never have to ask for directions!
19:11:08 <AnMaster> ehird, indeed, and not just directions on a map like in a car navigator, but directions pointing to the actual features in the real view
19:11:22 <AnMaster> that would be impossible though
19:11:27 <ehird> i knowwww
19:11:30 <ehird> why impossible tho
19:11:32 <ehird> its possible
19:11:34 <ehird> jus tvery hard
19:11:48 <GregorR> It would definitely be possible, but probably not with this setup.
19:11:49 <AnMaster> correction: virtually impossible
19:12:10 <AnMaster> ehird, you would need to identify the features of the view, like street corners, and so on
19:12:28 <AnMaster> and figure out current exact orientation of the head
19:12:37 <ehird> that's not impossible. that's hard, but robots DO exist you know
19:12:41 <AnMaster> yes
19:12:41 <ehird> with, you know, sensors.
19:12:43 <ehird> that process image data.
19:12:47 <AnMaster> yes indeed
19:12:51 <ehird> so in the future, yes, it'd/it'll be possible
19:12:56 <ehird> its not that unfeasable :)
19:13:01 <ehird> *infeasible
19:13:11 <AnMaster> ehird, it is infeasible for GregorR with his current setup
19:13:53 <AnMaster> GregorR, should also have restaurant advice, oh and hat shop locations
19:15:15 <ehird> :)
19:15:17 <ehird> an actual joke!
19:15:27 <ehird> it should update him with choosemyhat.com results in REAL TIME
19:18:14 <AnMaster> ehird, nice
19:18:50 <AnMaster> GregorR, do people often comment on your hats when they meet you
19:18:58 <AnMaster> brb
19:25:05 <AnMaster> GregorR, I listened to some of your music pieces btw, quite good
19:25:50 <ehird> link?
19:25:56 <ehird> i've heard the Kill Yourself song and that's about it XD
19:26:12 <AnMaster> http://codu.org/music.php
19:26:48 <AnMaster> GregorR, I believe those 3 for a game would fit quite well into a fantasy game, say wesnoth or something like that
19:26:52 <AnMaster> which game was it for?
19:27:29 <AnMaster> ehird, I like his "Opus 8"
19:27:54 <AnMaster> haven't listened to 9 yet, 6 or below
19:28:02 * AnMaster is currently listening to 7
19:28:34 <AnMaster> I like it :)
19:29:09 * GregorR reappears
19:29:26 <AnMaster> :)
19:29:42 <GregorR> People often comment on my hats, yes.
19:29:57 <GregorR> The comments are very varied, and different hats get different amounts of comments, often not in line with what you might think.
19:30:06 <AnMaster> GregorR, right
19:30:08 <GregorR> For example, the red fez gets tons of comments, but the green fez gets virtually none.
19:30:19 <AnMaster> GregorR, now that I hadn't expected
19:30:24 <AnMaster> why none for the green?
19:30:27 <AnMaster> it is too odd?
19:30:35 <GregorR> I guess, Idonno, I'm not psychic :)
19:30:40 <AnMaster> hm
19:31:10 <GregorR> At a certain point of strangeness people just stop talking at me at all ... when it gets really cold outside I wear a cape, and at that point people just don't look at me unless they know me :P
19:31:21 <AnMaster> haha
19:31:38 <AnMaster> GregorR, the recording of op 7 sounds a bit low quality, not sure how to define it
19:31:44 <AnMaster> also what about the game question
19:31:51 <GregorR> That recording is really old, yeah, it sucks :(
19:31:56 <GregorR> And the game was Battle for Wesnoth
19:31:59 <AnMaster> hah
19:32:02 <GregorR> I was making a campaign which I've since abandoned :P
19:32:16 <AnMaster> GregorR, I like wesnoth, and I like the game music for it
19:32:27 <AnMaster> GregorR, anyway I like 7, but not that recording of it
19:32:28 <GregorR> So do I, I just wanted unique music for my campaign *shrugs*
19:33:02 <AnMaster> GregorR, and your game music for it is quite good, is it recorded real life or with really high quality soundfont?
19:33:27 <GregorR> Soundfont
19:33:36 <AnMaster> what one if I may ask? :)
19:34:09 <AnMaster> GregorR, I would really wish a sound font with a good piano, too few free ones available though :/
19:34:19 <AnMaster> wish I had*
19:34:20 <GregorR> 'twasn't a free one X-P
19:34:24 <GregorR> Came with my keyboard.
19:34:25 <AnMaster> aargh!
19:34:45 <GregorR> I recorded it on my keyboard, I didn't write it as a MIDI, I just played it.
19:35:55 <AnMaster> GregorR, one thing about your opus 9, you seem to change style a bit in it to more bass chords (not sure if that is the right English terminology... I'm not a native speaker as you know).
19:36:11 <AnMaster> I think it may be the recording, or it is a bit heavy on the bass chords
19:36:32 <AnMaster> but overall I like it very much
19:37:05 <AnMaster> GregorR, can we here you play "Eine kleine Nachtmusik" at some point? :D
19:37:10 <GregorR> Opus 9 was a tune that was stuck in my head ... I didn't write it in the same way as I write most of my pieces, as the entire tune from beginning to end had just evolved as this weird tune I whistled.
19:38:57 <AnMaster> GregorR, well I don't have good soundfont
19:39:15 <AnMaster> so opus 9, well maybe you should upload an ogg of it with a good soundfont?
19:39:50 <GregorR> Only if you can provide a soundfont better than the one I already used :P
19:39:56 <GregorR> Oh!
19:40:10 <GregorR> I forgot to provide a link to the ogg D-8
19:40:10 <AnMaster> eh?
19:40:10 <AnMaster> oh you misread what I said I bet
19:40:15 <AnMaster> GregorR, yes
19:40:19 <GregorR> There actually is a .ogg version already, made with freepats
19:41:06 <AnMaster> GregorR, one things that confuse me about your music is that you suddenly change tempo and style in the middle at some point where I wouldn't have expected it
19:41:30 <GregorR> Yes. Yes I do :P
19:42:21 <AnMaster> GregorR, I'm more used to classical music that doesn't do that. Anyway what about you playing (on a real piano preferably :) "Eine kleine Nachtmusik"?
19:42:26 <GregorR> I try to write in a stream-of-thought style ... I rarely repeat anything more than twice, I reuse themes but only in totally different contexts, and as a result it takes me a very long time to write anything.
19:42:42 <GregorR> I could do that, but I don't have a real piano :P
19:42:55 <ehird> I love music that changes style and tempo unexpectedly for no reason
19:43:13 <AnMaster> GregorR, ah, what about something by Liszt then? :P
19:43:20 <AnMaster> Sorry
19:43:39 <GregorR> So, Eine kleine Nachtmusik is acceptable only on a real piano, but Liszt can be played on whatever shitty keyboard I can dredge up? :P
19:43:54 <AnMaster> GregorR, both both are acceptable on keyboard
19:44:01 <GregorR> Oh, you might be interested, http://codu.org/music/GRegor-op10-beta2.ogg
19:44:02 <AnMaster> but I think making good recordings would be quite fun
19:44:08 <AnMaster> beta :D
19:44:12 <GregorR> Not my final recording of that (probably), not "released" per se
19:45:10 <AnMaster> GregorR, anyway Liszt would be extremely hard...
19:45:53 <AnMaster> say "La Campanella" (originally for violin, but at least Liszt made a piano version, no idea if it differs much)
19:46:27 <AnMaster> GregorR, I like your op10
19:46:38 <AnMaster> so far much less random changes in style
19:47:21 <ehird> what's wrong with those
19:47:28 <GregorR> X-D
19:47:31 <ehird> music should be surprising :D
19:47:32 <AnMaster> ehird, it is a matter of taste
19:47:44 <AnMaster> so yes highly subjective
19:47:45 <GregorR> The first section is 7/8, then 6/8, then 7/8, don't those count for anything? :P
19:48:17 <AnMaster> GregorR, hm when did the first change happen
19:48:32 <AnMaster> I might not have reached it yet
19:48:39 <GregorR> IT WAS SO SUBTLE YOU DIDN'T EVEN NOTICE IT
19:48:40 <GregorR> ;)
19:48:54 <AnMaster> GregorR, I'm around 2 minutes and 30 seconds into it
19:49:13 <GregorR> It's at around 1:15, you're well into the 6/8 section
19:49:18 <AnMaster> right
19:49:24 <AnMaster> then I didn't notice it
19:49:38 <AnMaster> GregorR, or it seemed natural maybe
19:50:00 <AnMaster> GregorR, some differences I noted but they seemed to fit in there very well :)
19:50:27 <AnMaster> GregorR, plan to become a composer?
19:50:45 <AnMaster> ok
19:50:48 <AnMaster> there was a change
19:50:50 <AnMaster> that didn't fit
19:51:10 <GregorR> Yes, that's why I'm at graduate school for CS, it fits right into my music plans :P
19:51:25 <AnMaster> ok so you don't plan that then
19:51:49 <GregorR> No, it's just a hobby.
19:52:14 <AnMaster> ah it was the end somehow, ok then that worked
19:52:21 <AnMaster> around 06:something
19:52:44 <AnMaster> GregorR, yes I like that op 10 :)
19:52:46 <GregorR> Yeah, the 6/8-to-7/8 change is just a BAM
19:52:47 <AnMaster> very much so
19:53:10 <AnMaster> GregorR, you play the piano very well
19:54:09 <GregorR> Well thank you.
19:54:19 <GregorR> But I'm far better at CS, it's just a less visible skill :P
19:54:36 <AnMaster> true
19:55:33 <AnMaster> GregorR, just wondering, would you be able to perform something like this: http://upload.wikimedia.org/wikipedia/commons/c/ca/Liszt-La_Campanella-Greiss.ogg
19:56:15 <AnMaster> if yes you should maybe consider playing piano instead of cs ;P
19:56:24 <GregorR> The usual answer is "with enough practice" :P
19:56:34 <AnMaster> GregorR, and that would be "a lot"?
19:56:43 <ehird> This is #esoteric.
19:56:48 <AnMaster> ehird, yes?
19:56:54 <ehird> Suggesting someone do music instead of CS is unlikely to be fruitful.
19:57:02 <AnMaster> ehird, ah good point
19:57:03 <GregorR> From what I've heard so far, probably not /so/ much of a lot.
19:57:12 <GregorR> One sec, I'll get a recording of the most complicated thing I've played.
19:57:25 <AnMaster> :)
19:59:17 <GregorR> http://www.youtube.com/watch?v=u4iaugs_6uQ (This is not me, and no, I haven't played this as /well/ as this guy, I've just played it :P )
20:00:28 <GregorR> (By the way, it only gets difficult after a couple minutes)
20:01:06 <AnMaster> playing it now
20:01:16 <GregorR> I love nocturnes, by the way :P
20:01:31 <AnMaster> hmmmmm....
20:01:58 <AnMaster> then "Eine kleine Nachtmusik" should fit you well
20:01:59 <AnMaster> :)
20:06:05 <GregorR> Note the small "related videos" links on the right, in particular the ones where the guy is wearing an unfortunate choice of clothing colors and so it looks like he's performing nude in the small pic :P
20:06:18 <AnMaster> hm?
20:06:25 <AnMaster> yes
20:06:30 <GregorR> I just found that amusing :P
20:07:27 <AnMaster> GregorR, hm... quite nice that http://www.youtube.com/watch?v=u4iaugs_6uQ
20:12:55 <GregorR> Oh yeah, it's 2009
20:13:13 <GregorR> That means I have to remember to mark my files every time I edit them for a while :P
20:13:46 <AnMaster> GregorR, I just sed them to update copyright header once at the start of the year
20:16:08 <ehird> uh, you should just put the copyright of when you wrote them.
20:16:45 <AnMaster> ehird, yes I do
20:17:02 <AnMaster> but I mean updating to say 2007-2009 instead of 2007-2008
20:17:28 -!- moozilla has joined.
20:23:39 <AnMaster> GregorR, there still?
20:23:51 <AnMaster> what do you think of these http://www.tangento.net/FaeriesAireandDeathWaltzGIF1.gif and http://www.tangento.net/FaeriesAireandDeathWaltzGIF2.gif
20:24:08 <AnMaster> :)
20:24:14 <AnMaster> ;P
20:24:47 <ehird> old
20:24:53 <ehird> AnMaster: those are two seperate pieces
20:24:55 <ehird> not one
20:24:58 <ehird> totally unrelated
20:25:38 <AnMaster> ehird, why do you think so?
20:25:44 <AnMaster> they seem related shrug
20:25:52 <ehird> they're not.
20:25:55 <ehird> I know this because i've seen it 50 times.
20:26:03 <ehird> your source is... a filename.
20:26:32 <GregorR> I like "Cool timpani with small fan" :P
20:26:39 <AnMaster> GregorR, heh
20:26:47 <AnMaster> ehird, possible, what is the name of the second one then?
20:27:01 <ehird> Dunno.
20:27:36 <AnMaster> GregorR, in the first image there are some made up notes: half notes with flags
20:27:50 <ehird> the whole thing is invalid
20:27:59 <ehird> (wrong number of notes for a bar or sth IIRC)
20:28:10 <AnMaster> ehird, the second one is correct for number / bar for many parts at least
20:28:17 <AnMaster> I entered some of it into a midi program
20:28:25 <ehird> what does it sound like?
20:28:32 <AnMaster> ehird, horrible :P
20:28:55 <AnMaster> was the bit below "With much passionfruit"
20:28:57 <AnMaster> that I entered
20:29:32 <AnMaster> ehird, if you like a rosegarden file I could upload it somewhere
20:29:44 <GregorR> "With pesto"
20:29:53 <ehird> AnMaster: a midi would be nice.
20:30:10 <Asztal> obviously the MIDI rendering didn't follow the all-important "through the frog" and "whip it good" instructions
20:30:18 <AnMaster> ehird, ok I could export it
20:30:20 <AnMaster> Asztal, true
20:31:40 <AnMaster> ehird, http://omploader.org/vMTJ4Nw
20:32:06 <ehird> I've heard a full recording of that.
20:32:09 <AnMaster> it is just one instrument, and two bars
20:32:13 <AnMaster> ehird, huh?
20:32:16 <ehird> AnMaster: a full midi
20:32:19 <ehird> I'd need to find it
20:32:25 <AnMaster> yes please
20:32:44 <ehird> also, I LIKE the sound of that
20:32:52 <AnMaster> ehird, it doesn't sound too bad
20:32:59 <AnMaster> though not my cup of tea
20:33:04 <GregorR> Do they make multi-port USB wall chargers ...?
20:33:13 <AnMaster> GregorR, haha
20:33:34 <AnMaster> I didn't even know there was anything called "usb wall charger"
20:33:52 <AnMaster> GregorR, idea: attach a powered hub to it?
20:34:23 <GregorR> I wouldn't trust that. The USB wall chargers are totally non-standards-compliant, they just dump as much power as they can manage at the USB device, so any device not intended for them can get zapped.
20:34:40 <GregorR> Plus, the powered USB hub would actually speak USB, so it would be unwilling to charge at the full rate.
20:35:22 <ehird> AnMaster: http://10e.org/file/death.mid incorrectly calls it the death waltz one, but oh well
20:35:29 <ehird> it actually sounds nce
20:35:30 <ehird> nice
20:35:34 <ehird> as in, it has actual structure and melody
20:37:54 <ehird> AnMaster: ping
20:37:58 <AnMaster> yes
20:38:00 <AnMaster> listening
20:38:02 <AnMaster> still alive
20:38:35 -!- Warrigal has joined.
20:39:09 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
20:39:34 <Warrigal> I think the good old days of bsmnt_bot are over.
20:39:41 <AnMaster> ehird, I actually prefer more mainstream classical music
20:39:46 <AnMaster> Warrigal, that was ages ago
20:39:49 <ehird> AnMaster: It still sounds nice.
20:40:11 <Warrigal> I want to make a replacement.
20:40:12 <AnMaster> that's your opinion :P
20:40:22 <ehird> AnMaster: it has melody and form.
20:40:24 <ehird> and structure.
20:40:24 <AnMaster> Warrigal, what did the bot do now again?
20:40:29 <ehird> it's better than a lot of stuff.
20:40:32 <AnMaster> ehird, true, but could any human play it?
20:40:32 <Warrigal> And a simpler one, with none of this chroot jail nonsense.
20:40:33 <ehird> also, it evaluated python.
20:40:38 <Warrigal> AnMaster: it did EVERYTHING!
20:40:42 <Warrigal> It evaluated Python, yeah.
20:40:43 <ehird> Warrigal: you need that if you want python
20:40:52 <ehird> but hey, I'm totally happy to remove your home directory.
20:41:15 <AnMaster> read only home too
20:41:18 <AnMaster> in the chroot jail
20:41:29 <Warrigal> I'd rather just create a new user. :-P
20:41:38 <AnMaster> Warrigal, still very risky
20:41:45 <AnMaster> really trust us
20:41:46 <ehird> AnMaster: I have a normish user account.
20:41:52 <AnMaster> ehird, hm ok and?
20:41:57 <ehird> I could already do anythign I could do with a user on normish.
20:42:02 <ehird> I'm assumign Warrigal is goign to put it up on normish.
20:42:09 <Warrigal> I'm assuming so as well.
20:42:11 <AnMaster> normish hm
20:42:16 <AnMaster> ?
20:42:20 <AnMaster> which one is that
20:42:24 <Warrigal> normish.org?
20:42:28 <ehird> It's a nomic./
20:42:32 <ehird> Warrigal is connected via it.
20:42:43 <AnMaster> oh so it won't be in this channel then
20:42:47 <ehird> er, why not?
20:42:53 <ehird> Warrigal is connected via normish.
20:42:55 <ehird> Try //whois.
20:42:59 <AnMaster> hm ok
20:43:04 <ehird> It's a server.
20:43:06 <ehird> Running Linux.
20:43:14 <AnMaster> right
20:43:16 <Warrigal> The bot would run on normish.org, yeah.
20:43:24 <Warrigal> As www-data. >:-)
20:43:33 <AnMaster> Warrigal, no that would be too evil
20:43:39 <AnMaster> and risky
20:43:41 <ehird> I'll be happy to redirect your homepage to Last Measure.
20:43:41 <Warrigal> Since, um, /var/www is world-writable and anyone can run anything as www-data.
20:43:45 <ehird> AnMaster: anyone can write to /var/www.
20:43:53 <ehird> But via a bot i'm less likely to lose my account.
20:43:54 <AnMaster> ouch ok
20:44:16 <AnMaster> ehird, depends on who does it via that bot, you could still see who placed the bot there
20:44:16 <bsmntbombdood> Warrigal: noooooooooooooooo
20:44:25 <ehird> what bsmntbombdood said
20:44:28 <ehird> there is only one true bsmnt_bot
20:44:32 <ehird> and bsmntbombdood must run it.
20:44:39 <AnMaster> bsmntbombdood, run it then
20:44:41 <ehird> anything else is Right Bad Sacrelige.
20:45:02 <bsmntbombdood> the server i was running it in is no more
20:45:16 <ehird> bsmntbombdood: I has a server.
20:45:19 <ehird> <.<
20:45:22 <ehird> >.>
20:45:23 <ehird> :)
20:45:33 <AnMaster> hm
20:45:42 <ehird> bsmntbombdood: ? :3
20:45:53 <Warrigal> I think I'll create a Normish proposal to give me a puppet.
20:45:55 <ehird> I WOULD BE MOST HONORED TO HOST EL "BS MNT BOT".
20:46:03 <ehird> hmm, I'm tired.
20:46:04 <ehird> I think.
20:46:16 <AnMaster> you could make it into one of those machines where the wheels with symbols spins and you get 3 in a row or whatever, but with smilies instead
20:46:17 <Warrigal> And create an empty file in /var/active-players so it can't be an active player, of course.
20:46:24 <bsmntbombdood> ehird: then host it
20:46:26 <AnMaster> so you should get specific combos
20:46:30 <Warrigal> Or hmm.
20:46:36 <ehird> bsmntbombdood: only if you put it up. Anything else is great sacrelidgdgdgdge.
20:46:59 <bsmntbombdood> ehird: root access is required for the chroot
20:47:06 <ehird> bsmntbombdood: I could do that part.
20:47:14 <Warrigal> im gonna appropriate normish, k?
20:47:53 <ehird> bsmntbombdood: Shall I give you a shell account, then?
20:48:00 <bsmntbombdood> i suppose
20:49:59 <AnMaster> you could use some sudo trick to do a safe transfer into the chroot ehird
20:50:09 <AnMaster> I got this set up for 32-bit chroot at home
20:50:14 <ehird> Yes, I probably will.
20:50:53 <Warrigal> We want adduser with --disabled-login and --no-create-home...
20:51:10 <AnMaster> in /etc/sudoers: anmaster ALL = NOPASSWD: /usr/bin/chroot /mnt/gentoo32 /usr/bin/sudo -u anmaster /bin/bash -c ( cd ~ ; /bin/bash )
20:51:43 <AnMaster> for /mnt/gentoo32/etc/sudoers it is enough to have the allow everything for root default line
20:52:05 <AnMaster> then the user just runs: linux32 sudo /usr/bin/chroot ${JAIL_DIR} /usr/bin/sudo -u "anmaster" /bin/bash -c "( cd ~ ; /bin/bash )"
20:52:38 <AnMaster> where JAIL_DIR is set in the script I copied the line from...
20:52:44 <AnMaster> ehird, works great :)
20:53:08 <AnMaster> sudo in jail doesn't even need to be suid, since only root runs it, it could be executable by root only
20:54:06 <Warrigal> Our activate script, http://normish.org/root/usr/bin/nomic/rtbls/activate, is... rather convoluted, I find.
20:54:12 <AnMaster> ehird, *as far as I know* this is safe
20:54:17 <AnMaster> not 100% sure though
20:54:20 <ehird> Yes, yes, yes, yes, yes.
20:54:41 <Warrigal> $((($(ls -1 . | wc -l)+1)/2))
20:54:46 <ehird> Warrigal: it was written by ais523 to prove me wrong, are you surprised?
20:54:50 <ehird> on one line, too.
20:54:51 <ehird> over IRC.
20:55:11 <AnMaster> Warrigal, heh
20:55:15 <Warrigal> Does that pretty much mean "the number of files in this folder, plus one, divided by two, rounded down"?
20:55:36 <Warrigal> I wonder if I can change ls -1 . to list only directories.
20:55:45 <AnMaster> Warrigal, echo */
20:55:50 <AnMaster> would do it
20:55:54 <AnMaster> I believe
20:56:08 <AnMaster> no idea why ls is needed there
20:56:18 <bsmntbombdood> ehird: why is not scp working?
20:56:19 <AnMaster> ehird, prove you wrong about what?
20:56:26 <ehird> bsmntbombdood: what command are you using?
20:56:35 <bsmntbombdood> ...scp
20:56:40 <ehird> i mean
20:56:41 <ehird> the whole thing :|
20:56:45 <ehird> (because i dunno)
20:56:54 <AnMaster> what?
20:56:58 <AnMaster> can't you read his mind
20:57:03 <AnMaster> !?
20:57:05 <AnMaster> fraud!
20:57:07 <bsmntbombdood> scp ~/python/bsmnt_bot.tgz bsmnt@std-eso.org:
20:57:13 <ehird> bsmntbombdood: std-eso.org
20:57:14 <ehird> eso-std.org
20:57:16 <ehird> compare
20:57:20 <bsmntbombdood> ooops :P
20:57:25 <ehird> :DD
20:58:44 <ehird> bsmntbombdood: I assume the chroot is 32-bit? then I'd better install linux32
20:58:57 <bsmntbombdood> oh balls
20:59:06 <ehird> it's ok
20:59:14 <ehird> linux32 solves all issues everywhere
20:59:17 <ehird> constantly.
20:59:21 <ehird> like aids and cancer. just apply linux32.
20:59:22 <Warrigal> (echo */ | wc) instead of (ls -1 . | wc -l)?
20:59:34 <bsmntbombdood> smp?
20:59:39 <bsmntbombdood> how many procs have you got?
20:59:55 <ehird> beats me :3
20:59:58 <ehird> oh
21:00:00 <ehird> procs=processors?
21:00:08 <bsmntbombdood> yes
21:00:15 <ehird> this is a VPS, it's some weird shit, apparently it's shared between all of the servers
21:00:18 <ehird> so "it depends"
21:00:24 <bsmntbombdood> oh
21:00:43 <ehird> i am too poor to afford a dedi :} but this is functionally equivalent for 99% of stuff so.
21:00:58 <ehird> this is one huge bot tarball you've got here
21:01:24 <bsmntbombdood> only 22mg
21:01:30 <bsmntbombdood> ...22mb
21:01:45 <ehird> one slow upload, wonder if that's you or the server
21:10:40 <ehird> 2m to go
21:12:18 <bsmntbombdood> finally
21:12:22 <AnMaster> night
21:12:35 -!- oerjan has joined.
21:12:50 <ehird> bsmntbombdood: woohoo
21:13:09 <ehird> bsmntbombdood: is it all ready?
21:13:15 <bsmntbombdood> no lol
21:13:19 <ehird> :DD
21:13:32 <bsmntbombdood> ugh ssh over laggy connection
21:14:22 <ehird> python2.4, oldschool
21:14:38 <bsmntbombdood> yeah :P
21:14:46 <bsmntbombdood> ehird: i need emacs or at least mg
21:15:06 <ehird> bsmntbombdood: can't you use emacs locally and tramp to connect via ssh?
21:15:09 <ehird> I'm sure I've done that.
21:15:22 <oerjan> i'd like to point out that the logs link in the topic is incorrect. only the part up to the host is case insensitive.
21:15:38 <ehird> your mom is insensitive
21:17:05 <ehird> bsmntbombdood: fine i'll install eamcs
21:17:22 <ehird> well actually mg because I hate you <.<
21:17:22 <ehird> :P
21:17:51 <ehird> bsmntbombdood: you have your wish.
21:17:58 <ehird> emacsfag.
21:18:01 <ehird> :D
21:18:01 <oerjan> <GregorR> ais523: No. No there is not. As the formation of a planet takes substantially longer than a day, and there's no agreement on what exact moment the planet is considered to be a planet rather than a ball of primordial ooze.
21:18:10 <Badger> $editorfag
21:18:27 <oerjan> i'd also like to point out that when the earth was created, the day/year ratio was probably different
21:19:12 <oerjan> s/created/formed/ in case someone thinks the former has connotations
21:19:45 <bsmntbombdood> ehird: sudo ~bsmnt/python_chroot/bot/start.sh
21:19:58 <ehird> lets try this
21:20:14 -!- bsmnt_bot has joined.
21:20:17 <ehird> hi
21:20:18 <ehird> ^help
21:20:18 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
21:20:22 <GregorR> WHEN JESUS CAME FROM HIS SPACESHIP AND SPAT INTO SPACE, THE SPITWAD FORMED A BALL AND EVENTUALLY BECAME EDEN
21:20:22 <ehird> oops
21:20:23 <ehird> ~help
21:20:26 <ehird> oh wait
21:20:27 <GregorR> WHEN EVE FUCKED IT UP EDEN BECAME EARTH
21:20:28 <GregorR> THE END
21:20:30 <ehird> bsmnt_bot has no help
21:20:31 <bsmntbombdood> oh snap
21:20:32 <ehird> ~eval 2+2
21:20:34 <bsmntbombdood> it actually worked
21:20:35 <bsmntbombdood> jesus
21:20:38 <ehird> bsmntbombdood: did it?
21:20:41 <ehird> ~exec 2+2
21:20:44 <ehird> ~exec print 2+2
21:20:46 <bsmntbombdood> i didn't expect that to happen
21:20:50 <ehird> :ehird!n=ehird@eso-std.org PRIVMSG #esoteric :~exec print 2+2
21:20:50 <ehird> 4
21:20:51 <bsmntbombdood> ehird: what do you see on stdout?
21:20:52 <ehird> lol
21:21:04 <ehird> do infiniloops still break it?
21:21:10 <ehird> ~exec while True: print 'a'
21:21:16 <ehird> yes
21:21:19 -!- bsmnt_bot has quit (Remote closed the connection).
21:21:19 <bsmntbombdood> ~quit
21:22:07 -!- bsmnt_bot has joined.
21:22:08 -!- bsmnt_bot has quit (Remote closed the connection).
21:22:19 <bsmntbombdood> ehird: redirect stdout and stderr to ~bsmnt/output plox
21:22:24 <ehird> yes yes sec
21:22:30 <ehird> bsmntbombdood: how about using nohup
21:22:31 <ehird> :P
21:22:36 <ehird> but k
21:22:58 <bsmntbombdood> you deleted my fifo
21:23:10 <ehird> er, oops
21:23:11 <ehird> did i
21:23:27 <ehird> bsmntbombdood: put it back?
21:23:42 <bsmntbombdood> kay
21:23:49 -!- bsmnt_bot has joined.
21:23:49 <ehird> done
21:23:53 <ehird> hi bsmnt_bot
21:23:53 <bsmntbombdood> foo
21:24:01 <bsmntbombdood> hmm not getting anything
21:24:06 <ehird> worked for me
21:24:17 <ehird> ~exec sys.stdout.write('yoyo')
21:24:17 <bsmnt_bot> yoyo
21:24:22 <ehird> ~exec sys.stdout.write('i am green')
21:24:23 <bsmnt_bot> i am green
21:24:29 <ehird> ~exec sys.stdout.write(repr(self))
21:24:29 <bsmntbombdood> are you tailing output too?
21:24:29 <bsmnt_bot> <__main__.IRCbot instance at 0xf7cb86ec>
21:24:31 <bsmntbombdood> stop that
21:24:34 <ehird> bsmntbombdood: no.
21:24:37 <bsmntbombdood> ~exec sys.stdout("foo")
21:24:37 <bsmnt_bot> foo
21:24:40 <bsmntbombdood> cool it works
21:24:45 <ehird> ~exec a
21:24:45 <bsmnt_bot> NameError: name 'a' is not defined
21:24:49 <ehird> ^^
21:24:50 <ehird> :D
21:24:59 <ehird> bsmnt_bot: GLAD TO HAVE YOU BACK, YOUR BUGGINESS <3
21:25:00 -!- bsmnt_bot has quit (Remote closed the connection).
21:25:02 <ehird> ...
21:25:09 <bsmntbombdood> what happened
21:25:14 <ehird> i dont know
21:25:49 <bsmntbombdood> it should be restarting automatically
21:26:01 <ehird> root@rutian:/home/bsmnt# nohup ~bsmnt/python_chroot/bot/start.sh >output 2>&1 &
21:26:01 <ehird> tjat
21:26:05 <ehird> 's how i started it
21:26:26 <ehird> bsmntbombdood: look at start.sh
21:26:29 <ehird> why would it restatr
21:26:39 <bsmntbombdood> hrm
21:27:14 <bsmntbombdood> it's been so long since i've looked at this code
21:27:23 <ehird> i'll fix it later ;)
21:27:37 -!- bsmnt_bot has joined.
21:27:40 <ehird> meanwhile, enjoy
21:27:53 <bsmntbombdood> foo
21:28:11 <bsmntbombdood> ~raw PRIVMSG #esoteric :foo
21:28:12 <bsmnt_bot> foo
21:30:54 <bsmntbombdood> hrm
21:31:26 <oerjan> <ehird> are you all DENSE
21:31:33 <bsmntbombdood> ?
21:31:36 <oerjan> YOU are dense. you are a black hole, remember?
21:31:51 <bsmntbombdood> ~exec while 1: sys.stdout("spam")
21:31:51 -!- bsmnt_bot has quit (Excess Flood).
21:32:03 <bsmntbombdood> i thought i put in flood protection
21:33:01 <oerjan> bsmntbombdood: iirc you only did that for individual sys.stdout() calls
21:33:35 <bsmntbombdood> well that was stupid of me
21:36:59 <oerjan> <ehird> unless someone is confused, it can be taken as read that we get the bloody context
21:37:17 <oerjan> yes, but it's still obscure to bring up unicorns
21:37:52 -!- KingOfKarlsruhe has joined.
21:38:52 <bsmntbombdood> iirc there are some pretty cool python hacks in that bot
21:42:46 <Warrigal> Oh, bsmnt_bot.
21:42:54 <ehird> sigh
21:42:57 <ehird> it broke already?
21:43:38 <bsmntbombdood> i thought it had better flood control
21:43:58 * ehird makes it run in a while tru
21:43:58 <ehird> e
21:44:16 <bsmntbombdood> ehird: wrap start.sh in something like while [ -f keep_running]; do start.sh; done
21:44:28 <ehird> # (while true; do nohup ~bsmnt/python_chroot/bot/start.sh >output 2>&1; done) &
21:44:32 -!- bsmnt_bot has joined.
21:44:33 <ehird> WFM
21:44:39 <Warrigal> ~exec random()
21:44:39 <bsmnt_bot> NameError: name 'random' is not defined
21:44:45 <ehird> ~exec while 1: sys.stdout('i like big butts and I cannot lie')
21:44:45 <bsmnt_bot> i like big butts and I cannot lie
21:44:45 <bsmnt_bot> i like big butts and I cannot lie
21:44:45 -!- bsmnt_bot has quit (Excess Flood).
21:44:46 -!- kar8nga has left (?).
21:44:48 -!- bsmnt_bot has joined.
21:44:50 <ehird> see?
21:45:00 <Warrigal> ~exec sys.stdout(__import__('random').random())
21:45:00 <bsmnt_bot> 0.663668683347
21:45:09 <Warrigal> ~exec sys.stdout(__import__('random').randomInt())
21:45:10 <bsmnt_bot> AttributeError: 'module' object has no attribute 'randomInt'
21:45:12 <bsmntbombdood> ~exec random.random()
21:45:13 <bsmnt_bot> NameError: name 'random' is not defined
21:45:16 <ehird> Warrigal: lern2python
21:45:17 <ehird> ~exec __import__('socket')
21:45:20 <Warrigal> ~exec sys.stdout(dir(__import__('random')))
21:45:23 <ehird> ugh we need an auto-print
21:45:25 <bsmnt_bot> ['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', 'SystemRandom', 'TWOPI', 'WichmannHill', '_BuiltinMethodType', '_MethodType', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '_acos', '_cos', '_e', '_exp', '_hexlify', '_inst', '_log', '_pi', '_random', '_sin', '_sqrt', '_test', '_test_generator', '_urandom', '_warn', 'betavariate', 'ch
21:45:27 <ehird> ~exec print __import__('socket')
21:45:30 <bsmnt_bot> oice', 'expovariate', 'gammavariate', 'gauss', 'getrandbits', 'getstate', 'jumpahead', 'lognormvariate', 'normalvariate', 'paretovariate', 'randint', 'random', 'randrange', 'sample', 'seed', 'setstate', 'shuffle', 'uniform', 'vonmisesvariate', 'weibullvariate']
21:45:30 <Warrigal> Huh.
21:45:34 <ehird> ~exec sys.stdout(repr(__import__('socket'))
21:45:34 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
21:45:36 <ehird> ~exec sys.stdout(repr(__import__('socket')))
21:45:41 <ehird> hellllllooooooooooo
21:45:44 <Warrigal> ~exec sys.stdout(__import__('random').randint(5))
21:45:46 <bsmnt_bot> <module 'socket' from '/usr/lib/python2.4/socket.pyc'>
21:45:52 <bsmnt_bot> TypeError: randint() takes exactly 3 arguments (2 given)
21:46:00 <ehird> Cool, we have sockets.
21:46:01 <Warrigal> ~exec sys.stdout(__import__('random').randint(1,5))
21:46:04 <bsmnt_bot> 3
21:46:11 <ehird> ~exec sys.stdout(repr(open('start.sh').read()))
21:46:11 <bsmnt_bot> IOError: [Errno 2] No such file or directory: 'start.sh'
21:46:28 <ehird> ~exec sys.stdout(repr(open('bin').read()))
21:46:29 <bsmnt_bot> IOError: [Errno 21] Is a directory
21:46:32 <bsmntbombdood> ehird: /bot/start.sh
21:46:33 <Warrigal> ~exec self.randint = __import('random').randint
21:46:34 <bsmnt_bot> NameError: name '__import' is not defined
21:46:35 <ehird> ~exec sys.stdout(repr(open('bot/start.sh').read()))
21:46:39 <Warrigal> ~exec self.randint = __import__('random').randint
21:46:44 <bsmnt_bot> '#! /bin/bash\n\nCHROOT=/home/bsmnt/python_chroot/\n\nif grep bot/files.img /etc/mtab\nthen\n echo\nelse\n mount $CHROOT/bot/files.img $CHROOT/bot/scripts -o loop,noexec,nodev,nosuid\nfi\n\nchroot $CHROOT /usr/bin/nice -n 7 /usr/bin/python2.4 /bot/ircbot.py\n'
21:46:46 <bsmntbombdood> join #bsmnt_bot_errors for full error trackbacks
21:46:48 <ehird> bsmntbombdood: can it write to itself?
21:46:54 <bsmntbombdood> ehird: huh?
21:47:02 <ehird> bsmntbombdood: Couldn't I destroy its python file right now?
21:47:08 <ehird> From ~exec.
21:47:18 <Warrigal> ~exec self.blah = lambda: self.randint(1,5)
21:47:28 <bsmntbombdood> ehird: i can't remember
21:47:33 <ehird> :D
21:47:37 <ehird> it's a bit flaky ain't it
21:47:55 <Warrigal> ~exec blah = self.blah; sys.stdout([blah(),blah(),blah(),blah(),blah(),blah(),blah(),blah()])
21:47:56 <bsmnt_bot> NameError: global name 'self' is not defined
21:48:10 * Warrigal blinks
21:48:19 <KingOfKarlsruhe> ~exec map(lambda x, y: x ^ y, list('ABCDEF'), (list('CFGHJK'))
21:48:19 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
21:48:23 <Warrigal> ~exec blah = bot.blah; sys.stdout([blah(),blah(),blah(),blah(),blah(),blah(),blah(),blah()])
21:48:26 <bsmnt_bot> NameError: global name 'self' is not defined
21:48:38 <bsmntbombdood> ...that's odd
21:48:38 <ehird> Warrigal: try #bsmnt_bot_errors
21:48:46 <Warrigal> Okies.
21:48:46 <ehird> ~exec bot
21:48:54 <Warrigal> ~exec self
21:49:00 <ehird> o.o
21:49:02 <Warrigal> ~exec sys.stdout(self)
21:49:02 <bsmnt_bot> <__main__.IRCbot instance at 0xf7c616ec>
21:49:08 <ehird> ~exec sys.exit()
21:49:14 <ehird> ...
21:49:15 <ehird> huh
21:49:15 <Warrigal> ~exec sys.stdout(self.blah)
21:49:16 <bsmnt_bot> <function <lambda> at 0xf7c6756c>
21:49:18 <ehird> ~exec sys.exit(0)
21:49:21 <ehird> ~exec sys._exit(0)
21:49:21 <bsmnt_bot> AttributeError: 'module' object has no attribute '_exit'
21:49:29 <ehird> ah
21:49:42 <bsmntbombdood> sys.exit should work
21:49:46 <Warrigal> ~exec sys.stdout([self.blah() for n in [1,2,3,4,5,6,7,8,9,10])
21:49:46 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
21:49:52 <Warrigal> ~exec sys.stdout([self.blah() for n in [1,2,3,4,5,6,7,8,9,10]])
21:49:53 <bsmnt_bot> NameError: global name 'self' is not defined
21:50:00 <Warrigal> ~exec sys.stdout([bot.blah() for n in [1,2,3,4,5,6,7,8,9,10]])
21:50:00 <ehird> lol va
21:50:01 <ehird> t
21:50:07 <bsmnt_bot> NameError: global name 'self' is not defined
21:50:10 <Warrigal> Blah.
21:50:26 <Warrigal> ~exec bot.blah()
21:50:26 <bsmnt_bot> NameError: global name 'self' is not defined
21:50:29 <ehird> ~exec self.__sys
21:50:31 <ehird> oh
21:50:32 <ehird> Warrigal:
21:50:34 <ehird> bot.blah
21:50:35 <bsmnt_bot> AttributeError: IRCbot instance has no attribute '__sys'
21:50:35 <ehird> mentions self
21:50:37 <ehird> I bet it
21:50:37 <Warrigal> Okay.
21:50:50 <ehird> Warrigal:
21:50:50 <ehird> 21:47 <Warrigal> ~exec self.blah = lambda: self.randint(1,5)
21:50:53 <ehird> spot the error
21:50:58 <ehird> (It needs "lambda self: ...")
21:51:03 -!- psygnisfive has quit ("Leaving...").
21:51:03 <Warrigal> self in a lambda.
21:51:11 <ehird> ~exec self.blah = lambda self: self.randint(1,5)
21:51:13 <Warrigal> And that too.
21:51:17 <ehird> ~exec sys.stdout(self.blah())
21:51:17 <bsmnt_bot> TypeError: <lambda>() takes exactly 1 argument (0 given)
21:51:21 <ehird> oh.
21:51:23 <ehird> oh, right
21:51:28 <ehird> Warrigal: solution:
21:51:44 <ehird> ~exec self.blah = (lambda this: (lambda: this.randint(1,5)))(self)
21:51:48 <ehird> ~exec sys.stdout(self.blah())
21:51:48 <bsmnt_bot> 5
21:51:51 <Warrigal> ~exec sys.stdout([__import__('random').randint(1,5) for n in [1,2,3,4,5,6,7,8,9,10]])
21:51:51 <bsmnt_bot> [5, 1, 5, 3, 2, 2, 4, 2, 5, 3]
21:52:00 <Warrigal> I think it generates a random integer from 1 to 5.
21:52:12 <Warrigal> ~raw JOIN ##nomic
21:52:20 <ehird> only for bsmnt.
21:52:21 <ehird> ~exec self._ = (lambda this: (lambda l: l(this)))(self)
21:52:24 <KingOfKarlsruhe> ~exec map(lambda x, y: chr(ord(x) ^ ord(y)), list('Hello'), list('jtcvb'))
21:52:32 <Warrigal> ~exec self.raw('JOIN ##nomic')
21:52:36 <ehird> ~exec self.blahhy = self._(lambda this: this)
21:52:40 <ehird> ~exec sys.stdout(self.blahhy)
21:52:40 <bsmnt_bot> <__main__.IRCbot instance at 0xf7c616ec>
21:52:42 <ehird> ~exec sys.stdout(self.blahhy())
21:52:43 <bsmnt_bot> AttributeError: IRCbot instance has no __call__ method
21:52:48 <ehird> oh
21:52:54 <KingOfKarlsruhe> ~exec sys.stdout(map(lambda x, y: chr(ord(x) ^ ord(y)), list('Hello'), list('jtcvb')))
21:52:55 <bsmnt_bot> ['"', '\x11', '\x0f', '\x1a', '\r']
21:53:08 <ehird> ~exec self._ = (lambda this: (lambda l: lambda *a, **k: l(this, *a, **k)))(self)
21:53:16 <ehird> ~exec self.blahhy = self._(lambda this, a: (this,a))
21:53:19 <Warrigal> ~exec self.raw('PRIVMSG ##nomic :%n' % __import__('random').randint(1,5))
21:53:19 <bsmnt_bot> ValueError: unsupported format character 'n' (0x6e) at index 18
21:53:21 <ehird> ~exec sys.stdout(self.blahhy(2))
21:53:22 <bsmnt_bot> (<__main__.IRCbot instance at 0xf7c616ec>, 2)
21:53:26 <ehird> Warrigal: I made defining functions easy.
21:53:30 <ehird> 21:53 <ehird> ~exec self.blahhy = self._(lambda this, a: (this,a))
21:53:38 <Warrigal> ~exec self.raw('PRIVMSG ##nomic :%d' % __import__('random').randint(1,5))
21:56:37 <KingOfKarlsruhe> ~exec sys.stdout([ i for i in map(lambda x, y: chr(ord(x) ^ ord(y)), list('Hello'), list('jtcvb')) ])
21:56:38 <bsmnt_bot> ['"', '\x11', '\x0f', '\x1a', '\r']
21:56:45 <ehird> KingOfKarlsruhe: What are you doing?
21:56:53 <KingOfKarlsruhe> just for fun :)
21:59:01 <KingOfKarlsruhe> ~exec sys.stdout(map(lambda x, y: chr(ord(x) ^ ord(y)), ['"', '\x11', '\x0f', '\x1a', '\r'], list('jtcvb')))
21:59:01 <bsmnt_bot> ['H', 'e', 'l', 'l', 'o']
21:59:41 <ehird> KingOfKarlsruhe: Ah, http://monolith.sourceforge.net/?
22:00:08 <bsmntbombdood> i'm just surprised that bsmnt_bot worked on the first try
22:00:14 <ehird> bsmntbombdood: :)
22:02:33 <Warrigal> Haskell: {decode ('#':x:xs) = x `asciiXOR` ' ' : decode xs; decode ('$':x:xs) = x `asciiXOR` '@' : decode xs; decode ('%':x:xs) = x `asciiXOR` '`' : decode xs; decode (x:xs) = x : decode xs; decode [] = []}
22:02:47 <ehird> what?
22:02:47 <Warrigal> Where asciiXOR converts characters into numbers, bitwise XORs them, and converts them back.
22:02:52 <Warrigal> How would you do that in Python?
22:02:55 <ehird> that's nothing remotely like KingOfKarlsruhe's...
22:03:12 <Warrigal> Yes, but KingOfKarlsruhe's reminded me of this.
22:03:37 <ehird> ah
22:08:33 <KingOfKarlsruhe> ~exec sys.stdout(__import__('md5').md5.md5('Hello world!').hexdigest())
22:08:34 <bsmnt_bot> AttributeError: 'builtin_function_or_method' object has no attribute 'md5'
22:08:57 <bsmntbombdood> that's not how the md5 module works
22:09:27 <Warrigal> You have a lot of md5s there.
22:09:32 <Warrigal> s/.md5.md5/.md5/
22:09:45 <KingOfKarlsruhe> ~exec sys.stdout(__import__('md5').md5('Hello world!').hexdigest())
22:09:45 <bsmnt_bot> 86fb269d190d2c85f6e0468ceca42a20
22:09:48 <KingOfKarlsruhe> ahh ^^
22:10:53 <bsmntbombdood> ehird: chop chop
22:10:57 <bsmntbombdood> ehird: get to fixing bsmntbombdood
22:11:02 <ehird> bsmntbombdood: i can't fix you.
22:11:02 <bsmntbombdood> *bsmnt_bot
22:11:03 <ehird> sorry.
22:11:07 <ehird> also, fix it how
22:11:09 <ehird> it works.
22:11:31 <bsmntbombdood> no it doesn't
22:11:37 <ehird> how doesn't it
22:12:20 <bsmntbombdood> ~exec self.add_callback(".*foofoo.*", lambda *args:self.raw("PRIVMSG #esoteric :%s" % "fofofofofofof"))
22:12:21 <bsmnt_bot> AttributeError: IRCbot instance has no attribute 'add_callback'
22:12:31 <ehird> huh
22:12:35 <ehird> what's up with that
22:13:21 <bsmntbombdood> oops
22:13:28 <bsmntbombdood> ~exec self.register_raw(".*foofoo.*", lambda *args:self.raw("PRIVMSG #esoteric :%s" % "fofofofofofof"))
22:13:36 <bsmntbombdood> foofoo
22:13:36 <bsmnt_bot> NameError: global name 'self' is not defined
22:13:45 <bsmntbombdood> ~exec self.register_raw(".*foofoo.*", lambda *args:bot.raw("PRIVMSG #esoteric :%s" % "fofofofofofof"))
22:13:45 <bsmnt_bot> NameError: global name 'self' is not defined
22:13:48 <bsmntbombdood> foofoo
22:14:03 <bsmnt_bot> fofofofofofof
22:14:05 <bsmnt_bot> NameError: global name 'self' is not defined
22:14:23 <bsmnt_bot> fofofofofofof
22:14:33 <bsmntbombdood> ~quit
22:14:33 -!- bsmnt_bot has quit.
22:14:35 -!- bsmnt_bot has joined.
22:14:37 <bsmntbombdood> foofoo
22:14:44 <bsmntbombdood> that's why it doesn't work
22:14:52 <ehird> bsmntbombdood: oh, no persistence?
22:14:56 <ehird> persistence is for weenies
22:15:01 <bsmntbombdood> callbacks are supposed to be persistant
22:15:06 <ehird> ah
22:15:33 <ehird> that's odd
22:16:20 <ehird> bsmntbombdood: why doesn't it work
22:19:42 <bsmntbombdood> actually i think you might have to do it manually
22:19:50 <bsmntbombdood> with load_callbacks/save_callbacks or soemthing
22:20:15 <ehird> ah
22:22:19 <bsmntbombdood> or maybe that's in betterbot.py
22:22:26 <bsmntbombdood> i can see why they say it's good to comment your code
22:23:08 <ehird> bsmntbombdood: why not use betterbot then
22:23:44 <bsmntbombdood> because the startup script has stuff that i added later
22:23:51 <bsmntbombdood> making me think that betterbot is an old version
22:23:53 <bsmntbombdood> not sure though
22:24:07 <ehird> i can see bsmnt_bot is a well-maintained piece of software
22:24:16 -!- KingOfKarlsruhe has quit (Remote closed the connection).
22:24:19 <bsmntbombdood> hells yes
22:24:59 * ehird note to self: never let bsmntbombdood touch code
22:25:17 <bsmntbombdood> hey i'm one badass programmer
22:25:30 <Badger> a bad ass-programmer?
22:25:56 <bsmntbombdood> Badger: only if you want me to be, baby
22:26:05 <Badger> :D
22:26:41 <Warrigal> Boss, I think there's something wrong with that programmer you hired.
22:26:54 <Warrigal> He doesn't actually do anything; he just sits around and eats carrots.
22:27:11 <bsmntbombdood> i hate puns
22:27:55 <Warrigal> When I told him to write a program for me, he just brayed at me.
22:29:43 <bsmntbombdood> I WANT TO TASTE YOUR FLUIDS
22:31:28 -!- psygnisfive has joined.
22:32:12 <oerjan> Warrigal: don't give him any more carrots until his program compiles successfully. i'm sure you can take it from there.
22:32:27 <ehird> :(
22:33:01 <oerjan> also, wear protective clothing when you tell him about this policy
22:33:39 <ehird> stop making me sad oerjan
22:36:03 <bsmntbombdood> ehird: want kind of loser doesn't have libevent installed
22:36:16 <ehird> bsmntbombdood: one whose server has absolutely nothing on
22:36:23 <ehird> what do you want libevent for ey
22:36:31 <oerjan> now now i didn't say the program had to actually _work_
22:36:42 <oerjan> we're not complete sadists here
22:37:18 <ehird> bsmntbombdood: ?
22:37:30 <bsmntbombdood> wtf?
22:37:42 <ehird> pj
22:37:47 <ehird> you don't mean my server?
22:37:48 <ehird> i was just guessing
22:37:55 <bsmntbombdood> ./a.out
22:38:08 <bsmntbombdood> -bash: ./a.out: No such file or directory
22:38:31 <ehird> oh jeez, bsmntbombdood,
22:38:34 <ehird> output is in ~ehird
22:38:34 <ehird> XD
22:38:41 <ehird> also
22:38:49 <ehird> a.out: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), not stripped
22:38:51 <ehird> lern264-bit
22:38:58 <ehird> that's why it doesn't work
22:39:14 <ehird> ^@Welcome, Your nick: ^@<^@> ^@Thank you ^@
22:39:15 <ehird> Active users: ^@, ^@*system*: ^@ has joined
22:39:17 <ehird> wut is it
22:39:34 <bsmntbombdood> lol did you string it?
22:39:39 <ehird> vi
22:39:41 <ehird> i'm harcore
22:39:42 <ehird> hardcore
22:39:52 <oerjan> harcen to ehird
22:40:07 <bsmntbombdood> telnet to eso-std.org port 12345
22:41:01 <ehird> you quit
22:41:02 <ehird> :(
22:41:10 <bsmntbombdood> wtf it crashed
22:41:19 <ehird> how did you run it
22:41:21 <bsmntbombdood> lol
22:41:26 <ehird> it's 32-bit
22:41:36 <bsmntbombdood> ehird: so is the stuff in the chroot
22:41:38 <ehird> o, we have linux32
22:41:38 <bsmntbombdood> that worked
22:41:39 <bsmntbombdood> dunno
22:41:40 <ehird> weird
22:42:05 -!- dkoder has joined.
22:42:28 <bsmntbombdood> telnet in again
22:42:44 <bsmntbombdood> lol wtf did you do
22:42:49 <ehird> bsmntbombdood: Welcome, Your nick: ^[[A^[[A
22:42:56 <bsmntbombdood> what exactly did you type?
22:43:03 <ehird> ^[[A - up key
22:43:05 <bsmntbombdood> maybe i should add some sanity checking...
22:43:13 -!- dkoder has left (?).
22:43:27 * Warrigal ponders the use of production rules in compiling
22:43:51 <bsmntbombdood> ehird: use a real nick
22:43:59 <ehird> all yur messages are blank
22:44:32 <ehird> FIX IT
22:44:45 <Warrigal> <expression with variables X> -> lambda <variable Y not in X> -> <expression with variables X union {Y}>
22:44:48 <Warrigal> Hmm.
22:45:17 <bsmntbombdood> no u
22:45:34 <ehird> FIX IT
22:45:39 <bsmntbombdood> ehird: telnet back in and use a real nick
22:45:44 <bsmntbombdood> just alphanums, then hit enter
22:45:48 <bsmntbombdood> fuck you
22:45:55 <ehird> bsmntbombdood: sorry
22:45:56 <ehird> I HAD TO
22:45:58 <ehird> i'll connect properly now
22:46:31 <bsmntbombdood> you did it wrong
22:46:35 <bsmntbombdood> it's not working
22:46:43 <ehird> o.o
22:47:03 <ehird> bsmntbombdood: ?
22:47:58 <bsmntbombdood> whatever i have to go to work
22:48:01 <bsmntbombdood> i'll fix it later
22:48:50 <ehird> :D
23:17:53 -!- Judofyr has quit.
23:28:24 <ehird> Sure, iMovie as a web app. Uh-huh. Slogan: “And you thought USB was slow.” -- John Gruber
23:41:42 <psygnisfive> guys
23:41:47 <psygnisfive> you like guns germs and steel right?
23:42:31 <oerjan> steel is fine, the others i'm not quite as fond of
23:42:37 <psygnisfive> :P
23:42:40 <oerjan> (yeah i know it's a book title)
2009-01-02
00:09:31 <ehird> should I feel guilty about coding a bsmnt_bot competitor
00:18:19 <oerjan> you evil evil man
00:18:34 <Warrigal> "No," says my Adam Smith puppet.
00:18:55 <Warrigal> I think he's saying that to ehird.
00:19:16 * oerjan hits the Adam Smith puppet over the head with the saucepan of nations ====\___/
00:23:57 <ehird> The nice thing about my bot is that it'll have eval, but it won't be able to break the bot.
00:24:02 <ehird> But you'll be able to fiddle with it
00:24:06 <ehird> Also, it'll have esolang interps and stuff.
00:24:09 <ehird> Also, a babble generator.
00:24:16 <ehird> In short, a nice respectable #esoteric bot, with fun Python evaluation.
00:26:37 <Warrigal> Maybe I'll make a bot, too.
00:26:49 <ehird> :)
00:26:53 <ehird> Also, mine will log this channel.
00:27:00 <ehird> So you don't have to use the awful tunes.org log interface.
00:27:20 <Warrigal> I've always wanted to make a fake bashbot.
00:27:29 <ehird> eh?
00:28:33 <Warrigal> An IRC bot that looks like bash but isn't.
00:28:40 <ehird> define bash
00:28:43 <ehird> the shell?
00:28:53 <Warrigal> The shell, sure.
00:29:00 <ehird> what did you mean
00:29:00 <ehird> :P
00:29:13 <Warrigal> The shell.
00:29:35 <Warrigal> I don't think I know of any other bashes.
00:30:10 <ehird> bash.org
00:31:22 <ehird> Message('PRIVMSG', '#esoteric', 'Hello, world!')
00:32:05 * Warrigal nods
00:32:41 <ehird> >>> botte.message.Message('PRIVMSG', '#esoteric', 'Hello, world!')
00:32:41 <ehird> PRIVMSG #esoteric :Hello, world!
00:32:46 <ehird> Phear my 1337 skillz.
00:33:55 * Warrigal ponders what programs a person could possibly want
00:34:21 <ehird> irc
00:34:56 <Warrigal> A few: cat, chmod, chown, irc, mkdir, rm, rmdir
00:35:37 <oerjan> it's Ye Olde Botte!
00:36:04 <oerjan> Warrigal: dwim
00:36:25 <Warrigal> I suppose some commands to interact with running processes would be nice. bash itself would also be useful, of course.
00:36:45 <ehird> oerjan: yes, botte is sucha nice name
00:37:29 <Warrigal> Then again, I don't want to go overboard with trying to be like a Unix system. So no fancy process interaction that wouldn't be easy to implement anyway.
00:37:38 <ehird> Warrigal: what are you doing?
00:37:48 <Warrigal> Wanting to make a fake bashbot.
00:37:56 <ehird> Ohhhh, I see
00:38:02 <ehird> oerjan: will you be friends with botte?
00:38:32 <Warrigal> I guess I would also include echo.
00:47:18 <ehird> botte.bot.Bot().plugins['karma'].commands[0].handle(bot, botte.message.Message('PRIVMSG', '#esoteric', '.hello'))
00:47:21 <ehird> ^ worse than java :D
00:48:34 <oerjan> this will be the botte of our jokes
00:49:25 <ehird> XD
00:49:29 <ehird> oerjan: i love you.
00:50:09 <oerjan> how nice.
00:50:14 <ehird> oerjan: :|
00:51:26 <oerjan> why the long face?
00:51:34 <ehird> beats me
00:51:50 <oerjan> no, _this_ beats you ====\___/
00:51:57 <ehird> lol
00:52:01 <ehird> botte should have a .swat
00:52:07 <ehird> so oerjan doesn't have to do any work
00:52:21 * oerjan never does any work anyhow
00:53:06 <ehird> swatting is hard work!
00:53:26 <oerjan> virtually exhausting!
00:55:56 <ehird> hmm I have a bit of a possible bottleneck here
00:56:06 <ehird> possibly parsing the input stream for a command -everysingletime- isn't so clever
00:56:13 <oerjan> YM botte-l-neck
00:59:55 <ehird> hmm, I'll compile everything down to regexps...
00:59:56 <ehird> ...tomorrow
01:05:29 <ehird> i'm... so decisive
01:05:38 <ehird> whoa holy shit, oklopol moment coming on.
01:08:02 <oerjan> it's because oklopol isn't here
01:08:19 <oerjan> his spirit is possessing you
01:08:25 <ehird> o.o
01:09:23 * oerjan bringeth forth ye holie exorcising swatter -----###
01:10:13 <ehird> ow
01:10:26 <oerjan> please do not resist, or we'll have to do ye holy hand grenade next
01:11:00 <oerjan> BEGONE, FOULE DAEMONE
01:11:47 * oerjan watcheth ye eville daemone runne away in ye form of a rabbite
01:30:42 * ehird decides that one match of a regex then a dictionary lookup is faster than many matches of a regex.
02:28:31 <Warrigal> I love Ye Olde Butcherede Englifhe.
02:50:06 -!- CakeProphet has quit (Remote closed the connection).
02:50:44 <psygnisfive> i hope you dont think that "ye olde butcherede englifhe" is the same as "old english"
02:51:26 <oerjan> i hope psygnisfive knows the meaning of the word "butchered[e]" :D
02:51:48 <psygnisfive> i do, but i mean the general "ye olde englifhe" type stuff
02:51:55 <psygnisfive> not the butcherede part :p
02:53:00 * oerjan trieth to use -th correctly, at least
02:53:36 <oerjan> the rest - not so much
02:53:39 <psygnisfive> the thing with older -th is that its basically where we use -s today
02:53:45 <psygnisfive> so you sound like you've got a lisp
02:53:46 <psygnisfive> :)
02:53:56 <oerjan> you don't thay
02:54:05 <psygnisfive> i said -s not just s :P
02:54:28 <psygnisfive> but yeah, "ye olde englifhe" is not Old English
02:54:49 * oerjan assumeth it is closer to Middle
02:54:49 <psygnisfive> if anything its early modern english before the standardization of spelling
02:54:59 <oerjan> or that
02:57:57 <psygnisfive> Hw<CTCP>æt! Wē Gār-Dena in geār-dagum, þeod-cyninga, þrym gefrunon, hu ða æþelingas ellen fremedon. Oft scyld scefingsceaþena þreatum, monegum mægþum, meodosetla ofteah, ogsode eorl.
03:02:12 <psygnisfive> that sir
03:02:16 <psygnisfive> that is Old English
03:02:39 * oerjan guessed as much
03:04:34 -!- CakeProphet has joined.
03:23:38 <Warrigal> Speaking Old English be all about using the subjunctive.
03:24:16 <Warrigal> Saying "That were hard to compass." instead of "That is hard to compass." make all the difference.
03:24:54 <oerjan> Warrigal speak much nonsense
03:25:10 <Warrigal> It be only the subjunctive, my friend.
03:25:46 <Warrigal> Anyway, no more complete sentences for me. Shunning verbs, and all. Much more flexible this way.
03:26:18 <Warrigal> Peculiar or just iffy tendency, perhaps, but no problem to understand.
03:26:27 <Warrigal> Remind me of palindromes, actually.
03:26:32 <oerjan> Warrigal spækas myki baldurdashi
03:27:09 <Warrigal> Ah, the wonders of speaking entirely in incomplete sentences...
03:27:35 <oerjan> I accidentally complete sentences too
03:27:40 -!- GregorR has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
03:28:01 <oerjan> ack, new year topic accidentally over
03:28:14 <GregorR> Accidentally?
03:28:26 <GregorR> The log link was wrong :P
03:28:50 <oerjan> well yeah i accidentally that earlier
03:28:55 <Warrigal> Bah, verb omission. Ungrammatical.
03:29:10 <Warrigal> Unlike omitting the subject, which I assure you is completely grammatical.
03:29:13 <Warrigal> In Spanish, anyway.
03:29:28 <oerjan> Warrigal: i accidentally your viewpoint
03:30:06 <Warrigal> Wait, "much more flexible" to avoid complete sentences completely? Yeah, right.
03:30:17 <oerjan> i would guess in old english as well, since they had more personal verb endings
03:31:04 <oerjan> istr old norse could leave out subjects, although it's been a while
03:32:37 <oerjan> i may adopt an egoistic grammar where i use only one subject for all sentences
03:33:33 <oerjan> after i drive everyone crazy with it, i will rule the world
03:34:19 <oerjan> or should we adopt a royal we, hm...
04:03:02 -!- psygnisfive has quit (Read error: 54 (Connection reset by peer)).
04:04:24 -!- psygnisfive has joined.
04:26:43 -!- Warrigal has changed nick to kerlo.
04:44:07 -!- kerlo has changed nick to Warrigal.
04:52:05 -!- Warrigal has changed nick to kerlo.
05:20:34 -!- Asztal has quit (kornbluth.freenode.net irc.freenode.net).
05:20:34 -!- sebbu2 has quit (kornbluth.freenode.net irc.freenode.net).
05:20:35 -!- psygnisfive has quit (kornbluth.freenode.net irc.freenode.net).
05:20:36 -!- flexo has quit (kornbluth.freenode.net irc.freenode.net).
05:20:36 -!- Dewi has quit (kornbluth.freenode.net irc.freenode.net).
05:20:37 -!- ehird has quit (kornbluth.freenode.net irc.freenode.net).
05:20:38 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
05:20:38 -!- puzzlet has quit (kornbluth.freenode.net irc.freenode.net).
05:20:39 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
05:20:39 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
05:20:41 -!- Badger has quit (kornbluth.freenode.net irc.freenode.net).
05:20:41 -!- AnMaster has quit (kornbluth.freenode.net irc.freenode.net).
05:20:42 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
05:20:42 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
05:20:43 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
05:24:24 -!- Asztal has joined.
05:24:24 -!- ehird has joined.
05:24:24 -!- sebbu2 has joined.
05:24:24 -!- rodgort has joined.
05:24:24 -!- GregorR has joined.
05:24:24 -!- puzzlet has joined.
05:24:24 -!- SimonRC has joined.
05:24:24 -!- decipher has joined.
05:24:24 -!- lament has joined.
05:24:24 -!- mtve has joined.
05:28:24 -!- Asztal has quit (kornbluth.freenode.net irc.freenode.net).
05:28:24 -!- sebbu2 has quit (kornbluth.freenode.net irc.freenode.net).
05:28:25 -!- puzzlet has quit (kornbluth.freenode.net irc.freenode.net).
05:28:25 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
05:28:26 -!- ehird has quit (kornbluth.freenode.net irc.freenode.net).
05:28:26 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
05:28:26 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
05:28:26 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
05:28:27 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
05:28:27 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
05:30:50 -!- Asztal has joined.
05:30:50 -!- ehird has joined.
05:30:50 -!- sebbu2 has joined.
05:30:50 -!- rodgort has joined.
05:30:50 -!- GregorR has joined.
05:30:50 -!- puzzlet has joined.
05:30:50 -!- SimonRC has joined.
05:30:50 -!- decipher has joined.
05:30:50 -!- lament has joined.
05:30:50 -!- mtve has joined.
05:31:05 -!- AnMaster has joined.
05:31:05 -!- Badger has joined.
05:31:24 -!- psygnisfive has joined.
05:31:24 -!- flexo has joined.
05:31:24 -!- Dewi has joined.
05:42:07 -!- oerjan has quit ("Good night").
06:57:22 <GregorR> Argh, tools are chrome-plated.
07:53:23 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
07:54:27 -!- puzzlet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:28:11 <CakeProphet> GregorR: in bf, does - wrap back around to 255?
08:28:20 <CakeProphet> or is it NOP for 0's
08:53:38 -!- Mony has joined.
08:54:36 <Mony> plo
08:56:18 <GregorR> CakeProphet: Depends on the implementation.
08:56:28 <GregorR> CakeProphet: In most implementations it raps around.
08:56:30 <GregorR> *wraps
08:56:38 <CakeProphet> no no, I think that's a good idea
08:56:52 <CakeProphet> my Haskell implementation will freestyle upon decrementing a 0
08:57:01 <GregorR> ... "freestyle"?
08:57:24 <CakeProphet> well, unless you mean something else by "raps around".
08:57:43 <GregorR> I mean that when you subtract from 0, it goes to MAXVAL.
09:01:26 <GregorR> http://smg.photobucket.com/albums/v47/BenMaras/?action=view&current=ijoystick.png (NSFW, NSF-sanity)
09:03:12 <CakeProphet> -clicks-
09:03:54 <Mony> heh :p
09:08:23 * CakeProphet places an order for girlfriend
10:44:34 -!- M0ny has joined.
10:53:17 -!- Mony has quit (Read error: 145 (Connection timed out)).
11:03:11 -!- M0ny has quit ("Quit").
11:06:31 -!- KingOfKarlsruhe has joined.
11:36:03 -!- Judofyr has joined.
12:15:35 -!- puzzlet has quit (Remote closed the connection).
12:15:40 -!- puzzlet has joined.
13:09:57 -!- KingOfKarlsruhe has quit (Remote closed the connection).
13:51:27 -!- ehird has left (?).
13:51:31 -!- ehird has joined.
13:51:44 -!- ehird has left (?).
13:51:49 -!- ehird has joined.
14:13:06 <ehird> you know what i like
14:13:13 <ehird> bsmnt_bot.
14:13:19 <ehird> ~exec sys.stdout('why thank you')
14:13:19 <bsmnt_bot> why thank you
14:13:28 <ehird> so good to have you back old chap
14:22:19 -!- oerjan has joined.
14:36:45 <ehird> Hmm...
15:11:25 -!- puzzlet has quit (Remote closed the connection).
15:11:30 -!- puzzlet has joined.
15:18:42 <ehird> Pop quiz: how long do you think it'd take to match 100 short regexps against a short text?
15:20:24 <oerjan> finally a question within my expertise - oh wait
15:20:34 <ehird> :D
15:20:50 <oerjan> but if i may guess: "not very long"
15:24:02 <ehird> oerjan: how much faster than matching 1 short regexp against the same text, then doing a hashtable lookup on one of the groups?
15:24:14 <ehird> i imagine the answer is "0.5ms"
15:24:39 <oerjan> now we're _really_ out of my expertise
15:26:24 <oerjan> although hm, you should be able to do 100 regexps in parallel by merging the finite state automata. that would be assuming they're actually implemented that way
15:27:02 <oerjan> or maybe the number of states will blow up exponentially (^100)
15:27:22 <ehird> oerjan: I think python regexps are less speedy than FSAs
15:27:25 <ehird> because of backrefs
15:28:08 <oerjan> yeah regexps mean more than the CS definition these days
15:28:33 <oerjan> i think optimizing it can depend a lot on the form of the regexps
15:29:17 <oerjan> and did i mention my lack of expertise?
15:29:44 <ehird> oerjan: what's worth noting is that these regexps are matching a line from irc.
15:29:50 <ehird> to choose which command to run.
15:29:55 <ehird> very speed-sensitive,
15:31:13 <oerjan> um how many thousand channels are you watching? O_O
15:31:57 <ehird> oerjan: well, my initial deployment is 5,000 worldwide
15:31:59 <ehird> clustered
15:32:10 <ehird> then I think I'll run a few instances but with shared memory
15:32:11 <oerjan> oh mad science
15:32:14 <ehird> long-term, about 100,000 channels
15:32:22 <ehird> which get 100 messages/sec each
15:33:21 <ehird> hopefully I will then implement bot procreation
15:33:27 <ehird> and all bots will eventually become botte
15:33:58 <oerjan> ic
15:34:50 <oerjan> anyway i think you should do the hashtable thing until you know you need more speed
15:36:33 <ehird> oerjan: wut? the hashtable one is the slower one
15:36:34 <ehird> :D
15:36:50 <oerjan> yes but it sounds like it is simpler
15:36:59 <oerjan> also, are you _sure_ it's slower
15:37:17 <ehird> 99% sure, dictionary lookup is like THE most optimized thing in python
15:37:20 <ehird> (because obj.foo does it)
15:37:30 <oerjan> huh?
15:37:31 <ehird> and the re module is written in pure python, IIRC
15:37:36 <ehird> re=regex
15:37:38 <ehird> so
15:37:43 <ehird> regex is almost certainly slower
15:37:44 <oerjan> that would mean hashtable should be faster
15:37:47 <ehird> yes
15:37:50 <ehird> it would be
15:37:55 <ehird> oh
15:37:56 <oerjan> er you said the opposite
15:38:00 <ehird> 15:36 <ehird> oerjan: wut? the hashtable one is the slower one aemn
15:38:02 <ehird> sould be
15:38:04 <ehird> 15:36 <ehird> oerjan: wut? the hashtable one is the faster one
15:38:29 <oerjan> well then not a problem
15:38:53 <oerjan> or rather, you have only two problems, while with 100 regexps you would have 101 problems
15:39:59 <ehird> :D
15:40:02 <ehird> but
15:40:05 <ehird> its a pain to implement
15:40:06 <ehird> so ha
15:48:41 -!- KingOfKarlsruhe has joined.
16:30:01 -!- Judofyr has quit.
16:56:44 -!- oerjan has quit ("Cubus").
17:09:17 -!- Slereah has joined.
17:19:57 -!- Hiato has joined.
17:20:13 <Hiato> Gnock-Knock
17:20:57 <Hiato> \me pokes a bit more
17:21:08 * Hiato pokes a bit more
17:21:32 <Hiato> confused windows directory tree with IRC there :P
17:25:34 -!- Judofyr has joined.
17:31:56 -!- Judofyr has quit (Read error: 60 (Operation timed out)).
17:35:12 * SimonRC wonders if people are listening here
17:38:15 <Hiato> \me wonders in response
17:38:20 * Hiato wonders in response
17:38:27 <Hiato> (... again)
17:38:55 <SimonRC> heh
17:39:38 <Hiato> SimonRC, would you mind shedding some light on a certain problem for me?
17:40:44 <SimonRC> ok, but I am busy right now
17:40:47 <SimonRC> go ahead
17:42:11 <Hiato> Ok, thanks. In your opinion, what would the best way be to grow massive numbers, quickly. That is, can you suggest/demonstrate a method that will do so.
17:42:41 <Hiato> All of this in light of my realisation that my method is not actually as large as I thought it would be - all for a little game on the xkcd fora
17:44:06 <SimonRC> busy beaver numbers are a good choice
17:44:17 <SimonRC> they grow uncomputably fast
17:44:46 <Hiato> yeah, they're perfect, but unfortunately the number has to be finite and computable. The latter cancelling out that option
17:45:37 -!- KingOfKarlsruhe has quit (Remote closed the connection).
18:10:02 -!- ais523 has joined.
18:16:34 <ehird> 18:14 <Sfan00> Besides 12 year olds aren't supposed to use the Internet
18:16:38 <ehird> -- #wikipedia
18:16:50 <ehird> 18:14 <dungodung> in what universe?
18:16:57 <ehird> 18:15 <Sfan00> dungodung: A universe in which there are appropriate safeguards
18:23:18 <psygnisfive> i got my keyboard :D
18:23:46 <psygnisfive> ehird gt off the internets
18:23:53 <ehird> i'm 13
18:23:54 <ehird> so i'm OK
18:23:58 <ehird> but 12 year olds
18:23:59 <psygnisfive> oh ok
18:24:02 <ehird> they need appropriate safeguards.
18:24:04 <psygnisfive> in that case
18:24:10 <ais523> 13 is the COPPA age, isn't it?
18:24:10 <psygnisfive> ::raep::
18:24:12 <ehird> in case they learn anything about the real world.
18:24:15 <ehird> ais523: yep.
18:24:28 <psygnisfive> yeah but hes a limey 13 year old
18:24:37 <psygnisfive> so noone cares about his protection and privacy
18:24:37 <ehird> do my "yes I am over 13" clicks on registration forms retroactively become legal when I turn 13?
18:24:49 <psygnisfive> no
18:24:56 <ehird> dammit
18:25:12 <psygnisfive> you might end up in jail :(
18:25:26 <ehird> it's ok I have green.
18:25:29 <ehird> the power of green.
18:25:31 <ais523> nah, that's a civial violation not a criminal one
18:25:32 <ais523> *civil
18:25:35 <psygnisfive> brown?
18:25:37 <ais523> so ehird can't be imprisoned, just fined lots
18:25:38 <psygnisfive> the power of brown?
18:25:42 <psygnisfive> cheese?
18:25:43 <ehird> i am very incivil
18:25:46 <psygnisfive> the power of cheese?
18:25:54 <ehird> ais523: I say I'd have clicked, hmm, at least 500 such yes links.
18:25:57 <ehird> How much can I be fined? XD
18:26:01 <psygnisfive> whatve you been looking at that requires you be 13 ehird?
18:26:07 <ehird> psygnisfive: registration forms have it.
18:26:09 <ehird> _all_ of them
18:26:11 <ehird> seriously
18:26:12 <psygnisfive> oh
18:26:13 <psygnisfive> really?
18:26:14 <psygnisfive> hm
18:26:16 <ais523> ehird: I'm not at all sure, damage calculation is something i'm rubbish at guessing
18:26:18 <ehird> it's crazy
18:26:24 <psygnisfive> obviously wouldnt be porn
18:26:28 <psygnisfive> those are 18+ here
18:26:28 <ehird> lol
18:26:31 <ehird> pg-13 porn
18:26:34 <psygnisfive> mmm yeah
18:27:01 <psygnisfive> if adult diapers are diapers for adults
18:27:06 <psygnisfive> is child porn porn for children?
18:27:46 <ehird> yes.
18:27:52 <psygnisfive> well then
18:27:56 <psygnisfive> dont look at child porn, ehird
18:28:05 <ehird> now that I'm over 13? XD
18:28:27 <psygnisfive> no, ever. porn for children is full of annoying kids doing annoying things
18:28:47 <ehird> this is some odd new definition of porn for children that I was previously unaware of
18:28:54 <psygnisfive> because theyre all kids, the whole "fake story" thing is always like
18:29:00 <psygnisfive> two kids on a playground
18:29:04 <psygnisfive> one acting all slutty
18:29:09 * ehird thinks psygnisfive is in bizarro world
18:29:10 <psygnisfive> sharing her apple juice
18:29:20 * SimonRC ponders...
18:29:21 <psygnisfive> and then next thing you know its an orgy
18:29:35 <psygnisfive> i mean, that NEVER happens!
18:29:41 <SimonRC> is is paedophilia if the child in question is older than you
18:29:57 <ehird> i don't think being attracted to people of your own age is paedophilia.
18:30:07 <psygnisfive> or a boy is riding his bike too fast, a girl police officer pulls him over
18:30:24 <ehird> and rides his bike?
18:30:26 <ehird> ok, topic over
18:30:29 <ehird> instantrimshot.com
18:30:32 <ehird> you can all go home now
18:30:34 <psygnisfive> do you realize how fast you were going? // uh no.. its a bike.. i dont have a speedometer. maybe 10 miles an hour?
18:30:41 <ehird> I SAID TOPIC OVER
18:30:48 <psygnisfive> :P
18:31:21 <psygnisfive> / YOUVE GOT A CARD IN YOUR SPOKES DO YOU REALIZE HOW DANGEROUS THAT IS? im going to have to place you under arrest!
18:31:41 <SimonRC> different topic: # There once lived a man name Oedipus Rex // You may have hear about his odd complex // His name appears in Freud's index // because he loved his mother. #
18:31:49 <ehird> >_<
18:31:57 <psygnisfive> lol
18:32:36 <SimonRC> (from Tom Lehrer)
18:32:39 <psygnisfive> theres some humor in the oedipus story vs the oedipus myth in that it was all unknown to him and once it was he gouged out his eyes and ran away from being king
18:32:50 * SimonRC goes for dinner.
18:33:04 <psygnisfive> whereas i think a lot of people unfamiliar with the myth believe that he was a case of oedipal complex
18:33:20 <ehird> doesn't freud say that _everyone_ is a case of that?
18:33:25 <psygnisfive> well yes :P
18:33:34 <psygnisfive> freud was a nutball
18:33:41 <ehird> no shit :P
18:34:01 <psygnisfive> Freudian Slip: When you say one thing and mean your mother.
18:34:07 <ehird> old
18:34:14 <psygnisfive> silence! >O
18:34:29 <psygnisfive> what instrument do you play ehird
18:34:34 <ehird> nothing :D
18:34:47 <psygnisfive> ive decided to take up keyboard
18:35:01 <ehird> i can do that
18:35:03 <ehird> watch
18:35:04 <ehird> asdjkladjhksfkjaljeoiajvog9irhbrt
18:35:06 <ehird> dfkljna'∂fgjlsk;fmbdt[;lkb;lkytdmbkntldh ,mfl,ujh
18:35:10 <psygnisfive> hooray!
18:35:18 <ehird> get it get it
18:35:22 <ehird> I was playing my keyboard
18:35:23 <ehird> ahahahhaahhaha
18:35:35 <psygnisfive> oh ill play your keyboard alright
18:35:39 <ais523> you have a ∂ on your keyboard?
18:35:40 <ehird> worst innuendo ever
18:35:45 <ehird> ais523: option-d = d
18:35:46 <ehird> err
18:35:47 <ehird>
18:35:52 <ehird> œ∑´®†¥
18:35:53 <ais523> ah, ok
18:35:54 <ehird> alt-qwerty
18:36:01 <ais523> I have a ð
18:36:02 <psygnisfive> i use unicode querty
18:36:04 <ais523> using altgr
18:36:09 <psygnisfive> so mine is ð as well
18:36:49 * ehird mac usar
18:37:34 <psygnisfive> me too
18:51:18 -!- Judofyr has joined.
19:19:58 -!- LinuS has joined.
19:21:38 <ehird> grrrrrrrr fuck relational databses
19:22:59 <ehird> graphs are awesome, however.
19:23:00 <CakeProphet> wooo... I've finally gotten truly familiar with a second programming language.
19:23:06 <ehird> CakeProphet: which two?
19:23:13 <CakeProphet> Python and Haskell
19:23:28 <ehird> CakeProphet: good taste. now learn smalltalk, lisp and c. :P
19:23:31 <CakeProphet> though technically I'm familiar with C... but I never use it unless someone needs me to.
19:24:02 <CakeProphet> I also /know/ the syntax/semantics of smalltalk and lisp
19:24:07 <CakeProphet> just don't have the experience to program things in it
19:24:35 <CakeProphet> lisp doesn't really interest me
19:24:53 <ehird> they're useful to know, conceptually
19:26:58 <ehird> http://ogdl.sourceforge.net/
19:26:59 <ehird> awesom
19:27:00 <ehird> e
19:27:07 <ehird> see, I basically have to serialize a bunch of shit as that
19:27:08 <ehird> and I'm done
19:27:18 <ehird> well, it could do with non-string types.
19:27:48 <ehird> http://ogdl.sourceforge.net/spec/ogdl-schema.htm this could work but it's just so non-automatic.
19:27:49 <ehird> hmm.
19:27:50 * ehird thinks.
19:27:56 <ehird> serializing arbitrary objects to a graph. hmm.
19:30:40 <CakeProphet> PICKLE
19:31:16 <ehird> fail
19:31:25 <ehird> pickle is 1. python-specific 2. doesn't serialize to a graph
19:35:43 * SimonRC dislikes arguing on the internet
19:35:56 <CakeProphet> SimonRC: I personally enjoy arguing on the internet.
19:36:11 <CakeProphet> it's fun, there are no consequences, and you sometimes learn things
19:36:19 <CakeProphet> why do /you/ not like arguing on the internet?
19:37:15 <ehird> SimonRC: which argument?
19:37:57 <SimonRC> I keep finding people that seem to have a crazy idea that they won't shift on
19:38:51 <SimonRC> for example, in this: http://news.bbc.co.uk/1/hi/programmes/more_or_less/7798152.stm
19:38:51 <ehird> SimonRC: THERE IS A SUPERNATURAL BEING WHO WATCHES OVER US AND SENDS US TO PARADISE OR A PLACE OF FIRE AND EVIL DEPENDING IF HE LIKES US OR NOT
19:39:00 <SimonRC> ehird: no, not like that
19:39:04 <ehird> :D
19:39:17 <SimonRC> the brain teaser's answer is not AFAICT right
19:39:50 <SimonRC> "a random number" doesn't say what distribution to use
19:40:07 <SimonRC> and once you pick a distribution, information leaks out
19:40:27 <SimonRC> a little of information at least
19:47:57 -!- ais523 has quit (Client Quit).
19:49:40 <AnMaster> <ehird> grrrrrrrr fuck relational databses
19:49:42 <AnMaster> um
19:49:44 <AnMaster> why?
19:49:48 <ehird> they suck.
19:49:59 <AnMaster> ehird, like postgresql?
19:50:05 * AnMaster love postgresql
19:50:19 <ehird> postgresql is a great implementation of the relational paradigm, which is shit.
19:50:35 <AnMaster> ehird, so what sort of database do you suggest instead?
19:50:51 <ehird> read up. I'm writing a database that serializes arbitrary objects to a graph. :D
19:50:55 <AnMaster> hm
19:51:05 <AnMaster> ehird, how fast and scalable will it be?
19:51:31 <ehird> AnMaster: there's not really anything in its theoretical model that would cause it to be anything but blazing, but since I'm writing the implementation in Ruby -- not very fast.
19:51:35 <ehird> maybe scalable.
19:51:36 <ehird> we'll see.
19:51:45 <ehird> the question is, are your datasets large enough to worry about that?
19:52:03 <AnMaster> ehird, wikipedia database?
19:52:15 <ehird> AnMaster: probably take like 500 hours to import, but I don't care :)
19:52:54 <AnMaster> ehird, is there any tutorial or introduction for graph based db?
19:53:10 <ehird> AnMaster: sure. it's a graph, and it's on disk.
19:53:13 <ehird> any questions?
19:55:29 <AnMaster> ehird, well I don't see how it works for say this: SELECT pages.title AS title, revisions.text AS text FROM (pages LEFT JOIN text (pages.revision = revisions.id)) WHERE pages.protected = true;
19:55:33 <AnMaster> or something like that
19:55:38 <AnMaster> it may not be valid sql
19:55:50 <ehird> and I don't see what your point is at all.
19:55:55 <ehird> that's SQL. SQL is a relational language.
19:55:59 <ehird> why are you talking about it?
19:56:06 <AnMaster> ehird, how would you represent something like that with graph db
19:56:19 <ehird> AnMaster: you wouldn't. that's a query.
19:56:24 <ehird> databases don't store queries.
19:56:31 <AnMaster> ehird, true, but a database isn't useful if you can't query it
19:56:41 <AnMaster> so how would you represent the data and how would you query it
19:56:44 <ehird> that's completely separate to the actual database
19:56:51 <ehird> AnMaster: 1) as a graph. 2) by querying it as a graph
19:57:01 <AnMaster> ehird, can you give some example
19:57:07 <ehird> of what.
19:57:45 <AnMaster> of something equivalent to the SQL query I wrote above. I assume you wouldn't represent it as tables like that, but in some other format instead
19:58:00 <AnMaster> so I can't really ask more specific, than that
19:58:07 <ehird> it's abstract, it's just like how you could query a relational DB with any language, not just sql
19:58:15 <AnMaster> ehird, yes true
19:58:15 <ehird> so I can't exactly give you a concrete example...
19:58:20 <AnMaster> but how does the model differ?
19:58:22 <AnMaster> I mean
19:58:30 <AnMaster> would you store it as 2 tables?
19:58:32 <AnMaster> or what
19:58:32 <ehird> one's tables with columns, rows and relations, one's a graph
19:58:47 <ehird> http://en.wikipedia.org/wiki/Graph_(mathematics)
19:59:13 <AnMaster> yes I know about that, but: I don't know how it would be a db that could store pages with revisions
19:59:23 <SimonRC> I have an idea
19:59:36 <ehird> 19:55 <AnMaster> ehird, well I don't see how it works for say this: SELECT pages.title AS title, revisions.text AS text FROM (pages LEFT JOIN text (pages.revision = revisions.id)) WHERE pages.protected = true;
19:59:40 <ehird> let's invent an arbitrary query format
19:59:43 <ehird> it'd look like:
19:59:45 <AnMaster> ehird, yep
19:59:51 <AnMaster> I'm find with custom query formats
19:59:51 <SimonRC> I have a list of names and adresses of customers. How would that be stored?
20:00:02 <ehird> SimonRC: i'll answer AnMaster's question first
20:00:47 <ehird> page = pages.select(p -> p.protected = true)
20:00:53 <ehird> revision = page.revisions[page.revision]
20:00:58 <AnMaster> SimonRC, I could answer for relational db, since there is a 1-to-1 mapping there need not be more than 1 table, probably with a primary key to use as a table elsewhere
20:01:05 <ehird> it essentially comes down to OOP
20:01:09 * SimonRC watches BBC 4
20:01:18 <ehird> since an OOP system is a huge object graph, in essence
20:01:22 <AnMaster> ehird, right, there is a 1-to-many-mapping there
20:01:26 <ehird> AnMaster: no
20:01:31 <AnMaster> ehird, yes there was in my example
20:01:40 <ehird> there's no such thing as a 1-to-many mapping
20:01:42 <ehird> there's an ordered list.
20:01:51 <AnMaster> ehird, each page can have 1 or more revisions
20:01:57 <ehird> AnMaster: 1-to-many mapping is relational speak.
20:02:05 <AnMaster> ehird, well, how would that translate then?
20:02:09 <AnMaster> to graph
20:02:14 <ehird> 20:00 <ehird> page = pages.select(p -> p.protected = true)
20:02:14 <ehird> 20:00 <ehird> revision = page.revisions[page.revision]
20:02:21 <ehird> well
20:02:26 <ehird> p.protected == true
20:02:29 <ehird> since I used = for assignment
20:02:47 <AnMaster> ehird, if I want to get a set of revisions related to the set of protected pages?
20:02:58 <AnMaster> :/
20:03:00 <ehird> dude
20:03:02 <ehird> I fucking pasted it
20:03:06 <AnMaster> yes
20:03:10 <ehird> have it three times
20:03:11 <ehird> 20:00 <ehird> page = pages.select(p -> p.protected = true)
20:03:12 <ehird> 20:00 <ehird> revision = page.revisions[page.revision]
20:03:14 <ehird> 20:00 <ehird> page = pages.select(p -> p.protected = true)
20:03:16 <ehird> 20:00 <ehird> revision = page.revisions[page.revision]
20:03:18 <ehird> 20:00 <ehird> page = pages.select(p -> p.protected = true)
20:03:18 <AnMaster> ehird, ah, so is that:
20:03:20 <ehird> 20:00 <ehird> revision = page.revisions[page.revision]
20:03:23 <AnMaster> pages = pages.select(p -> p.protected = true)
20:03:24 <AnMaster> then?
20:03:25 <AnMaster> in fact
20:03:31 <AnMaster> or
20:03:34 <AnMaster> protected_pages = pages.select(p -> p.protected = true)
20:03:35 <AnMaster> rather
20:03:45 <ehird> protected_pages = pages.select_all(p -> p.protected == true)
20:03:46 <AnMaster> since there would be more than one protected page :)
20:03:48 <AnMaster> right
20:03:56 <AnMaster> ehird, your use of singular confused me
20:03:57 <AnMaster> :P
20:04:15 <ehird> revisions = protected_pages.fold([], r,p -> r.concat(p.revisions))
20:04:22 <AnMaster> nice
20:04:27 <ehird> where the fold is just regular code
20:04:30 <ehird> instead of anything graph-specific
20:04:34 <AnMaster> right
20:04:52 <ehird> in ruby, it'd look like this
20:05:32 <ehird> revisions = Page.find_all { |p| p.protected? }.inject([]) { |r, p| r + p.revisions }
20:06:53 <ehird> 19:59 <SimonRC> I have a list of names and adresses of customers. How would that be stored?
20:07:00 <ehird> it'd be stored as a graph :-P
20:07:53 <AnMaster> ehird, none of this really help us get an understanding of what you mean
20:08:03 <ehird> there's nothing to explain
20:08:04 <ehird> it's a graph
20:08:05 <ehird> that's it
20:08:13 <AnMaster> there seems to be no wikipedia article on it, at least not with the name graph database or anything like that
20:08:38 <ehird> because a graph database is just _a graph_
20:08:49 <ehird> http://en.wikipedia.org/wiki/Graph_(mathematics)
20:08:49 <ehird> that's it
20:08:50 <ehird> end of
20:08:52 <ehird> full stop
20:08:56 * AnMaster looked at http://en.wikipedia.org/wiki/Database_models and
20:09:07 <Slereah> Your mom's a graph.
20:09:09 <AnMaster> and http://en.wikipedia.org/wiki/Category:Databases
20:09:18 <ehird> http://en.wikipedia.org/wiki/Graph_(mathematics)
20:09:21 <ehird> look there.
20:10:53 <AnMaster> ehird, would this imply that different objects of the same type can have different connectors, so not all pages need to link revisions, some could link something else instead
20:11:01 <AnMaster> that every object is unique?
20:11:05 <AnMaster> in it's type
20:11:13 <ehird> essentially, yes
20:11:27 <ehird> type information will be stored, but it won't be used to enforce data structure
20:11:36 <AnMaster> ehird, because relational model is pretty much a graph where each node is a table and the links are on field basis
20:11:44 <ehird> AnMaster: no.
20:11:50 <AnMaster> ehird, no?
20:12:20 <AnMaster> you can visualise the foreign key constraints as a graph
20:12:26 <AnMaster> it is rather common to do so even
20:12:50 <ehird> sure, but it's not just an arbitrary graph
20:13:02 <AnMaster> um?
20:13:10 <AnMaster> ah true
20:13:33 <AnMaster> you mean the other object doesn't need a special field to act as a "connector"+
20:13:34 <AnMaster> ?
20:13:40 <AnMaster> to match on
20:13:44 <AnMaster> rather it is like pointers
20:13:55 <AnMaster> of C structs or whatever
20:14:08 <ehird> wellllllllllllll,
20:14:10 <ehird> no.
20:14:57 <AnMaster> ehird, hm?
20:16:29 -!- ais523 has joined.
20:16:36 <AnMaster> hi ais523
20:16:38 <GregorR> OK, I need to counterbalance these glasses.
20:16:47 <GregorR> What should I mount to the left side? Taking all votes! :P
20:16:48 <ais523> hi AnMaster
20:17:02 <AnMaster> GregorR, another monitor!
20:17:17 <ais523> that topic's ridiculous, surely?
20:17:22 <ais523> it's grepping the logs for a link to the logs?
20:17:32 <GregorR> ais523: Yes, yes it is :P
20:17:39 <GregorR> AnMaster: I could do that, but that's /awfully/ pointless X-D
20:17:41 <AnMaster> hah yes
20:17:51 <GregorR> Plus, would half the battery life of the whole system.
20:18:00 <AnMaster> GregorR, why? doesn't it mean you will have stereo vision?
20:18:07 <AnMaster> for the monitor
20:18:50 <ehird> GAH
20:18:51 <ehird> SOURCEFORGE
20:18:56 <ehird> I HOPE YOU BURN IN A FIREY PIT OF DEATH
20:18:56 <AnMaster> ehird, wait
20:18:59 <AnMaster> let me guess
20:19:02 <AnMaster> they changed theme again?
20:19:05 <ehird> no
20:19:11 <GregorR> AnMaster: Can't use them both at once, the display is far outside of the center of my vision.
20:19:11 <AnMaster> ok, what then?
20:19:26 <ehird> i tried to download something and had to nab the direct link before they started automatically downloading it (FUCKERSFUCKERSFUCKERS) and then had to close that window and get it in wget
20:19:31 <AnMaster> GregorR, oh it doesn't act like a HUD for the entire field of view?
20:19:35 <AnMaster> how disappointing
20:19:47 <GregorR> AnMaster: That's the difference between $250 and $2500
20:19:52 <ehird> ...oh
20:19:54 <ehird> that sucks
20:19:57 <AnMaster> ehird, eh just cancel the automated download?
20:19:59 <ehird> i'm not your friend any more.
20:20:02 <AnMaster> GregorR, ouch
20:20:05 <ehird> AnMaster: no, fucking annoying
20:20:06 <ehird> :|
20:20:20 <AnMaster> ehird, I mean before you selected where to save it
20:20:28 <ehird> i auto-download to the desktop
20:20:28 <AnMaster> and the dialog for that isn't even modal
20:20:33 <AnMaster> ehird, how insecure
20:20:36 <ehird> and then put it where I want if I want to keep it
20:20:39 <ehird> or delete it if I don't
20:20:41 <ehird> AnMaster: wtf, how
20:20:48 <AnMaster> ehird, auto open too?
20:20:49 <AnMaster> also
20:20:51 <ehird> no.
20:20:52 <ehird> not auto open.
20:21:04 <AnMaster> "go to this link" then what if it starts to auto download lots of crap
20:21:09 <AnMaster> that you don't want
20:21:14 <ehird> then i delete it
20:21:18 <ehird> and send a mail saying "fuck you" to the site owner.
20:21:33 <AnMaster> ehird, well if you have auto download turned on it is your own fault
20:21:37 <ehird> no
20:21:38 <AnMaster> go team sf.net!
20:21:39 <ehird> that's untrue
20:21:44 <AnMaster> Go team sf.net!
20:21:48 <ehird> it's the site's fault for downloading 100 pieces of useless crap
20:22:02 <ehird> just like it's the site's fault for having javascript that bounces the window around the screen
20:22:04 <AnMaster> ehird, err it only tries to download the one you selected for download
20:22:18 <ehird> AnMaster: i'm talking about this hypothetical: 20:21 <AnMaster> "go to this link" then what if it starts to auto download lots of crap
20:22:24 <ehird> you might want to upgrade to a memory longer than 4 seconds
20:22:38 <AnMaster> ehird, in fact I was jumping back more than 4 seconds
20:22:49 <AnMaster> back to the original topic
20:22:58 <ehird> yes, I know
20:22:59 <AnMaster> if you don't want auto download on sf.net, turn it off for that site then
20:23:02 <AnMaster> add an exception
20:23:11 <ehird> i can't. and I'd rather not use sf.net
20:23:14 <ehird> which I don't. unless I have to.
20:23:18 <AnMaster> ehird, then don't
20:23:30 <ehird> then how do you propose I download software hosted there.
20:23:33 <AnMaster> really I think this is a non-issue
20:23:44 <AnMaster> because I just click cancel when it asks me where to save
20:23:59 <AnMaster> if you auto download you asked for it
20:24:03 <AnMaster> don't complain then
20:24:06 <ehird> no, I didn't, you're an idiot
20:24:14 <ehird> "This site does something really fucking annoying. It's the user's fault!"
20:24:34 <AnMaster> ais523, what do you think?
20:24:49 <AnMaster> bbl, going to play freedroid
20:24:57 <ais523> I think that browsers auto-downloading is a configuration mistake
20:25:06 <AnMaster> ais523, :)
20:25:08 <ehird> I think it's convenient.
20:25:11 <ais523> if only because it renders people open to accidenrally clicking on links to massive things
20:25:33 <ehird> yeah, you know, I do have a cancel button
20:26:14 <AnMaster> ehird, let me get this straight:
20:26:19 <ehird> no, let's not
20:26:21 <ehird> I don't care
20:26:25 <AnMaster> 1) you think auto download is convenient
20:26:33 <ehird> 20:26 <ehird> no, let's not
20:26:34 <ehird> 20:26 <ehird> I don't care
20:26:36 <AnMaster> 2) you think auto download at sf.net isn't convenient
20:26:56 <ehird> 20:26 <ehird> no, let's not
20:26:56 <ehird> 20:26 <ehird> I don't care
20:26:58 <ehird> 20:26 <ehird> no, let's not
20:27:00 <ehird> 20:26 <ehird> I don't care
20:27:02 <ehird> 20:26 <ehird> no, let's not
20:27:04 <ehird> 20:26 <ehird> I don't care
20:27:06 <ehird> 20:26 <ehird> no, let's not
20:27:08 <ehird> 20:26 <ehird> I don't care
20:27:10 <ehird> 20:26 <ehird> no, let's not
20:27:12 <ehird> 20:26 <ehird> I don't care
20:27:14 <ehird> 20:26 <ehird> no, let's not
20:27:16 <ehird> 20:26 <ehird> I don't care
20:27:31 <AnMaster> ais523 well as usual he is going mad when he notices he contradicted himself...
20:27:36 <ehird> no
20:27:43 <ehird> i just really don't give a shit about what you have to say on the subject
20:27:57 <GregorR> *hiss* *meowr*
20:28:11 <ais523> ehird never contradicts himself, his viewpoints are always perfectly consistent and he always finds a loophole to show that that's what he meant all along
20:28:36 <ehird> that's nice. back when you're actually discussing something ->
20:28:37 -!- ehird has left (?).
20:36:30 <CakeProphet> ?help
20:36:32 <CakeProphet> @help
20:36:33 <CakeProphet> ,help
20:36:35 <CakeProphet> :help
20:36:37 <CakeProphet> ...
20:36:37 <AnMaster> ...
20:36:43 <CakeProphet> ;help
20:36:46 <CakeProphet> #help
20:36:54 <AnMaster> what the heck are you doing?
20:37:12 <CakeProphet> being lazy and finding bots in this channel that I can play with instead of checking the user list
20:40:39 <ais523> CakeProphet: it's just fungot here atm
20:40:39 <fungot> ais523: ' ' ' :image:voom fnord'" is being used under wikipedia:fair usefair use but there is
20:40:57 <ais523> although running thutubot would be easy enough locally, it used to run on eso-std.org until ehird wiped it
20:46:09 -!- kar8nga has joined.
20:52:55 -!- Hiato has quit ("Leaving.").
20:53:39 <AnMaster> ais523, run it on eso-std again?
20:54:10 <ais523> eso-std is wiped atm
20:54:15 <AnMaster> ais523, not reinstalled?
20:54:29 <ais523> I don't even know if it has Perl installed
20:54:42 <ais523> there's less on there atm than there is in a default clean install...
20:55:00 <AnMaster> ais523, no aptitude, ehird told me that
21:11:43 <kerlo> I seem to remember ehird being less bitter.
21:22:00 <ais523> it's a recent thing, due to happenings in nomic AFAICT
21:25:25 * kerlo nods
21:28:40 -!- Corun has joined.
21:31:03 <AnMaster> ais523, well nomic isn't good for him
21:31:13 <AnMaster> he is a bad looser
21:47:46 <AnMaster> ais523, there?
21:47:52 <AnMaster> something very strange just happened
21:47:58 <ais523> yes, I'm here
21:48:07 <AnMaster> someone named xlq, asked on another network if I knew "ais523"
21:48:12 <AnMaster> heh
21:48:22 <ais523> AnMaster: oh, I know xlq on another network
21:48:24 <AnMaster> then he went on talking about same school or something *shrug*
21:48:30 <ais523> hmm... maybe I should ask him if he knows AnMaster
21:48:31 <AnMaster> ais523, irc.flightgear.org?
21:48:34 <ais523> no
21:48:37 <AnMaster> hm
21:48:38 <ais523> irc.tty2.org
21:48:42 <AnMaster> heh
21:48:59 <ais523> <xlq> ais523: do you know AnMaster?
21:49:07 <AnMaster> ais523, how did he find out I know you?
21:49:14 <ais523> no idea
21:49:15 <AnMaster> I would like to know
21:50:46 -!- KingOfKarlsruhe has joined.
21:51:09 <AnMaster> ais523, any response from him yet
21:51:11 <AnMaster> ?
21:51:19 <ais523> not yet
21:51:22 <AnMaster> hm
21:51:29 <ais523> some oblique references I don't get, he asked if I knew FlightGear and I said no
21:51:58 <AnMaster> ais523, well I know him from irc.flightgear.org
21:52:06 <AnMaster> I know what flightgear is
21:52:15 <AnMaster> a very good open source flight simulator
21:52:48 <ais523> [21:52] <xlq> No, it's just interesting
21:52:49 <ais523> [21:52] <xlq> when two seemingly unrelated people you know or half-know, turn out to know each other
21:57:29 * ais523 only just now figures out that kerlo = ihope
22:12:50 -!- LinuS has quit ("Puzzi. S, parlo proprio con te. Puzzi.").
22:13:22 -!- Corun has quit (Read error: 60 (Operation timed out)).
22:37:25 <AnMaster> ais523: ihope use lots of different nicks
22:37:30 <ais523> yes, I nkow
22:37:40 <ais523> I should /whois people I don't recognise more often
23:02:08 -!- ehird has joined.
23:15:22 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
23:15:31 -!- psygnisfive has joined.
23:20:26 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
23:20:34 -!- psygnisfive has joined.
23:23:15 -!- Sgeo has joined.
23:38:16 -!- oerjan has joined.
23:56:42 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
2009-01-03
00:16:33 -!- puzzlet_ has joined.
00:23:34 -!- ais523 has quit (Client Quit).
00:28:27 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
00:39:03 -!- KingOfKarlsruhe has quit (Remote closed the connection).
00:50:04 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
00:56:14 -!- KingOfKarlsruhe has joined.
00:57:44 -!- KingOfKarlsruhe has quit (Remote closed the connection).
01:00:37 -!- GregorR has quit (Remote closed the connection).
01:04:14 -!- GregorR has joined.
02:06:11 -!- CakeProphet has quit (kornbluth.freenode.net irc.freenode.net).
02:19:28 -!- CakeProphet has joined.
02:38:47 -!- Judofyr has quit.
03:01:16 <CakeProphet> bf interpreter: http://hpaste.org/13554
03:29:12 -!- oerjan has quit ("Good night").
03:31:03 <GregorR> http://www.facebook.com/photo.php?pid=30234793&l=8428a&id=1055580469
03:41:31 -!- Sgeo has joined.
04:03:22 -!- Sgeo has quit ("Ex-Chat").
04:11:31 <psygnisfive> hey does everyone have facebook??
04:11:41 <psygnisfive> we should have an #esoteric facebook group
04:12:04 <Slereah> How about no
04:12:14 <psygnisfive> GregorR add me as a friend :D
04:12:40 <Slereah> On Facebook or Fetlife?
04:12:49 <psygnisfive> facebook
04:12:56 <psygnisfive> and fetlife if hes on fetlife
04:12:56 <Slereah> Lame.
04:20:08 <bsmntbombdood> GregorR: you have some debris on your glasses
04:23:09 <GregorR> psygnisfive: Oh, that's who that is :P
04:23:19 <GregorR> psygnisfive: I got a friend request and was about to send a message "Uh, do I know you?"
04:24:00 <GregorR> bsmntbombdood: Is the debris shaped like a large piece of plastic, glass and metal?
04:24:29 <bsmntbombdood> plastic,glass, and metal have no shape
04:24:54 <Asztal> there's already a http://www.facebook.com/groups.php?ref=sb#/group.php?gid=2410064537
04:24:57 <GregorR> But pieces do :P
04:25:34 <Asztal> uh, two '?' in a URL? is that even a valid URI?
04:30:02 <bsmntbombdood> yes
04:31:26 <Asztal> yeah, I just checked... I thought URI fragments were far more restricted :(
04:38:31 <bsmntbombdood> the ?'s are interpreted by the server
04:43:55 -!- Sgeo has joined.
05:05:18 -!- Sgeo has quit (Remote closed the connection).
05:42:03 <kerlo> GregorR is on Facebook?
05:42:47 <kerlo> Hey, I do recognize that face.
06:00:33 <GregorR> I don't recognize that nick ...
06:00:55 <GregorR> Oh, /whois told me :P
06:01:52 -!- Vendan has joined.
06:13:53 <bsmntbombdood> USE ONE NICK PLOX
06:32:53 <Vendan> Whee! SNUSP interpreter, made in Second Life
06:32:55 <Vendan> http://files.vendaria.net/snusp_sl_001.png
07:06:54 -!- seveninchbread has joined.
07:07:27 -!- CakeProphet has quit (Nick collision from services.).
07:07:29 -!- seveninchbread has changed nick to CakeProphet.
07:17:04 -!- Vendan has quit ("User pushed the X - because it's Xtra, baby").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:08:59 -!- Corun has joined.
08:56:57 -!- Corun has quit ("This computer has gone to sleep").
08:59:36 -!- oklodol has joined.
09:00:18 <oklodol> anything interesting happen while i was gone?
09:00:33 -!- oklodol has changed nick to oklorol.
09:00:44 <oklorol> thought so.
10:47:33 -!- Judofyr has joined.
11:12:46 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
11:12:46 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
11:14:16 -!- rodgort has joined.
11:14:16 -!- decipher has joined.
11:24:36 -!- KingOfKarlsruhe has joined.
11:53:50 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
12:01:27 -!- Judofyr has joined.
12:58:08 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
13:12:55 -!- Mony has joined.
13:13:53 <Mony> yello
13:55:03 -!- jix has joined.
13:55:53 -!- jix has quit (Client Quit).
13:55:58 -!- jix has joined.
13:58:17 -!- jix has quit (Client Quit).
13:58:25 -!- jix has joined.
13:59:25 -!- jix has quit (Client Quit).
13:59:30 -!- jix has joined.
14:42:01 -!- puzzlet has joined.
14:50:52 -!- oerjan has joined.
14:54:22 -!- puzzlet_ has quit (Read error: 110 (Connection timed out)).
15:09:07 -!- KingOfKarlsruhe has quit (Remote closed the connection).
15:22:52 -!- ais523 has joined.
15:23:57 <psygnisfive> yello!
15:24:10 <oerjan> gree!
15:24:21 <psygnisfive> oooooh yeah
15:24:25 <psygnisfive> ooooooooooh yeaaaaaaaah
15:24:30 <psygnisfive> oooooooh yeaaah
15:24:32 <psygnisfive> the moooooon
15:24:39 <psygnisfive> beautiful
15:24:40 <psygnisfive> the suunn!
15:24:44 <psygnisfive> even more beautiful!
15:24:46 <psygnisfive> heh heh
15:24:48 <psygnisfive> oooooh yeeeaah
15:24:52 <psygnisfive> ooooooooooh yeeeeeaaah
15:24:56 <psygnisfive> ooooh yeaaaaaah
15:25:15 <Slereah> Oh shi-
15:25:23 <Slereah> The Kool Aid man is here D:
15:25:30 <psygnisfive> nothe yello man
15:25:42 <psygnisfive> apparently they dont have Yello in france
15:26:03 <psygnisfive> http://www.youtube.com/watch?v=IcMHAM0cUbY
15:26:11 <Slereah> Did you look desperatly for it while in Fronce?
15:26:23 <Slereah> O est the yello!
15:27:19 <oerjan> they probably have it but l'Academie Francaise has demanded they call it something french
15:27:29 <psygnisfive> yeah
15:27:42 <psygnisfive> they were like
15:27:59 <psygnisfive> "we do not have ze yellow here.... eeeeeh zey are sweess!"
15:28:11 <Slereah> swees?
15:28:16 <psygnisfive> sweess!
15:28:22 <psygnisfive> from sweetzerland!
15:28:29 <Slereah> Are they?
15:28:36 <psygnisfive> Yello is, yes
15:28:56 * oerjan realizes yello is not a soft drink
15:29:13 <psygnisfive> oerjan, did you watch that video i just linked to?
15:29:33 <psygnisfive> also, the soft drink is mello yello
15:29:39 <oerjan> no
15:29:44 <psygnisfive> watch it
15:29:49 <psygnisfive> it explains absolutely nothing
15:30:26 <Slereah> Although it does make me thirsty for a good old Duff.
15:31:31 <psygnisfive> the video will basically just confuse the fuck out of you
15:31:59 <Slereah> http://img.lulz.net:8080/src/1229358859089.jpg
15:32:01 <Slereah> SCIENCE!
15:32:25 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
15:32:29 -!- puzzlet has joined.
15:33:30 <psygnisfive> those are t-shirt designs you know
15:33:50 <Slereah> I know.
15:33:57 <psygnisfive> i forget where from
15:34:02 <psygnisfive> possible design by hümans
15:34:56 <psygnisfive> but probably not
15:36:12 <psygnisfive> maybe zorg?
15:36:29 <psygnisfive> or whatever theyre called
15:36:35 <psygnisfive> snorg?
15:36:38 <psygnisfive> thats it
15:36:46 <psygnisfive> lets see, is it snorg
15:37:02 <psygnisfive> ehh no
15:37:31 <oerjan> a veritable snorgasbord
15:37:41 <psygnisfive> veritably!
15:37:46 <psygnisfive> oh my god
15:37:50 <psygnisfive> i just had an idea
15:38:06 <psygnisfive> that unifies old timey with esoteric programming
15:38:20 <psygnisfive> WE SHOULD BUILD AN ANALYTICAL ENGINE!!!
15:38:29 <Slereah> It already exists, psygnisfive.
15:38:34 <psygnisfive> shut up slereah
15:38:37 <Slereah> :D
15:38:54 <psygnisfive> we can build an analytical engine and then dress up in old timey outfits!
15:39:02 <psygnisfive> steam punk esoteric programming
15:39:16 <Slereah> Do we need goggles?
15:39:19 <psygnisfive> I'll be countess lovelace
15:39:22 <psygnisfive> eh.. Yes!
15:39:24 <psygnisfive> and monocles!
15:39:25 <oerjan> yeah but where do we get the steam-powered death rays?
15:39:28 <psygnisfive> one for each eye!
15:39:38 <psygnisfive> one thing at a time, oerjan
15:39:44 <psygnisfive> first we build out analytical engine
15:40:34 <kerlo> I prefer to call her Lady Ada.
15:40:40 <psygnisfive> then use it to calculate the plans for a deadly corpuscular wave projector!
15:40:54 <kerlo> Lada Ada the Lovelace Lady.
15:40:57 <kerlo> s/a/y/
15:40:59 <psygnisfive> ok fine, i'll be lady ada :|
15:41:31 <psygnisfive> what
15:41:32 <kerlo> Or the Countess of Lovelace if you so prefer.
15:41:35 <oerjan> also, afaik the analytical engine has _not_ been built.
15:41:50 <Slereah> oerjan : There's a program simulation
15:41:57 <psygnisfive> Lady Ada Countess Lovelace is how her name would've been said
15:42:16 <psygnisfive> i believe. british titles are weird in how they're used
15:42:32 <psygnisfive> they're preposed before the last name when reading someones full name
15:43:14 <psygnisfive> so its like Lord John Robert Duke Norwich
15:43:35 <psygnisfive> you're right, it hasn't been build oerjan
15:43:39 <psygnisfive> or so we think
15:44:13 <psygnisfive> how do we know the government hasnt constructed dozens of these calculating machines and used them to tabulate thousands of units of data about the citizenry?!
15:44:31 <Slereah> They have, psygnisfive
15:44:38 <Slereah> But they used regular calculating machines
15:44:45 <Slereah> It's way cheaper
15:44:54 <psygnisfive> DO NOT FRIGHTEN ME, SIR!
15:45:09 * psygnisfive hits slereah with his umbrella
15:45:25 <Slereah> Well old chap.
15:45:34 <Slereah> What would you say about a jolly old round of rogering?
15:45:34 <psygnisfive> CHEERIO MUSTACHE
15:45:51 <psygnisfive> oh splendid idea my good fellow, splendid idea!
15:46:26 <psygnisfive> god i love steam punk XD
15:46:46 <kerlo> I have the honour to remain, Madam, Your Majesty's most humble and obedient servant!
15:46:49 <kerlo> Wait, what?
15:47:34 <psygnisfive> http://community.livejournal.com/steamfashion/374499.html
15:47:46 <psygnisfive> that guy with the cyberpunk hair? i want his outfit
15:47:48 <oerjan> kerlo: Watt. specifically, his steam engine.
15:48:05 <psygnisfive> watt is a late comer
15:48:30 <oerjan> well you don't want to come too early
15:48:38 <psygnisfive> alexander had hes little steam striven ball, be it a toy, and the venicians were using steam turbines for centuries before watt
15:48:56 * oerjan sometimes doesn't believe himself
15:49:14 <psygnisfive> do you see his wonderful outfit?!
15:49:21 * Slereah pinches oerjan
15:53:03 <oerjan> that's what i thought i was just dreaming
15:53:06 <oerjan> *,
16:30:14 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
16:30:25 -!- psygnisfive has joined.
16:33:34 -!- ehird has left (?).
16:33:38 -!- ehird has joined.
16:59:22 <ehird> Who wants to join my 'never check the return result of malloc()' club?
17:00:27 <ais523> ehird: they aren't here, their clients crashed
17:00:45 <ehird> ais523: Their IRC clients use all their fucking memory?
17:00:47 <ehird> They have bigger problems.
17:01:06 <ehird> Also, I assume YOUR irc client gracefully recovers from out of memory, ey?
17:01:18 <ehird> (Exiting is not a recovery.)
17:01:25 <ehird> (Exiting in that case = crashing.)
17:01:40 <ais523> actually, it depends on the OS
17:01:52 <ais523> checking malloc's return value is pointless on Linux nowadays unless you're doing very big allocs
17:02:03 <ais523> because it's more likely to return a false value or kill your process than it is to return null
17:02:36 <ehird> as far as I'm concerned, if there isn't enough memory to run my program, then that's the rest of the system's problem
17:03:59 <ais523> some programs can recover sanely on out-of-memory
17:04:11 <ehird> ais523: yes, about 3 of them.
17:04:13 <ais523> by not doing whatever was using the memory
17:04:16 <ehird> most of the time, it's not worth the trouble
17:04:21 <ais523> ehird: Perl is one, if you compile it with special flags
17:04:32 <ehird> ais523: it shouldn't, though
17:04:49 <ehird> sure, you CAN go into StrippedDownMode, but if the computer has no memory left, I doubt using your program will be possible anyway.
17:04:53 <ehird> or easy
17:06:22 <ais523> ehird: just think about what's using the memory, and don't
17:06:30 <ais523> for instance, say you're trying to open a file and it doesn't fit in memory
17:06:42 <ais523> it would be graceful to just not open that file and let people continue editing the other files they have open
17:06:52 <ehird> ais523: yes, that is one of the rare cases
17:06:53 <ais523> or at least give them a chance to save them
17:07:03 <ehird> I'm talking in general, here
17:07:09 <ehird> the regular memory that your program uses for stuff
17:07:24 <ehird> don't even bother wrapping it, it doesn't even buy you anything, it's such an edge case
17:40:35 <ehird> hm.
17:40:55 <oerjan> yes, hindley-milner is a good idea. if you can pull it off.
17:41:57 <ehird> lawlz.
17:42:06 <ehird> grrrrrrrrrrr the next person that calls a language unreadable
17:42:08 <ehird> will eat my fucking toes
17:44:04 <Slereah> Unreadable
17:45:34 * ehird kills Slereah
17:46:24 <Slereah> :D
17:46:53 * oerjan doesn't find Unreadable on the wiki
17:47:18 <ehird> lawl
17:47:28 <oerjan> of course it would take something to beat the competition
17:48:21 <ais523> whitespace-encoded Unlambda would take quite some reading
17:48:28 -!- CakeProphet has quit ("lol").
17:48:46 <oerjan> aye
17:50:34 <Slereah> Well, whitespace is already unreadable.
17:50:47 <ehird> I decree that foobar.
17:51:03 <Asztal> you just need good syntax colouring.
17:52:03 <oerjan> O_O
17:52:20 <ais523> there are editors to syntax-colour Whitespace
17:52:27 <ais523> but even with syntax colouring, Whitespace is hard to read
17:58:42 <psygnisfive> whitespace can surely be trivially ciphered into something more readable
18:00:30 -!- oerjan has quit ("leaving").
18:04:49 <oklorol> well isn't it just a stack thingie
18:04:58 <ehird> yeah
18:05:12 <psygnisfive> oklorol!?
18:05:14 <psygnisfive> with an r?!
18:05:22 <ais523> and why not?
18:05:30 <psygnisfive> it doesnt feel right D:
18:05:42 <ais523> the ok and the use of several os have been pretty much the only stable part of oklorol's nick
18:05:45 <oklorol> indeed it doesn't.
18:05:54 <ais523> although I still think of them as oklopol, probably because that's the most common one
18:06:13 <psygnisfive> did you know the piraha change names every few months?
18:06:14 <oklorol> well i agree with psygnisfive, "rol" just doesn't work that well.
18:06:27 <oklorol> the fist?
18:06:28 <oklorol> *fish
18:06:36 <psygnisfive> no no
18:06:41 <psygnisfive> thats piranha
18:06:50 <oklorol> yes, but could've been a typo.
18:06:50 <psygnisfive> the pirahã are a tribe in the amazon
18:07:03 <oklorol> that i did *not* know.
18:07:06 <psygnisfive> i dont maek typos
18:07:24 <oklorol> i know you don't. it was a pretty surreal joke.
18:07:34 <psygnisfive> its true tho
18:07:42 <psygnisfive> they change names every few months
18:07:47 <oklorol> ...
18:07:47 <oklorol> i mean mine
18:07:53 <oklorol> i know you're not joking
18:07:56 <psygnisfive> and not necessarily like.. "I am now Bob!"
18:07:58 <psygnisfive> more like
18:08:06 <psygnisfive> "You dont feel like a Jack any more.. you're more of a Bob."
18:08:47 <oklorol> DO THEIR SOULS CHANGE TOO?
18:09:17 <psygnisfive> they dont have souls
18:09:51 <oklorol> are they trying to make up for that with all the names?
18:10:04 <psygnisfive> yes
18:10:07 <oklorol> ah.
18:10:11 <oklorol> makes sense
18:10:16 -!- oklorol has changed nick to oklosol.
18:10:40 <psygnisfive> still not right but better
18:10:46 <oklosol> yes
18:12:07 <oklosol> i should probably do something soon
18:12:16 <oklosol> been awake for 12 hours, done nothing yet :-)
18:15:13 <psygnisfive> im probably going to go to bed for another hour or two
18:15:28 <oklosol> hf
18:16:18 <psygnisfive> oklokok and oklohol. its what you use to oklofok
18:16:19 <psygnisfive> :o
18:16:31 <oklosol> :D
18:17:16 <oklosol> oklohol sounds more like an alcoholic beverage to me.
18:18:35 <psygnisfive> mm
18:18:41 <psygnisfive> i'd drink it ;O
18:18:57 <oklosol> i'm sure you would :)
18:19:02 <Slereah> Olkohol
18:19:05 <ehird> get a channel
18:23:17 <oklosol> hmm. actually i think i'll just sleep a mo
18:23:19 <oklosol> well.
18:23:20 <oklosol> till morning
18:23:21 <oklosol> ->
18:28:08 <kerlo> oklosol is a solution.
18:28:22 <kerlo> Wait, no, it isn't.
18:28:36 <kerlo> It's a suspension of fine solid particles or liquid droplets in oklopol.
18:30:29 <Slereah> Semen.
18:32:56 -!- psygnisf_ has joined.
18:33:04 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
18:33:25 <psygnisf_> oklosol is okloscented
18:33:38 <psygnisf_> cleans your windows wonderfully!
18:33:42 -!- psygnisf_ has changed nick to psygnisfive.
18:35:35 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
18:35:44 -!- psygnisfive has joined.
18:52:12 <Mony> bye
18:52:15 -!- Mony has quit ("Quit").
18:52:37 -!- puzzlet has quit (Remote closed the connection).
18:52:42 -!- puzzlet has joined.
19:07:50 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
19:09:54 -!- puzzlet has joined.
19:16:08 -!- Corun has joined.
19:19:42 -!- KingOfKarlsruhe has joined.
19:21:57 -!- LinuS has joined.
19:43:09 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:49:38 -!- kar8nga has joined.
21:46:31 -!- LinuS has quit ("Puzzi. S, parlo proprio con te. Puzzi.").
21:55:11 <ais523> ehird: I'm reading through the happy-hour PAM and other useful programs thing you linked earlier
21:55:18 <ais523> I especially like the block-device version of /dev/null
21:55:25 <ehird> cdrewind is brilliance
21:55:33 <ehird> http://www.brendangregg.com/Specials/cdrewind
21:55:36 <ais523> in theory, you could use that to test mke2fs or similar programs which work best on block devices
21:55:40 <ais523> and yes, I like it too
21:55:57 <ais523> hmm... mightn't it cause the CD to always be the right way up when you take it out of the drive?
21:56:06 <ais523> it's annoying to take out a CD and see it has an upside-down logo
21:56:09 <ehird> ha
21:56:15 <ais523> it's like the thing rotates inside the drive
21:56:31 <ehird> my cd blunder is putting it in wrong side up
21:56:46 <ehird> this imac could do with a little form over function in that area, there's no eject button...
21:56:59 <ehird> i got it ejected once from the os, I don't recall how
21:57:07 <ais523> /dev/notrandom is kind-of fun
21:57:18 <ais523> also, I have 5 ways to eject on here
21:57:19 <ehird> i like how it consists of infinite bleeps
21:57:23 <ehird> to simulate catting /dev/random
21:58:03 <ehird> does it delay every few seconds like random?
21:58:03 <ehird> it should
21:58:04 <ais523> eject button, Fn-F10, eject from command-line, eject icon on Nautilus that's utterly ripped off from Mac OS X, right-click and choose eject
21:58:17 <ais523> (that's one of Mac OS X's better ideas, though, I'm glad Ubuntu shamelessly stole it)
21:58:44 <ehird> i'm pretty sure every gui environment since the macintosh has stolen from it :P
21:58:46 <ehird> except maybe plan 9.
21:59:05 <ais523> oh, yes
21:59:12 <ais523> but this was a newish idea they stole, not an old one
21:59:15 <ais523> also, what about Smalltalk?
21:59:26 <ehird> well, I was about to say the macintosh stole wholesale from xerox parc.
21:59:54 <ais523> also, wow at ged.jar
21:59:59 <ehird> and they did both the Alto and Smalltalk
22:00:03 <ehird> at similra times
22:00:09 <ais523> I think it's a bad idea for much the same reason as gvim, by the way
22:00:15 <ehird> Much later, in the midst of the Apple v. Microsoft lawsuit in which Apple accused Microsoft of violating its copyright by appropriating the use of the "look and feel" of the Macintosh GUI, Xerox also sued Apple on the same grounds.
22:00:20 <ehird> ^ brilliant
22:00:20 <ais523> I like vi, but think gvim is kind-of missing the point
22:00:29 <ais523> and yes, that is brilliant
22:01:18 <ehird> ais523: the sam editor for plan9 is basically multi-document ed
22:01:20 <ehird> it has a top command pane
22:01:23 <ehird> and little file windows
22:01:42 <ehird> the file windows are just for seeing what you're doing :P
22:01:51 <ehird> iirc, ken thompson uses it as his main editor
22:02:05 <ehird> before that?
22:02:05 <ehird> ed.
22:02:53 <ais523> I've edited with sed before now
22:03:02 <ais523> ed is similar but more interactive-friendly
22:03:50 -!- bloreg has joined.
22:04:14 -!- Ilke has joined.
22:04:16 <Ilke> hi
22:04:18 <Ilke> anyone awake
22:04:21 <ehird> hi
22:04:21 <ehird> yes
22:04:46 -!- Ilke has set topic: YOU'RE AWAKE MOTHERFUCKER??? GET A REAL LANGUAGE! GET LAID! GET OFF THIS CHANNEL DIPSHIT.
22:04:49 -!- Ilke has left (?).
22:04:54 <ais523> yes, I'm awake
22:04:54 <ais523> just about
22:07:28 <ehird> ...
22:07:35 <ehird> what a sad fucker :)
22:07:43 -!- jkele has joined.
22:07:49 <ehird> jkele: hi, ilke.
22:07:54 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:08:00 -!- jkele has set topic: ehird sad is your momMOTHERFUCKER!!! GET A REAL LANGUAGE! GET LAID! GET OFF THIS CHANNEL DIPSHIT.
22:08:03 -!- jkele has left (?).
22:08:04 <ehird> wow
22:08:05 <ehird> a troll
22:08:08 <ais523> yep
22:08:10 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:08:13 <ehird> hahaha, what a fucking retard
22:08:15 <Slereah> :D
22:08:18 <ais523> also, yay for a client that stores topic history
22:08:18 <Slereah> I'm disappointed.
22:08:37 <Slereah> jkele No such nick/channel
22:08:43 <Slereah> Coward!
22:08:45 <ais523> well, we have the whois data
22:08:48 <ehird> woah, wait, "ehird sad is your mom"?
22:08:49 <ehird> LOL
22:08:50 <ais523> and jkele = Ilke, pretty obviously
22:08:57 <ais523> given the identical whois
22:08:59 <ais523> and name similarity
22:09:01 <ais523> and behaviour similarity
22:09:07 <Slereah> Who's Ilke?
22:09:13 <ehird> the previous troll.
22:09:16 <ehird> who came in 3 seconds before him.
22:09:18 <ais523> cheriire@cpe-76-87-77-169.socal.res.rr.com
22:09:21 <ehird> and did the same thing.
22:09:32 <ais523> may as well preserve the whois for the logs, in case anyone decides to google it or whatever
22:09:36 <ehird> now the question -
22:09:37 <Slereah> Yes, but I was mostly looking for where he hangs out
22:09:44 <ehird> where did he come from, why did he do that, and who is he?
22:10:02 <ehird> i really can't think why you'd do that, i mean, it's just a stupid little channel that nobody really cares about
22:10:04 <ais523> it's someone who at least knows a bit about what the channel's for
22:10:08 <ais523> given what he put in the topic
22:10:22 <Slereah> His mom was raped by Brainfuck
22:10:26 -!- klslss has joined.
22:10:31 <ehird> klslss: not you again
22:10:32 <ehird> so tell us
22:10:34 <ehird> who are you
22:10:36 <ehird> where're you from
22:10:40 -!- klslss has set topic: EHIRD WILL SUCK MY BALLS AND HIS MOM's! Slereah will do the same because he's a opwhore! REST OF YOU FUCKWITS GET A REAL LANGUAGE, LEARN A REAL LANGUAGE AND STOP BEING WUSSIES FROM START TREK!.
22:10:41 <ehird> and why are you targeting this tiny place.
22:10:42 -!- klslss has left (?).
22:10:47 <ehird> ahahahahahahahah
22:10:57 <Slereah> He is on no other channel.
22:11:03 <ehird> ahahahahahgahahahahahahaha
22:11:03 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:11:10 <Slereah> A sockpuppet just to troll our little place?
22:11:12 <ehird> how old are you, log-reading troll?
22:11:15 <Slereah> I feel honored.
22:11:16 <ehird> 7?
22:11:18 <ehird> can't be much more
22:11:56 <Slereah> Well, here's one for our log reading troll then.
22:11:57 <Slereah> http://membres.lycos.fr/bewulf/Argh/1221655091974.jpg
22:12:05 <ais523> Slereah: what's that a link to?
22:12:14 <ehird> ais523: don't click.
22:12:16 <ais523> I'm obviously not planning to click on it given content
22:12:17 <Slereah> ais523 : Something you'd better not click
22:12:32 <ais523> oerjan: don't click on the above link
22:12:38 <ais523> I know you aren't here, but IIRC you logread
22:12:47 <ehird> EVERYONE: don't click on the above link.
22:12:58 <ais523> Slereah: just don't paste that sort of link in
22:13:03 <ehird> wait
22:13:06 <ehird> I subtract the troll from EVERYONE
22:13:47 * ais523 wonders if the troll actually deduced the logs from the topic
22:13:52 <ais523> by running the resulting program
22:14:32 -!- klslvoeoe has joined.
22:14:38 -!- klslvoeoe has set topic: you can subtract your mom from my dick because she's old and you're a stupid fuckface! now LEARN C or say perl! stop being esoteric asswads.
22:14:39 -!- klslvoeoe has left (?).
22:15:00 <ehird> How can someone know what C and Perl is and be so absolutely fucking braindead?
22:15:08 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:15:20 <ehird> i wonder why he thinks we even care.
22:15:22 <ais523> do we have any live ops?
22:15:28 <ehird> nah.
22:15:33 <ehird> he'll give up eventually.
22:15:42 <ehird> unless he's I_RULE in disguise.
22:15:54 <ehird> which is...very possible
22:16:00 <ais523> well, telling freenode might help stop them trolling other channels that care more
22:16:09 <Slereah> Maybe he comes from /prog/ :o
22:16:10 <ehird> freenode don't do that kind of thing.
22:16:32 <ehird> I_RULE claimed to have been "harrassed and threatened" by me over /msg in #freenode, they just told him to ignore me.
22:16:36 <ehird> (Of course, the whole thing was made up.)
22:16:36 <ais523> what, kill trolls?
22:16:47 <ehird> for specific channels, they tell you to take it up with that channel's op
22:17:02 <Slereah> Who's that channel's op?
22:17:10 <ehird> alive: lament, fizzie.
22:17:15 <Slereah> bsmnt_bot, destroy him!
22:17:15 <ehird> active: fizzie.
22:17:19 <ehird> ha
22:17:25 <ehird> ~exec sys.stdout('pew pew pew')
22:17:26 <bsmnt_bot> pew pew pew
22:17:32 <Slereah> :D
22:17:39 <Slereah> ehird
22:17:41 <Slereah> I <3 u
22:17:48 -!- JSKSKSLVE has joined.
22:17:50 <Slereah> o u
22:17:51 -!- JSKSKSLVE has set topic: NO LIVE OPS!!! get with the program! C or perl!.
22:17:52 -!- JSKSKSLVE has left (?).
22:18:01 -!- Slereah has set topic: NO LIVE OPS!!! get with the program! Python!.
22:18:05 <ehird> Hey, he stopped insulting our mothers.
22:18:06 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:18:28 -!- ehird has set topic: NO DEAD OPS!!! get out of the program! Brainfuck! http://tunes.org/~nef/logs/esoteric/.
22:18:32 <Slereah> I'm shocked that this man would claim that C is a real language.
22:18:49 <ais523> C and Perl are pretty different in philosophy...
22:18:55 <ehird> with c you can be a real man.
22:18:57 <ais523> and both are arguably esoteric
22:19:02 <ehird> and allocate memory with your huge manly manliness.
22:19:02 -!- jkvkasas has joined.
22:19:05 <ais523> although not as esoteric as most of the stuff we discuss here
22:19:05 <ehird> wb
22:19:06 -!- jkvkasas has set topic: BRAINFUCK IS NOT WHAT EVERYBODY WANTS OR USES! you fucking cunts, learn a real language!.
22:19:07 -!- jkvkasas has left (?).
22:19:08 <ehird> how are you today
22:19:15 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:19:18 <ehird> does he realise we just do this for fun?
22:19:28 <ehird> "BRAINFUCK IS NOT WHAT EVERYBODY WANTS OR USES! " -- sounds like an enterprise idiot
22:19:42 * ehird waits for his delayed topic-response.
22:20:02 <ais523> ehird: can you easily bring back optbot?
22:20:07 <ais523> 'twould seem to be the perfect response
22:20:21 -!- jvkdkdke has joined.
22:20:25 -!- jvkdkdke has set topic: enterprise idiot? OH AND YOU GUYS AREN'T AND ARE SUPPOSED TO GET A BIGGER PAYCHECK BECAUSE OF THOSE REASONS? LOLOLOL, YOU SOUND LIKE A VB SCHMUCK!.
22:20:28 -!- jvkdkdke has left (?).
22:20:29 -!- optbot has joined.
22:20:29 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | Rule: You must violate this rule..
22:20:30 <Slereah> He can be programmed to hunt him down with his laser.
22:20:30 <ais523> besides, nobody's forcing anyone to use BF
22:20:48 <ehird> we're not doing this for a paycheck, you retard.
22:20:56 <ais523> ehird: two log links? optbot cares about them even more than I and oklosol do
22:20:56 <optbot> ais523: http://tunes.org/~nef/logs/esoteric | Rule: You must violate this rule.
22:21:03 <ehird> oh dear.
22:21:08 <ais523> oh, you've only given it one line of input
22:21:10 <ais523> optbot?
22:21:10 <optbot> ais523: http://tunes.org/~nef/logs/esoteric | Rule: You must violate this rule.
22:21:15 <ehird> are you so insecure that you can't deal with a bunch of people - many of whom, in fact, I believe have been "laid" - messing around with computation?
22:21:16 -!- optbot has quit (Remote closed the connection).
22:21:19 <ehird> The answer, is yes.
22:21:47 -!- optbot has joined.
22:21:47 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | I doubt it's like that.
22:21:52 <ehird> I think it is, optbot.
22:21:53 <optbot> ehird: sounds pimpcash
22:21:58 <ehird> Yes. Very pimpcash, optbot.
22:21:58 <optbot> ehird: really isn't? damn :\
22:22:01 <ehird> optbot: no, is.
22:22:01 <optbot> ehird: yes
22:22:03 <ehird> optbot: yes
22:22:04 <optbot> ehird: just as long as it doesn't involve smurfs. FOR MERCY'S SAKE, NO SMURFS
22:22:06 -!- KVDLWW has joined.
22:22:08 <ehird> optbot: okay, okay, no smurfs.
22:22:09 <optbot> ehird: d(4/b(4))-4/4 = 80
22:22:09 -!- KVDLWW has set topic: THEN WHAT DO YOU CARE ABOUT? USE A REAL LANGUAGE! SERIOUSLYT! AND IF YOU'RE USING BRAINFUCK AS A HOBBYIST, YOU CAN START OFF BY GETTING a different hobby like maybe going out and getting laid like NORMAL PEOPLE?!.
22:22:11 <ehird> optbot: say hi to KVDLWW
22:22:11 <optbot> ehird: How's that :P
22:22:12 -!- KVDLWW has left (?).
22:22:13 <ais523> optobt!
22:22:15 <ais523> optbot!
22:22:15 -!- optbot has set topic: the entire backlog of #esoteric: http://tunes.org/~nef/logs/esoteric | no.
22:22:25 <Slereah> I got laid yesterday :D
22:22:33 <ais523> troll: how do you think we implement BF, if not in real languages/
22:22:38 <ehird> wait wait wait.
22:23:03 <ehird> Dear anonymous coward troll: Why don't you go get laid like NORMAL PEOPLE, instead of trolling an IRC channel?
22:23:03 <ais523> well, in reality we implement it in esolangs
22:23:03 <ais523> but that's because we're us
22:23:05 <ehird> After all, the two are obviously mutually incompatible.
22:23:08 <ehird> Just as with esolangs, right?
22:23:32 <Slereah> Guys.
22:23:35 <Slereah> Stop caring.
22:23:39 <ehird> This is fun.
22:23:40 <Slereah> Like, actually not caring.
22:23:46 <ehird> Because he's an idiot.
22:24:39 * ais523 deplores the current decline in the quality of internet trolling
22:24:46 <ais523> trolls used to actually be good back decades ago
22:24:51 <ehird> quite
22:24:52 <ais523> and not be recognised as trolls for weeks
22:24:54 <Slereah> Yeah, where are the 50 Hitlers?
22:24:59 <ehird> Heck, I'd prefer the GNAA or 4chan to this moron.
22:25:10 -!- Slereah has changed nick to Epic_Fail_Guy.
22:25:11 <ais523> then, when the conversation got interesting and bizzare, you got the YHBT. YHL. HAND.
22:25:13 <Epic_Fail_Guy> Someone rang?
22:25:15 <ais523> and that was that
22:25:21 <Epic_Fail_Guy> NickServ- This nickname is registered.
22:25:23 <Epic_Fail_Guy> Oh shi-
22:25:37 <ehird> Epic_Fail_Guy: no, you have to start 100 clones and spam the channel with "FUCK"
22:25:39 -!- Epic_Fail_Guy has changed nick to Slereah.
22:25:43 <ehird> get it right
22:25:53 <Slereah> ehird : I used to have a program like that
22:25:59 <Slereah> I think it's on Partyvan.
22:26:00 <ais523> Slereah: what's the point?
22:26:06 <ehird> ais523: trolling.
22:26:08 <ehird> is the point.
22:26:09 <Slereah> :D
22:26:10 <ais523> all IRC networks ban clonebots nowadays anyway
22:26:25 <ehird> ais523: I've ran clonebots in #esoteric-blah for an okoplay.
22:26:33 <ehird> they spammed fast and weren't banned
22:26:37 <ais523> that was only 2 of them, not hundreds
22:26:41 <ehird> no
22:26:43 <ehird> i had another variation
22:26:45 <ehird> with like 30
22:26:56 <ais523> hmm... there should be a mode on channels meaning "this channel allows clonebots and spamming"
22:27:08 <ehird> ha
22:27:09 <ais523> hmm... maybe a +trolling/-trolling mode too
22:27:21 <ais523> not entirely sure what would happen if a troll came in and it was turned off
22:27:29 <ehird> It ought to be noted that despite the pseudo-mathematical styling of this formulation, it is mathematically equivalent to saying "Sometimes people make comparisons involving Nazis or Hitler," and thus means pretty much nothing.
22:27:34 <ehird> -- Encyclopedia Dramatica on Godwin's Law
22:27:55 <ais523> ehird: it actually means "the longer a thread gets, the more likely it is that someone will make a Godwin comparison"
22:27:55 -!- Corun has quit ("This computer has gone to sleep").
22:28:01 <ais523> but that comes to much the same thing
22:28:12 -!- kskskssldlld has joined.
22:28:16 -!- kskskssldlld has set topic: /quit fuckers.
22:28:18 -!- kskskssldlld has left (?).
22:28:19 <ais523> there are some bizzare potential counterexamples, say the law would be false if the first message in a thread had a 50% chance of mentioning hitler
22:28:21 <ais523> but none of the others did
22:28:27 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:28:42 <ehird> gee troll you sure are making our lives hard
22:28:43 <ehird> not
22:28:48 <ais523> kskskssldlld: you're doing it wrong, if you want to quit someone else from IRC you type /quit name into your client, not into the topic
22:28:52 <ais523> besides, fuckers isn't in here atm anyway
22:29:09 <ehird> i like the part where he's getting more and more lazy
22:29:14 <ehird> right now I long for the days of me sucking balls.
22:29:39 <ais523> ehird: that sounds wrong
22:29:47 <ehird> intentional
22:30:34 -!- alexholowczak has joined.
22:30:42 <Slereah> Weird
22:30:45 <ehird> alexholowczak: hi, are you the troll?
22:30:46 <alexholowczak> No
22:30:48 <ais523> no, he isn't
22:30:49 <ehird> hooray.
22:30:51 <alexholowczak> I was told of a troll.
22:30:51 <Slereah> The spamming program is not on Partyvan.
22:30:54 <ais523> he knows me from another channel
22:30:57 <ehird> ah.
22:30:57 <alexholowczak> So I thought I'd poke my nose in. :-P
22:31:00 <ais523> he's never seen a troll, so he came to watch
22:31:00 <Slereah> Maybe it was on Patriotic Nigra.
22:31:11 <ehird> alexholowczak: be braced for topic profanity.
22:31:16 <ehird> he'll be back in a minute...
22:31:20 <alexholowczak> (22:30:38) ehird: alexholowczak: hi, are you the troll? <- What would you have done if I said "yes"? :-P
22:31:30 <alexholowczak> Or... would you expect him to say "yes"? :-P
22:31:37 <ehird> alexholowczak: commended you for having actually said something in the channel :P
22:31:40 -!- Judofyr has joined.
22:31:46 <ais523> and Judofyr isn't the troll either
22:31:52 <ehird> or... maybe he is!
22:31:56 <ais523> wrong continent
22:31:57 * ehird dramatic music
22:32:01 <ehird> ais523: proxies!
22:32:02 <alexholowczak> ehird: Yes, I know that IRC has a reputation for not having anything happen... ever.
22:32:04 <ais523> either that, or being very clever with proxies
22:32:23 <Judofyr> gah. Colloquy won't let me see what you write!
22:32:24 <ehird> alexholowczak: this troll delivers messages by coming in with a dsfkjsdfkj-style nick, setting the channel, and parting again
22:32:25 <Judofyr> :-(
22:32:34 <alexholowczak> ehird: I see.
22:32:39 <ehird> see: the logs :P
22:32:39 <ais523> Judofyr: why not?
22:32:52 <Judofyr> it's just blank :P
22:32:54 <Judofyr> probably a bug
22:33:00 <Judofyr> or
22:33:05 <Judofyr> it _is_ a bug
22:33:05 <ais523> well, you can see what we're saying now
22:33:07 <ais523> presumably
22:33:37 <Judofyr> presumably, you say? :P
22:33:53 <Judofyr> I can read the raw IRC-stream, though
22:34:00 <alexholowczak> Just as I join... and the troll doesn't return.
22:34:01 <ais523> ah, ok
22:34:03 <ais523> is it a known bug
22:34:07 <ehird> alexholowczak: he'll be back
22:34:11 <alexholowczak> Ah right.
22:34:12 <ehird> he was away for quite a bit last time
22:34:14 <ais523> alexholowczak: trolls aren't used to people reacting intelligently, we must have confused them
22:34:19 <alexholowczak> lol
22:34:40 <ehird> heh
22:34:40 <ehird> quick, ais523, talk about computation
22:34:40 <Judofyr> ais523: dunno
22:34:40 <Judofyr> good IRC client for mac, anyone?
22:34:53 <ehird> limecaht!!!!!!
22:34:55 <ais523> Judofyr: ehird should know one, he used one for ages
22:34:59 <ehird> http://limechat.net/mac/
22:34:59 <ais523> and probably still does
22:35:02 <alexholowczak> Somebody poke me if the troll returns... Indeed it may not be your priority... But it'd be appreciated. :-P
22:35:11 -!- VKDKAKKE has joined.
22:35:14 -!- VKDKAKKE has set topic: HAHAHAHAHAHAHAHHAHA get a realLLLLLLLLLLLLLLLLLLLLL LANGUAGE.
22:35:15 <ehird> alexholowczak: he's back
22:35:15 <Slereah> Hey buddy
22:35:18 -!- VKDKAKKE has left (?).
22:35:18 <alexholowczak> Yeah
22:35:19 <alexholowczak> I saw.
22:35:21 <alexholowczak> lol
22:35:25 <ehird> this is exciting
22:35:28 <alexholowczak> My client went grey when he appeared.
22:35:30 <ehird> like... retarded fireworks!
22:35:40 -!- ais523 has set topic: Logs are here: `wget http://tunes.org/~nef/logs/esoteric/08.12.29 -O - 2> /dev/null | grep 'logs >>>' | sed 's/.*logs >>> \(.*\) <<<.*/\1/'`.
22:35:45 <alexholowczak> This is intelligent spamming though.
22:35:50 <alexholowczak> He's insulting a programming language.
22:35:56 <ais523> which one, though?
22:35:58 <ehird> for some values of intelligent
22:36:03 <alexholowczak> This isn't YouTube commenting type spamming.
22:36:06 <ais523> he insulted BF earlier, but not on any particularly insightful grounds
22:36:24 <ehird> alexholowczak: it's worse because he's shown a cursory knowledge of the existence of C, Perl and brainfuck
22:36:25 <ais523> he's just jealous of a channel where you can do this:
22:36:30 <Slereah> Hey, guy, what do you think of Lazy K?
22:36:31 <ais523> ^bf ,[.,]!Look at this!
22:36:31 <fungot> Look at this!
22:36:38 <ais523> you can't easily do that with C
22:36:42 <alexholowczak> Yes, but by doing it by insulting a programming language is... not usual.
22:36:43 -!- casmith_789 has joined.
22:36:50 <ehird> hi casmith_789
22:36:55 <ais523> help, we're being invaded by troll-watchers
22:36:57 <alexholowczak> ehird: He's bot inspecting too, I believe.
22:36:58 <casmith_789> hi
22:37:02 <ehird> .c printf("hello world\n"); /* don't tempt me ais523 */
22:37:05 <ais523> casmith_789: how long until the whole of the rest of the channel turns up?
22:37:09 <alexholowczak> s/bot/troll/
22:37:11 <Slereah> He attracts tourism.
22:37:12 <alexholowczak> lol
22:37:21 <ehird> we should have people come in and fake trolling
22:37:23 <ehird> for the publicity
22:37:23 <Slereah> He's a valuable asset to this communauty.
22:37:34 <alexholowczak> The rest of the channel won't be that interested.
22:38:15 <ais523> ^bf >,[>,]<[.<]!Playing around with BF is fun.
22:38:15 <fungot> .nuf si FB htiw dnuora gniyalP
22:38:19 <casmith_789> I'm worried - is that programming language I see c?
22:38:25 <ehird> casmith_789: that was :-P
22:38:29 <ais523> ehird pasted a line of C above
22:38:30 <alexholowczak> casmith_789: It's probably esoteric... Oh.
22:38:30 <Judofyr> brb, switching to LimeChat :-)
22:38:32 -!- Judofyr has quit.
22:38:32 <ais523> but there isn't a Cbot in here
22:38:41 <Slereah> Good.
22:38:42 <ehird> ais523: I was threatening to add that to botte.
22:38:44 <Slereah> C is an awful language.
22:38:51 <ais523> ehird: it would be hard to get it working correctly
22:38:54 <Slereah> Hey, guy, why don't you take up Python?
22:38:58 <Slereah> It's an awesome language.
22:38:59 <ais523> although writing .c #define NULL argv would be fun
22:39:01 <Slereah> Or Scheme!
22:39:06 <ehird> ais523: not really, import standard headers, wrap in main(void) { ... }
22:39:08 <alexholowczak> Slereah: Are you xlq in disguise? :-P
22:39:08 <ais523> or Smalltalk?
22:39:09 <ehird> err
22:39:15 <ais523> alexholowczak: no
22:39:15 <ehird> int main(void) { ...; return 0; }
22:39:25 <ehird> and run in sandbox
22:39:27 <Slereah> xlq?
22:39:28 * ais523 waits for AnMaster to wonder wtf is going on
22:39:42 <alexholowczak> Slereah: He's someone who I know... Who always goes on about how great python is.
22:39:48 -!- Judofyr has joined.
22:39:51 <ehird> hi Judofyr
22:39:52 <Slereah> Well, it is!
22:39:53 <ais523> Perl vs. Python is one of the big Holy Wars
22:39:53 <Judofyr> hi!
22:39:59 <ais523> just like emacs vs. vi
22:40:01 <Slereah> I don't know Perl
22:40:06 <ais523> or 1tbs vs. BSD-style indentation
22:40:07 <ehird> ruby :P
22:40:08 <Slereah> So I'll just go PYTHON ACKBAR >:|
22:40:22 <ehird> Judofyr: limechat is written in ruby FWIW :P
22:40:28 <ehird> well, everyone:
22:40:33 <Judofyr> cool
22:40:41 <ais523> looks like time to go home, anyway
22:40:42 -!- casmith_789 has quit (Client Quit).
22:40:44 <ehird> hmm on further inspection the site says that
22:40:46 <ehird> about 3 times
22:40:47 <ehird> bye ais523
22:40:50 <AnMaster> ais523, ?
22:40:50 <ais523> you'll have to have fun troll-watching on your own
22:40:51 <AnMaster> what?
22:40:55 <ais523> AnMaster: someone mentioned xlq
22:40:55 <ehird> AnMaster: we have a troll.
22:40:57 <ais523> who wasn't me
22:41:00 <ais523> also, we have a troll
22:41:02 <ehird> ais523 pinged you for some reason
22:41:07 -!- JKLELVE has joined.
22:41:10 <ehird> ooh he's back
22:41:10 -!- JKLELVE has set topic: befunge!!!!!!!!!!!!!!!!!!!! ftw! and its not some stupid python vs perl flame war! it's about being rational on what languages can be used and what hobbies you people need to revaluate!.
22:41:12 -!- JKLELVE has left (?).
22:41:16 <ehird> //
22:41:18 <ehird> Wait.
22:41:19 <ehird> Befunge ftw?
22:41:23 <ehird> Isn't this guy anti-eso/
22:41:25 <AnMaster> ehird, huh
22:41:30 <Slereah> Everyone <3 Befunge, ehird
22:41:32 <alexholowczak> Hoe did he see that?
22:41:34 <ehird> AnMaster: apparently I suck balls!
22:41:36 <alexholowczak> He wasn't here at the time.
22:41:37 <ehird> alexholowczak: He log watches, duh.
22:41:40 <alexholowczak> Ah.
22:41:43 <ehird> http://tunes.org/~nef/logs/esoteric/09.01.03
22:41:43 <AnMaster> ehird, report to opers and/or chanops
22:41:43 <ais523> bye, anyway
22:41:45 <alexholowczak> Sorry: New to this. :-P
22:41:46 -!- ais523 has quit (Client Quit).
22:41:47 <ehird> AnMaster: there are none, stupid
22:41:49 <ehird> :P
22:41:56 <ehird> also, freenode oeprs don't deal with cahnnel-specific thngs
22:41:56 <AnMaster> ehird, lament?
22:42:00 <ehird> lament is never here
22:42:09 <ehird> besides, he'll tire soon enough
22:42:11 <Judofyr> Camping is probably the framework for you guys: http://github.com/why/camping/tree/master/lib%2Fcamping.rb
22:42:13 <Judofyr> :P
22:42:15 <ehird> meanwhile, he's amusingly idiotic
22:42:16 -!- jvkelfoe has joined.
22:42:19 -!- jvkelfoe has set topic: report?! LOLOLOLOL suck it up and accept the fact i'm right here! esosteric languages suck monkey balls!.
22:42:20 -!- jvkelfoe has left (?).
22:42:22 <ehird> Judofyr: i love camping, it's ridiculous
22:42:30 <AnMaster> ehird, yes he is, he made a zen comment just a few a weeks ago
22:42:33 <ehird> troll: like we'd dignify you with a reporting.
22:42:36 <AnMaster> and then went away again
22:42:41 <ehird> AnMaster: whatever
22:42:42 <Judofyr> in my local repo I've manged to get it below 3k
22:42:43 <fizzie> Hrm?
22:42:48 <ehird> fizzie: troll
22:42:48 <ehird> see above
22:42:51 <ehird> he's been here for hours XD
22:42:52 <fizzie> Maybe I should do at +t, then.
22:42:55 <ehird> aww
22:42:58 <ehird> well, yes.
22:43:04 <Slereah> Do that, fizzie
22:43:06 <AnMaster> anyway going afk again, studying for test
22:43:09 <AnMaster> fizzie have op?
22:43:10 <Slereah> Maybe he'll talk to us for reals :D
22:43:11 -!- ehird has set topic: TAKE THIS | http://tunes.org/~nef/logs/esoteric/.
22:43:13 <ehird> +t it
22:43:16 <ehird> and force him to USE MESSAGES
22:43:23 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric/.
22:43:51 <AnMaster> yes he has
22:43:58 <AnMaster> and he can even edit access list it seems
22:43:58 <ehird> fizzie: +t? :{
22:44:02 <AnMaster> from a quick look
22:44:07 <Judofyr> ehird: hm... I can't see when other talks in other channels, though :/
22:44:10 <Judofyr> (in limechat)
22:44:11 <ehird> fizzie has been an op since like 2003
22:44:13 <ehird> Judofyr: yes you can
22:44:15 <ehird> it goes blue
22:44:17 <ehird> and comes on the console
22:44:18 <ehird> (bottom pane)
22:44:30 -!- iivkee has joined.
22:44:32 <fizzie> 00:44:20 [freenode] -ChanServ(ChanServ@services.)- The KEEPTOPIC flag has been set for channel #esoteric.
22:44:32 -!- iivkee has set topic: +t? HAHAHAHAHAHHAHAHAHAHA no this is what you do, type /j #C.
22:44:34 -!- iivkee has left (?).
22:44:39 <Judofyr> oh..
22:44:40 <ehird> fizzie: no
22:44:41 <ehird> not keep topic
22:44:43 <ehird> that's a chanserv thang
22:44:44 <fizzie> I have no idea what that does.
22:44:47 <ehird> Judofyr: it's just like colloquy
22:44:50 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric/.
22:44:52 <fizzie> Freenode is so confusing!
22:44:53 <ehird> fizzie: just +t
22:44:54 <Judofyr> I see
22:45:00 <ehird> /mode +t #esoteric :P
22:45:16 -!- ChanServ has set channel mode: +o fizzie.
22:45:21 -!- fizzie has set channel mode: +t.
22:45:22 -!- viekwke has joined.
22:45:25 -!- viekwke has left (?).
22:45:28 -!- ChanServ has set channel mode: -t.
22:45:28 -!- ChanServ has set channel mode: -t.
22:45:32 <Judofyr> haha!
22:45:39 -!- VKEKWEKW has joined.
22:45:43 -!- VKEKWEKW has set topic: what it does is YOU CANT CHANGE THE FUCKING TOPIC YOU FUCKING CUNTS WASTING TIME ON LANGUAGES THAT HAVE 0 VALUE {}.
22:45:46 -!- VKEKWEKW has left (?).
22:45:48 <fizzie> Heh, modelocked to not have +t. Freenode, how silly you are.
22:46:00 <AnMaster> fizzie, keep topic means the topic will be restored after a netsplit or such
22:46:03 -!- Slereah has set topic: Woooo, ghost blowjob!.
22:46:05 <AnMaster> as when it goes empty
22:46:07 <AnMaster> anyway
22:46:14 <AnMaster> fizzie, do you have +s in flags?
22:46:16 -!- ehird has left (?).
22:46:18 -!- ehird has joined.
22:46:24 -!- ChanServ has set channel mode: +t.
22:46:25 <AnMaster> then you can change the modelock
22:46:31 <fizzie> Yes.
22:46:34 <AnMaster> :)
22:46:39 <AnMaster> fizzie, also ban him maybe?
22:46:40 -!- fizzie has set topic: http://tunes.org/~nef/logs/esoteric/.
22:46:40 <ehird> fizzie: add +t to the modelock, then.
22:46:44 <AnMaster> he uses the same ip all the time
22:46:48 <fizzie> Yes, that sounds like a good idea.
22:46:53 <Judofyr> yeah. +1 on ban
22:47:03 -!- fizzie has set channel mode: +b *!n=checker@c-68-55-8-210.hsd1.md.comcast.net.
22:47:09 <fizzie> Let's start with something that exact.
22:47:13 <AnMaster> sure
22:47:15 <fizzie> At least there's something to evade.
22:47:16 <alexholowczak> Why didn't you do that ages ago?
22:47:21 <ehird> fizzie: I like our new permanent topic.
22:47:22 <ehird> NO
22:47:24 <ehird> DON'T BAN HIM
22:47:26 <ehird> he's hilarious
22:47:29 <ehird> you nazi
22:47:29 <AnMaster> ..
22:47:31 <ehird> nooooooooooooooooooooo
22:47:32 <ehird> >:(
22:47:34 <ehird> you suck.
22:47:37 <ehird> trollwatching is fun.
22:47:40 <ehird> he's used a different ident.
22:47:46 <ehird> hey troll, come troll #esoteric-SANS-FASCISM
22:47:53 <alexholowczak> lol
22:48:00 <Judofyr> ^^
22:48:05 <AnMaster> ehird, in that case
22:48:17 <AnMaster> changing the topic is censorship
22:48:18 <fizzie> It's a fair chance he'll bother evading at least that particular ban.
22:48:22 <AnMaster> preventing free speech
22:48:30 <AnMaster> :P
22:49:18 <ehird> AnMaster: IT IS.
22:49:24 <ehird> troll please come back with a different ident
22:49:26 <ehird> i miss you already.
22:49:42 <ehird> you scared him away
22:49:45 <ehird> bastard
22:49:54 -!- ehird_Im_here has joined.
22:50:01 <ehird_Im_here> hahahahahahah
22:50:04 <ehird_Im_here> finally +t
22:50:04 <ehird_Im_here> ?
22:50:05 <Slereah> Why hello, man who's ehird
22:50:06 <ehird_Im_here> LOLROFLMAO
22:50:07 <ehird_Im_here> sadddd
22:50:11 -!- ehird_Im_here has left (?).
22:50:16 <Slereah> Lame.
22:50:17 <ehird> :DDD
22:50:19 -!- optbot has quit (Remote closed the connection).
22:50:23 <ehird> won't need him for a while
22:50:25 <Slereah> Just ban him, he's not dedicated to entertain us.
22:50:34 <ehird> NO.
22:50:39 <ehird> he is my new lover.
22:50:42 <Judofyr> :O
22:50:43 <fizzie> See, you got what you asked for. And it was even a different IP.
22:50:46 <AnMaster> fizzie, hm he changed ip too
22:50:47 <ehird> i know fizzie
22:50:48 <AnMaster> ah yes
22:50:49 <ehird> I love it
22:50:54 <ehird> he's so dedicated<333
22:51:03 <AnMaster> ehird, how did this start
22:51:10 <AnMaster> it is way out of my scrollback by now
22:51:12 <Judofyr> I got 4-5 WEP-encrypted networks ATM
22:51:17 <ehird> AnMaster: he came in and asked if anyone was ther
22:51:18 <ehird> I said yes
22:51:23 <ehird> he changed the topic to tell us to get laid
22:51:23 <AnMaster> and then?
22:51:24 <ehird> and parted
22:51:28 <AnMaster> wtf
22:51:29 <ehird> then he started doing this, basically.
22:51:37 <AnMaster> ehird, wonder why he started doing that
22:51:42 <ehird> AnMaster: he wants us to use real languages, like C and Perl, apparently
22:51:48 <AnMaster> -_-
22:51:50 <ehird> and wants us to change our hobby to 'getting laid'
22:51:57 <ehird> whereas he's content himself with 'trolling IRC channels'
22:52:04 <AnMaster> ehird, well we do use such languages, to write interpreters in
22:52:14 <ehird> ais523 already said that,
22:52:18 <AnMaster> ok
22:53:05 <alexholowczak> I'm leaving now... The interest has passed. :-P
22:53:09 -!- alexholowczak has quit ("Leaving.").
22:53:47 <fizzie> I can understand the "you should use real languages" thing, but he/she seems so uncommonly... intense about it.
22:54:10 <AnMaster> who was alexholowczak
22:54:10 <AnMaster> ?
22:54:21 <Slereah> Well, he's a troll
22:54:33 <ehird> er, no
22:54:36 <ehird> AnMaster: from #chess
22:54:41 <ehird> ais523 invited him to troll watch
22:54:44 <AnMaster> oh
22:54:53 <ehird> fizzie: he desperately cares that we are all laid
22:54:55 <ehird> so kind
22:55:26 -!- kveiwekw has joined.
22:55:31 <kveiwekw> yeah i do motherfucker
22:55:33 -!- kveiwekw has left (?).
22:55:34 <Slereah> Well, mister troll, send me a picture and I'll see if I can give you some loving
22:55:50 <AnMaster> hm, if I pull this lever on the office chair I'm in I do tilt backwards, so I guess that means that I'm almost lying back, thus "getting laid"
22:55:50 <AnMaster> :D
22:55:57 <ehird> lam
22:55:57 <ehird> e
22:56:10 <AnMaster> ehird, me or Slereah?
22:56:16 <ehird> troll, let's have sex. then we'll -both- lose our virginity!
22:56:17 <ehird> oh snap
22:56:19 <ehird> AnMaster: you
22:56:25 <AnMaster> ehird, thanks, I prefer those jokes
22:56:30 <AnMaster> bad jokes you know
22:56:34 <ehird> yes. we know.
22:56:43 <Slereah> ehird : Hey, we can share him.
22:56:49 <Slereah> Are you more of a top or a bottom?
22:56:50 <ehird> no
22:56:51 <ehird> he's all mine <3
22:56:54 <Slereah> What of you troll?
23:02:02 <fizzie> I would assume trolling would be more "fun" somewhere where people would take it more seriously. Trolling esoteric language enthusiasts about their tastes in programming languages is like trying to annoy a duck by pouring water on it (i.e. you need to do it a whole lot).
23:02:17 <Slereah> heh.
23:02:20 <ehird> ha
23:02:28 <Slereah> He does not have the dedication or strength of a nigra.
23:02:42 <ehird> i think Slereah is actually a troll
23:02:42 <ehird> :d
23:02:44 <ehird> :D
23:02:52 <AnMaster> hm
23:03:09 <Slereah> Well, not here at least.
23:03:18 <Slereah> Sure, I may talk about gay sex.
23:03:26 <Slereah> But only for the eyes of augur.
23:03:29 <AnMaster> fizzie, you verified that scientifically? About the duck I mean.
23:03:40 <Slereah> He once drowned a duck.
23:03:53 <AnMaster> Slereah, maffia style?
23:03:54 <AnMaster> :D
23:04:01 <Slereah> Cement duck
23:04:06 <AnMaster> heh
23:04:14 <Judofyr> duck punching!
23:04:31 <AnMaster> Can a duck duck?
23:04:40 <ehird> Judofyr: ITYM sex in the city space shuttle
23:05:01 <ehird> for the hopeless outsiders: http://hackety.org/2007/08/10/myCompleteListOfSubstitutePhrasesForTheActWeNowKnowToBeMonkeypatching.html
23:05:02 <fizzie> Actually I spent a whole lot of time to think of a better simile, with no luck; had to go with the "like water off a duck's back" idiom.
23:05:09 <AnMaster> ehird, huh, what is a "city space shuttle"?
23:05:19 <ehird> AnMaster: I think it parses as ((sex in the city) space shuttle)
23:05:26 <ehird> XD
23:05:31 <AnMaster> ehird, that doesn't make much sense
23:05:42 <Judofyr> more like, Attempting To Exercise Just A Fraction Of The Lawlessness And Lack Of Discipline Which We All First Learned From Why The Lucky Stiff
23:05:42 <ehird> _why doesn't make much sense
23:05:53 <AnMaster> ehird, unless "sex in the city" was a name or such.
23:05:58 <AnMaster> which afaik it isn't?
23:06:45 <AnMaster> hm googling seems to indicate it is a movie or something such, so ok, I guess that parsing would make sense then
23:06:57 <Judofyr> still, I think _why is a genius!
23:07:11 -!- oerjan has joined.
23:07:15 <fizzie> (Curiously in Finnish it's "kuin vesi hanhen selästä", lit. "like water off a geese's back"; I'm not sure why they've used a bit different waterfowl there.)
23:07:51 <ehird> typography is annoying
23:07:59 * oerjan wonders if this means the same as norwegian "som vann på gåsa" (also goose)
23:08:26 <fizzie> oerjan: Like water off a duck's back; yes, I think it's the same thing.
23:08:34 <AnMaster> fizzie, well that exists in Swedish too, except it uses goose instead
23:08:42 <AnMaster> "som att hälla vatten på en gås"
23:09:04 <fizzie> The Nordic countries seem all to be very goose-friendly.
23:09:12 <AnMaster> what about English?
23:09:20 <fizzie> It's a duck in English.
23:09:20 <AnMaster> doesn't something similar exists for there
23:09:37 <oerjan> no, we just have intensive knowledge in how to torture geese, and know that water doesn't work
23:09:59 <AnMaster> fizzie, that depends on what it is in Denmark and on Iceland
23:10:02 <AnMaster> oerjan, :D
23:10:16 <Judofyr> what about Norway? :-(
23:10:25 <oerjan> Judofyr: already mentioned
23:10:26 <AnMaster> Judofyr, that is what oerjan said
23:10:26 <AnMaster> ...
23:10:37 <Judofyr> oh
23:11:01 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
23:11:07 <ehird> norway is fake
23:11:10 <oerjan> danish: "som at slå vand på en gås"
23:11:11 <Judofyr> :O
23:11:21 <Judofyr> ehird: how?
23:11:22 <oerjan> (says google hit)
23:11:25 <ehird> it doesn't exist
23:11:33 <oerjan> darn you got us
23:11:35 <AnMaster> oerjan, ok, then geese is in clear majority even if Icelandic (sp?) use something else
23:12:16 <AnMaster> maybe geese were more common here? And ducks more common in UK?
23:12:18 <AnMaster> or something such
23:12:24 <AnMaster> I guess that could explain it
23:12:34 -!- kar8nga has joined.
23:12:48 <oerjan> we are just a giant petroleum platform in the north sea, with a giant hedge fund
23:13:20 <AnMaster> oerjan, wait what, I visted Oslo this summer, looked at Fram and such things...
23:13:24 <AnMaster> you mean that was fake?
23:13:30 <AnMaster> or not located in Norway?
23:13:31 <fizzie> It's done with mirrors, I guess.
23:13:38 <AnMaster> fizzie, really?
23:13:41 <Judofyr> and magnets
23:13:53 <Judofyr> _always_ magnets
23:13:58 <oerjan> that's our park area, it's inside the platform
23:14:15 <AnMaster> fizzie, must be a lot of mirrors then, because I traveled by train from Sweden to Olso, and we seemed to travel for several hours through wilderness
23:14:25 <AnMaster> I guess they did it when passing through one of the mirrors
23:14:26 <AnMaster> err
23:14:29 <AnMaster> one of the tunnels
23:14:54 <fizzie> Yes, then they run the train in a circle and use their anti-gravity thingamajicks to keep you from noticing.
23:15:04 <AnMaster> you know, like just a km or 2 on the edge of Sweden, then through a long tunnel, and somehow using mirrors to make it not look like the tunnel was that long
23:15:07 <fizzie> It's the simplest way!
23:15:17 <oerjan> AnMaster: the wilderness is just CGI
23:15:18 <AnMaster> fizzie, you still need a tiny strip of land there
23:15:34 <AnMaster> oerjan, well it can't be before the first tunnel I think
23:15:50 <AnMaster> so I'd say there is a tiny strip of real norway there
23:15:54 <ehird> no
23:16:00 <fizzie> They do have a "wild goose chase" in English; I'm not sure we have an equivalent one here.
23:16:00 <ehird> norway -does- -not- -exist-
23:16:11 <AnMaster> fizzie, what does it mean?
23:16:15 <AnMaster> oerjan, hm
23:16:19 <oerjan> um the train windows are actually plasma screens
23:16:34 <AnMaster> oerjan, oh? really? They put them up during the travel then?
23:16:44 <AnMaster> or somehow faked the view when inside Sweden?
23:16:56 <oerjan> they're just programmed to show a camera view while in sweden
23:17:04 <AnMaster> oerjan, ah!
23:17:07 <fizzie> AnMaster: "a lengthy or useless pursuit or task whose execution requires inordinate resources and circuitous execution" is the wikipediaic definition.
23:17:19 <AnMaster> fizzie, heh
23:18:11 <fizzie> And actually the interwebs tell me the Vietnamese water-duck idion is literally "like pouring water on a duck's head", instead of back. Their methods for animal torture are obviously different.
23:19:04 <AnMaster> fizzie, link?
23:19:17 <AnMaster> fizzie, we don't specify a part in Sweden
23:19:23 <AnMaster> we just talk about the duck in generic
23:19:37 <fizzie> AnMaster: At the bottom of http://www.cjvlang.com/Birds/duck4.html
23:19:42 <AnMaster> same for that Norwegian phrase oerjan used.
23:20:04 <fizzie> AnMaster: The Finnish variant mentions the back, like the English one.
23:20:15 <oerjan> and the danish doesn't either
23:20:21 <AnMaster> right
23:20:29 * oerjan fails at guessing how to find the icelandic equivalent
23:20:40 <AnMaster> oerjan, wikipedia?
23:23:55 <oerjan> ah, "að kasta vatni á gæs"
23:25:14 <fizzie> That's not in wiktionary's "Icelandic idioms / similes" lists, but those aren't very long anyway. Sounds goose-ish, anyway.
23:25:40 <oerjan> well i started by translating water and goose with wiktionary
23:25:47 <oerjan> then googled the combination
23:28:48 <oerjan> http://www.ms.is/Islenska/Fernuflug/Fernuflug-II/ordtok/ has it
23:29:21 <oerjan> s/kasta/skvetta/
23:29:42 <oerjan> skvette is the norwegian verb too
23:30:50 <oerjan> oklosol: feeling particularly bright today?
23:30:53 <fizzie> I shouldn't be too surprised if they had something more common with a vaguely similar meaning; they are such purists. Well, maybe they don't mind idioms so much.
23:31:16 <oerjan> those are all good icelandic words
23:31:34 <AnMaster> oerjan, Swedish has skvätta, which is close
23:31:47 <oerjan> (stökkva instead of skvetta was also mentioned)
23:32:49 <AnMaster> and yes they are purists
23:34:20 <AnMaster> they son't just use -son style names, they use -dóttir too
23:34:27 <AnMaster> purists yeah...
23:36:15 <oerjan> moreover, they don't inherit them
23:36:21 <AnMaster> indeed!
23:37:14 <oerjan> i've heard/read this weird story about an icelandic woman who moved to swedish but was allowed to keep her -dóttir name
23:37:25 <oerjan> the problem occured when she got a son...
23:37:26 <AnMaster> moved to Swedish?
23:37:27 <AnMaster> wtf
23:37:31 <AnMaster> Moved to Sweden?
23:37:31 <oerjan> *sweden
23:37:35 <AnMaster> right
23:37:41 <AnMaster> but you can keep your name when you move
23:37:43 <AnMaster> that is normal
23:37:55 <AnMaster> I can't imagine it not being the case
23:38:00 <oerjan> yes. as i said the problem happened when she got a son.
23:38:14 <AnMaster> oh right
23:38:15 <AnMaster> I see
23:38:19 <AnMaster> oerjan, what happened?
23:38:33 <oerjan> and the government insisted he had to have her surname
23:38:42 <AnMaster> oerjan, what happened in the end?
23:39:04 <oerjan> i don't remember, it may be a fake anecdote for all i know
23:39:26 <AnMaster> oerjan, it may be real, sounds like usual Swedish gov
23:39:41 <AnMaster> incompetent if you want to put it nicely
23:40:15 <oerjan> the nothing is possible unless there is a rule allowing it kind, i assume
23:40:28 <ehird> ha
23:40:34 <AnMaster> oerjan, eh?
23:40:36 <ehird> AnMaster: can't be more incompetent than the uk
23:40:41 <AnMaster> s/the/then/?
23:40:54 <AnMaster> ehird, I think around the same level probably
23:41:00 <oerjan> i expect that's global, at least in those countries that _have_ rule by law
23:41:07 <ehird> AnMaster: almost impossible
23:41:11 <ehird> do you guys have cctv everywhere?
23:41:56 <AnMaster> ehird, no but we have the FRA law and the IPRED law, though those met a storm of protests in media so the gov is finally starting to retreat
23:42:15 <ehird> ipred?
23:42:21 <ehird> ah, intellectual property.
23:42:27 <AnMaster> yeah
23:42:31 <ehird> AnMaster: what about a national, required ID card scheme?
23:42:39 <AnMaster> ehird, hm?
23:42:42 <AnMaster> what do you mean?
23:42:49 <ehird> AnMaster: a required government-assigned identification card for every citizen
23:42:56 <ehird> "fascism" is an understatement
23:42:59 <AnMaster> ehird, that you have to carry on you!?
23:43:01 <ehird> AnMaster: yep
23:43:08 <ehird> the gov is pushing it for 2012
23:43:10 <AnMaster> ehird, how the heck would that work for child?
23:43:17 <AnMaster> children*
23:43:30 <oerjan> AnMaster: they just tattoo it on, duh
23:43:31 <ehird> AnMaster: i'm not sure it applies to minors
23:43:38 <ehird> AnMaster: but, delegated to the parent
23:43:38 <ehird> I assume
23:43:43 * oerjan ducks
23:44:01 <AnMaster> ehird, well no we don't have that, not yet at least
23:44:06 <AnMaster> with EU.. who knows
23:44:10 <fizzie> Maybe they could stick an implant in, that'd be the neat.
23:44:13 <ehird> proposal: the id card is chip-implanted into their brains
23:44:15 <ehird> fizzie: snap
23:44:23 <ehird> it allows for easy termination of dissenting citizens!
23:44:38 <AnMaster> hm
23:44:54 <AnMaster> ehird, you know this sounds like 1984 somehow
23:44:58 <AnMaster> those cameras too
23:45:02 <ehird> Oh, definitely.
23:45:09 <ehird> It _is_ an instruction manual, right? :-)
23:45:30 <ehird> AnMaster: we also require ISPs to censor the internet
23:45:55 <fizzie> There is a crazy crank Finnish page about how the current Finnish ID card (which has a chip in it for RSA signatures or some-such, but is in no means obligatory) is a tool of the devil, the mark of the beast.
23:46:16 <fizzie> It's at http://www.varo666siru.net/ and has some English and Swedish content too.
23:46:25 <AnMaster> ehird, I think the gov makes our ISPs block child porn sites, optional though, but with a loaded gun pointed at those who disagree
23:46:37 <AnMaster> so only optional on the paper
23:46:51 <ehird> AnMaster: The centralized UK provider that handles the block blocked this page recently: http://en.wikipedia.org/wiki/Virgin_Killer [you might not want to click]
23:47:02 <ehird> there was a load of hoohah about it recently
23:47:07 <fizzie> "When a person has this chip in them, they can be located in any part of the world and by a press of a button, be activated! This chip is microscopically small; it is of the size of the tip of an ordinary syringe needle."
23:47:11 <ehird> in that it's not actually illegal
23:47:21 <AnMaster> ehird, hm
23:47:24 <AnMaster> what is it about then?
23:47:32 <ehird> AnMaster: the album cover.
23:47:44 <AnMaster> ehird, never heard of it, *loads page with tor*
23:47:47 <ehird> [NSFW, NMS (Not Mind Safe)]
23:48:17 <fizzie> "The Bible says that at some point this ”biochip” will be offered to all people. It is better to die than to receive a mark that makes a human being a robot."
23:48:49 <ehird> fizzie: where is this chip put?
23:49:47 <AnMaster> fizzie, sounds like a mild version of time cube
23:49:53 <fizzie> "Under the skin." And the current chip in the ID card is a "prototype" for it.
23:49:59 <AnMaster> oh damn, now I got eh... started...
23:50:17 <ehird> fizzie: Ah. So it doesn't actually exist. AnMaster: Me? :P
23:50:22 <ehird> EDUCATED STUPID
23:50:36 <fizzie> ehird: Oh, no, it already exists, it's just not yet forcibly installed in everyone.
23:50:44 <fizzie> "Today at least 6,000 people in Sweden have taken that mark and they are being followed all the time.Their location can be displayed on a TV screen any time."
23:50:51 <fizzie> (I'm not sure what Sweden has to do with this.)
23:50:53 <ehird> fizzie: I mean, an under-the-skin chip exists?
23:50:59 <ehird> Government-made?
23:51:15 <fizzie> Yes. It's a CIA project. Or something.
23:51:21 <fizzie> It's a bit confusing, to tell the truth.
23:51:28 <ehird> Ah. So it doesn't actually exist.
23:51:29 <AnMaster> fizzie, how is it related to 9/11?
23:51:39 <AnMaster> and ufos?
23:52:03 <oerjan> under-the-skin chips probably exist, for medical uses
23:52:16 <AnMaster> oerjan, pacemaker?
23:52:23 <fizzie> "Manipulated by the chip, one person became like a Nazi of former times, a superman bubbling over with zeal. When the stimulus was further slightly increased, everything was over."
23:52:33 <oerjan> that too
23:53:10 <fizzie> Anyway, this text was from a "an abridged version of a 3-hour speech of Dr. Colin Sanders, D. Sc. (Tech), USA"; and that site is collecting all kinds of stuff that says "micro-chip" in it as "evidence" that the Finnish government is planning some dastardly thing like this too.
23:53:29 <ehird> i love crackpots.
23:53:45 <ehird> On December 20, 2007, Scorpions played at a concert for the elite of Russia’s security forces in the Kremlin. The concert celebrated the 90th anniversary of the founding of the Cheka - predecessor of the KGB. Members of the audience included President Vladimir Putin.
23:53:51 <ehird> -- about the band with the censored colour
23:53:55 <oerjan> if you believe literally in Revelation then you'd have to believe something like that
23:54:11 <ehird> oerjan: if you literally believe in any part of the bible you have to be a crackpot by obligation...
23:54:46 <oerjan> oh there are probably sections that are literally true
23:54:59 <oerjan> maybe not a whole book though
23:55:10 <oerjan> (book of the bible)
23:55:12 <ehird> oerjan: name one :P
23:55:21 <fizzie> Some parts of that page make me think it's parody, though. (My translation this time) "There are also rumours of so-called blue tooth, that would be used in the EU area [for passport/identification/etc]" which sounds too much like a joke, given... well, you know, bluetooth.
23:55:45 <ehird> i bet the bears mauling the teenagers who called the guy baldie is true
23:55:48 <ehird> it's too good not to be
23:55:56 <ehird> fizzie: that's not much of a stretch for a crackpot
23:56:02 <oerjan> ehird: i didn't say i could say which are true.
23:56:54 * oerjan used that story to make a Jehovah's Witness give up on him once, ihrc
23:57:22 <fizzie> The basic gist seems to be that all kinds of (medical or other) implants make it possible to control (via satellites!!1) you like a robot.
23:58:17 <fizzie> (Gene-tweaked grain is also somehow related.)
23:58:30 <ehird> i want a jehovah's witness to bother m
23:58:30 <ehird> e
23:58:37 <ehird> I'd come out with The Origin of the Species
23:58:43 <ehird> and ask if I could help them
23:59:18 <fizzie> We used to get them semi-regularly (not more than something like once/year, though) in the university student village.
2009-01-04
00:00:08 <fizzie> Oh, there are details, too. Motorola is building these chips; the model number is "BT 952000".
00:01:52 <oerjan> do they come with that leap year bug that Zune got from that Motorola spinoff?
00:02:32 <ehird> BT 952000 --http://www.hiddenmysteries.org/themagazine/vol8/articles/montex.shtml
00:02:38 <ehird> so, some consistency'
00:03:12 <fizzie> Yes; I didn't know that the corporation called "Lucent" got its name from "LUCifer ENTerprises".
00:03:17 <fizzie> One would think that's not very good PR.
00:03:24 -!- Judofyr has quit (Remote closed the connection).
00:03:27 <ehird> ha
00:06:11 * oerjan now wants to look up dev.* corporation names :D
00:08:22 <oerjan> i suggest staying away from Canada's DEVCO
00:10:35 -!- fizzie has set channel mode: -o fizzie.
00:10:49 <fizzie> Incidentally, have to sleep; do you want me to leave that +t on or what?
00:12:13 <ehird> No.
00:12:15 <ehird> Turn it off. :D
00:12:24 <kerlo> -t is nice when you have no trolls.
00:15:28 <fizzie> I'm not that sure that particular topic-sillitude will not come back, but I guess there's not much Real Talk during the "night-time" anyway.
00:15:43 -!- ChanServ has set channel mode: -t.
00:15:52 <fizzie> Sleepitude, now; g'night.
00:16:51 <oerjan> WE ARE DOOMED! DOOMED, I SAY!
00:21:53 <ehird> I just made a great misreading
00:21:57 <ehird> "with enough bugs, all eyes are shallow"
00:22:23 <oerjan> THEY ARE EATING OUR EYES! AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
00:29:09 -!- bloreg has quit.
00:29:09 -!- puzzlet_ has joined.
00:29:17 -!- puzzlet_ has quit (Read error: 104 (Connection reset by peer)).
00:31:49 -!- kar8nga has left (?).
00:34:11 -!- puzzlet_ has joined.
00:36:33 * ehird puts a black background on everythin before his eyes cave in
00:38:03 <oerjan> BLACK IS THE (NON-)COLOR OF EVIL
00:39:25 <ehird> dear apple: i would like a free leopard upgrade so that I don't get ugly white window mesh clashing with my ultimat blakk
00:42:00 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
00:47:53 -!- GreaseMonkey has joined.
01:08:36 <AnMaster> ehird, eh?
01:08:43 <AnMaster> ehird, can't you change theme in OS X?
01:08:51 <ehird> Not the window chrome, no.
01:08:57 <AnMaster> how strange
01:08:59 <ehird> Didn't you know that Apple is always right? :-P
01:09:08 <AnMaster> ehird, you just said they weren't?
01:09:17 <ehird> Steve Jobs would disapprove of your sacrelige of his perfect design.
01:09:21 <ehird> You uncouth savage. :D
01:10:03 <AnMaster> NEWS: Today ehird was making fun of Apple. Read more on page 7, 9, 12-13 and 17
01:10:06 -!- Vendan has joined.
01:10:29 <ehird> I'm sure I've done that before :|
01:10:49 <AnMaster> no you complained when I was doing it!
01:11:38 <ehird> I wonder if Apple stopped disobeying their own HIG in 10.5.
01:11:40 <AnMaster> ehird, anyway, iirc you can change theme even on windows xp
01:11:46 <AnMaster> HIG?
01:11:52 <AnMaster> HIGH?
01:11:57 <ehird> AnMaster: Human Interface Guidlines
01:11:59 <AnMaster> ah
01:12:01 <ehird> *Guidelines
01:12:04 <AnMaster> if you added an H
01:12:09 <AnMaster> it would explain a lot
01:12:11 <ehird> :-P
01:12:21 <AnMaster> like, you know, imac
01:12:29 <ehird> They sa(y|id) metal chrome should be used only for apps that are similar to real-world devices
01:12:37 <ehird> but I don't think Safari, a web browser, fits that definition.
01:12:47 <ehird> maybe it's imitating a refridgerated-mounted browser 2000
01:12:48 <AnMaster> ehird, oh? iirc finder had the metal look in 10.4
01:12:53 <ehird> yeah, it did
01:12:56 <AnMaster> and
01:13:03 <AnMaster> what on earth is it in real world?
01:13:10 <ehird> Uh. A filing cabinet? XD
01:13:16 <ehird> about the only time where apple listens to that guideline is with calculator.
01:13:20 <ehird> Which looks like ar eal calculator at a glance.
01:13:33 <AnMaster> ehird, in metal chrome?
01:13:34 <AnMaster> well
01:13:39 <AnMaster> their graph calc doesn't iirc
01:13:45 <ehird> I mean Calculator.app.
01:13:53 <AnMaster> ehird, ok, maybe they are separate
01:13:56 <ehird> Yes.
01:13:59 <AnMaster> I don't use mac a lot
01:14:02 <AnMaster> as you probably know
01:14:03 <ehird> One is a graphing calculator, one is a regular calculator :P
01:14:12 <AnMaster> ehird, well I have no regular calc
01:14:15 <ehird> Although Grapher.app is metal in 10.4, too...
01:14:20 <AnMaster> I only have a graphing one
01:14:24 <AnMaster> and it is black plastic
01:14:38 <AnMaster> scratched black plastic
01:14:39 <ehird> I want a TI-83 & an HP. Because that's like using both vi and emacs.
01:14:43 <AnMaster> with worn out keys
01:14:50 <AnMaster> ehird, this is a TI-83+
01:15:31 <AnMaster> ehird, had to replace the batteries once the in the ~6 years or so that I had it
01:15:43 <AnMaster> maybe 5 years
01:15:43 <AnMaster> not sure
01:16:35 <AnMaster> doesn't use much power at all since those are 4 AAA
01:17:29 * ehird examines how hard it'd be to rescheme cgit to fit with the rest of his design
01:17:40 <AnMaster> cgit?
01:17:49 <ehird> http://hjemli.net/git/cgit/about/
01:18:03 <AnMaster> hey
01:18:06 <AnMaster> that is a webinterface
01:18:07 <AnMaster> ...
01:18:14 <ehird> ... yes, yes it is.
01:18:17 <ehird> ... And?
01:18:24 <AnMaster> ehird, do you re-scheme google?
01:18:33 <ehird> /facepalm.
01:18:36 <ehird> It's a piece of software.
01:18:38 <ehird> That you install on your server.
01:18:40 <ehird> To view repositories.
01:18:41 <AnMaster> true
01:18:42 <ehird> On your server.
01:18:44 <AnMaster> yes
01:18:45 <AnMaster> I know
01:18:50 <AnMaster> but you talked about desktop apps
01:18:53 <AnMaster> just a few seconds ago
01:19:01 <ehird> I know. It was a seperate musing.
01:19:02 <AnMaster> I thought you planned to use greasemonkey or something
01:19:06 <ehird> Ah.
01:19:10 <ehird> No.
01:19:16 <AnMaster> hey that would be fun
01:19:23 <AnMaster> change the layout of every page you visit
01:19:29 <AnMaster> to match your own style
01:19:29 <ehird> http://userstyles.org/
01:19:35 <ehird> The interwebs are way ahead of you, mon.
01:19:41 <AnMaster> hah
01:19:48 * AnMaster doesn't use greasemonkey himself
01:19:53 <GreaseMonkey> hello.
01:20:00 <AnMaster> GreaseMonkey, hah not you
01:20:04 <ehird> GreaseMonkey: If you don't want to be pinged, stop infringing on intellectual property. :P
01:20:13 <AnMaster> ehird, err maybe trademark
01:20:18 <ehird> I was being sarcastic.
01:20:23 <AnMaster> I would assume greasemonkey is GPL
01:21:07 <ehird> hmm. making cgit fit into a 33em (base = 16px) layout could be hard.
01:21:11 <ehird> Solution: expand the width for those pages.
01:21:15 <ehird> Crazy!
01:21:21 <GreaseMonkey> a grease monkey is also a mechanic.
01:21:27 <ehird> GreaseMonkey: Quite.
01:21:35 <ehird> It is also a monkey. That is greasy.
01:21:45 <GreaseMonkey> anyways, back to what i was doing (teaching starnes how to rickroll on a keyboard)
01:21:52 <AnMaster> GreaseMonkey, ouch
01:21:53 <AnMaster> how
01:21:54 <AnMaster> evil
01:22:03 <AnMaster> that is just too evil
01:22:11 <ehird> ha
01:22:15 <ehird> "I learned a song yesterday, come see!"
01:22:20 <ehird> "Dun dan dun dun dan dun-dun-dun"
01:22:21 <GreaseMonkey> AnMaster: there's more horrible songs than that
01:22:26 <ehird> "Dun dun dun dun dun, dun-dah-dah-dah!"
01:22:35 <GreaseMonkey> GbMaj7, Ab, Fm, Bbm
01:23:21 * ehird likes how his irc bouncer + client handle logging the whole of #wikipedia and playing it back immediately on reconnect with only a few seconds of lag
01:24:32 <ehird> also, I propose this become the next rick roll: http://uk.youtube.com/watch?v=nuyY9WjNpgs
01:24:54 -!- jix has quit ("Computer has gone to sleep").
01:30:54 * oerjan didn't notice the # on wikipedia first, and was sorta skeptic
01:32:13 -!- Sgeo has joined.
01:45:48 <ehird> oerjan: ?
01:45:50 <ehird> oh
01:45:50 <ehird> lol
02:04:34 <AnMaster> <GreaseMonkey> GbMaj7, Ab, Fm, Bbm <-- chords?
02:04:37 <AnMaster> not melody
02:04:47 <GreaseMonkey> AnMaster: yes.
02:04:50 <GreaseMonkey> chords.
02:04:50 <kerlo> GbM7 isn't much of a note.
02:05:05 <AnMaster> kerlo, true
02:05:06 <GreaseMonkey> it's a series of <del>tubes</del> notes!
02:05:20 <AnMaster> GreaseMonkey, so what about the actual melody?
02:05:23 <AnMaster> does it have one?
02:05:25 <AnMaster> or?
02:05:26 * kerlo thinks, "G flat? What kind of crazy key is this?"
02:05:40 <AnMaster> <kerlo> GbM7 isn't much of a note. <-- several
02:05:59 <GreaseMonkey> AnMaster: it does, but chords are still good
02:06:23 <GreaseMonkey> also, the melody is covered by a different instrument, i think
02:06:28 <GreaseMonkey> maybe several
02:06:30 <kerlo> Let's see. A minor, five fifths down...
02:06:52 <kerlo> That's B flat minor, all right.
02:07:52 <AnMaster> kerlo, I was trying to figure out the chord too
02:07:58 <kerlo> The key, I mean.
02:08:27 <AnMaster> no I fail at this time of the night
02:08:31 <kerlo> Now someone quickly get me a program or an applet or something that can play me those chords. I don't want to wake anyone up with the piano and I'm not very good at sonification.
02:08:32 <AnMaster> what are the keys of GbMaj7
02:08:49 <AnMaster> kerlo, well I connected my headset to my synth
02:08:57 <AnMaster> err keyboard/synth
02:09:01 <kerlo> Gb, Bb, Db, F.
02:09:06 <AnMaster> though it probably uses samples
02:09:09 <AnMaster> ah right
02:10:02 <AnMaster> hm the keyboard claims that is Ebm(add9)
02:10:04 <AnMaster> strange
02:10:06 <kerlo> Yell if you see a Cb or an Fb in any of these.
02:10:09 <AnMaster> too tried to figure that out
02:10:22 <AnMaster> kerlo, ?
02:10:30 <kerlo> Ebm(add9)? It doesn't even *have* an Eb, does it?
02:10:38 <AnMaster> kerlo, no clue
02:11:02 * AnMaster pulls the power plug and hopes it helps to reset it
02:11:31 <kerlo> Ebm(add9) is Eb, Gb, Bb, F.
02:11:57 <AnMaster> Gb, Bb, Db?
02:12:17 <AnMaster> ok my fault, I hit the wrong key -_-
02:12:31 <AnMaster> ok...
02:12:40 <AnMaster> F#M7?
02:13:00 <AnMaster> kerlo, does that match better? :P
02:13:15 <AnMaster> well it would if reversed
02:13:17 <kerlo> Ab is Ab, C, Eb; Fm is F, Ab, C; Bbm is Bb, Db, F.
02:13:37 <kerlo> F#M7 is enharmonic to GbM7.
02:13:45 <AnMaster> true
02:13:58 <AnMaster> so yes it makes sense
02:14:00 <kerlo> I loathe treating enharmonics as the same, but only a little.
02:14:39 <AnMaster> kerlo, depends on which way you take it
02:25:40 -!- Sgeo has quit (Remote closed the connection).
04:36:03 -!- Sgeo has joined.
05:19:48 -!- Sgeo has quit (Remote closed the connection).
05:29:11 -!- oerjan has quit ("Good night").
05:48:34 -!- Sgeo has joined.
06:57:00 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:31 <oklosol> lol. my dream just reminded me i need to renew my library books xD
08:01:42 <oklosol> also i slept like 13 hours
08:01:44 <oklosol> so cool.
08:05:05 <oklosol> ais523: also, yay for a client that stores topic history <<< yeah i wish mine did, i mean when someone changes the topic, there's essentially no way to get the old one back.
08:09:19 <oklosol> ehird: freenode don't do that kind of thing. <<< freenode k-lined my friend, many times.
08:14:53 <oklosol> ehird: ais523: I've ran clonebots in #esoteric-blah for an okoplay. | ehird: i had another variation | ehird: with like 30 <<< dear fuck i wanna see
08:21:36 <psygnisfive> hey oklo
08:33:19 <oklosol> AnMaster: you've never heard about sex in the city? god i envy your style
08:37:30 <oklosol> oerjan: oklosol: feeling particularly bright today? <<< actually, yes. well. not the day you asked, but now.
08:39:37 <oklosol> AnMaster: s/the/then/? <<< no, parses as "oerjan: the (nothing is possible unless there is a rule allowing it) kind, i assume"
08:42:04 <oklosol> 01:46… ehird: AnMaster: The centralized UK provider that handles the block blocked this page recently: http://en.wikipedia.org/wiki/Virgin_Killer [you might not want to click] <<< i still think blocking a page containing child porn as an album cover is not as bad as blocking a thousand pages of normal porn
08:42:19 <oklosol> (we looked through the whole finnish list, 5 pages of cp, rest was just porn.)
08:42:39 <oklosol> (also the 5 needed a few links forward, nothing was cp to begin with)
08:52:06 <oklosol> AnMaster: GreaseMonkey, so what about the actual melody? <<< 02307..7..5.....b02b5..5..3..20.02303..5..2..0b...b.5...3....... repeat iirc
08:53:35 <oklosol> kerlo: Ebm(add9)? It doesn't even *have* an Eb, does it? <<< it has all but it.
08:54:03 <oklosol> ebadd9 just drops gb a third down
08:54:14 <oklosol> also why am i commenting this part, you're obviously noobs :-)
08:54:41 <oklosol> nice. could do that without anyone commenting back
08:55:02 <oklosol> and took only an hour, should really get back to only taking a glance at the logs.
09:02:13 -!- oklosol has changed nick to oklopol.
09:04:02 -!- kar8nga has joined.
09:29:11 -!- tyrelle has joined.
09:29:15 <tyrelle> hello
09:35:24 <oklopol> i'm here
09:35:48 <oklopol> oh
09:35:53 <oklopol> psygnisfive: sorry i missed you
09:35:55 <oklopol> i mean
09:35:56 <oklopol> of course
09:36:02 <oklopol> that i missed your comment, didn't see it
09:40:02 <psygnisfive> its ok
09:40:08 <psygnisfive> and i know you missed me darling dont worry
09:40:09 <psygnisfive> im here now
09:40:15 * psygnisfive coddles oklopol
09:40:19 <psygnisfive> also, im off to bed. :P
09:40:52 <oklopol> again?
09:40:57 <oklopol> have a fun
09:41:05 <psygnisfive> what do you mean again?
09:41:11 <psygnisfive> its 4:40 am :P
09:41:17 <tyrelle> any math students
09:41:17 <psygnisfive> night <3
09:41:25 <oklopol> you were going to sleep when i was
09:41:27 <oklopol> and i just woke up
09:41:32 <oklopol> and you're going to sleep again.
09:41:51 <oklopol> tyrelle: i've had two courses!
09:47:44 -!- Corun has joined.
09:49:40 <oklopol> think i gotta go. cya
09:49:45 <oklopol> ->
09:51:31 <tyrelle> oh brother
09:51:40 <tyrelle> #lisp has some opinionated ops
10:11:27 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy.").
11:47:26 -!- Corun has quit ("This computer has gone to sleep").
12:26:40 -!- judotest has joined.
12:29:50 <judotest> :P
12:32:46 <judotest> woot
12:32:53 <judotest> was that me? :S
12:32:57 -!- judotest has changed nick to Judofyr.
12:33:30 <Judofyr> that's why the smilie didn't show up in MSN :P
12:46:29 -!- Corun has joined.
12:48:42 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
12:49:04 -!- kar8nga has joined.
12:51:11 -!- jix has joined.
12:53:18 -!- jix has quit (Client Quit).
13:30:31 -!- moozilla has joined.
13:32:42 -!- metazilla has joined.
13:32:48 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:32:52 -!- metazilla has changed nick to moozilla.
13:45:20 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
13:45:37 -!- Judofyr has joined.
13:55:04 -!- metazilla has joined.
13:55:04 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
13:55:14 -!- metazilla has changed nick to moozilla.
13:55:52 -!- jix has joined.
13:57:42 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:57:45 -!- metazilla has joined.
14:06:23 -!- Judofyr_ has joined.
14:10:18 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
14:10:23 -!- moozilla has joined.
14:12:57 -!- metazilla has joined.
14:12:57 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:13:05 -!- metazilla has changed nick to moozilla.
14:22:04 -!- ais523 has joined.
14:24:35 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
14:24:36 * ais523 wonders how the trolling went yesterday
14:24:36 <ais523> hmm... I wonder if that's interesting enough to actually open up logs to read
14:27:44 -!- metazilla has joined.
14:27:44 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:27:54 -!- metazilla has changed nick to moozilla.
14:29:29 <ais523> <fizzie> Trolling esoteric language enthusiasts about their tastes in programming languages is like trying to annoy a duck by pouring water on it
14:29:34 <ais523> so true
14:30:20 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:30:23 -!- moozilla has joined.
14:38:08 <ais523> I should read the logs more often
14:47:50 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:47:50 -!- moozilla has joined.
14:47:57 -!- Judofyr_ has changed nick to Judofyr.
14:50:40 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
15:22:06 <ais523> ehird will like this quote: "MySQL is a very fast database because it takes out the parts of a database that make it a database."
15:22:19 <ais523> which explains why lots of people don't like it, and also why lots of people use it
15:42:19 -!- ehird has left (?).
15:42:24 -!- ehird has joined.
15:42:26 -!- ehird has left (?).
15:42:29 -!- ehird has joined.
15:43:16 <ehird> graph serialization for the fecking win
15:43:26 <ehird> graph serialization for the fecking win
15:43:28 <ais523> hi ehird
15:43:40 <ehird> hai
15:44:11 <ehird> 00:14:53 <oklosol> ehird: ais523: I've ran clonebots in #esoteric-blah for an okoplay. | ehird: i had another variation | ehird: with like 30 <<< dear fuck i wanna see
15:44:13 <ehird> im sure i showed you
15:45:23 <ehird> also, our troll was awesomely bad.
15:57:19 <oklopol> ehird: i read the logs.
15:57:26 <oklopol> and yes, you probably showed me, i just don't remembe
15:57:27 <ehird> oklopol: wat
15:57:27 <ais523> yes, I read the logs too
15:57:28 <oklopol> r
15:57:57 <oklopol> ehird: well i thought you were telling about the troll from last night
15:58:04 <oklopol> *telling me
15:58:31 <ehird> no
15:58:37 <ehird> was replying to ais523's logmsg
15:59:06 <ais523> what do you think of the quote about MySQL/
16:00:10 <ehird> 15:42 <ehird> graph serialization for the fecking win
16:00:12 <ehird> that was my reply
16:00:18 <ais523> oh, I didn't realise
16:00:43 <ais523> actually, viewing MySQL as not a database, but still useful for certain tasks, is probably best
16:00:50 <oklopol> ehird: yes, i know, you told that with your wat.
16:00:52 <ais523> even if it isn't a database, it seems to have found itself a niche
16:01:09 <oklopol> what does mysql take out?
16:01:17 <ehird> oklopol: just about everything
16:01:22 <ehird> until recently, it had no transactions
16:01:44 <ais523> oklopol: it's sort of the C of databases, it lets you do stupid and nonsensical things without complaining, and most high-level features have to be written by hand
16:01:47 <oklopol> transactions are one of the crucial things about irl databases that are not a part of databases as such
16:01:58 <ehird> oklopol: er yes they are
16:01:59 <ehird> ACID
16:02:05 <ais523> of course, this means it's very fast
16:02:17 <ehird> i don't actually think mysql did any of ACID until recently
16:02:42 <ehird> they started a project recently, Drizzle, which aims to.. make it even less of a database, for the "web 2.0" crowd
16:02:45 <ehird> i'm wondering what it'll have left
16:03:01 <oklopol> ehird: they aren't an inherent part of databases.
16:03:05 <oklopol> no.
16:03:17 <ais523> cool, what does it do?
16:03:17 <ais523> I actually think they're onto something here
16:03:17 <ehird> printf("hello world\n")?
16:03:19 <ehird> ais523: barely anything
16:03:20 <oklopol> never.
16:03:31 <ehird> http://en.wikipedia.org/wiki/Drizzle_(database_server)
16:03:31 <ais523> hmm... this morning I was thinking about an esolang idea I haven't thought about in ages, and realised I hadn't told you lot about it
16:03:41 <ehird> i bet it ends up as PERSISTENT MEMCACHED
16:03:50 <ais523> basically, it's an attempt to create a programming language which is as computationally powerful as possible without being TC
16:04:02 <ais523> the highest "named" class in common use seems to be linear bounded automaton
16:04:09 <ais523> so I thought I'd make an Ackermann-function-bounded automaton
16:04:19 <ehird> i've always thought that most real world programming need not use a turing complete language
16:04:31 <ehird> and that the static-verification gains you could get from using a sub-TC language
16:04:34 <ehird> would be highly useful
16:04:35 <Slereah> Actually, none of them do
16:04:44 <ais523> Slereah: they do, just the interps are buggy
16:04:44 <ehird> Slereah: they use TC languages
16:04:46 <ehird> just not on TC machines
16:04:50 <Slereah> Yes, but they don't need to
16:05:00 <Slereah> Because the languages can't be use to their fullest
16:05:07 <ehird> Slereah: ok, lower than "TC bar memory storage"
16:05:08 <ehird> happy now
16:05:08 <ais523> incidentally, I was also wondering about whether it was possible to actually get a true-TC interp in the real universe
16:05:14 <ehird> ais523: uh, no.
16:05:17 <ais523> I think you need the universe to not expand
16:05:20 <ais523> and unlimited energy
16:05:23 <oklopol> ehird: i mean, i do agree transactions are a crucial part of a real database system, because you need it, in practise; i'm just you could just have the database not have any errors or synchronization problems, and get by without transactions.
16:05:27 <ais523> but apart from that there are no obvious obstacles
16:05:27 <ehird> you need it to expand to grow the tape
16:05:32 <oklopol> ...
16:05:32 <oklopol> i'm just
16:05:35 <oklopol> *i'm just saying
16:05:35 <ehird> also, um
16:05:36 <ehird> entropy?
16:05:38 <ais523> ehird: having it infinitely large to begin with
16:05:45 <ais523> and free-energy, I meant
16:05:47 <ehird> ais523: that's Impossible, though
16:05:50 <ais523> which is sort of the opposite of entropy
16:05:58 <ais523> ehird: the universe is only finitely large because it's expanding
16:06:00 <Slereah> Entropy isn't really a law
16:06:05 <ais523> the expansion of the universe causes it to get smaller
16:06:13 <ehird> ... wait, what?
16:06:14 <ehird> _smaller_?
16:06:15 <Slereah> But you're screwed anyway on infinite time
16:06:18 <ais523> which is counterintuitive, but so is most of physics
16:06:23 <ehird> i'm physics-retarded, I htink
16:06:31 <Slereah> ais523 : What are you talking about
16:06:32 <Judofyr> ehird: limechat is awesome! thanks for the tip :-)
16:06:36 <ehird> Judofyr: yw :)
16:06:36 <ais523> basically, the expansion is homogenous, so the speed at which a particular point is receding depends on its distance from you
16:06:43 <ais523> the further away it is, the faster it recedes
16:06:55 <Slereah> So?
16:07:00 <ais523> if a point is so far away it's moving away faster than the speed of light, it's technically outside the universe
16:07:03 <Slereah> That makes it bigger, not smaller :o
16:07:05 <ais523> that's how the boundary of the universe is defined
16:07:06 <ehird> i still can't think how a universe expanding gets smaller.
16:07:09 <ehird> that makes no sense.
16:07:22 <Slereah> I think you mean "visible universe"
16:07:28 <ais523> yes
16:07:29 <Slereah> Which is irrelevant to the discussion
16:07:35 <ais523> and no, not at all
16:07:35 <oklopol> Slereah: no.
16:07:37 <Slereah> Also the visible universe gets larger also
16:07:49 <ais523> clearly you can't use data outside the visible universe for calculation
16:07:56 <oklopol> i'm with ais523 on this one
16:08:09 <Slereah> Yes, if you stay on earth
16:08:20 <ais523> Slereah: well, technically, but everything else expands at the same rate too, so it gets smaller compared to all the objects inside it
16:08:21 <Slereah> If you use a TC machine, it will need to move to read the data anyway
16:08:25 <Slereah> So its horizon will move
16:08:35 <ais523> Slereah: its horizon always moves inwards
16:08:38 <Slereah> It doesn't get smaller, it gets emptier.
16:08:47 <ais523> you can't move the horizon outwards except by moving faster than the speed of light, or using time travel
16:08:52 <ais523> and both are believed impossible
16:09:03 <ais523> (not to mention time travel gives you computational classes above TC)
16:09:04 <Slereah> What are you talking about.
16:09:14 <Slereah> Just moving will move your horizon
16:09:29 <ais523> Slereah: yes, but the horizon moves inwards at the speed of light
16:09:29 <oklopol> hmm.
16:09:33 <ais523> so we're just lucky it's so far away
16:09:41 <ais523> the horizon's getting smaller, all the time
16:09:48 <ais523> at least, if the universe keeps expanding
16:09:49 <Slereah> *larger
16:09:53 <ais523> *smaller
16:10:02 <Slereah> Define "smaller"
16:10:09 <ais523> Slereah: less distance to it
16:10:19 <Slereah> I'm afraid I must disagree then
16:10:19 <ais523> and so a smaller surface area, because it's spherical
16:10:35 <ais523> you may be thinking of it getting /older/ over time
16:10:36 <ehird> "Programming language authors image gallery" <-- I thought this was a sentient language that authored a web gallery script...
16:10:57 <Slereah> The horizon increases in size just with time.
16:11:16 <Slereah> I'm not sure if it also increases with expansion, but it also might
16:11:31 <ais523> does anyone want to write up a well-worded and thought-provoking seed to a Usenet flamewar, on this?
16:11:34 <ais523> so we can see who's right?
16:11:35 <Slereah> (Doing the speed of light + enlarged metric isn't easy to do in your head)
16:12:01 <oklopol> Slereah: well technically not, say the universe consisted of cells of some size that was constantly getting bigger
16:12:08 <oklopol> and it grew faster than light would let us see
16:12:21 <ais523> ehird: as for Drizzle, they're taking out all the features that you don't technically have to use in a MySQL database AFAICT
16:12:27 <ais523> they seem to be making some form of tarpit
16:12:34 <ehird> i still love this http://www.malevole.com/mv/misc/killerquiz/
16:12:34 <oklopol> so once in a while, even though we're seeing farther and farther, the cell size would let us see less and less cells
16:12:39 <ais523> e.g. you don't actually need prepared statements, you can just send the statement each time
16:12:57 <Slereah> oklopol : Except the universe doesn't do that.
16:12:58 <oklopol> i mean i don't know or care whether this is what actually happens, i'm just saying that's what i though ais523 meant.
16:13:03 <oklopol> Slereah: i don't care.
16:13:03 <Slereah> You see more cells, not bigger cells.
16:13:06 <ais523> yes, that is what I meant
16:13:22 <ais523> and no, expansion of the universe doesn't create more cells, at least not in the popular theories
16:13:26 <oklopol> Slereah: explain to ais523, not me.
16:13:28 <ais523> I think steady-state theory has it doing that
16:13:43 <Slereah> What does "more cells" mean anyway.
16:13:53 <Slereah> It's continuous in general relativity
16:13:57 <ais523> well, the cells are just a way of thinking about it, given they're infinitely small
16:14:02 <ais523> do you know about the delta function?
16:14:09 <oklopol> Slereah: planck's constant or something like that getting bigger?
16:14:09 <Slereah> Yes, yes I do.
16:14:17 <AnMaster> ugh
16:14:20 <AnMaster> -14 C outside
16:14:22 <AnMaster> way too cold
16:14:24 <ais523> well, how do you know it integrates to 1, given that it's 0 everywhere and infinity at one point
16:14:27 <Slereah> oklopol : Not proved in any way
16:14:34 <oklopol> AnMaster: much colder here.
16:14:34 <AnMaster> <oklosol> AnMaster: you've never heard about sex in the city? god i envy your style <-- my style?
16:14:43 <ais523> the cell-size thing is sort of like that
16:14:46 <oklopol> Slereah: i'm sure.
16:14:48 <ais523> there are no actual cells, and they're infinitely small
16:14:51 <ais523> yet they're getting bigger
16:15:11 <oklopol> Slereah: don't respond to that "i'm sure", it was an accidental message :)
16:15:13 <ehird> you know who we need in here?
16:15:16 <ehird> chris pressey
16:15:23 <ais523> why, does he know about this sort of thing?
16:15:29 <ehird> no
16:15:32 <ais523> or just because it would be great to have such a prominent esolanger?
16:15:35 <ehird> yep :P
16:15:42 <AnMaster> <oklosol> AnMaster: GreaseMonkey, so what about the actual melody? <<< 02307..7..5.....b02b5..5..3..20.02303..5..2..0b...b.5...3....... repeat iirc <-- what on earth is that notation?
16:15:51 <oklopol> AnMaster: being completely ignorant about popular culture
16:15:54 <ehird> i mean, he made befunge
16:15:57 <ehird> what more do you want?
16:15:58 <oklopol> AnMaster: glad you asked
16:16:06 <ais523> ehird: Xigxag?
16:16:13 <ehird> yes, yes, I know
16:16:15 <ehird> but he made befunge :P
16:16:22 <AnMaster> oklopol, sure, I don't care about popular culture
16:16:22 <ehird> actually, I think AnMaster would scare him away
16:16:25 <ais523> and lots of others, too
16:16:30 <AnMaster> I don't even HAVE a tv since a few months
16:16:33 <AnMaster> since I never used it anyway
16:16:42 <ehird> AnMaster: http://www.theonion.com/content/node/28694
16:16:43 <oklopol> what i use for melodies, a subset that explains that little melody, "z-a0-9A-Z" are notes, from left to right, "."'s are pauses
16:16:47 <ais523> AnMaster: wow, you sound just like me
16:16:50 <oklopol> everything is ...equilong
16:16:55 <AnMaster> if I want to watch the news of the public service TV I can just go to their website
16:17:03 <oklopol> AnMaster: i haven't watched tv in years
16:17:03 <AnMaster> I think UK users can do the same for BBC
16:17:15 <ais523> oklopol: I'd guessed hexadecimal with . to continue notes
16:17:18 <ais523> so I was almost right
16:17:19 <oklopol> and i don't care about *physics*, let alone pop culture
16:17:27 -!- oerjan has joined.
16:17:36 <oklopol> and still i know what sitc is
16:17:39 <ais523> <oklopol> and i don't care about *physics*, let alone pop culture
16:17:40 <AnMaster> <oklopol> what i use for melodies, a subset that explains that little melody, "z-a0-9A-Z" are notes, from left to right, "."'s are pauses <-- left to right of what?
16:17:43 <oerjan> <oklosol> and took only an hour, should really get back to only taking a glance at the logs.
16:17:47 <oklopol> AnMaster: yes
16:17:48 <oerjan> that may be for the best.
16:17:49 <AnMaster> where do you begin?
16:17:51 <AnMaster> I mean
16:17:52 <oklopol> z is the lowest
16:17:55 <oklopol> Z is the highest
16:17:57 <ais523> oklopol: that has to be one of my favourite lines of yours ever
16:17:57 <AnMaster> oklopol, on what instrument?
16:18:00 <ais523> it sums you up so well
16:18:06 <oklopol> AnMaster: singing
16:18:10 <oklopol> but that's the main melody
16:18:15 <oklopol> who cares what the instrument is
16:18:33 <ehird> i don't believe in existence
16:18:35 <ehird> oh fuc---------
16:18:44 <oklopol> caring about instruments is for people who don't understand music, you know, the kind of people who like music that "sounds good"
16:18:52 -!- Epic_Fail_Guy has joined.
16:18:53 <Epic_Fail_Guy> ais523 : It's not, it's just defined like that, not by infinity.
16:18:55 <Epic_Fail_Guy> :D
16:19:14 <Epic_Fail_Guy> Was I saying.
16:19:15 <oklopol> ais523: heh, thanks, i liked that line too
16:19:19 <oerjan> ehird: don't put descartes before the horse
16:19:20 <AnMaster> oklopol, well 1) I can't sing, but I can play the piano a bit 2) If I could sing I would be really low bass I think
16:19:28 <ais523> Epic_Fail_Guy: if you're talking about the delta function like that, you're missing its essential esoness
16:19:29 * AnMaster has a really low voice
16:19:42 <ais523> oerjan: ugh
16:19:49 <ehird> AnMaster should have a Standard Context pack of lines which he just links to so he doesn't have to say the same things
16:19:51 <ehird> every five seconds
16:19:54 <ais523> did you have that pun prepared?
16:20:13 <AnMaster> ehird, what did I repeat?
16:20:22 <oklopol> AnMaster: i know all that, like ehird pointed out. my point is, just use any instrument
16:20:27 <oklopol> it's the same melody no matter what you use
16:20:37 <ehird> * AnMaster has a really low voice <-- one of your standard lines
16:20:46 <ehird> along with "i recommend emacs"
16:20:46 * AnMaster greps to check
16:20:46 <ais523> oklopol: in some cases the instruments can affect the harmony
16:20:56 <oklopol> if it's correct, i just woke up and didn't really try playing it in my head to check it or anything.
16:20:59 <ais523> such as an organ with a 3/7 stop, or one of the other silly ones
16:21:21 <oerjan> ais523: no, but it was recycled of course
16:21:28 <oklopol> ais523: umm. what do you mean?
16:21:30 <oerjan> er that may mean yes
16:21:37 <AnMaster> ehird, I said it just once the last 3 months, and that was the instance I said just now
16:21:38 <ais523> oklopol: gggggggggggggggggggggggg
16:21:41 <AnMaster> I rotate logs every 3 months
16:22:05 <ais523> wait, sorry, cleaning my keyboard
16:22:05 <ais523> oklopol: I meant, organs have 'stops' which let you automatically add harmony
16:22:05 <oklopol> it's alright if organs have a 3/7 stop, unless of course it's the heart
16:22:12 <ais523> a 3/7 stop will add a note whose frequency is 3/7 higher than the one you play
16:22:17 <oklopol> and sorry about that.
16:22:18 <ais523> as a chord with it
16:22:30 <ais523> it's one of the silly ones, most of the stops are at frequencies which actually correspond to chords
16:22:36 <ais523> or at least notes
16:23:11 <oklopol> ais523: right. i didn't know it does that
16:23:20 -!- jix has quit ("...").
16:23:27 <ais523> gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
16:23:31 <ais523> ugh, my g key is still dirty
16:23:36 <ais523> anyone here know how to clean keyboards?
16:23:45 -!- jix has joined.
16:23:51 <oerjan> ais523: i thought you were grinning widely
16:23:58 <ehird> ais523: use water :P
16:24:08 * oerjan swats ehird -----###
16:24:10 <oklopol> anyway, something played with an instrument will always just be an approximation of the pure sine/square wave melody
16:24:12 <ais523> not in a position to do that easily right now
16:24:16 <ais523> although I may try when I get home
16:24:25 <ais523> oklopol: well, yes
16:24:30 <oklopol> if you have a 3/7 stop there, it will be closer to being an approximation of having that higher note there.
16:24:31 <ais523> although square waves aren't exactly pure
16:24:34 -!- Slereah2 has joined.
16:24:34 <ehird> ais523: take the key out and figure something out
16:24:35 <Slereah2> >:|
16:24:37 <oklopol> well no, they're not
16:24:54 <ais523> ehird: I've never tried to remove a keycap from this laptop, I have no idea how securely or not they're glued on
16:24:59 <ais523> and I don't want to break it
16:25:00 <ehird> oh, a laptop
16:25:08 <ais523> I know they just come off on desktops, not sure about laptops though
16:25:16 <ehird> ais523: well, it'll almost certainly come off OK
16:25:18 <ehird> but it might be a bit tricky
16:25:27 <ais523> oklopol: actually, organs are pretty similar to additive synthesizers
16:25:33 <ais523> ofc they don't manage perfect sine waves to add together
16:25:44 <ais523> but you get to add together a lot of organ-waves to create the timbre you want
16:25:44 <oerjan> my organs synthesize things, then add them
16:26:06 <Slereah2> Hm
16:26:09 <Slereah2> Organ wave.
16:26:13 <Slereah2> (It's also not a function)
16:26:17 <Slereah2> (So there)
16:27:17 <oerjan> organ waves are all in the blood
16:27:19 <oklopol> ais523: i don't like timbres. i'm more of a theoretical musician, so i prefer keeping it all pure and ...sinous? yes, that must be it.
16:27:35 <ehird> who wants to help me write a Magenta compiler?
16:27:36 <ehird> yes, I know about the curse :-P
16:27:57 <ais523> oklopol: sinusoidal is the real word, but I prefer yours
16:28:06 <oerjan> i am already cursed. i wouldn't want to add to it.
16:28:07 <ais523> and no, I don't want to help
16:28:26 <ais523> mostly because if you succeed, you'll break the curse, then Magenta won't be so interesting to talk about
16:28:39 <ais523> in a way, I'd prefer you to fail so we can all have a laugh about it and talk about how Magenta is truly cursed
16:28:49 <ais523> but if I want you to fail, then I shouldn't really work on the project, that wouldn't work out well
16:28:51 <oklopol> sine -> sinusoidal? does sine come from a longer word i don't know or whazz thaddabout?
16:29:01 <oklopol> well sinusoid prolly
16:29:09 <ais523> English makes no sense, but it might be fun to look up
16:29:30 <oerjan> oklopol: sine <- sinus, latin
16:29:38 <ehird> ais523: i think it's interesting :P
16:29:46 <oerjan> adding -oid to that is probably not very classical
16:29:50 <oklopol> oerjan: and what's this oidal subbic?=
16:29:52 <ais523> hmm... Wiktionary doesn't know, but apparently "sinusoidal" is "sinimuotoinen" in Finnish
16:29:52 <oklopol> ...
16:29:55 <oklopol> *suffix.
16:29:58 <ais523> and that's the only translation given
16:30:19 <oklopol> sinimuotoinen = of sinusoidal form
16:30:26 <ais523> hmm... an ellipsoid is a 3D shape which corresponds to what an ellipse is in 2D
16:30:30 <oklopol> lol
16:31:04 <oerjan> -oid is a greek suffix i think, put on things to make family names in biology. like hominoid
16:31:11 <oklopol> well. "of sine form", we don't want recursive translations
16:31:25 <AnMaster> ais523, hm what is a 3/7 stop on an organ? I have no clue how organs work apart from blowing air through pipes
16:31:25 <oerjan> oh it may be -o + ides
16:31:36 <oerjan> the latter meaning offspring
16:31:46 * oerjan should check
16:32:05 <oklopol> ais523: well yes, i know what oid *means*, i just meant what's it doing there
16:32:07 <ais523> AnMaster: organs are so complicated because they have one pipe for each stop/note combination, more or less
16:32:19 <oklopol> hmm. i didn't really ask it that way.
16:32:21 <AnMaster> ais523, I thought it was one pipe / note?
16:32:23 -!- Slereah has quit (Connection timed out).
16:32:24 <ais523> and all the stops basically multiply or divide the frequency of a note by a given value
16:32:24 <AnMaster> also, what is a stop
16:32:31 <AnMaster> ais523, huh
16:32:35 <AnMaster> strange
16:32:37 <ais523> stops you can either turn on or off, they're like booleans
16:32:48 <ais523> and when you play a note, you get the sound of that note for each stop that's on
16:32:55 <oklopol> AnMaster: stops flow of air, presumably
16:33:01 <ais523> normally organs have multiple keyboards, and stops can be on or off for individual keywords
16:33:02 <AnMaster> hm reminds me of the university organ in Discworld, with "silly fam animal sounds"
16:33:05 <ais523> *keyboards
16:33:06 <AnMaster> farm*
16:33:13 <oerjan> http://en.wikipedia.org/wiki/-oid
16:33:14 <ais523> and I think that's the etymology
16:33:40 <ais523> it goes all the way from 1/16 stops which are so low that you can't actually hear them, just annoy the Headmaster because for some reason the pipes come out directly behind his chair
16:33:44 <oklopol> err. oerjan: what does sinus mean?
16:33:48 <ais523> to stops with numbers like 4
16:33:53 <oklopol> i mean i thought it meant what "oid" meant
16:33:54 <oerjan> AnMaster: s/fam/farm/ ?
16:33:54 <AnMaster> ais523, hm I see, I thought the multi-keyboard thing was due to having such a large range
16:34:01 <AnMaster> oerjan, <AnMaster> farm*
16:34:03 <oklopol> which is why i didn't understand why the suffix
16:34:22 <oerjan> oklopol: "bukt" although it is a mistranslation from arabic iirc
16:34:28 <ais523> oklopol: sinuses are the parts of the human body which connect the nose to the back of the mouth, IIRC
16:34:32 <ais523> or possibly to the ears
16:34:34 <oklopol> oh.
16:34:38 * oerjan doesn't remember the english word
16:34:42 <ais523> but I think that's irrelevant, at least I hope it is
16:34:55 <oklopol> ohhhhh
16:35:10 <AnMaster> ais523, you could hear 1/16 for the notes at the upper end of the range
16:35:13 <oklopol> lol i thought -oid meant like "ball" :D
16:35:31 <AnMaster> at least I think so
16:35:32 <oklopol> i've probably reverse-engineered it from ellipsoid
16:35:54 <oklopol> makes things more clear.
16:35:59 <oklopol> also explains monoids and the like
16:35:59 <oklopol> :D
16:36:05 <ehird> i've always wanted a language that can jump through the calls tack
16:36:06 <ais523> so "like a sine", in this case
16:36:16 <AnMaster> ais523, also do you know what the similarity is between organs and MRI scanners?
16:36:17 <AnMaster> ;P
16:36:25 <ais523> AnMaster: is this an attempt to make a pun?
16:36:28 <AnMaster> ais523, yes
16:36:31 <ais523> if so, I utterly fail to get it
16:36:34 <AnMaster> or maybe no
16:36:35 <AnMaster> not pun
16:36:37 <AnMaster> joke yes
16:36:37 <oklopol> also "asteroid" could have a ball etymology
16:36:39 <AnMaster> but not pun
16:36:43 <oerjan> oklopol: oh, "bay" in english
16:36:45 <AnMaster> ais523, "neither is portable"
16:36:58 <oklopol> oerjan: bay? you mean sinus?
16:37:06 <oklopol> oh
16:37:11 <oklopol> ais523 already explained.
16:37:16 <ais523> according to Wiktionary, the Latin word "sinus" has loads of meanings
16:37:19 <ais523> all of which seem to be irrelevant
16:37:19 <oerjan> yes. but the use for trigonometric sines is a mistranslation from arabic
16:37:30 <ehird> a(x) {
16:37:30 <ehird> x = x + 1;
16:37:32 <ehird> A: return x;
16:37:33 <ehird> }
16:37:34 <ais523> ok, that would explain a lot
16:37:34 <oerjan> ais523: the "See also: sine" at the bottom
16:37:36 <ehird> b(x) {
16:37:38 <ehird> x = x - 1;
16:37:39 <ehird> goto A;
16:37:41 <ehird> }
16:37:44 <ehird> guess what b(3) returns
16:37:48 <oklopol> also i've known what sinuses are like forever
16:37:48 <AnMaster> um
16:37:50 <ais523> ehird: 2?
16:37:53 <ehird> ais523: yep
16:38:01 <AnMaster> ais523, what is the thing about bays and sin() that you are discussing
16:38:05 <oklopol> why the fuck did i ask.
16:38:05 <ehird> in a, "x" is now a reference to the first local var
16:38:07 <AnMaster> I'm unable to figure out what the topic is
16:38:13 <ais523> ehird: ick_ec can do that
16:38:13 <ehird> and b has a var in the same position
16:38:15 <ais523> almost
16:38:16 <ehird> so it ends up accessing that
16:38:19 <ehird> and returning it
16:38:36 <ehird> basically, i'm trying to make a language where you can goto/comefrom ----anywhere-----
16:38:47 <ehird> even in <condition> in while (<condition>)
16:38:52 <ais523> oklopol: don't worry, people on IRC are there to help when you're too lazy to do your own remembering
16:38:57 <ais523> I know it helps me when I'm in that state
16:38:59 <AnMaster> ehird, cool
16:38:59 <ais523> which is quite often
16:39:11 <ais523> ehird: well, famously asm works like that
16:39:22 <oklopol> well i just had 6 hours of band training
16:39:23 <ais523> as can INTERCAL, fwiw
16:39:27 <oklopol> that was kinda tiring.
16:39:28 -!- Epic_Fail_Guy has quit (Read error: 110 (Connection timed out)).
16:39:41 <ais523> oklopol: I'm not criticising you, it happens to everyone
16:39:42 <oklopol> well of course asm works like that
16:39:45 <ais523> just most people don't admit it
16:40:08 <oklopol> well yes, but i'm very insecure about my intelligence.
16:40:13 <oklopol> hmm
16:40:20 <oklopol> not insecure... blargh.
16:40:38 * oklopol bangs head to wall
16:40:44 <ais523> <Slashdot> But how many of us actually run an operating system that Richard Stallman would consider free?
16:40:53 <ehird> a(x) {
16:40:53 <ehird> while (A: (x -= 1) > 0) {
16:40:54 <ehird> printf("hello world\n");
16:40:56 <ehird> }
16:40:58 <ehird> }
16:40:58 <ais523> oh dear, someone mod the article flamebait again
16:41:00 <ehird> b(x) {
16:41:01 <ehird> goto B;
16:41:04 <ehird> comefrom A;
16:41:06 <ehird> printf("x = %i\n", x);
16:41:08 <ehird> B: a(x);
16:41:09 <ehird> }
16:41:11 <ehird> discuss(ting)
16:41:18 <ehird> and yes, that -actually works-
16:41:28 <ais523> ehird: would the comefrom only happen if you called B, not A directly?
16:41:38 <ais523> also, what's the precedence of label vs. >
16:41:38 <ehird> ais523: i think so, yes
16:41:40 <AnMaster> ais523, how many gNewSense users are there?
16:41:46 <ehird> also, label is high precedence
16:41:47 <AnMaster> and how many Hurd users are there?
16:41:50 <ehird> so it's A: (...)
16:41:53 <AnMaster> add them toegether
16:41:53 <ais523> AnMaster: I don't know, but I'd guess less than use Ubuntu
16:41:56 <AnMaster> together*
16:42:00 <oklopol> haha, "dynamic comefrom scope"
16:42:06 <ehird> oklopol: yes
16:42:10 <AnMaster> ais523, well that is the answer to <ais523> <Slashdot> But how many of us actually run an operating system that Richard Stallman would consider free?
16:42:16 <oerjan> AnMaster: latin "sinus" means "bay"
16:42:29 <ehird> i like how you have to do the goto B; thing so that you never land on it directly
16:42:30 <ais523> AnMaster: I was commenting more on the fact that Slashdot are trying to inspire debate about a contentious topic, than the actual question
16:42:36 <ehird> hmm
16:42:38 <oklopol> ehird: please use that term in the spec like it's a standard term, not explaining further.
16:42:39 <ehird> I should have no return
16:42:44 <ais523> ehird: what happens if you hit a comefrom directly? Nothing, like in INTERCAL?
16:42:48 <ehird> just a way to get a reference to the label of the caller
16:42:50 <ehird> to go to it
16:42:55 <oerjan> also, "pocket", "curve", or "bosom", says wp
16:42:56 <ehird> and a way to assign to the right variable in the caller
16:43:00 <ais523> also, gerund comefroms plz
16:43:02 <ehird> ais523: hmm
16:43:11 <AnMaster> <ehird> i like how you have to do the goto B; thing so that you never land on it directly
16:43:12 <AnMaster> hm
16:43:19 <ehird> ais523: hitting {comefrom A;} directly goes to A
16:43:20 <AnMaster> just an idea...
16:43:22 <ais523> comefrom +;
16:43:25 <ehird> so that the rest runs, but you do _come from_ A
16:43:28 <ais523> a+=1; b-=1;
16:43:36 <ehird> + isn't a label
16:43:37 <ais523> ehird: haha
16:43:44 <ais523> ehird: no, that's what I meant by gerund comefroms
16:43:50 <AnMaster> maybe
16:43:54 <ehird> ais523: i dont' get it
16:43:56 <ehird> oklopol: i will
16:43:57 <ais523> gerund nextfrom would be more useful, actually
16:44:07 <AnMaster> ehird, conditional come from?
16:44:08 <ais523> nextfrom +; number_of_additions++; resume 1;
16:44:13 <AnMaster> I know ick has computed come from
16:44:18 <ehird> AnMaster: just put your comefrom in an if ()
16:44:23 <ehird> example:
16:44:25 <ais523> ehird: that doesn't work
16:44:28 <AnMaster> ehird, really? that will work?
16:44:28 <ehird> no, it does
16:44:30 <ehird> watch:
16:44:33 <ais523> because you want to be able to jump into the body of ifs, don't you?
16:44:36 <ehird> (warning: this is perverse...)
16:44:41 * ehird writes
16:44:43 <AnMaster> ais523, yes
16:44:47 <ais523> oh, comefroms only become active inside the block they're in
16:44:48 <ais523> so it does work
16:44:55 <ais523> ugh, that's worse than INTERCAL
16:44:58 <AnMaster> wait what?
16:45:04 <AnMaster> can't you come from anywhere?
16:45:04 <ais523> although arguably leads to more maintainable code
16:45:12 <ais523> AnMaster: yes, but comefroms are dynamically scoped
16:45:16 <ais523> so they're not active all the time
16:45:27 <oklopol> ais523: well you can probably comefrom into inside a block, if the label is inside the block from where the coming occurs
16:45:36 <ais523> sort of if you write {int a;} {a=1;} in C, you get an error
16:45:39 <AnMaster> ais523, ouch ouch ouch
16:45:47 <ehird> ais523: nah, you will be able to jump into them manually
16:45:49 <oklopol> i mean { ... conditional comefrom A: ... } ... A: ...
16:45:50 <ehird> it just won't happen automatically
16:46:07 <ehird> isn't this _awful_? :D
16:46:11 <ais523> ehird: nextfrom too, plz
16:46:16 <ehird> dijkstra is cutting himself in his grave
16:46:19 <ais523> it's just as useful in practice
16:46:20 <ehird> ais523: wut
16:46:22 <AnMaster> ais523, what is nextfrom in ick now again?
16:46:28 <ais523> AnMaster: like comefrom, but saves return address
16:46:33 <AnMaster> ah
16:46:33 <AnMaster> well
16:46:38 <AnMaster> that should be manual
16:46:38 <ehird> ais523: oh so comefrom with a stack?
16:46:39 <AnMaster> like:
16:46:40 <ais523> CLC-INTERCAL had it first
16:46:41 <ais523> ehird: yes
16:46:44 <ais523> exactly that
16:46:52 <ehird> ais523: all of my gotos/comefroms/function calls have a "stack"
16:46:57 <ais523> yay
16:47:00 <ehird> in that they can get a reference to the right place to goto
16:47:00 <oklopol> ais523: i think it's already with a stack, although locals overwrite the top of it
16:47:03 <ehird> from whence you came
16:47:09 <AnMaster> *stack++ = &this_function_name_goes_here; goto ...
16:47:10 <ehird> thats how you return a value
16:47:12 <AnMaster> then the other one does
16:47:26 <AnMaster> goto *(--stack)
16:47:29 <AnMaster> or something like that
16:47:34 <ehird> looks something like this:
16:47:41 <AnMaster> well different syntax than that I gues
16:47:45 <AnMaster> but something like it
16:47:47 <ehird> a(x) { x = x + 5; goto ->; }
16:47:56 <ehird> then
16:48:01 <ais523> so how do you undo the previous comefrom?
16:48:01 <ais523> in intercal, it would be RESUME #4 to undo the last 4 nextfroms, for instance
16:48:01 <ehird> a(1) evaluates to 6
16:48:05 <ais523> oh and yes the #4 can be computed
16:48:07 <ehird> ais523: goto ->;
16:48:15 <ais523> ehird: uh-oh, that's exactly how gcc-bf actually implements function calls
16:48:19 <ehird> HAHA
16:48:24 <AnMaster> ais523, wait what!?
16:48:35 <ehird> I call goto ->; the "finnish maneuver"
16:48:46 <ehird> because you do it when you "finnish" your function!
16:48:48 <ais523> AnMaster: what, how would you do it?
16:48:52 <ehird> somebody call the pun police
16:48:55 <ehird> oerjan!
16:49:00 <AnMaster> ais523, ?
16:49:12 <ais523> AnMaster: well, I had to implement function calls somehow
16:49:13 <AnMaster> ais523, well I haven't considered that
16:49:18 <AnMaster> I though you used a switch case
16:49:22 <AnMaster> to select block
16:49:32 <ais523> yes, that's how goto is implemented
16:49:41 <ais523> what was above is how function calls are implemented in terms of goto
16:49:45 <ais523> so there isn't a contradiction
16:49:45 <AnMaster> ais523, oh return you mean
16:49:49 <ais523> call/return, yes
16:49:55 <AnMaster> right
16:50:03 <AnMaster> exactly what does goto -> do?
16:50:07 <ehird> i explained that.
16:50:15 <AnMaster> ehird, yes but I didn't understand it
16:50:16 <ais523> goto *--TOS
16:50:19 <AnMaster> ah
16:50:19 <ehird> -> is a label reference to the exact point one up in the goto stack
16:50:19 <AnMaster> right
16:50:20 <AnMaster> ok
16:50:31 <ais523> ehird: does it pop the stack at the same time, or does the goto do that?
16:50:31 <ehird> ->+1 is two levels up
16:50:35 <ehird> ->+10 is ten levels up
16:50:37 <ais523> actually, does the goto pop two levels when returning?
16:50:38 <oklopol> ehird: will the local variable x, after goto ->;, overwrite whatever local was created last in the calling function?
16:50:39 <ehird> yes, overloading addition on label references
16:50:42 <ehird> it works on every label reference
16:50:44 <ehird> I am so perverse
16:50:52 <ehird> and yes, that means you can do A-2 even if you haven't gone anywhere near A
16:50:59 <ais523> ehird: heh, finds the label in the stack, then moves 2 away from it?
16:51:00 <ehird> and get a reference to the point two levels up from A
16:51:04 <AnMaster> ehird, why do you have functions at all?
16:51:06 <ehird> ais523: something like that
16:51:11 <ehird> AnMaster: well, good point
16:51:15 <ehird> just do it all with labels
16:51:22 <AnMaster> ehird, too close to basic
16:51:23 <AnMaster> so
16:51:25 <ehird> no no no
16:51:26 <ais523> AnMaster: presumably the functions are to generate infinite data storage
16:51:28 <ehird> they're nested, scoped labels.
16:51:32 <AnMaster> ais523, oh?
16:51:41 <ais523> well, you need infinite data somehow
16:51:44 <AnMaster> true
16:51:48 <ehird> nested scoped labels, hmmmmm
16:51:51 <oklopol> { var a = 0; var b = 0; call smth } { smth: var x = 5; goto -> }, what will a and b be after that?
16:51:51 <AnMaster> ais523, infinite next stack
16:51:55 <oklopol> ehird: ^
16:51:58 <ais523> AnMaster: that's only one stack
16:51:59 <ehird> oklopol: lemme look
16:52:10 <AnMaster> ais523, you need to have local variables somewhere
16:52:10 <ehird> oklopol: a will be 5
16:52:17 <ehird> because it's on the same position in the local variable storage as a
16:52:18 <ais523> and it should be common knowledge here what happens if you only have one stack, and no way to index arbitrarily deep into it so it isn't really a stack
16:52:20 <ehird> pretty muchers
16:52:20 <AnMaster> ais523, also you could just add array variables
16:52:22 <ehird> i thinky
16:52:23 <ehird> i dunno
16:52:24 <ehird> lol
16:52:25 <ais523> AnMaster: that's cheating
16:52:30 <ais523> this is #esoteric
16:52:34 <ehird> in fact, this thing really fucking confuses me
16:52:36 <AnMaster> ais523, hm true
16:52:38 <ehird> i don't get the semantics at all
16:52:43 <ehird> I think it's a huge heap of special cases
16:52:43 <ais523> besides, you can't have infinitely large arrays without bignum dimensions
16:52:46 <oklopol> ehird: why a? i mean wouldn't b be on top of the stack
16:52:51 <ehird> oklopol: ok maybe
16:52:52 <ehird> I don't know
16:52:53 <ais523> or bignum numbers of dimensions, I suppose
16:53:01 <ehird> hmm
16:53:05 <ehird> I think we strayed away from this a bit
16:53:07 <ehird> when we got into ->
16:53:12 <ais523> I can imagine a lang where all arrays were indexed 0 to 1, but could have bignum numbers of dimensions
16:53:13 <ehird> let's rewind a bit to the while (A: ...) & comefrom example
16:53:14 <ehird> and go from there
16:53:22 <oklopol> ehird: no, it's just starting to get interesting
16:53:23 <ais523> and anyway, you're just reinventing INTERCAL with a different syntax
16:53:30 <AnMaster> ehird, what is the name of the language?
16:53:33 <ehird> ais523: i'm not now, i'm rewinding
16:53:38 <ehird> oklopol: yes, but let's rewind to get a better picture
16:53:41 <ehird> AnMaster: i don't know!
16:53:59 <AnMaster> ehird, also an idea: cometo
16:54:05 <AnMaster> like goto and comefrom combined
16:54:08 <AnMaster> so you do like
16:54:18 <oklopol> hmm.
16:54:32 <AnMaster> { A: foo; } { B: bar; } { C: A cometo B }
16:54:54 <AnMaster> so that means it will act as if there had been a "comefrom A" at B
16:55:01 <AnMaster> dynamically scoped of course
16:55:07 <oklopol> 18:52… ais523: and it should be common knowledge here what happens if you only have one stack, and no way to index arbitrarily deep into it so it isn't really a stack <<< what do you mean not really a stack?
16:55:08 <AnMaster> ehird, what do you think of that idea?
16:55:08 <ais523> AnMaster: code injection?
16:55:12 <AnMaster> ais523, certainly
16:55:15 <oklopol> that's pretty much the definition of a stack
16:55:21 <AnMaster> ais523, non-local effect too
16:55:27 <ehird> i like it.
16:55:30 <ais523> oklopol: if you can index arbitrarily deep without popping, it's basically an array which also has stacklike operations
16:55:39 <oklopol> AnMaster: that doesn't really work, it doesn't scale, semantically, methinks
16:55:44 <oklopol> will not have any uses, that is
16:55:45 <AnMaster> oklopol, oh?
16:55:49 <ais523> ehird: AnMaster; I've been looking for a way to do that in INTERCAL for a while
16:55:54 <ais523> it's possible to do it right now, but hacky
16:56:09 <oklopol> AnMaster: what does it mean exactly to act as if it came from A?
16:56:11 <ehird> anyway
16:56:12 <ais523> just adding it as a new command didn't actually cross my mind for some reason
16:56:14 <ehird> a(x) {
16:56:15 <ehird> x = x + 1;
16:56:16 <ehird> A: return x;
16:56:18 <ehird> }
16:56:20 <ehird> b(x) {
16:56:22 <ehird> x = x - 1;
16:56:24 <ehird> goto A;
16:56:26 <ehird> }
16:56:28 <ehird> a(x) {
16:56:30 <ehird> while (A: (x -= 1) > 0) {
16:56:32 <ehird> printf("hello world\n");
16:56:34 <ehird> }
16:56:34 <ais523> oklopol: it's effectively self-modifying code, just dynamically scoped
16:56:36 <ehird> }
16:56:38 <ehird> b(x) {
16:56:39 <ais523> so it unmodifies itself when you leave the block
16:56:39 <ehird> goto B;
16:56:42 <ehird> comefrom A;
16:56:44 <ehird> printf("x = %i\n", x);
16:56:44 <oklopol> ais523: oh, i guess i misread your negations then
16:56:45 <ehird> B: a(x);
16:56:47 <ehird> }
16:56:50 <ehird> let's go from thar
16:56:52 <AnMaster> oklopol, like if C had comefrom A; goto B; but C will never end up on the stack
16:56:54 <oklopol> thought you said it's not a stack if you can't access all indices
16:57:08 <ehird> http://www.cobolportal.com/index.asp?bhcp=1
16:57:19 <AnMaster> oklopol, also if something was comefrom C it wouldn't affect it
16:57:25 <oklopol> AnMaster: ohhhhhh
16:57:29 <oklopol> i misunderstood it
16:57:34 <AnMaster> oklopol, oh?
16:57:36 <oklopol> yeah that's an awesome instruction
16:57:41 <AnMaster> oklopol, haha
16:57:47 <ehird> cometo should be an unary operation
16:57:50 <ehird> i don't know how
16:57:51 <oklopol> well i thought hitting that instruction would somehow flip A on top of stack, then call B
16:57:51 <ehird> but it should
16:58:01 <AnMaster> ehird, well it would be hard to do
16:58:08 <AnMaster> if you can figure it out sure
16:58:13 <oklopol> but yeah, it just says "if, while this block is on stack, you hit A, goto B"
16:58:32 <ais523> I must get back to thinking about DO INEVITABLY
16:58:40 <ais523> which was a primitive which let you implement that sort of thing and more
16:58:44 <ehird> wait
16:58:44 <oklopol> ais523: finally?
16:58:45 <ehird> oklopol:
16:58:48 <ais523> it basically meant "do this statement, but not quite yet"
16:58:49 <ehird> that's just
16:58:49 <oklopol> "finally {}"
16:58:50 <ehird> comefrom A; goto B;
16:58:52 <ehird> idiots
16:58:55 <ehird> :D
16:58:56 <AnMaster> oklopol, no no, that would be: "C: camefrom A to B"
16:58:57 <AnMaster> :P
16:58:58 <ais523> the statement ran, but delayed a couple of cycles
16:58:59 <ehird> see?
16:59:01 <ehird> you're idiots.
16:59:02 <AnMaster> ehird, what do you think of that one then?
16:59:03 <ehird> listen tomeeeeeeeeeee
16:59:12 <ehird> A cometo B
16:59:13 <ehird> -->
16:59:15 <ehird> comefrom A; goto B;
16:59:19 <AnMaster> <ehird> comefrom A; goto B;
16:59:21 <ais523> ehird: that was the hack I was planning to use
16:59:21 <AnMaster> not exactly
16:59:25 <oklopol> ehird: yes i heard
16:59:26 <AnMaster> ehird, different
16:59:26 <ehird> ais523: that's not a hack :P
16:59:28 <ehird> AnMaster: how
16:59:28 <ais523> it doesn't work, because it disrupts the callstack
16:59:34 <ehird> ais523: ok, use nextfrom them
16:59:34 <ais523> you end up with two entries rather than 1
16:59:35 <ehird> then
16:59:40 <AnMaster> ehird, 1) that will put the location of "goto B;" on the stack frame
16:59:52 <ehird> well that's easy, just destackerize it or whatever
16:59:52 <ais523> if you have separate comefrom/nextfrom, it works
16:59:54 <AnMaster> ehird, 2) it will be affected by any comefrom at the location of comefrom A
17:00:17 <ais523> except in INTERCAL it still doesn't work in all cases, it works for fixed labels A but not for gerunds
17:00:23 <ais523> which is why you need hacks
17:00:28 <AnMaster> ehird, 3) wouldn't this goto B when it was first executed?
17:00:34 <AnMaster> since it is dynamically scoped
17:00:34 <ehird> AnMaster: just goto out of it
17:00:41 <ais523> hmm... you might be able to manage it for cometo by mixing nextfrom and forget, but not for nextto
17:00:41 <ehird> { goto X; comefrom A; goto B; X: }
17:00:47 <AnMaster> ah right
17:00:51 <ehird> you don't create a new block of scope
17:00:55 <ehird> so it still applies
17:00:56 <AnMaster> right
17:01:07 <oklopol> just have a way to write "stack functions", that don't work on the normal stack, and that can be called to alter it
17:01:08 <ehird> also AnMaster
17:01:10 <ehird> isnce there's a comefrmo
17:01:13 <ehird> it'd actually goto A
17:01:14 <AnMaster> ehird, still the return issue is unsolved
17:01:14 <ehird> then come from A
17:01:16 <ehird> then go to B
17:01:16 <AnMaster> unless you do
17:01:18 <ehird> :D
17:01:35 <AnMaster> { goto X; comefrom A; goto B; goto ->; X: }
17:01:42 <ais523> oklopol: INTERCAL solves that problem by making all stack manipulation implicit
17:01:42 <ehird> yeah
17:01:44 <ehird> that's what I was thinking AnMaster
17:01:54 <ehird> you could just make it a function
17:02:06 <AnMaster> ehird, still this wouldn't work for goto ->+2
17:02:11 <ehird> cometo(A,B) { goto X; comefrom A; goto B; goto ->+1; X: }
17:02:11 <oklopol> ais523: and i'm essentially saying maybe you could try making it explicit
17:02:12 <ehird> then
17:02:13 <AnMaster> or whatever the syntax was
17:02:14 <ehird> cometo(A,B)
17:02:25 <AnMaster> ehird, err, what if B does goto ->+10
17:02:28 <AnMaster> then it would be one off
17:02:33 <ehird> AnMaster: modify ->
17:02:35 <oklopol> just have it be implicit for the functions that have an explicit view of the stack under them
17:02:36 <AnMaster> since that code would be skipped
17:02:43 <AnMaster> ehird, what if you can't modify B's code?
17:02:46 <ehird> cometo(A,B) { goto X; comefrom A; -> = -> + 1; goto B; goto ->; X: }
17:02:52 <AnMaster> ehird, AH!
17:02:54 <AnMaster> also
17:02:55 <AnMaster> - 1
17:02:56 <ehird> AnMaster: MWAHAHAHAHAHA :D
17:02:57 <AnMaster> not + 1
17:02:58 <ehird> also
17:02:59 <ehird> er
17:03:00 <ehird> yeah
17:03:03 <ehird> cometo(A,B) { goto X; comefrom A; -> = -> - 1; goto B; goto ->; X: }
17:03:11 <AnMaster> err
17:03:11 <ehird> i think my brain just broke
17:03:12 <AnMaster> wait
17:03:12 <AnMaster> no?
17:03:13 <ehird> :DDDDDDDDDD
17:03:18 <AnMaster> ehird, I'm unsure
17:03:22 <ehird> AnMaster: well, -1
17:03:24 <ehird> i think
17:03:24 <ehird> is best
17:03:26 <AnMaster> ah yes
17:03:28 <ehird> since the stack goes downwards
17:03:31 -!- ais523 has quit (Remote closed the connection).
17:03:33 <AnMaster> oh
17:03:33 <ehird> but seriously, what
17:03:35 <AnMaster> right
17:03:35 <ehird> XD
17:03:38 -!- ais523 has joined.
17:03:41 <ehird> cometo(A,B) { goto X; comefrom A; -> = -> - 1; goto B; goto ->; X: }
17:03:44 <ehird> THAT JSUT DOES NOT MAKE SENSE
17:03:47 <ais523> <ais523> and even that doesn't solve the problem, because what if the code at B wants to return more than one level at once? It'll have to add 1 to the distance to return, for no reason obvious to it
17:03:52 <ehird> ais523: no
17:03:52 <ehird> cometo(A,B) { goto X; comefrom A; -> = -> - 1; goto B; goto ->; X: }
17:03:56 <AnMaster> ehird, I think the goto -> will never be executed
17:03:56 <ais523> ehird: aha
17:04:03 <ehird> AnMaster: oh, right
17:04:03 <ehird> it won't
17:04:05 <ais523> you've just added yet another INTERCAL operator
17:04:06 <ehird> cometo(A,B) { goto X; comefrom A; -> = -> - 1; goto B; X: }
17:04:08 <ehird> ais523: no
17:04:09 <ais523> that's "FORGET #1" in INTERCAL
17:04:12 <ehird> I'm generalizing the whole control flow thing
17:04:15 <ais523> yes
17:04:22 <ehird> also, intercal isn't quite as hectic as this
17:04:26 <ais523> I still think you're reinventing INTERCAL, though
17:04:27 <ehird> this is completely freeform
17:04:43 <ehird> also
17:04:43 <AnMaster> ehird, what about return values?
17:04:49 <ehird> INTERCAL has no label refs apart from constant ones and ->
17:04:50 <ais523> and it's completely freefrom in INTERCAL too, if only because it's sufficiently low-level that "inside expressions" in your lang = "between statements" in INTERCAL
17:04:56 <ais523> and wrong
17:04:56 <ehird> as my cometo shows, they can be passed around
17:04:57 <AnMaster> ehird, you could use a global variable for it
17:05:00 <ais523> computed COME FROM
17:05:00 <AnMaster> like $return
17:05:03 <AnMaster> or whatever
17:05:03 <ehird> ais523: yes
17:05:05 <ehird> that's different
17:05:10 <ais523> and you can do computed gotos too
17:05:11 <ehird> AnMaster: no
17:05:12 <ais523> just not directly
17:05:15 <AnMaster> ehird, no?
17:05:16 <ehird> you make it so that the func you returns to
17:05:16 <ais523> it takes a few statements
17:05:17 <oerjan> <ehird> oerjan!
17:05:17 <ehird> gets teh value
17:05:20 <ehird> on the top of the stack
17:05:27 <AnMaster> ehird, right...
17:05:30 <ehird> givemeatwo() { a = 2; goto -> }
17:05:30 <AnMaster> ehird, example?
17:05:32 <ais523> ehird: well, yes, that's the normal way to do call/return in INTERCAL
17:05:33 * oerjan belatedly puts ehird in handcuffs for punning without a license
17:05:37 <ehird> since a resides on the top of the stack
17:05:41 <AnMaster> ehird, ouch
17:05:42 <ehird> givemeatwo() evaluates to 2
17:05:46 <ehird> because when you go back, it's still on the top of the stack
17:05:48 <ehird> as the result
17:05:49 <ehird> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
17:05:52 * oerjan then gives up reading the channel again
17:05:56 <AnMaster> ehird, err no
17:05:57 <ais523> only difference is that scoping is explicit
17:05:57 -!- ais523 has quit (Remote closed the connection).
17:06:01 <ehird> AnMaster: oh yes
17:06:03 <AnMaster> the goto -> will have popped it
17:06:06 <ehird> nope
17:06:10 <ehird> not using a stack there
17:06:11 <AnMaster> or is the call stack separate?
17:06:14 <ehird> the value stack stays the same
17:06:16 <oklopol> oerjan: the beginning was actually pretty interesting
17:06:18 -!- ais523 has joined.
17:06:25 <ais523> [17:05] <ais523> ehird: well, yes, that's the normal way to do call/return in INTERCAL
17:06:27 <ais523> [17:05] <ais523> only difference is that scoping is explicit
17:06:30 <ehird> we saw
17:06:35 <ais523> ah, I didn't realise
17:06:36 <AnMaster> ehird, ouch that means you will have to remember to pop the stack of any local variables before returning
17:06:39 <AnMaster> how would you do it
17:06:40 <oklopol> of course, i now believe ais523 in that all this is already intercal 101
17:06:46 <ais523> my connection must have dropped for recieve but not send, for some reason
17:06:52 <ais523> *receive
17:06:53 <ehird> AnMaster: um, let me think
17:06:58 <ehird> hmm
17:07:01 <ehird> just don't do that
17:07:01 <ehird> xD
17:07:03 <ais523> AnMaster: RETRIEVE .2 + .3 + .4
17:07:05 <ais523> or whatever
17:07:10 <ehird> we're talking about my language, ais523
17:07:12 <AnMaster> ehird, hm?
17:07:20 <ais523> ehird: ok, well INTERCAL gives each variable name its own stack
17:07:24 <AnMaster> ehird, it would make variables kind of useless
17:07:25 <ais523> so you can use them all synchronized for scoping
17:07:27 <ehird> AnMaster: nope
17:07:34 <ehird> just take the variables from your caller
17:07:36 <ais523> or you can have two different interlocking scoping schemes, if you like
17:07:37 <ehird> and put them back before returning
17:07:41 <ehird> you could write a function to do it
17:07:49 <ehird> just do ->-2 in the function, and examine the variables
17:07:50 <AnMaster> ehird, you need to know who your caller is
17:07:51 <ehird> put them on the stack
17:07:53 <ehird> then goto ->
17:07:55 <ehird> AnMaster: you do
17:07:56 <ehird> ->
17:07:57 <AnMaster> to know what number of variables it has
17:08:04 <ehird> -> is the reference to your caller
17:08:08 <AnMaster> hm
17:08:09 <AnMaster> ok
17:08:15 <ais523> imagine C where you could write { braceint a = 2; /* a valid */ [ bracketint b = 3; /* a and b valid */ } /* b valid */ ] /* neither valid */
17:08:32 <AnMaster> ais523, haha
17:08:51 <ais523> INTERCAL's like that, except you can have a practically unlimited number of independent scoping mechanisms
17:08:52 <oklopol> ais523: i like that
17:08:59 <ais523> (although there are only finitely many variable names)
17:09:03 <ehird> WHAT. A ONE CHARACTER DOMAIN NAME.
17:09:03 <ehird> WANT.
17:09:15 <oklopol> oh?
17:09:16 <oklopol> wher?
17:09:18 <oklopol> *where?
17:09:21 <ehird> Over there!
17:09:25 <AnMaster> ais523, believe it or not, but I actually wanted something like that when doing "serious" programming recently
17:09:47 <oklopol> ehird: plz show me i can't see.
17:09:51 <ehird> oklopol: look closer
17:10:04 <ais523> AnMaster: I've said several times before that INTERCAL's control flow is really nice and actually suited to serious programming, just the lang isn't because its expressions are bad and string handling is awful
17:10:10 <ais523> only I didn't think anyone was listening
17:10:22 <AnMaster> ehird, what tld? There are so many now when since ICANN did that thing with them... I can't find witch one
17:10:24 <ais523> ehird: is it a whitespace character, by any chance?
17:10:28 <ehird> AnMaster: .cx
17:10:29 <ehird> ais523: no
17:10:35 <AnMaster> ehird, ah
17:10:41 <ais523> also, whose was .cx originally?
17:10:45 <ehird> cook islands
17:10:47 <ais523> before it got taken over by goatse?
17:10:48 <ehird> err
17:10:48 <ehird> no
17:10:50 <ehird> that's .ck
17:10:54 <ehird> well, .co.ck
17:11:00 <ehird> ah
17:11:01 <ehird> christmas island
17:11:01 <AnMaster> checkoslovakia iirc?
17:11:05 <ehird> http://en.wikipedia.org/wiki/Christmas_Island
17:11:05 <AnMaster> ah no
17:11:10 <ais523> AnMaster: that isn't even a real country any mroe
17:11:11 <AnMaster> ehird, that should be .xmas
17:11:12 <AnMaster> IMO
17:11:13 <ais523> it got split into 2
17:11:17 <ehird> Population
17:11:17 <ehird> - 2006 estimate1,493 (n/a)
17:11:19 <AnMaster> ais523, oh right true
17:11:21 <ais523> and all country codes are two chars
17:11:22 <ehird> AnMaster: tat makes no sense :P
17:11:37 <AnMaster> ais523, ah true
17:12:17 <AnMaster> ehird, hm for balance I still think you need cometo and gofrom
17:12:23 <ehird> quick! what's your favourite shade of gray?
17:12:26 <ehird> in hex
17:12:27 <ais523> 192
17:12:31 <ehird> in hex
17:12:31 <ais523> c0c0c0
17:12:40 <ais523> and I said 192 before you said in hex
17:12:40 * AnMaster don't know
17:12:44 <ehird> darker? :D
17:12:59 <oklopol> 010101
17:13:23 <oklopol> why would you ask grey especially in hex?
17:13:23 <AnMaster> #eee
17:13:34 <AnMaster> actually no
17:13:40 <oklopol> because you don't want people to do it the hard way?
17:13:41 <AnMaster> #fefefe
17:13:47 <AnMaster> that is my favourite grey
17:13:49 <ais523> AnMaster: that's pretty light
17:13:58 <oklopol> lol
17:14:00 <ehird> fefefe shows as white on every screen
17:14:00 <AnMaster> ais523, yes I prefer white over grey
17:14:01 <ehird> i think
17:14:04 <oklopol> that just about sums up me and AnMaster
17:14:04 <ais523> so light that it would probably go out the other side of white on my screen at some angles
17:14:05 <oklopol> :D
17:14:13 <oklopol> 19:12… oklopol: 010101 || 19:13… AnMaster: #fefefe
17:14:21 <ehird> ha
17:14:21 <ehird> agreed
17:14:34 <oklopol> WE'RE THE SAME ONLY OPPOSITES
17:14:35 <oklopol> ...
17:14:39 <ais523> my screen's weird, it gets darker and darker as you adjust the angle (or lighter and ligher in the other direction), until it goes past the blackest or whitest colour and comes out the other side
17:14:41 <oklopol> drinking time ->
17:14:42 <ais523> in inverse video
17:14:43 <AnMaster> oklopol, oh hm, this is some classical symbology(sp?) in that I think
17:14:50 <ehird> ais523: that's not odd
17:14:53 <ehird> that's typical LCD behaviour
17:14:55 <ais523> well, yes
17:15:00 <AnMaster> oklopol, like evil and good
17:15:01 <ais523> typical LCD behaviour is weird, though
17:15:02 <AnMaster> or something
17:15:07 <ais523> (I even know how it happens, to some extent)
17:15:25 <oklopol> yes, 010101/fefefe is one of the texts in those jing-jang t-shirts
17:15:27 <AnMaster> ais523, how does it happen
17:15:30 <AnMaster> I don't know
17:15:36 <ais523> AnMaster: do you know how an LCD works?
17:15:38 <AnMaster> oklopol, "jing-jang t-shirts"?
17:15:46 <ais523> AnMaster: it's ying/yang in English, if that helps
17:15:47 <AnMaster> ais523, yes
17:15:48 <oklopol> AnMaster: t-shirts with the symbol.
17:15:53 <oklopol> hmm
17:15:54 <oklopol> right, ofc
17:15:56 <AnMaster> ais523, it helps slightly
17:15:59 <ais523> well, Yin/Yang
17:16:08 <AnMaster> I prefer ping/pong
17:16:08 <ais523> AnMaster: well, it's to do with the screens not being infinitely thin
17:16:26 <ais523> so if you see them at an angle, the polarisation twisting isn't lined up perfectly
17:16:34 <AnMaster> right
17:16:44 <ais523> different voltages affect the amount of twisting to produce different colours, so it's possible you can twist more than 90 degrees and come out the other side of black
17:16:45 <oklopol> i don't believe in polarization, i think.
17:16:47 <AnMaster> that I know of, though this one has a pretty good viewing angle
17:16:59 <ais523> if a weird viewing angle is rotating it too far
17:17:07 <AnMaster> I need to go around 80 degrees before I notice anything
17:17:08 <oklopol> i haven't decided really, but that sounds like something i don't have to believe in
17:17:15 <ais523> AnMaster: it must be a good thin one then
17:17:20 * ehird licenses his stuff under Creative Commons Attribution 1.0 Generic
17:17:22 <ehird> because he is oldschool
17:17:24 <ais523> oklopol: do you have a calculator?
17:17:26 <ehird> and because newer versions are useless
17:17:30 <AnMaster> ais523, a 21" 1400x1050 TFT
17:17:32 <oklopol> ais523: yes
17:17:43 <ais523> oklopol: if you don't believe in polarisation, how can you see the numbers on it/
17:17:51 <AnMaster> ais523, also it isn't inverted video even at 90 degrees
17:17:51 <oklopol> ais523: by looking
17:18:04 <ais523> oklopol: have you ever looked at your calculator through a polarising filter?
17:18:05 <AnMaster> or close to that anyway
17:18:05 <oklopol> doesn't involve polarizing anything afaik!
17:18:08 <ehird> oklopol: don't ever start making sense <3
17:18:15 <oklopol> ais523: think i believe in those?
17:18:16 <oklopol> :D
17:18:17 <ais523> from inside another calculator would do, although it's a bit hard to climb inside them
17:18:25 <oklopol> they're just slightly shaded glass
17:18:47 <ais523> oklopol: if you have two polarising filters next to them, and start rotating them
17:18:52 <ais523> then it becomes clear they aren't shaded glass
17:19:08 <AnMaster> ais523, you think oklopol is serious?
17:19:17 <AnMaster> actually, that would be ehird's comment to me
17:19:19 <AnMaster> heh
17:19:27 <ehird> oklopol is serious
17:19:29 <oklopol> ais523: well. that's a bit hard to explain ;=)
17:19:29 <ehird> that's the thing.
17:19:33 <AnMaster> ehird, hm
17:19:38 <oklopol> I GUESS WE'LL NEVER KNOW WHY THAT HAPPENS.
17:19:48 <ais523> there are lots of things you can more or less get away with not knowing, or not agreeing with whilst being wrong
17:19:48 <oklopol> maybe i should open my rwh now
17:19:55 <AnMaster> oklopol, do you believe in Star Trek?
17:20:31 <AnMaster> rwh?
17:20:32 <AnMaster> wtf is that
17:20:39 <oklopol> ais523: true. but science isn't exact, knowing it might be useless if it happens to be wrong.
17:20:46 <ehird> real world haskell
17:20:48 <ais523> well, yes
17:20:50 <oklopol> so i say why bother
17:20:50 <AnMaster> ah
17:20:53 <oklopol> !
17:20:57 <AnMaster> oklopol, do you believe in Star Trek?
17:21:08 <oklopol> well okay, i guess i should believe in polarization, because it's so effing cool
17:21:12 <ais523> anyway, I'm an engineer, and engineers know things that tend to work in practice are often useful even if they are wrong
17:21:19 <oklopol> i'll believe it's a close approximation of how light works
17:21:33 <AnMaster> heh
17:21:57 <ehird> i hate...
17:21:59 <ehird> i hate things
17:22:03 <oklopol> ais523: well, an abstraction can't really be "wrong"
17:22:06 <AnMaster> ais523, anyway the color issue is much larger on laptops than desktop TFTs in my experience
17:22:08 <AnMaster> no idea why
17:22:17 <oklopol> you might just realize it's a bad abstraction
17:22:22 <oklopol> and call it wrong
17:22:27 <ais523> well, I suppose so
17:22:30 <oklopol> but if it was once useful, probably it's still useful
17:22:35 <ais523> polarisation's just statistical behaviour anyway
17:22:36 <AnMaster> ais523, do you know?
17:22:39 <ais523> but one which is nice to know about
17:22:41 <oklopol> of course
17:22:45 <oklopol> all physics is
17:22:51 <ais523> AnMaster: I'd guess the screens are better-quality on desktop TFTs
17:22:57 <oklopol> well not all physics.
17:23:00 <AnMaster> ais523, hm.
17:23:00 <oklopol> but kinetics and the like
17:23:04 <ehird> grrrrrrrrrrrrrr
17:23:58 <AnMaster> ais523, I do notice colour shift at the edge for certain slightly off white values, need to be around 254,254,254 before I notice it though
17:24:07 <AnMaster> but very very slight
17:24:21 <ehird> who wants to stop things sucking?????
17:24:24 <AnMaster> ais523, in other aspects this monitor is really low quality :(
17:24:35 <AnMaster> ais523, like the foot of it, not very well adjustable
17:24:47 <AnMaster> or the fact it is VGA only, no DVI
17:24:55 <oklopol> ais523: do you play chess?
17:25:02 <ais523> I used to, although I haven't for ages
17:25:19 <ais523> I was the captain of the house chess team, and played for the school first team
17:25:24 <ais523> but I haven't played for about 4 years now
17:25:26 <oklopol> so you're awesome?
17:25:34 <ais523> my brother's much better than I am
17:25:42 <ais523> and sort of lapsed-decent, rather than awesome
17:25:48 <ehird> I'm awful at chess.
17:25:49 <ehird> Awful.
17:25:49 <ais523> really out of practice
17:25:51 <oklopol> wanna teach me the art?
17:26:06 <ehird> wait
17:26:11 <ehird> oklopol: you're not perfect at something?
17:26:13 <ehird> holy shit
17:26:14 <ais523> you can get a lot better at chess by not making mistakes
17:26:28 <ais523> in fact, I think that gets you right up above grandmaster level
17:26:34 <ehird> lol
17:26:34 <ais523> the mistakes just get more subtle as time goes on
17:26:37 <oklopol> ehird: i'm actually relatively bad at games where every move can get you killed
17:26:41 <ais523> hmm... chess is like NetHack in that respect
17:26:48 <oklopol> the more robust the better i get
17:26:54 <oklopol> i'm like an anticomputer at games
17:27:00 <ehird> proto: chess, the FPS
17:27:08 <ais523> ehird: how?
17:27:17 <ehird> ais523: if i knew that it wouldn't be a proto
17:27:22 * ais523 games little enough that they had to think about the acronym...
17:27:35 <ais523> ehird: even you aren't that fast at coding
17:27:36 <oklopol> ais523: oh, that wasn't a joke?
17:28:19 <oklopol> i mean
17:28:25 <oklopol> the reason i can't do chess is
17:28:34 <ais523> it wasn't much of a joke
17:28:36 <oklopol> i think like 7 plies ahead
17:28:45 <oklopol> then move the last piece in my train of thought
17:28:46 <ais523> generally speaking, the person who loses a game of chess is the first to make a mistake
17:28:50 <ais523> unless the other makes a bigger mistake later
17:28:51 <oklopol> because at that point i've solved the situation
17:28:56 <ais523> and heh, I do that as well
17:29:01 <ais523> although not 7 ahead
17:29:01 <oklopol> and lose my concentration
17:29:05 <oklopol> well.
17:29:07 <oklopol> i meant many plies
17:29:19 <oklopol> 7 was just a random number
17:29:24 <ais523> I'm no good at visualising more than about 2 plies
17:29:31 <ehird> I -can't- think ahead. :P
17:29:51 <ehird> heh, once I wrote a tic tac toe solver whose objective was to beat itself
17:29:55 <ais523> ehird: you're forked, then
17:29:56 -!- kar8nga has quit (Connection timed out).
17:30:01 <ehird> (when it looked ahead (brute-force), it played against itself)
17:30:12 <oklopol> ehird: that's how you always do it
17:30:13 <ehird> naturally, it was pretty awful
17:30:16 <ehird> oklopol: nope
17:30:23 <ehird> because it only ever tried to be better than itself
17:30:24 <oklopol> that's the way to brute-force games
17:30:27 <ehird> it's a recursive issue
17:30:47 <ais523> oklopol: it depends on what the evaluation function was
17:30:56 <ais523> but for noughts-and-crosses, you can analyse until the game ends
17:31:12 <ehird> ais523: basically, "if I beat or tie myself, this is a good solution"
17:31:20 <ehird> but since that's the definition of itself, it kind of sucked
17:31:35 <AnMaster> ehird, still have the code?
17:31:42 <ehird> nah
17:31:44 <AnMaster> I think it would always end at a draw
17:31:49 <ehird> um, no shit
17:31:49 <ais523> ehird: that's actually the best possible (if not fastest) algorithm if you brute-force to the end and know whether a position's won, lost, drawn or unfinished
17:31:50 <ehird> :P
17:31:52 <oklopol> hmm. i don't understand how that's different from just brute-forcing the perfect solution
17:32:02 <ehird> ais523: i think you misunderstand :D
17:32:08 <ehird> oklopol: because it doesn't fight against every possibility
17:32:11 <ehird> just every possibility that is tried
17:32:18 <ehird> and yet that's how you determine what to try...
17:32:26 <ais523> ehird: if it's brute-forcing, it does try every possibility
17:32:27 <AnMaster> huh?
17:32:30 <oklopol> so what does top-level try?
17:32:35 <ehird> ais523: nope, it didn't
17:32:41 <oklopol> what happens when first move happens?
17:32:44 <oklopol> happen happen
17:32:46 <ais523> then you aren't brute-forcing, so what are you doing?
17:32:50 <ehird> ais523: i wish I knew
17:33:02 <ehird> hmm, cgit's template files are c files
17:33:06 <ehird> that's disappointing
17:33:14 <AnMaster> isn't taking the middle square the best first move in tic tac toe?
17:33:20 <oklopol> well. the idea is brute-forcing, maybe you're just fucking it up somehow ;)
17:34:20 <ehird> http://hjemli.net/git/cgit/tree/ui-log.c :(
17:34:25 <ais523> AnMaster: it doesn't matter which square you take
17:34:36 <ehird> ais523: errr yes ti does?
17:34:37 <ais523> it's a draw for all 9 possible starting moves
17:34:53 <ais523> although if you start in a corner, the opponent has to reply in the middle to avoid losing
17:34:58 <ehird> right but with the middle you have more of a chance of -winning- against an idiot
17:35:08 <AnMaster> ah
17:35:17 <ais523> ehird: only if you assume the idiot plays in the middle given the chance
17:35:26 <ehird> even idiots do that.
17:35:26 <ais523> if you play in the corner, the idiot has 7 losing moves and only 1 drawing move
17:35:33 <ais523> if you play in the middle, the idiot has a 50/50 chance
17:35:37 <ais523> same if you play at an edge
17:35:38 <ehird> hm.
17:35:53 <AnMaster> hm
17:36:29 <AnMaster> how many possible tic tac toe games are there?
17:36:37 <ehird> few hundred thousand
17:36:38 <ehird> I think
17:36:40 <ais523> nine factorial
17:36:42 <ehird> less if you discard symmetrical ones
17:36:48 <AnMaster> hm
17:36:48 <ais523> so yes, about a few hundred thousand
17:36:49 <ehird> right
17:36:52 <ehird> 362880
17:36:54 <ehird> except
17:36:56 <ais523> if you discard symmetry, it's less than 100 IIRC
17:36:57 <oklopol> nine factorial is an upper bound
17:36:58 <ehird> less if you discard duplicates.
17:37:12 <ais523> oklopol: oh, because the games can end before all the squares are filled/
17:37:16 <oklopol> not all games only after last move
17:37:21 <oklopol> ais523: yes
17:37:26 <oklopol> ...
17:37:28 <AnMaster> ais523, even when the other person don't play perfect? and when you consider taking a first then b or b first then a different?
17:37:30 <oklopol> not all games *fucking end* only after last move
17:37:36 <AnMaster> though both could lead to the same end result
17:37:48 <AnMaster> and what oklopol said
17:38:02 <oklopol> AnMaster: the one that was incorrect or the one with fuck?
17:38:04 <ais523> AnMaster: yes and no to your two questions
17:38:37 <oklopol> i mean if you meant the first one, why would you quote a broken sentence? and if you meant the latter one, please don't swear, it's not your style
17:38:40 <AnMaster> oklopol, the latter
17:39:10 <ehird> AnMaster: say fuck
17:39:22 -!- tyrelle has left (?).
17:39:30 * ais523 wonders whether to surprise everyone by saying lol
17:39:32 <AnMaster> ehird, why would I?
17:39:33 <oklopol> yes of course nine factorial is a pretty loose upper bound also because the order doesn't matter
17:39:38 <ehird> AnMaster: novelty
17:39:39 <AnMaster> ais523, you just did
17:39:46 <oklopol> i mean
17:39:46 <AnMaster> ehird, not when you told me to
17:39:49 <ais523> AnMaster: I've typed it before, but only in quoted contexts
17:39:51 <ehird> AnMaster: don't say fuck
17:39:56 <ais523> I haven't actually used it, just mentioned it
17:40:00 <oklopol> not taking order into account isn't even much harder than taking the factorial
17:40:01 <AnMaster> ehird, too late, I don't fall for that trick
17:40:12 <AnMaster> ais523, ah right
17:40:16 <oklopol> you just take 4 out of 9...
17:40:20 <AnMaster> I only ever quote the word too
17:40:22 <AnMaster> I think
17:40:24 <ais523> of course I know of the existence of lol
17:40:29 <AnMaster> I think I used "lol" once really
17:40:30 <oklopol> same verb character in j
17:40:32 <ais523> just people don't use it with its intended meaning
17:40:35 <oklopol> only dyadic vs. monadic
17:40:37 <ais523> so it's become meaningless recently
17:41:04 <ais523> sometimes I do laugh out loud; I have been for about 5 minutes now (good thing there's nobody else in here)
17:41:08 <AnMaster> also
17:41:13 <ais523> but "lol" is no longer a good way to express that
17:41:14 <AnMaster> the correct answer isn't 9!
17:41:17 <AnMaster> the correct answer is:
17:41:32 <AnMaster> "as long as there are humans or other creatures to play it there can be more"
17:41:33 <ais523> AnMaster: Of course it isn't, there are more than 9 games!
17:41:33 <AnMaster> :P
17:41:49 <oklopol> wut
17:41:50 <AnMaster> ais523, that was ! as in factorial
17:41:54 <ehird> AnMaster: no shit
17:41:59 <ehird> way to ruin his joke
17:42:02 <AnMaster> ehird, lame joke yes
17:42:09 <oklopol> oh as a joke.
17:42:14 <AnMaster> I never said unique games :P
17:42:27 <AnMaster> also
17:42:29 <AnMaster> wtf is this
17:42:36 <oklopol> and really
17:42:39 * AnMaster looks at the SQL statement
17:42:46 <oklopol> 9 choose 4, *not* nine factorial
17:43:04 <ais523> you can tell I was joking due to the capital letter at the start of the sentence, the joke didn't work without it
17:43:07 <oklopol> it's like one character longer, and seven billion times smaller.
17:43:12 <ais523> and I rarely do that normally
17:43:40 <ais523> hmm... maybe we should come up with a new IRC convention, which states that correct capitalisation and punctuation indicates sarcasm
17:43:45 <ehird> 17:19:29 <Sgep> PESOIX?
17:43:45 <ehird> 17:19:33 <Sgep> <-- new
17:43:47 <ehird> -- 2005
17:43:49 <oklopol> ais523: it already does imo
17:43:50 <ais523> I mean, completely correct, initcaps and fullstop at the end
17:44:24 <oklopol> well, not completely correct, but that's one standard way to indicate you're not being serious, if you don't do that normally
17:45:40 <oklopol> btw
17:45:41 <oklopol> >>> !9
17:45:41 <oklopol> 362880
17:45:41 <oklopol> >>> 4!9
17:45:41 <oklopol> 126
17:45:53 <ehird> oklopol: teach me j
17:45:57 <AnMaster> err
17:45:59 <AnMaster> in ssql
17:46:00 <AnMaster> sql*
17:46:06 <AnMaster> what is the ORDER BY to sort backwards
17:46:13 <ais523> AnMaster: DESC
17:46:14 <AnMaster> I forgot the keyword
17:46:16 <ehird> desc/asc
17:46:17 <AnMaster> ah thanks
17:46:27 <oklopol> wait...
17:46:35 <oklopol> actually that upper bound actually isn't correct
17:46:38 <ais523> but for a moment, I thought you were correcting ehird, saying that ehird really meant to ask oklopol to teach him J in SQL
17:46:41 <oklopol> once you take into accound games can end prematurely
17:46:45 <ais523> which would be weird
17:47:04 <ehird> ais523: i thought AnMaster thought oklopol was showing AnMaster some code that he'd asked for
17:47:05 <oklopol> blah. is suck at translating reality into math
17:47:08 <ehird> and he wanted it in sql instead
17:47:18 <AnMaster> err?
17:47:19 <AnMaster> what?
17:47:23 <oklopol> AnMaster: desc
17:47:23 <ehird> nothing.
17:47:28 <AnMaster> ehird, no I'm multitasking
17:47:30 <oklopol> asc/desc, asc is implicit
17:47:37 <oklopol> also ais523 said that already
17:47:43 <ais523> wait, I'm trying to follow the threads of conversation here
17:47:46 <AnMaster> great it didn't sort correctly when selecting from the sorted view
17:47:48 <AnMaster> wonder why
17:47:56 <ais523> it's almost feels as if there are two conversations
17:47:59 <ais523> only they're impossible to separate
17:48:04 <oklopol> ais523: there are always multiple
17:48:10 <ais523> yes, but rare for them to get this intertwined
17:48:20 <ehird> 21:04:58 <heatsink> It would be more esoteric to make pop-from-empty-stack read from stdin :)
17:48:22 <ehird> -- 2005
17:48:26 <ehird> it's like befunge
17:48:49 <oklopol> that's not esoteric
17:48:51 <ais523> what, on division by 0?
17:48:54 <ehird> ais523: yep
17:48:57 <oklopol> "why not have the arguments of the program in the stack!!"
17:49:01 <oklopol> well
17:49:04 <oklopol> not arguments
17:49:06 <ais523> and <> reads from stdin on Perl when it runs out of argv
17:49:07 <ehird> oklopol: thats not related
17:49:08 <ehird> it means like
17:49:13 <oklopol> but if you consider stdin the args to the program
17:49:19 <ehird> "The stack is empty. What value should be on top?> "
17:49:21 <oklopol> oh, from any stack?
17:49:25 <ehird> yep
17:49:29 <oklopol> ah.
17:49:45 <AnMaster> hm,
17:49:54 <AnMaster> is INNER JOIN or LEFT JOIN fastest in general?
17:50:01 <AnMaster> all those join types confuse me
17:50:03 <oklopol> well then that's just an object that has two separate uses, which are intertwined to make it very error-prone
17:50:05 <ais523> AnMaster: inner IIRC
17:50:07 <oklopol> so yeah, pretty eso
17:50:10 <ais523> because it doesn't have to compare against NULL
17:50:14 <ais523> but they do different things
17:50:30 <AnMaster> ais523, all columns are NOT NULL, and in my case they end up doing the same result
17:50:30 <ais523> if you're asking which is fastest, either you're doing something really weird or you aren't thinking about the problem
17:50:36 <ehird> you know what sucks?
17:50:39 <ais523> oh, then they should take exactly the same length of time
17:50:40 <ehird> navigation
17:50:45 <ehird> navigation should be implicit
17:50:46 <ehird> always
17:50:46 <ais523> if you have at least a half-decent database engine
17:51:06 <ais523> inner is faster for the same reason ++i is faster than i++
17:51:17 <AnMaster> ais523, except this is mysql (eww yes I know, I hate it, not my choice), and EXPLAIN says INNER JOIN here doesn't use the indexs
17:51:20 <AnMaster> which is very strange
17:51:23 <ehird> the question is how you implicitify navigable aids without making a separate form for them.
17:51:25 <AnMaster> while left join does
17:51:31 <ais523> AnMaster: MySQL's optimiser is strange, it seems to pick at random
17:51:37 <ais523> what happens if you add a FORCE INDEX to it?
17:51:37 <AnMaster> ais523, yes I agree
17:51:48 <AnMaster> ais523, SQL error... let me try again
17:52:01 <ais523> I never can remember exactly where you're supposed to put it
17:52:28 <ehird> hmmm.
17:52:35 <ehird> i don't think form is inherently navigable.
17:52:36 <AnMaster> ais523, actually if I add a WHERE <primary key of first table> = <some integer> first explains says they are the same
17:52:42 <AnMaster> this make really no sense
17:52:48 <AnMaster> makes*
17:53:39 <ais523> AnMaster: is it a small table?
17:53:53 <AnMaster> ais523, currently yes, expected to grow a lot in the future
17:53:54 <ais523> on small tables, MySQL sometimes randomly decides that using an index isn't worth the bother
17:53:58 <ais523> and often it's actually right
17:54:11 <ais523> it would be nice to have an EXPLAIN ON HYPOTHETICAL BIG TABLE SELECT
17:54:17 <AnMaster> yes it would
17:54:41 <AnMaster> huh
17:54:46 <AnMaster> now this is just crazy
17:55:01 <AnMaster> 1 SIMPLE history ref tid,pid pid 4 const 2 Using where
17:55:14 * AnMaster tries to change join type
17:55:31 <ais523> AnMaster: well, const is a pretty useful join type to have
17:55:41 <ais523> it's the second-fastest
17:55:53 <AnMaster> ais523, which one is the fastest then? PRIMARY I assume?
17:56:01 <ais523> AnMaster: no, the type where the table only has one row
17:56:03 <ais523> or zero
17:56:06 <AnMaster> well thing is... I *only* select on primary keys
17:56:13 <AnMaster> in this case
17:56:14 <ais523> PRIMARY's not a join type, it's a key type
17:56:25 <AnMaster> and join on "not primary -> primary"
17:56:30 <AnMaster> ais523, true
17:56:35 <AnMaster> but primary index should be the fastest
17:56:43 <ais523> AnMaster: not on MyISAM
17:56:52 <ais523> all indexes are equally fast there IIRC
17:57:00 <AnMaster> ais523, innodb since I need foreign key constraints
17:57:05 <AnMaster> I hate mysql and innodb
17:57:06 <ais523> oh, primary is fastest there
17:57:15 <AnMaster> SELECT history.revid, history.tid, text.uid, text.timestamp, text.title, user.realname FROM (history INNER JOIN `text` ON (history.tid = text.tid) INNER JOIN user ON (text.uid = user.uid)) WHERE history.pid = 4 ORDER BY history.revid DESC
17:57:16 <AnMaster> btw
17:57:22 <ais523> InnoDB is too much trying to be like other database engines, IMO
17:57:34 <AnMaster> ais523, I would much prefer postgresql
17:57:38 <ais523> they should stick to MyISAM which is not a database in the conventional sense, but is nonetheless useful
17:57:55 <AnMaster> ais523, anyway can you see anything obviously stupid in the above query?
17:58:15 <AnMaster> I guess I can let this pass for now...
17:58:20 <ais523> that should be 3 const lookups, one using where
17:58:23 <ais523> which should be very fast
17:58:32 <ais523> unless you have duplicate pids in the history table
17:58:42 <ais523> or duplicate tids in text, or duplicate uids in user
17:58:42 <AnMaster> ais523, yes that can exist
17:58:48 <AnMaster> no duplicate tids though
17:58:56 <ais523> nor uids?
17:58:56 <AnMaster> pids in history can be duplicate
17:59:08 <AnMaster> no other key I'm testing on can be
17:59:11 <ais523> in that case, it should be const/const/const, with affected rows (small number), 1, 1
17:59:14 <AnMaster> ais523, oh yes they are dup
17:59:18 <AnMaster> in the text tample
17:59:20 <ais523> which is very fast
17:59:21 <AnMaster> table*
17:59:27 <ais523> so no, nothing looks wrong with that
17:59:27 <AnMaster> ais523, sorry for that
17:59:32 <AnMaster> id select_type table type possible_keys key key_len ref rows Extra
17:59:32 <AnMaster> 1 SIMPLE history ref pid pid 4 const 2 Using where
17:59:32 <AnMaster> 1 SIMPLE text eq_ref PRIMARY PRIMARY 4 vcms.history.tid 1
17:59:32 <AnMaster> 1 SIMPLE user eq_ref PRIMARY PRIMARY 4 vcms.text.uid 1
17:59:35 <AnMaster> is what it says
17:59:54 <ais523> that's a good query
18:00:01 <AnMaster> ais523, and sorry, text.uid and history.pid can be dup
18:00:08 <ais523> ref const, eq_ref primary, eq_red primary
18:00:17 <ais523> three O(1) queries joined
18:00:21 <ais523> well, O(number of results)
18:00:26 <AnMaster> ais523, where are those abbreviations explains
18:00:31 <ais523> which is much faster than O(size of database), which is what slow queries are
18:00:37 <AnMaster> also number of results depend on number of edits on the page
18:00:43 <ais523> AnMaster: there's a whole chapter of the MySQL docs about it
18:00:54 <ais523> also, you can't possibly get faster than O(n) in the number of results, for obvious reasons
18:01:03 <AnMaster> well yes
18:01:15 <AnMaster> ais523, I expect at least quite a few results.
18:01:38 <ais523> you can't optimise that any faster in computational class terms, so don't try
18:01:50 <ais523> micro-optimising is just not worth it
18:02:07 <AnMaster> true
18:02:23 <AnMaster> ais523, I agree
18:02:23 <AnMaster> I was just confused why it didn't want to use indexes sometimes
18:02:37 <ais523> AnMaster: because the table was so small that a full table scan was faster than loading the indexes
18:03:44 <AnMaster> ais523, true I don't have a lot of entries yet since I'm continually changing the schema when I find bugs
18:03:57 <AnMaster> so I have an sql file that I change then import that resets the database
18:04:15 <AnMaster> ais523, also what about longtext type, is it sane for using to store pages in?
18:04:27 <ehird> longtext is too long
18:04:29 <ehird> try text.
18:04:29 <AnMaster> I have been unable to find info about that in the mysql docs
18:04:31 <ais523> I'm not sure, but I think so
18:04:36 <oklopol> err left join was join + keep all entries of leftie, inner was just join?
18:04:37 <ais523> longtext is for pretty massive pages
18:04:47 <ais523> oklopol: yes, pretty much
18:04:48 <AnMaster> ehird, hm isn't text like 32 kb?
18:04:56 <ehird> i think mor
18:04:57 <ehird> e
18:05:02 * AnMaster looks
18:05:04 <ais523> 64 kb probably
18:05:11 <ais523> as MySQL like using whole numbers of bytes
18:05:16 <AnMaster> well
18:05:22 <AnMaster> I need more than that
18:05:28 <ehird> what are you storing
18:05:30 <ais523> and 64 KiB = a two-byte length
18:05:36 <AnMaster> ehird, wiki pages
18:05:42 <ehird> 64 kb is enough.
18:05:45 <ehird> if it isn't, fix your pages :P
18:05:54 <AnMaster> ehird, well ever looked at gentoo wiki?
18:05:57 <ais523> ehird: what if they have embedded data: URLs to images?
18:06:01 <ehird> yes, and I never looked again, AnMaster
18:06:10 <AnMaster> ehird, some are over 100 kb
18:06:12 <AnMaster> quite a few in fact
18:06:14 <ehird> yes. fix that.
18:06:30 <AnMaster> well, long text it is, though this isn't gentoo wiki
18:07:00 <oklopol> sql doesn't have an infinitely extending type?
18:07:07 <oklopol> or am i completely out of context
18:07:08 <ehird> no.
18:07:27 <oklopol> (i don't really know much about practical db's, as should be obvious)
18:07:38 <ehird> oklopol: what do you think about my work in progress db?
18:07:41 <ehird> it serializes objects to a graph
18:07:44 <ehird> GRAPHS
18:07:47 <ehird> FUCKING GRAPHS.
18:07:50 <ehird> you love graphs.
18:08:04 <oklopol> (except queries, but of course just the actual query syntax)
18:08:15 <oklopol> graphs are pretty awesome
18:08:29 <ehird> exactly
18:08:34 <AnMaster> well
18:08:43 <AnMaster> contact me the day when the product is ready :P
18:08:51 <ehird> go to hell, practical jackass. :|
18:09:25 <oklopol> yeah, who wants to finish a program when you already know how to do it
18:09:26 <AnMaster> ehird, hey I was all for your comefrom/goto lang
18:09:30 <AnMaster> and I still am
18:09:35 <kerlo> I hate doing things I already know how to do.
18:09:48 <AnMaster> kerlo, like eating?
18:09:53 <oklopol> kerlo: yeah they're almost as bad as things i don't know how to do
18:10:03 <kerlo> Well, eating is an exception. It's an instant gratification thing.
18:10:11 <AnMaster> ah
18:10:15 <AnMaster> kerlo, sleeping? waking up?
18:10:26 <kerlo> I hate doing both. :-)
18:10:34 <kerlo> Well.
18:10:43 <ehird> I hate eating, sleeping and waking up, but not messing around on IRC
18:10:59 <kerlo> Yeah, messing around on IRC is fine because you don't have to actually do anything.
18:11:17 <oklopol> well at least you don't have to achieve anything.
18:11:21 <AnMaster> ok this is evil, a wiki that requires users to use valid xhtml 1.1 syntax (filtered to a safe set of whitelisted tags, attributes and attribute values)
18:11:22 <AnMaster> :)
18:11:29 <AnMaster> no horrible wiki syntax thing
18:11:37 <ehird> markdown isn't horrible
18:11:37 <kerlo> Unfortunately, I have obligations.
18:11:38 <ehird> xhtml 1.1 is
18:11:45 <ehird> therefore, fail
18:11:48 <AnMaster> ehird, well I was thinking of mediawiki syntax
18:11:57 <ais523> AnMaster: the requirement for valid xhtml 1.1 is so it can be filtered more easily?
18:11:58 <AnMaster> also for extra eww this is coded in php
18:12:06 <ehird> please die.
18:12:07 <ehird> :)
18:12:11 <AnMaster> ais523, no because otherwise firefox renders it badly
18:12:14 <AnMaster> ais523, like "error"
18:12:20 <AnMaster> when you send the correct mime type
18:12:21 <AnMaster> and such
18:12:27 <ais523> AnMaster: yes, I know
18:12:31 <ais523> but I mean, why did they pick XHTML
18:12:34 <ais523> not, say, HTML?
18:12:39 <ais523> my guess is so it's easier to filter
18:12:41 <ehird> ais523: AnMaster loves XHTML because it's newer.
18:12:43 <AnMaster> ais523, s/they/me/
18:12:47 <ehird> what am postel's law? what am server-side filtering?
18:12:51 <ehird> what am intelligence
18:12:55 <AnMaster> ais523, also it is easier to filter
18:13:06 <ais523> ehird: yes, what /am/ postel's law?
18:13:13 <AnMaster> also
18:13:18 <ehird> ais523: what am google
18:13:20 <ais523> although "what am intelligence" seems surprisingly philosophical
18:13:21 <AnMaster> all the layout is in css 2.1
18:13:22 <AnMaster> :D
18:13:32 <AnMaster> no tables for layout
18:13:39 <AnMaster> only tables for actual tables
18:13:51 <AnMaster> not even tables for form layout
18:13:57 <ehird> no shit
18:13:59 <ehird> you're so unique
18:14:02 <ais523> AnMaster: how do you enforce that rule?
18:14:03 <ehird> never mind that 500 other people do that.
18:14:04 <AnMaster> ehird, sadly I am
18:14:16 <AnMaster> ais523, I don't, but I mean the software in itself
18:14:32 <AnMaster> iirc even mediawiki use(ed?) tables for login form
18:14:40 <AnMaster> s/ed/d/
18:15:16 <AnMaster> yep it does
18:15:18 <AnMaster> <td class="mw-label"><label for='wpName1'>Username:</label></td>
18:15:18 <AnMaster> <td class="mw-input">
18:15:18 <AnMaster> <input type='text' class='loginText' name="wpName" id="wpName1"
18:15:18 <AnMaster> tabindex="1"
18:15:18 <AnMaster> value="" size='20' />
18:15:19 <AnMaster> </td>
18:15:21 <AnMaster> and so on
18:15:22 <ais523> s/\((.*\?\)/$1/
18:15:31 <AnMaster> ais523, hah
18:15:37 <ais523> not sure if it still does
18:15:56 <AnMaster> ais523, that was from en.wikipedia
18:16:02 <AnMaster> like 10 seconds ago
18:16:13 <AnMaster> ais523, maybe it doesn't in trunk
18:16:17 <AnMaster> but on wikipedia it does
18:16:46 <ais523> AnMaster: I doubt they've fixed it
18:16:59 <ais523> changing one CSS identifier in MediaWiki causes people to kick up a stink sometimes
18:17:09 <AnMaster> ais523, btw: http://rafb.net/p/LWWpzm49.html
18:17:12 <ais523> "You should have consulted the community before messing up all our non-robust scripts!"
18:17:22 <AnMaster> ais523, that is my login form, that renders the same way
18:17:25 <AnMaster> also
18:17:33 <AnMaster> yes mediawiki themeing is a mess
18:17:34 <oerjan> what am grammar
18:17:39 <ais523> no Captcha?
18:17:39 <AnMaster> it should be just changing a css file
18:17:43 <AnMaster> ais523, not for login
18:17:46 <ais523> ah, ok
18:17:58 <AnMaster> ais523, for register there is such support, but register isn't coded yet
18:18:15 <ehird> AnMaster: you're actually building a wiki that requires completely valid, whitelisted xhtml 1.1 as its page input?
18:18:20 <AnMaster> as in, register.php is: <?php die("TODO"); ?>
18:18:20 <ehird> wow, you're more idiotic than I previously thought possible
18:18:33 <AnMaster> ehird, not my choice, this is for a school course
18:18:33 <ais523> actually, I like the idea
18:18:46 <ais523> although it would be for different purposes than Wikipedia, say
18:18:47 <ehird> AnMaster: I am sure "completely-valid XHTML 1.1" is your choice.
18:18:54 <AnMaster> ehird, yes...
18:18:56 <ehird> Also, I really don't care who likes the idea, because it's a bad one.
18:19:03 <AnMaster> ais523, oh and it uses object orientation in php
18:19:04 <ais523> instead of a quick-edit anyone-can-join wiki, it would be a lets-use-this-to-maintain-a-website wiki
18:19:08 <AnMaster> NOT my choice
18:19:12 <ais523> AnMaster: so do lots of other PHP programs
18:19:16 <AnMaster> true
18:19:19 <ehird> Maintaining a website in XHTML 1.1 is grounds for the death penalty.
18:19:22 <AnMaster> but php OOP is horrible
18:19:24 <AnMaster> ever used it?
18:19:35 <AnMaster> ais523, btw my login form css basically works similar to this: http://www.websiteoptimization.com/speed/tweak/forms/
18:19:37 <ais523> no, but I've tried to read code that uses it
18:19:45 <AnMaster> except not px but em for the sizes
18:19:51 <AnMaster> to make it scale correctly
18:19:53 <ais523> ehird: maintaining a website in XHTML is taking all the suffering onto yourself for the good of the rest of the world
18:19:58 <ais523> writing in plain HTML is being selfish
18:19:59 <ehird> ais523: no, there is no good
18:20:04 <ehird> there are no exceptions to postel's law
18:20:14 <ais523> ehird: writing in XHTML /is/ postel's law
18:20:22 <ehird> it's not
18:20:29 <AnMaster> wtf is postel's law
18:20:29 <AnMaster> ?
18:20:33 <ais523> it is, because it's very strict and easy to parse for other programs
18:20:34 <ehird> google it.
18:20:42 <ehird> valid, well-formed, XHTML 1.1 is no more cleaner and easy to process than the same with HTML 4.01
18:20:46 <ais523> AnMaster: check on Wikipedia, which calls it something else but has a redirect
18:20:47 <ehird> so sorry, that's just bullshit.
18:20:49 <AnMaster> hm
18:20:52 <ais523> ehird: and yes it is, you can't process HTML with CSLT
18:20:55 <ais523> *XSLT
18:21:08 <ehird> except you shouldn't process with XSLT, one because it sucks ,and two because it violates postel's law
18:21:23 <AnMaster> ais523, I don't do that, but it would be nice to allow
18:21:56 <AnMaster> ehird, also the code is made so it would be easy to plug in a wiki-syntax engine
18:22:00 <AnMaster> in the page render function
18:22:02 <AnMaster> if you wanted
18:22:11 -!- Corun has quit (Read error: 110 (Connection timed out)).
18:22:26 <AnMaster> two places only, vcms_page->preview(); and vcms_render->render()
18:22:28 <AnMaster> ;P
18:22:51 <AnMaster> oh and never touch page id -1 because that means it is some internally generated page, like the login page
18:22:58 <AnMaster> but yes quite simple
18:24:51 <ais523> ehird: do you favour Postel's Law for everything, or only for internet communications?
18:24:59 <ais523> do you favour it for, say, functions inside a C program?
18:25:15 <ehird> ais523: It is complicated.
18:25:26 <AnMaster> ais523, I don't think so, he claimed he disliked "defensive coding" recetly
18:25:28 <AnMaster> recently*
18:25:28 <ehird> For closed-world things -- e.g., functions inside a C program -- it doesn't apply.
18:25:41 <ehird> For open-world things -- e.g., the entry point of a C program, or a website -- it applies.
18:25:50 <AnMaster> and I tend to agree, though assert() is an exception.
18:25:56 <AnMaster> it is for debugging
18:25:57 <ehird> One is controlled, the other isn't.
18:26:24 <ais523> AnMaster: I'm currently trying to get a BF interpreter to pass splint strict mode
18:26:32 <ais523> it requires jumping through all sorts of hoops
18:26:34 <AnMaster> ais523, heh
18:26:34 <ehird> http://diveintomark.org/archives/2004/01/08/postels-law
18:26:35 <ehird> http://www.aaronsw.com/weblog/001025
18:26:37 <ehird> http://www.b-list.org/weblog/2008/jun/18/html/
18:26:38 <AnMaster> ais523, such as?
18:26:41 <ehird> Read those (in order.)
18:26:43 <ais523> I have an auxiliary /function/ guarded by NDEBUG
18:26:58 <ais523> which checks if argc is larger than a certain value
18:27:02 <ais523> and takes argv as an argument and ignores it
18:27:22 <ais523> the function is expressing the fact that argv has argc elements, in a way that splint can understand and verify is correct
18:27:39 <AnMaster> I have a few NDBUG guarded funcs in cfunge, dumping functions, "clean up on exist to make valgrind output simpler, even though this could be left to the OS"
18:27:43 <AnMaster> and such
18:28:11 <AnMaster> ais523, but your sounds strange
18:28:16 <AnMaster> ais523, really strange
18:28:20 <ais523> maybe I should paste it
18:28:25 <AnMaster> I would check argc in main() probably
18:28:32 <AnMaster> or actually, I would use getopt()
18:28:40 <ais523> oh, so do I, but Splint didn't notice it there
18:28:43 <AnMaster> yes it is POSIX, but I don't care about windows
18:28:45 <ais523> and I'm not even getting options
18:29:00 <ais523> I'm trying to persuade Splint that I can read the first command-line arg without buffer overflow
18:29:03 <ehird> The nice thing about dependently typed languages is that you can statically prevent incorrect data.
18:29:21 <ais523> the buffer-overflow checks are a bit primitive, you have to jump through loads of hoops to guarantee to it that you're doing things right
18:29:23 <AnMaster> ais523, hopefully the OS should leave a \0 at the end of it...
18:29:39 <ais523> AnMaster: again, it does
18:29:50 <ais523> but Splint doesn't have a "this is a null-terminated array of strings" annotation
18:30:04 <AnMaster> ais523, well paste that function then
18:30:28 <AnMaster> ais523, also does it have a "this is a null terminated string?" annotation?
18:30:32 <AnMaster> if yes then doing:
18:30:34 <ehird> e.g., main :: [string] `ofLength` 2 -> io ()
18:30:47 <ehird> then (main a = print a) will fail
18:30:48 <AnMaster> char * argv1 = *argv;
18:30:49 <AnMaster> would work
18:31:02 <AnMaster> and then annotating argv1
18:31:17 <ais523> strange, my web browser's going slow
18:31:21 <ais523> also, I don't think so, strange really
18:31:32 <ehird> because you need to _prove_ to the compiler that you can't pass it non-2 length arrays
18:31:32 <ehird> or rather
18:31:32 <ehird> when you call it
18:31:32 <ehird> you have to prove to the compiler that the array you passed it is of length 2
18:31:35 <ehird> so in your entry point, you have to check the length of the array
18:31:41 <ehird> before calling main
18:31:47 <AnMaster> ehird, what lang was that?
18:31:51 <ais523> AnMaster: http://rafb.net/p/sRPjBK56.html is the whole program
18:31:56 <ehird> AnMaster: a hypothetical Haskell with dependent types
18:31:59 <ais523> check_argc_argv is the relevant function
18:32:01 <AnMaster> ah
18:32:19 <ehird> dependent types give you immense flexibility and awesome, at the expense of not being able to prove that your compilation will terminate
18:32:30 <ehird> (because the type system == the normal language, and is therefore TC)
18:32:31 <AnMaster> /*@*/ ?
18:32:36 <AnMaster> wtf does that do
18:32:39 <ais523> AnMaster: "This function does not modify any global variables"
18:32:49 <AnMaster> assert(argc >= minlength);
18:32:49 <AnMaster> /* Splint seems not to know about assert... */
18:32:49 <AnMaster> if (argc < minlength) {abort();}
18:32:58 <AnMaster> if it doesn't know, why not remove it?
18:33:08 <ais523> it does know about assert, just doesn't notice it for some reason
18:33:45 <AnMaster> ais523, know what? I would give up on splint instead of doing that
18:33:56 <ais523> AnMaster: you don't understand, this is an eso project
18:34:03 <AnMaster> also the splint project was in practise dead last I checked
18:34:05 <ais523> I have splint's warning levels /way/ above the typical levels
18:34:10 <AnMaster> ais523, ok why?
18:34:14 <ais523> cfunge is designed to be as fast as possible
18:34:21 <ais523> this program is designed to be as Splintable as possible
18:34:27 <ais523> still not perfect, btw
18:34:28 <AnMaster> ah right
18:34:30 <AnMaster> makes sense
18:34:42 <ais523> it thinks there are some potentially undefined structure fields, and I have to resort to /*@- on occasion and I don't want to
18:34:43 <AnMaster> /\?
18:34:44 <ehird> i think you could get very far by hooking a dependent types layer onto C
18:34:48 <ehird> e.g.
18:34:48 <AnMaster> as in
18:34:49 <ais523> AnMaster: and
18:34:50 <AnMaster> /*@requires maxRead(argv) == argc
18:34:51 <AnMaster> /\ maxSet(tape) >= 100663378
18:34:51 <AnMaster> /\ maxRead(tape) >= 100663378;@*/
18:34:54 <AnMaster> ais523, hm ok
18:34:58 <AnMaster> strange notation for it
18:35:02 <ais523> AnMaster: it's from logic
18:35:04 <AnMaster> & or && would make more sense
18:35:23 <AnMaster> ais523, well the splint devs were making a program checking C source, maybe C notation would have made sense then
18:35:46 <AnMaster> also the logic notation is one symbol and not some sort of mini-ascii art of it
18:35:47 <ais523> don't ask me to make Splint make sense
18:35:56 <ais523> although Splint has inspired me to write an esolang, btw
18:35:59 <ehird> void real_main(int argc /**@ == length(array)*/, char **argv /**length(@) == 3 */)
18:36:01 <ehird> or something
18:36:02 <AnMaster> ais523, oh?
18:36:06 <ehird> and then the layer requires you to prove it in calls
18:36:07 <ehird> so
18:36:14 <ais523> which is like C, but impossible to write buggy programs in
18:36:16 <ais523> is the idea
18:36:20 <ais523> well, logic bugs still possible
18:36:24 <AnMaster> ais523, hm details?
18:36:28 <ehird> int main(int argc, char **argv) { if (argc != 3) { ...error... } else { real_main(argc, argv); } }
18:36:29 <AnMaster> also there are langs like that
18:36:30 <ais523> but memory leaks and buffer overflows and so on impossible
18:36:35 <ehird> and since argc == length(argv)
18:36:37 <ais523> and of course there are
18:36:38 <ehird> and argc is verified to be 3
18:36:40 <ehird> the preconditions are met
18:36:41 <ais523> but the point is, to do it in C
18:36:43 <AnMaster> ais523, BitCC and Cyclone may interest you
18:36:44 <ehird> and the program can compile
18:36:49 <ais523> so you still have to write the free()s and so on
18:36:50 <ais523> and bounds checks
18:36:54 <AnMaster> both are made to be hard to write buggy things in
18:36:55 <ais523> the compiler just verifies they're there
18:37:00 <AnMaster> and both are C-like
18:37:27 <AnMaster> ais523, hah
18:37:42 <AnMaster> ais523, could be done as a GCC middle end maybe?
18:37:47 <ais523> maybe
18:37:48 <AnMaster> if such a thing exists
18:37:50 <ais523> I didn't even know it had middle ends
18:37:59 <ais523> the problem is that the front end/back end transition is blurry
18:38:00 <AnMaster> ais523, note what I said after
18:38:10 <ais523> there's a chain of back ends, more or less
18:38:11 <AnMaster> hm ok
18:38:18 <ais523> and the various front ends filter into different places in it
18:38:28 <ais523> even gcc-bf has to interact with the front ends slightly
18:38:28 <AnMaster> ais523, where does mudflap in GCC insert it's calls?
18:38:37 <ais523> to tell them how to send data to the back ends
18:38:41 <ais523> also, I don't know
18:38:53 <AnMaster> ais523, I assume you know what -fmudflap is though?
18:38:57 <ais523> (gcc-bf has to request varargs calls to be sent a certain way, so it can handle them)
18:39:00 <AnMaster> very useful thing
18:39:02 <ais523> AnMaster: I do, but not how it works
18:39:21 <AnMaster> ais523, inserting lots of canary values iirc and checking every read/write access
18:39:27 <ais523> yes, I mean inside gcc
18:39:30 <ais523> I don't know what it hooks into
18:39:31 <AnMaster> somewhat like valgrind except it can catch some stuff gcc doesn't
18:39:43 <AnMaster> err catch some stuff valgrind doesn't
18:39:52 <AnMaster> like 2 valid variables after each other
18:40:11 <AnMaster> if both are static valgrind can't check that access doesn't pass from one over to the other
18:40:28 <ais523> yes
18:40:48 <AnMaster> mudflap can catch that
18:40:51 <AnMaster> of course valgrind finds stuff mudflap doesn't
18:41:32 <AnMaster> /*@-retvalint@ We don't care if fputs fails, we can't do anything... */
18:41:33 <AnMaster> wtf
18:41:40 <AnMaster> ais523, why not cast each to (void)
18:41:41 <AnMaster> instead?
18:42:20 <ais523> AnMaster: hmm... I wonder if that works
18:42:25 <ais523> I've been casting to void elsewhere
18:42:32 <AnMaster> ais523, also: default: continue; /* a comment */
18:42:35 <ais523> but possibly Splint doesn't let you do that for non-printf functions
18:42:39 <AnMaster> well is this a C tutorial?
18:42:52 <ais523> I must have phased out there
18:42:57 <ais523> no idea what the comment was meant to say
18:43:03 <ais523> oh, no it is right
18:43:07 <AnMaster> line 195
18:43:09 <ais523> that case catches comments in the input BF
18:43:20 <AnMaster> oh ok
18:43:26 <ehird> Musings on a static analyzer for C: http://pastie.org/352320
18:43:52 <ais523> let's make something like Splint that actually works
18:43:58 <ehird> ais523: see http://pastie.org/352320
18:44:01 <AnMaster> ais523, and works for C99
18:44:13 <ais523> ehird: I have
18:44:15 <ais523> that's very splint-like
18:44:21 <ehird> yes, but more general
18:44:21 <ehird> and sane
18:44:23 <AnMaster> ais523, and can handle ## in macros
18:44:28 <ehird> [and compile-time turing complete :DDDDDD]
18:44:52 <ais523> AnMaster: and trigraphs?
18:44:59 <ais523> (N.B. I haven't tried to run Splint with trigraphs)
18:44:59 <AnMaster> ais523, I don't use them
18:45:04 <ais523> neither do I normally
18:45:09 <AnMaster> ais523, what about digraphs?
18:45:12 <ais523> besides, you're in C99, you have digraphs now
18:45:12 <AnMaster> they exist too iirc
18:45:13 <AnMaster> in C
18:45:18 <AnMaster> ah that is C99?
18:45:20 <AnMaster> hm ok
18:45:26 <AnMaster> ais523, I don't use digraphs either
18:45:26 <ais523> yes, they were added as they're easier to type than trigraphs
18:45:39 <ehird> oi, people, obsess over my awesome.
18:45:51 <ais523> AnMaster: they're useful if your character set doesn't have { in
18:46:03 <ais523> I mean, how else would you type C in such a character set?
18:46:12 <AnMaster> ais523, I'm not sure if it does, but I sure hope POSIX requires that
18:46:26 <ais523> AnMaster: there's a standard for which characters are guaranteed in a character set
18:46:29 <ais523> { is not one of them
18:46:32 <ehird> OI :|
18:46:37 <ais523> which is why C has digraphs
18:46:48 <ais523> (and formerly trigraphs)
18:46:49 <AnMaster> ais523, true, but I think all POSIX systems would have it or?
18:46:55 <ais523> does POSIX require ASCII/
18:47:05 <AnMaster> ais523, not sure
18:47:41 <ehird> incidentally, you can take proves further
18:47:42 <ehird> e.g.
18:47:51 <AnMaster> Conforming implementations shall support one or more coded character sets. Each supported
18:47:51 <AnMaster> locale shall include the portable character set, which is the set of symbolic names for characters in
18:47:51 <AnMaster> Table 6-1. This is used to describe characters within the text of POSIX.1-200x. The first eight |
18:47:51 <AnMaster> entries in Table 6-1 are defined in the ISO/IEC 6429: 1992 standard and the rest of the characters |
18:47:51 <AnMaster> are defined in the ISO/IEC 10646-1: 2000 standard.
18:47:52 <AnMaster> hm
18:47:55 * AnMaster reads the table
18:48:04 <ehird> void assert_not_empty(char *s) /*@ proves (strlen(s) > 0) */
18:48:10 <AnMaster> also those | are due to this being a "diff from 2001 edition"
18:48:13 <ehird> that's only useful if you roll your own logic in there though
18:48:14 <ehird> if you just do
18:48:14 <ais523> ehird: ok, that's clever
18:48:17 <ehird> assert(strlen(s) > 0)
18:48:20 <ehird> then it works anyway
18:48:24 <ehird> since assert(x) proves x
18:48:33 <ais523> would strlen be special-cased in the linter?
18:48:36 <AnMaster> ehird, the meaning of strlen is built in?
18:48:40 <ehird> nope
18:48:41 <ais523> or would it deduce strlen's properties from its source?
18:48:52 <ehird> well, it'd come with a standard block of definitions
18:48:56 <ehird> for the c standard library
18:49:03 <ehird> but you could easily add your own for any function
18:50:05 <AnMaster> ais523, {} are in table T-1
18:50:05 <AnMaster> err
18:50:05 <AnMaster> 6-1
18:50:05 <AnMaster> so I think this means posix requires that
18:50:05 <AnMaster> <left-brace> { <U007B> LEFT CURLY BRACKET
18:50:05 <AnMaster> <left-curly-bracket> { <U007B> LEFT CURLY BRACKET
18:50:05 <AnMaster> <vertical-line> | <U007C> VERTICAL LINE
18:50:05 <AnMaster> <right-brace> } <U007D> RIGHT CURLY BRACKET
18:50:05 <AnMaster> <right-curly-bracket> } <U007D> RIGHT CURLY BRACKET
18:50:05 <AnMaster> wtf?
18:50:11 <AnMaster> several names for the same symbol?
18:50:17 <ehird> ais523: essentially, this system would be an extensible system for writing code checkers
18:50:22 <ehird> from inside the actual code
18:50:25 <ais523> yes
18:50:33 <ehird> with a large base checker built in
18:50:57 <ehird> i can forsee, e.g., people offering checker files for all sorts of libraries
18:51:04 <AnMaster> ais523, yes POSIX.1-2008 at least requires {}
18:51:06 <ehird> and you just import them and off you go, compile-time verification
18:51:11 <AnMaster> I don't have a 2001 copy
18:51:51 <ehird> i think what i'm saying here, is that i am crazy, and awesome
18:52:34 <ehird> and yeah
18:52:34 <AnMaster> ehird, somewhere in between I think
18:52:51 <ais523> ehird: yep, pretty much what I was thinking too
18:52:59 <ais523> does it track memory allocation the same way?
18:53:13 <AnMaster> it is a very nice idea ehird
18:53:13 <ehird> AnMaster: no, void assert_awesome(Person *person) /*@ need (is_crazy(person)); proves (is_awesome(person)) */
18:53:25 <AnMaster> ehird, that is a logic bug
18:53:30 <ehird> no, that's life
18:53:37 <AnMaster> ehird, life isn't boolean
18:53:48 <ehird> ais523: i'm pretty sure you could write that to be non-core
18:53:57 <ehird> you'd need to put a property on (*x)
18:54:04 <ehird> need (valid_memory(x))
18:54:13 <AnMaster> ehird, I think ais523 meant tracking memory leaks
18:54:22 <ehird> i'm not sure I get what you mean
18:54:23 <AnMaster> as in finding missing free
18:54:31 <AnMaster> when pointers go out of scope
18:54:33 <ais523> yes, memory leaks and use after free
18:54:41 <ais523> what splint's meant to do but doesn't because the annotations are too general
18:55:00 <ehird> use after free is easy
18:55:11 <ehird> just add that property to (*x) and define free(x) as proves (!valid_memory(x))
18:55:12 <AnMaster> what about tracking when allocations go out of scope?
18:55:34 <ehird> AnMaster: like how
18:55:38 <AnMaster> ehird, also it need to track when pointers are copied and this one being applied to other copies of that pointer
18:55:54 <AnMaster> otherwise it wouldn't detect stuff like:
18:55:55 <ais523> ehird: int* foo (void) {int a = 4; return &a;}
18:55:56 <ehird> AnMaster: pointers are copied is just variable assignment
18:55:59 <ehird> and of course it'd track variable assignment
18:56:01 <AnMaster> char* x = y;
18:56:02 <ais523> that's an error, you should be able to detect it
18:56:04 <AnMaster> free(y);
18:56:09 <AnMaster> use(*x);
18:56:16 <ehird> AnMaster: yep, that's variable assignment :P
18:56:20 <ehird> ais523: ah
18:56:22 <ais523> ehird: the problem is tracking what's aliasing what
18:56:25 <ehird> gcc already warns about that, does it not?
18:56:25 <AnMaster> ehird, but:
18:56:32 <AnMaster> int x = y;
18:56:36 <AnMaster> y = 0;
18:56:45 <AnMaster> then x is still valid
18:56:50 <AnMaster> so you need to treat that specially
18:56:52 <ehird> AnMaster: no duh
18:56:53 <ehird> :P
18:56:58 <ais523> ehird: lots of things do
18:57:02 <ais523> but that's an obvious case
18:57:03 <AnMaster> ehird, yes that = "*"
18:57:18 <ehird> ais523: right, but you can make gcc make just that an error can't you?
18:57:22 <ais523> consider {char* a = malloc(20); b = a; free(a);}
18:57:27 <ais523> gcc won't catch that
18:57:28 <ehird> i mean, this is really for the sort of non-trivial stuff, like hugely nested frees and such
18:57:32 <AnMaster> ehird, gcc is far from perfect
18:57:36 <ehird> ais523: right, it'll notice b is invalid
18:57:37 <ais523> but it's the same thing, really
18:57:41 <ehird> because it contains the same pointer as a
18:57:46 <ehird> and a is no longer valid_memory
18:57:50 <ehird> so b isn't, obviously
18:57:51 <AnMaster> ehird, all the sort of memleaks that valgrind can detect
18:57:54 <ais523> yes, that's the sort of tracking that I was talking about
18:57:55 <AnMaster> it should try to do
18:58:02 <ehird> AnMaster: yes, hopefully
18:58:05 <ais523> now, suppose you have the C-INTERCAL Threading Structure
18:58:14 <ais523> how do you detect that memory's being freed exactly once there
18:58:16 <ehird> ais523: i don't want to suppose that :D
18:58:16 <AnMaster> ais523, oh no
18:58:26 <AnMaster> ehird, I agree, thought it should try to do that
18:58:31 <ais523> AnMaster: it's the most complex memory structure I know of offhand
18:58:36 <ais523> it's full of aliases
18:58:40 <ais523> and other interesting stuff
18:58:42 <AnMaster> ais523, I think runtime checking of it is the only sane way
18:58:46 <AnMaster> such as valgrind
18:58:50 <ehird> ais523: remember that it can't just magically infer stuff
18:58:52 <AnMaster> of mudflap
18:58:53 <ehird> if you say a function proves (x)
18:58:54 <ais523> hmm... for something saner, what about a skiplist?
18:58:57 <ehird> then it takes your word for it
18:59:02 <ais523> ugh, no
18:59:08 <ehird> well, it has to
18:59:11 <ais523> you should state the proves by hand
18:59:14 <ehird> um
18:59:15 <ehird> no duh
18:59:16 <ais523> but it should verify that it is indeed proven
18:59:19 <ais523> that's what Splint does
18:59:20 <ehird> it can't
18:59:22 <ehird> it can't
18:59:23 <AnMaster> ehird, there should be a mode to check what you tell it
18:59:24 <ehird> that's impossible
18:59:29 <ehird> that's halting problem impossible
18:59:33 <ais523> ehird: it's normally possible, though
18:59:36 <AnMaster> at least trying to
18:59:39 <AnMaster> and what ais523 said
18:59:42 <ehird> ais523: it's not even worth it
18:59:42 <ais523> just because it's halting impossible sometimes doesn't mean you can't do it in the general case
18:59:48 <ais523> *non-general
18:59:57 <ais523> and then, you just make programs where it can't prove compile errors
18:59:58 <ehird> the amount of functions you declare as proving things is a small amount compared to other types
19:00:00 <ais523> that was my idea
19:00:01 <ehird> and you should check them carefully
19:00:13 <ehird> as, well, if it can't trust validators to validate, it can't do anything, can it?
19:00:29 <ais523> *it can't /trust/ anything
19:00:31 <ais523> it can do a lot
19:00:39 <ehird> no, it can trust this:
19:00:39 <ais523> it can trust + to add, for instance
19:00:46 <ais523> and the control variable of a while to be 0 when it ends
19:00:47 <ehird> void assert(int x)
19:00:47 <ehird> /*@ proves (x) */
19:00:48 <ehird> {
19:00:50 <ehird> if (!x) {
19:00:52 <ehird> /* error out here... */
19:00:54 <ehird> }
19:00:55 <AnMaster> ais523, yes of course
19:00:56 <ehird> }
19:00:58 <ehird> that's one of the rare provers
19:01:00 <ehird> and it should be effectively foolproof
19:01:02 <ehird> there's not much room for error there
19:01:03 <AnMaster> ais523, unless you use while ++
19:01:12 <ehird> as a good rule of thumb, if you can't look at every line and certify that it works correctly
19:01:13 <ais523> ehird: it can easily deduce that that proves, though
19:01:14 <ehird> don't make it a prover :P
19:01:17 <AnMaster> or some a non-trivial while
19:01:23 <ais523> you don't need to take the programmer on trust
19:01:27 <ehird> ais523: really, it's best to use discretion when defining provers.
19:01:32 <ehird> just don't, in general
19:01:33 <AnMaster> ais523: while (str[i] != 0) { ... }
19:01:33 <AnMaster> ?
19:01:34 <ais523> you know exit (or what ever you use) errors out permanently
19:01:35 <ehird> use assert(), or whatever
19:01:37 <ehird> make a primitive prover
19:01:38 <ais523> so the function never ends unless x is true
19:01:38 <ehird> and use it
19:01:39 <AnMaster> actually
19:01:40 <ehird> and get its assurance
19:01:41 <ais523> so it does in fact prove
19:01:42 <AnMaster> ais523: while (str[i++] != 0) { ... }
19:01:42 <AnMaster> even
19:01:51 <ehird> because that will work much better
19:01:55 <ehird> and it will edtect when it doesn't really prove it
19:02:00 <ehird> beacuse it uses an asserted-prover incorrectly
19:02:13 <ehird> that's the thing, provers should be rare and very carefully written and small
19:02:20 <ehird> everything else can be inferred on top of them
19:02:24 <ais523> ehird: what I'm saying is there should be /no provers/ under your definition
19:02:30 <ehird> ais523: yes, but that's shaky
19:02:32 <ais523> not just rare and carefully written and small
19:02:33 <ehird> it's not general
19:02:35 <ehird> and you could slip up
19:02:38 <ais523> you can infer everything from the lang itself
19:02:39 <ehird> very easily
19:02:39 <ais523> it's very general
19:02:40 <ehird> no
19:02:41 <ais523> no slips
19:02:41 <ehird> you can't
19:02:45 <ehird> because it's the fucking halting problem
19:02:53 <ais523> ehird: no, it isn't
19:03:02 <AnMaster> no?
19:03:04 <ais523> look at your assert above, for instance
19:03:08 <ehird> anyway, you CAN'T even inferr it, ais523
19:03:08 <ehird> beacuse
19:03:10 <ehird> you don't know
19:03:12 <ehird> what it does
19:03:14 <ehird> on
19:03:16 <ehird> error
19:03:17 <ais523> it's very easily to statically prove that x is true if it ever reaches the end of the function
19:03:18 <ehird> it could print out to the screen
19:03:20 <ehird> it could set a toaster off
19:03:22 <ais523> and I'm assuming something like an abort here
19:03:23 <ehird> it could eat loads of memory on purpose
19:03:25 <ehird> it could play pacman
19:03:27 <ehird> ais523: aha, assuming
19:03:31 <ehird> so now you have a new class
19:03:32 <ehird> aborters
19:03:39 <ehird> and you can't handle errors your own way
19:03:40 <ehird> great
19:03:41 <ais523> ehird: yes, all static analysers use those AFAIK
19:03:43 <ais523> and you can
19:03:49 <ehird> yes, but they shouldn't
19:03:55 <ais523> because that method is itself verifiable to abort
19:04:04 <ais523> if it doesn't abort, then the assert isn't actually proving anything
19:04:05 <AnMaster> idea: just use haskell, should be way easier to prove
19:04:05 <ehird> it's far more robust to have a few primitive provers that are carefully checked
19:04:09 <ehird> and rarely ever declare anything as a prover
19:04:15 <ais523> ehird: yes, it's called the operators of the language
19:04:15 <ehird> AnMaster: er, shut up, it's exactly the same for haskell
19:04:17 <ais523> like while and +
19:04:25 <ais523> those are your primitives
19:04:27 <ehird> ais523: have fun solving the halting problem
19:04:30 <AnMaster> ehird, excepts the dirty bits are all in monads
19:04:42 <ehird> AnMaster: stop bullshitting...
19:04:44 <ais523> ehird: it doesn't need to solve the halting problem, it's a static analyser by definition
19:04:48 <ais523> it only has to do a finite amount of work
19:04:48 <AnMaster> ehird, sorry :P
19:04:59 <AnMaster> ehird, I meant nomads of course
19:05:01 <ais523> it may not be able to prove everything, but if it can't, that's a warning/error
19:05:17 <ais523> and the programmer should annotate the program defensively so it can
19:05:32 <ehird> ais523: if you think you can write a program that takes an arbitrary function and verifies whether it actually "proves" (where you don't know how it will handle success/failure of this proof) an arbitrary piece of code boolean condition
19:05:41 <ais523> for instance, you can get assert to find a counterexample to the Riemann hypothesis if it finds the assertion is false
19:05:43 <ehird> even though it may use different ways to say the same value than the prof
19:05:44 <ehird> proof
19:05:46 <ehird> then you're a crackpot
19:05:52 <ehird> and I'm not going to continue talking
19:05:53 <ais523> then, the static analyser will mark that code as buggy, even though it might not be
19:05:55 <ehird> if you don't believe that
19:05:59 <ehird> then provers are a better solution
19:06:36 <ais523> ehird: I think I can write a program that takes an arbitrary function, and a statement about what it's meant to prove, and either deduce (in the 99% of cases that matter in practice) that it does indeed prove that, or be unable to prove it proves that and errors out
19:06:47 <ehird> go do it
19:06:55 <ais523> you can't solve the halting problem. But you can write a program in such a way that it can be verified that the program halts
19:06:57 <ais523> there's a difference
19:07:06 <ehird> meanwhile i'll spend the extra 5 seconds when writing a program to make sure the provers are correct, after having saved 5 years that it'll take you to write your mythical program
19:07:13 <ehird> hf
19:07:22 <AnMaster> ehird, "<ehird> then you're a crackpot" <-- just remember he *did* win the wolfram price
19:07:25 <ais523> ehird: but then, it's theoretically possible that someone could write a buggy program
19:07:29 <ais523> AnMaster: yep, I'm a crackpot
19:07:32 <ehird> AnMaster: Argument to authority also makes you a crackpot.
19:07:33 <AnMaster> even if he *is* a crackpot as you say, he is a smart one
19:07:34 <AnMaster> :P
19:07:53 <ehird> ais523: there are always buggy programs.
19:07:57 <ehird> fuck, this checker will have like 500 bugs
19:08:04 <ehird> the point is mitigation to a reasonable level
19:08:15 <oklopol> [i for i in [1,2,3,4,5] while i<3] i'm sad this doesn't exist in python
19:08:15 <ehird> and since provers should be rare, you can mitigate their correctness almost 100%
19:08:20 <ehird> save things like the stdlib failing
19:08:21 <ehird> oklopol: you can
19:08:24 <AnMaster> ehird, same as the difference between eccentric(sp?) and mad
19:08:26 <ehird> [i for i in [1,2,3,4,5] if i<3]
19:08:34 <AnMaster> except not about money
19:08:36 <oklopol> ehird: that's only the same in that case
19:08:55 <oklopol> i meant, you know [i for i in [1,2,3,4,5,4,3,2,1] while i<3] >>> [1,2]
19:09:34 <ais523> ehird: the thing is, I don't see why on earth you're saying that your assert needs to be marked as a prover, when it's trivially veifiable
19:09:43 <ais523> it's much easier to verify than most of the nonprover functions out there
19:09:55 <ais523> you're saying provers should be trivially verifiable. If it's so trivial, why not verify them automatically?
19:09:59 <AnMaster> ehird, it should have fewer bugs than qmail
19:10:01 <ehird> ais523: because assert is a trivial example
19:10:37 <ehird> and i really don't care what you think is theoretically possible because the difference in the two in practice is neligible except mine invites more careful checking of programs, and takes years less tow rite
19:10:55 <ehird> AnMaster: isn't qmail very bug-free?
19:10:56 <ais523> ehird: yours takes longer to write, and checks less of the program
19:11:06 <ehird> ais523: you're wrong.
19:11:22 <AnMaster> ehird, yes it is
19:11:59 <AnMaster> ehird, there hasn't been a bug for years iirc, and between 1.0 and now there has been less than 10 bugs iirc
19:12:10 <ais523> ehird: can you give an example of a complicated prover?
19:12:20 <ehird> Is qmail licensed yet?
19:12:37 <ehird> ais523: sure -- think about e.g. KDE/Qt
19:12:38 <AnMaster> ehird, public domain since some time iirc
19:12:52 <ais523> ehird: what would it be proving?
19:12:53 <AnMaster> ehird, that would involve proving X first
19:12:53 <ehird> they almost certainly have bulky assertion functions which do things like report the error to a gui
19:13:01 <ehird> ais523: who knows?
19:13:02 <ehird> something.
19:13:08 <ais523> ehird: yes, but it's trivial to verify that the functions in question exit
19:13:13 <ais523> rather than returning
19:13:16 <ehird> exiting is NOT ALWAYS CORRECT
19:13:17 <AnMaster> ehird, and yet qmail is one of the most used (the most used?) MTAs out there
19:13:18 <ais523> you don't even have to analyse the whole function for that
19:13:24 <ehird> it could change the program to bug reporting mode instead
19:13:27 <ais523> ehird: do they exit the program, or do they continue it?
19:13:34 <ehird> ais523: continuing COULD BE CORRECT
19:13:35 <ais523> if they're changing to bug report mode, your assertion is in fact /false/
19:13:39 <ais523> you've proved something false in that case
19:13:45 <ais523> so your prover is actually buggy
19:13:49 <ehird> ... no
19:13:50 <ehird> that's retarded
19:13:58 <ehird> you've found that somethign is false, and you're handlnig that
19:13:59 <AnMaster> ehird, it is theoretically correct
19:14:01 <ais523> if continuing from an assert when the condition is false is /ever/ correct, it /hasn't proved what it's claiming to prove/
19:14:14 <ehird> your definition of prove is completely wrong in the context
19:14:16 <ais523> a more interesting case is if assert somehow alters the program's state so the condition becomes true
19:14:25 <ehird> i'm not even talking about it any longer because it's worthless
19:14:26 <oklopol> seems ehird is one of those people who take the halting problem as the end of topic of proving.
19:14:32 <ehird> no
19:14:35 <ais523> ehird: using your method, assert(x != NULL); putchar(*x); could segfault
19:14:41 <ehird> ais523: no, it couldn't
19:14:48 <ehird> it could pop up a bug reporting window
19:14:51 <ais523> yes it could, if assert ever returned when x was null
19:14:53 <ehird> which then exit()s in itself
19:14:55 <ais523> yes
19:14:59 <ehird> or
19:15:03 <ais523> in that case, it's trivial to determine that assert exits
19:15:03 <ehird> maybe the platform doesn't do exit()
19:15:05 <ehird> maybe it's embedded
19:15:09 <AnMaster> oklopol, oh yes, somewhat like a Godwin's law for TC discussions?
19:15:10 <ehird> maybe it goes into an infinite loop of flashing a warning light
19:15:14 <ais523> ehird: yes
19:15:25 <ais523> anything but a complicated infiniloop is relatively easy to analyse
19:15:27 <ehird> you can't fucking say that the program exiting is the only way it can handle a false proof
19:15:31 <ehird> because that is simply WRONG
19:15:41 <ais523> ehird: no, the only way it can handle it is /failing to continue past that point/
19:15:48 <ais523> there are only two ways to do that, exit and infiniloop
19:15:59 <ehird> and NEITHER HAS TO HAPPEN IN THE ACTUAL FUNCTION
19:16:04 <ais523> well, exactly
19:16:06 <ehird> it could happen in a function in a binary blob that it calls
19:16:09 <ais523> that's what the static analyser is for!
19:16:10 <ehird> there's no way to prove THAT works
19:16:11 <AnMaster> ais523, err
19:16:14 <AnMaster> ais523, not correct
19:16:14 <ais523> you analyse the functions it calls
19:16:21 <oklopol> AnMaster: yes, kinda like tcness is for language discussions
19:16:22 <AnMaster> ais523, if another thread alters this thread
19:16:23 <ehird> ais523: except you can't assert that a function in a binary blob exits
19:16:25 <AnMaster> it could return
19:16:29 <ehird> because it needs to fucking statically analyze the source for that
19:16:31 <AnMaster> ais523, !
19:16:32 <ehird> beacuse it uses your retarded scheme
19:16:33 <ais523> ehird: well, those do need annotations as primitives
19:16:39 <ehird> o ho ho
19:16:40 <ais523> but then, you're just taking the programmer on trust
19:16:41 <AnMaster> ais523, this gets hugely complicated if you use phtreads
19:16:42 <ehird> so now you have proves as an annotation
19:16:43 <ais523> which is a bad idea
19:17:09 <ais523> ehird: yes, but you have to realise that you're sacrificing guaranteed correctness in that situation
19:17:17 <AnMaster> ais523, I'm uncertain you could prove anything in fact if the program was threaded
19:17:18 <ais523> in fact, trusting binary blobs to do anything particular at all is a bad idea
19:17:22 <ais523> if you want to make sure your program is gine
19:17:32 <ehird> arguing with you is so pointless, you just continually reassert that you're right immediately after admitting you're wrong
19:17:33 <ais523> AnMaster: you can, you just need to make assertions about how the threads affect each other
19:17:34 <AnMaster> ais523, also I would love to see what splint did on #pragma omp
19:17:50 <AnMaster> ais523, #pragma omp is OpenMP btw
19:17:56 <ais523> much the same way as you annotate how you affect global variables in SPlint
19:17:57 <oklopol> i didn't really read much of this, anyone feel like quickly explaining what the argument is about?
19:18:16 <AnMaster> oklopol, writing a static analyzer for a C like language that could verify the program
19:18:16 <oklopol> and what's the topic
19:18:17 <ais523> oklopol: ehird's arguing that a static analyser should take the programmer on trust for things rather than verifying them itself
19:18:22 <ehird> ...
19:18:25 <ehird> shut up
19:18:27 <ehird> that's not what i fucking said
19:18:35 <oklopol> ais523: that's what i thought he meant
19:18:37 <ais523> I'm arguing that a static analyser should in all cases possible determine things for itself
19:18:41 <AnMaster> oklopol, want some popcorn?
19:18:45 <ais523> ehird: yes it is
19:18:45 <AnMaster> this is interesting
19:18:53 <GregorR> AnMaster: I'm popping some!
19:18:55 <ais523> please give an example of how that isn't your viewpoint
19:18:58 <oklopol> AnMaster: not yet, i want context before i start watching :P
19:19:00 <AnMaster> GregorR, great!
19:19:01 <GregorR> REOWR HISS
19:19:06 <AnMaster> GregorR, hm?
19:19:10 <ehird> that's true IFF every function in every program is a prover.
19:19:16 <ehird> whereas barely any are.
19:19:16 <GregorR> AnMaster: I'm watching a cat fight :P
19:19:21 <ehird> and furthermore, this is tiring. goodbye.
19:19:22 -!- ehird has left (?).
19:19:24 <oklopol> what's a prover?
19:19:28 <ais523> ehird: there is no difference between provers and nonprovers
19:19:28 <AnMaster> damn he left
19:19:28 <GregorR> Awwww
19:19:31 <AnMaster> ouch
19:19:33 <ais523> oklopol: an idea invented by ehird
19:19:35 * GregorR turns off his popper.
19:19:47 <ais523> basically it's a function that the programmer asserts does something
19:19:54 <oklopol> special functions that can assert things the compiler then takes on trues?
19:20:01 <ais523> and the static analyser takes the programmer at their word
19:20:02 <ais523> rather than checking that it actually does that
19:20:04 <oklopol> ais523: right. that's an assert
19:20:07 <oklopol> assert ...;
19:20:12 <ais523> yes, assert was the example we were mostly using
19:20:17 <oklopol> it's just an assert that doesn't actually fail.
19:20:25 <oklopol> it just helps the proves
19:20:29 <oklopol> *prover
19:20:33 <ais523> I was arguing that it's better and more robust to get the compiler to look in the source of assert to make sure it actually does what it's supposed to dp
19:20:35 <ais523> *do
19:20:52 <AnMaster> ais523, well for assert() that is simple
19:20:57 <ais523> after all, ehird's idea was that provers should be so simple that they can be checked by hand to unambiguously make sure they always work
19:20:57 <AnMaster> it goes something like this:
19:21:01 <ais523> AnMaster: I know
19:21:12 <ais523> no need to argue this point with me, I'm on the same side as you I think
19:21:22 <AnMaster> /usr/include/gentoo-multilib/amd64/assert.h:extern void __assert (const char *__assertion, const char *__file, int __line)
19:21:23 <AnMaster> nice
19:21:26 <ais523> well, if provers are so simple, just analyse them yourself like the rest of things
19:21:27 <AnMaster> didn't exepect that
19:21:30 <oklopol> ais523: and what would their point be?
19:21:44 <ais523> oklopol: ehird had to resort to things like binary blobs which couldn't be statically checked
19:21:49 <ais523> or mentioining the halting problem
19:21:50 <oklopol> that the programmers would more easily believe the programmer is correct?
19:21:51 <AnMaster> # define assert(expr) \
19:21:51 <AnMaster> ((expr) \
19:21:51 <AnMaster> ? __ASSERT_VOID_CAST (0) \
19:21:51 <AnMaster> : __assert_fail (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION))
19:21:54 <AnMaster> ais523, ^
19:21:59 <AnMaster> that is assert on my system
19:22:05 <oklopol> i mean, that's what modularity and asserts are for
19:22:20 <oklopol> and that whole idea is equivalent to the assert statement found in all languages
19:22:25 <AnMaster> ais523, can you prove it? I think it ends up calling a compiler built in
19:22:25 <ais523> oklopol: ehird thought it was impractical/impossible to verify that all provers worked statically
19:22:39 <ais523> AnMaster: you need to know what compiler builtins do to be able to analyse them, ofc
19:22:45 <oklopol> except in a round-about fashion that i don't really see a use for.
19:22:47 <AnMaster> ais523, right
19:22:47 <ais523> there is a bottom level of provers as ehird calls them, obviously
19:22:56 <ais523> but they shouldn't be programmer-written functions
19:23:02 <AnMaster> ais523, a few standard C ones?
19:23:07 <AnMaster> would make sense
19:23:08 <ais523> they should be the primitives of the language, the operators, commands, functions and builtins
19:23:15 <ais523> you can either do it on libc
19:23:19 <ais523> or just look in the source of libc
19:23:34 <ais523> for instance, you can run through the source of newlib and determine that assert doesn't always assert
19:23:40 <AnMaster> ais523, gcc uses builtins for lots of things
19:23:43 <ais523> because it raises a SIGABRT, which might be masked
19:23:49 <oklopol> ais523: you could do that when proving something trivial that's hard to prove in the language of the prover
19:23:52 <ais523> AnMaster: this isn't really relevant...
19:23:56 <ais523> oklopol: yes
19:23:59 <oklopol> assuming you're using a system where you can help the prover
19:24:01 <ais523> except I don't see this situation coming up
19:24:08 <AnMaster> ais523, also I believe assert() raises sigabort on glibc too
19:24:13 <AnMaster> ais523, since it drops you into gdb
19:24:15 <ais523> AnMaster: it does on all POSIX systems by default
19:24:21 <AnMaster> right
19:24:21 <oklopol> ais523: proofs tend to get three times bigger when you get technical
19:24:25 <ais523> which means it's actually kind-of useless for asserting
19:24:49 <oklopol> i'm assuming there would be automatic proving too?
19:24:52 <ais523> maybe that's why Splint was complaining about my asserts!
19:24:56 <ais523> oklopol: yes, that's the whole point
19:25:02 <AnMaster> ais523, unless you prove SIGABRT isn't masked
19:25:03 <oklopol> yeah, that's why i assumed it
19:25:07 <ais523> AnMaster: ah, yes, ofc
19:25:13 <ais523> Splint isn't that sophisticated
19:25:17 <ais523> a good static analyser would be though
19:25:18 <oklopol> well i agree with ehird, that would be helpful
19:25:28 <AnMaster> ais523, you could see if there is any call to signal() or sigaction() involving sigabrt
19:25:31 <oklopol> although probably for a different reason than him
19:25:35 <ais523> AnMaster: yes I know
19:25:37 <AnMaster> for example cfunge only masks sigpipe
19:25:40 <ais523> oklopol: what in particualr are you agreeing with?
19:25:41 <oklopol> i'm thinking it would be useful for the trivial things, not the complicated ones.
19:25:49 <oklopol> ais523: that they would be useful
19:26:05 <oklopol> that you could tell the prover about a high-level idea
19:26:05 <ais523> oklopol: what sort of trivial things are you thinking of which couldn't just be static-analysed like the rest of the code?
19:26:09 <AnMaster> ais523, what would you do if the program used alarm() then everything is suddenly a timing issue
19:26:23 <ais523> AnMaster: bail out if you couldn't prove for certain that it worked
19:26:39 <AnMaster> ais523, well cfunge uses alarm() in fuzz testing builds
19:26:41 <oklopol> ais523: probably something that's intuitively clear, but the prover just happens not to get right, and you don't feel like explaining it to it
19:26:45 <ais523> I mean, you could write a program where on a failed assert it searched for a counterexample to the Riemann Hypothesis, then kept on going
19:26:48 <AnMaster> ais523, to run for a limited time
19:26:56 <ais523> oklopol: I'd call that a bug in the linter
19:27:17 <ais523> that's the sort of example that the linter couldn't prove correct
19:27:25 <ais523> but people don't do that in practice, and IMO shouldn't use it in maintainable code
19:27:31 <AnMaster> ais523, also you do need to trust the compiler to not have bugs in code generation
19:27:36 <ais523> AnMaster: yes
19:27:37 <AnMaster> like what + - and so on does
19:27:49 <ais523> the idea is to avoid bugs in the original source code
19:28:01 <ais523> bugs in the linter or in the compiler can still cause buggy output, of course
19:28:01 <AnMaster> ais523, and you couldn't just run it on the compiler to see if it found issues
19:28:02 <AnMaster> because
19:28:04 <oklopol> ais523: i'm not saying there's any use with a good prover
19:28:14 <oklopol> i just don't know how good provers are.
19:28:17 <AnMaster> 1) You could have a buggy build of the linter
19:28:28 <AnMaster> 2) you could have logic bugs causing such issues in the compiler
19:28:38 <ais523> oklopol: not very good atm, but the whole idea was a project to build a good one
19:28:58 <ais523> and we got sidetracked over the issue of where the primitives should be
19:29:10 <AnMaster> ais523, well you got any idea how?
19:29:10 <AnMaster> I certainly don't
19:29:10 <oklopol> i mean some intuitively clear graph algorithms, even something as simple as dijkstra, aren't trivial to prove
19:29:25 <oklopol> well dijkstra is trivial to prove for a human, but an actual proof is pretty long
19:29:37 <AnMaster> oklopol, hm?
19:29:41 <AnMaster> oklopol, what?
19:29:48 <AnMaster> oklopol, that things are harmful?
19:29:49 <AnMaster> !?
19:29:53 <ais523> oklopol: proving that it works, you mean?
19:29:54 <AnMaster> what has that got to do with it
19:30:01 <oklopol> ais523: yes
19:30:03 <oklopol> my point is
19:30:11 <ais523> my vision is that you'd include a proof that it always returns the best answer
19:30:16 <oklopol> you might want to, even if your prover can't prove that part, to be sure about the parts it can prove
19:30:17 <ais523> a machine-readable one, in C
19:30:31 <ais523> and yes, a proves_unsafe pragma would be helpful during development
19:30:43 <ais523> but if I'm using such a superlinter as this, I wouldn't want any in a production build
19:30:48 <oklopol> ais523: yes, that's better, i'm just saying you might want to be able to skip some of the proof, for instance to be able to try it out
19:30:52 <ais523> (or, you could just do expected-error instead)
19:30:54 <AnMaster> ais523, also there will be programs where it would be useful to prove parts of the code even if you can never prove it all
19:31:11 <oklopol> assuming you couldn't compile a program that hasn't been proven to be correct or something
19:31:18 <AnMaster> ais523, for example you can't prove X ever since it depends hugely on agp card bugs
19:31:19 <AnMaster> and such
19:31:49 -!- oerjan has quit ("Bus").
19:31:50 <oklopol> but yes, of course, in the end, the proof should be given to the prover as steps in whatever system it uses for deduction itsel
19:31:51 <oklopol> f
19:32:04 <AnMaster> oklopol, yes
19:32:25 <AnMaster> ais523, if you can write this linter it would rock
19:32:28 <oklopol> and i think ehird fails to realize most of the "intuitively clear" things you'd end up telling the prover like by trust, are exactly things that are trivial to prove in its own language
19:32:33 <AnMaster> but I certainly know I couldn't help you
19:32:37 <AnMaster> I don't know how simply
19:32:37 <ais523> oklopol: that was my main point
19:32:46 <ais523> anyway, it seems assert crashes the program even if SIGABRT is masked
19:32:55 <ais523> according to man assert, it unmasks SIGABRT first
19:32:58 <ais523> *man abort
19:33:08 <AnMaster> ais523, hm
19:33:18 <ais523> well, unblocks
19:33:23 <AnMaster> If the SIGABRT signal is ignored, or caught by a handler that returns, the abort() function will still terminate the process. It does
19:33:24 <AnMaster> this by restoring the default disposition for SIGABRT and then raising the signal for a second time.
19:33:24 <ais523> you can longjmp out of a signal handler
19:33:25 <AnMaster> what?
19:33:31 <AnMaster> ah no
19:33:35 <AnMaster> ais523, indeed you can
19:33:50 <ais523> if you don't longjmp out, though, it ensures that the code nevertheless terminates
19:34:04 <ais523> now, this is the sort of thing it would be great to have an automatic verifier for
19:34:12 <ais523> assert isn't nearly as simple as I thought it was
19:34:26 <AnMaster> ais523, one issue, consider the infiniloop way of exiting you mentioned
19:34:26 <oklopol> ais523: well, i agreed with you all along, but i still also agree with ehird's idea's possible usefulness, although for just getting the prover to skip some unproven part for now.
19:34:30 <ais523> and really I wasn't confident that assert(0) always exits, but I am now
19:34:33 <AnMaster> ais523, what if there are other threads
19:34:43 <AnMaster> and they modify the first threads program memory
19:34:45 <ais523> AnMaster: they'd need pointers into the program to change stuff in it
19:34:45 <AnMaster> to jump out
19:34:54 <AnMaster> ais523, sure, what about proving a jit compiler!
19:35:03 <ais523> heh, that would be fun
19:35:13 <ais523> we can certainly prove that it jumps into memory it's just modified
19:35:18 <ais523> but not really what's happened from there
19:35:25 <AnMaster> ais523, indeed
19:35:27 <ais523> but at least we'd know there was something we couldn't handle
19:35:30 <AnMaster> ais523, and if it is multi-threaded
19:35:34 <AnMaster> ...
19:35:36 <ais523> multithreading isn't so bad
19:35:45 <ais523> as you can analyse which threads can access what in which other threads
19:35:56 <ais523> but still the variable execution times between the threads is still a pain
19:35:58 <AnMaster> ais523, if you believe the valgrind docs: they are
19:36:05 <AnMaster> valgrind does handle it
19:36:11 <AnMaster> apart from condition variables
19:36:17 <ais523> that's an issue for the wider linter though, not for the recent me/ehird argument
19:36:25 <AnMaster> ais523, indeed
19:36:34 <ais523> AnMaster: by the way, you have a tendency of focusing on points on the wrong level during these debates
19:36:51 <oklopol> yes, i actually was about to point that out too
19:36:55 <ais523> it gets annoying sometimes when you're focusing on a corner case that isn't part of the main debate, for instance
19:37:04 <ais523> and not even the program we're originally planning to write
19:37:06 -!- ehird has joined.
19:37:20 <oklopol> but i'm assuming that's at least partly on purpose
19:37:28 <AnMaster> ais523, true
19:37:37 <AnMaster> oklopol, not fully
19:37:41 <ehird> 11:32:25 <AnMaster> ais523, if you can write this linter it would rock <-- I see i'm getting all the credit for, you know, actually formulating this thing.
19:37:50 <ais523> ehird: you weren't in-channel
19:37:56 <ais523> and we both had similar ideas for it independently
19:38:00 <AnMaster> yes
19:38:05 <ehird> interesting, I cease to exist when I leave.
19:38:06 -!- ehird has left (?).
19:38:12 <AnMaster> who was that?
19:38:14 <oklopol> :D
19:38:27 <AnMaster> oklopol, wrong, you should have said "who was who?"
19:38:31 <AnMaster> :/
19:38:38 * oklopol is pretty sure ehird is getting younger as time goes by :D
19:38:48 <AnMaster> oklopol, who?
19:39:19 <oklopol> AnMaster: a guy i once knew
19:39:23 <oklopol> like a few minutes ago
19:39:34 <AnMaster> what?
19:39:37 <oklopol> but he's gone now
19:39:42 <AnMaster> who?
19:39:50 <ais523> AnMaster: you can drop the joke now
19:39:57 <AnMaster> what joke?
19:39:58 <AnMaster> ;P
19:40:01 <AnMaster> ais523, right
19:40:02 <oklopol> ais523: stop being an ehird :D
19:40:14 <AnMaster> oklopol, stop being an what?
19:40:15 <AnMaster> ;P
19:40:28 <AnMaster> a what*
19:40:48 <AnMaster> anyway
19:41:32 <AnMaster> ais523, the prover the way you plan it sounds cool, but I think there needs to be some kind of override mechanism when the program can't prove something but a human can verify easily
19:41:43 <ais523> AnMaster: yes
19:41:43 <AnMaster> I don't know what it would look like
19:41:50 <ais523> expected warnings, I think, just like in every other linter ever
19:41:59 <ais523> you tell it "don't complain about this, I know you think it's wrong"
19:42:08 <ais523> and it shuts up
19:42:08 <AnMaster> ais523, that sounds ok
19:42:28 <AnMaster> ais523, unless this means it doesn't know if other memory is invalid any more
19:42:29 <AnMaster> or such
19:42:56 <ais523> AnMaster: well, my idea is pretty similar to ehird's, in that you can tell it "this function is meant to prove that strlen(x) >= 5", for instance
19:43:04 <AnMaster> ais523, just consider for example that memory pool system I wrote, I was unable to express with valgrind annotations if the memory was valid or not
19:43:06 <ais523> if it can't prove that, that's a warning
19:43:10 <ais523> but it can assume it elsewhere
19:43:20 <ais523> and I didn't even know there was such a thing as valgrind annotations
19:43:23 <AnMaster> ais523, due to it being used internally in the allocator as a linked list of blocks after freeing
19:43:45 <AnMaster> so memory was legally accessed as something else after the allocator_free() call
19:43:53 <oklopol> ais523: so like an assert?
19:43:56 <AnMaster> basically all memory blocks were like this:
19:43:57 <ais523> AnMaster: ah, you weren't using malloc/free?
19:44:01 <ais523> oklopol: yes, pretty much
19:44:09 <ais523> in fact, just adding assert statements would be a good solution to that
19:44:16 <oklopol> i mean isn't it exactly that, except that you don't specify what happens when the expression is false
19:44:20 <ais523> yes
19:44:28 <AnMaster> ais523, union memblock { union memblock *nextfree; struct datatype; }
19:44:34 <AnMaster> ais523, I said mem pool
19:44:42 <oklopol> because you except it to be true even more than with an assert, in a way.
19:44:44 <AnMaster> ais523, it allocated from a pool and returned to a free list
19:44:44 <ais523> in actual code, that is a good place to put an actual assert statement though
19:44:52 <AnMaster> ais523, single linked free list
19:45:00 <oklopol> well, nm my last comment
19:45:01 <ais523> I generally don't put in assert statements if I ever expect them to be triggered
19:45:08 <ais523> if an assertion is false, it's a bug in the program
19:45:12 <ais523> and you can NDEBUG them out anyway
19:45:18 <AnMaster> ais523, thus the memory is to be considered "inaccessible" outside the allocator functions but "accessible" inside it
19:45:21 <AnMaster> ais523, ^
19:45:29 <AnMaster> could you express that?
19:45:29 <ais523> AnMaster: ok
19:45:34 <oklopol> ais523: ndebug?
19:45:42 <AnMaster> oklopol, ifndef NDEBUG
19:45:47 <ais523> oklopol: #define NDEBUG turns off all the assert statements in the program
19:45:57 <oklopol> oh you meant like that.
19:45:57 <ais523> and other assert-like code is normally conditioned on NDEBUG by hand
19:46:05 <oklopol> i thought you meant you can autoprove them out :D
19:46:11 <oklopol> and i was like k.
19:46:12 -!- ehird has joined.
19:46:24 <ais523> oklopol: that would be good, warning if you can't prove an assert statement always has a true assertion
19:46:39 <AnMaster> ais523, so could you handle that memory accessibility definition? even valgrind can't
19:46:43 <ais523> that's a different kind of proving, it's "proving this program won't abort out with an assertion" rather than "proving this program won't work"
19:46:47 <ehird> 11:42:56 <ais523> AnMaster: well, my idea is pretty similar to ehird's, in that you can tell it "this function is meant to prove that strlen(x) >= 5", for instance
19:46:51 <ehird> you win the completely missing the point award
19:46:55 <ehird> void atleast5(char *s) { assert(strlen(s) >= 5); }
19:46:57 <ehird> that works
19:47:01 <ehird> but assert itself has to be tagged proves
19:47:03 <ehird> because it's a primitive
19:47:13 <ais523> ehird: my argument is you're putting the primitives on the wrong level
19:47:23 <ais523> for instance, does assert always exit?
19:47:23 <ehird> yes, you're wrong though.
19:47:25 <ais523> in POSIX?
19:47:30 <ehird> that is irrelevant.
19:47:34 <ais523> no, it definitely isn't
19:47:44 <ehird> sorry, 'tis.
19:47:44 -!- ehird has left (?).
19:47:45 <ais523> I don't know all the details of the system library
19:47:46 <ais523> I had to look it up just now
19:48:02 <AnMaster> why would it be irrelevant?
19:48:12 <AnMaster> to me it sounds highly relevant
19:48:17 <ais523> because ehird wants the programmer to arbitrarily declare it irrelevant
19:48:30 <ais523> I'm arguing that they shouldn't have to, and that way is likely to lead to buggier code
19:48:37 <ais523> as it's definitely relevant in the bigger scheme of things
19:50:03 -!- ehird has joined.
19:50:18 <oklopol> ais523: hmm. i think you'd need two different asserts, ones that specify what you want it to do, ones that specify what you know it does
19:50:48 <ehird> readers are advised to not trust any results of ais523's mind-reading ability, as it has never been shown to be correct.
19:50:49 -!- ehird has left (?).
19:51:02 <ais523> hmm... joining, making a few comments than parting before anyone can reply
19:51:08 <ais523> wasn't someone doing that yesterday?
19:51:14 <oklopol> well you can reply, he's just making a statement
19:51:21 <ais523> yes, I know
19:51:28 <ais523> and also reading the logs, clearly
19:51:31 <oklopol> but yeah, i get your reference
19:51:34 <ais523> which rather misses the point of parting the channel
19:51:36 <oklopol> and i agree with it
19:51:54 <ais523> as for your two asserts thing, I'm not quite sure I know what you mean
19:52:00 <oklopol> well.
19:52:13 <oklopol> ones that say "this is true, assume it in your proofs"
19:52:21 <oklopol> and ones that say "this must be true"
19:52:25 <oklopol> "check that it is"
19:52:29 <ais523> well, assert() is the second sort
19:52:40 <oklopol> i mean, you have to have some way to tell the program what you want it to do, obviously
19:52:42 <ais523> because it bails out if the statement is in fact false, thus forcing it true if the program continues
19:53:07 <ais523> the first sort is what ehird wanted all primitives to be
19:53:15 <ais523> and the question is: what to do if it is in fact false?
19:53:20 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
19:53:20 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
19:53:21 -!- psygnisfive has quit (kornbluth.freenode.net irc.freenode.net).
19:53:23 -!- Dewi has quit (kornbluth.freenode.net irc.freenode.net).
19:53:23 -!- flexo has quit (kornbluth.freenode.net irc.freenode.net).
19:53:25 -!- Badger has quit (kornbluth.freenode.net irc.freenode.net).
19:53:25 -!- AnMaster has quit (kornbluth.freenode.net irc.freenode.net).
19:53:26 -!- Slereah2 has quit (kornbluth.freenode.net irc.freenode.net).
19:53:26 -!- Vendan has quit (kornbluth.freenode.net irc.freenode.net).
19:53:26 -!- Asztal has quit (kornbluth.freenode.net irc.freenode.net).
19:53:26 -!- sebbu2 has quit (kornbluth.freenode.net irc.freenode.net).
19:53:28 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
19:53:30 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
19:53:31 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
19:53:31 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
19:53:33 <ais523> if that's a programmer bug if it's false, you may as well use the second sort of assert
19:53:33 <oklopol> but the first one would be for skipping proofs of trivialities you don't feel like translating into the language of the prover, the thing you call ehird's idea, even though i guess he says it's not
19:53:39 <ais523> as otherwise you're just going to have a mysterious crash later on
19:54:13 * ais523 points and laughs at christel
19:54:33 <ais523> although it's not all that bad a netsplit
19:54:49 <oklopol> ais523: well this is what you and ehird were arguing about (i think), i just just now realized they are both asserts, in a way, just different
19:54:50 <ais523> oklopol: well, the whole point is that the prover language == the language you're writing in
19:55:01 <oklopol> ais523: ohhhh
19:55:05 <oklopol> that i didn't know
19:55:06 -!- Slereah2 has joined.
19:55:06 -!- Vendan has joined.
19:55:06 -!- psygnisfive has joined.
19:55:06 -!- decipher has joined.
19:55:06 -!- rodgort has joined.
19:55:06 -!- GregorR has joined.
19:55:06 -!- Dewi has joined.
19:55:06 -!- flexo has joined.
19:55:06 -!- Badger has joined.
19:55:06 -!- AnMaster has joined.
19:55:06 -!- Asztal has joined.
19:55:06 -!- sebbu2 has joined.
19:55:06 -!- SimonRC has joined.
19:55:06 -!- lament has joined.
19:55:06 -!- mtve has joined.
19:55:09 <ais523> thus there's no need to translate, unless you have a triviality that can't easily be asserted in C
19:55:10 <oklopol> lol that changes everything
19:55:28 <oklopol> then of course just the second kind is needed
19:55:31 <ais523> and or whatever lang
19:55:33 <oklopol> and ehird's idea has nothing to do with it
19:56:10 <oklopol> also the netsplit report came after everyone had already rejoined
19:56:18 <ais523> oklopol: lag my end
19:57:36 <oklopol> wait wait
19:57:55 <oklopol> actually of course it doesn't make ehird's idea irrelevant, i somewhat misunderstood
19:58:10 <ais523> no, it doesn't; I just think ehird's putting the primitives at the wrong level
19:58:17 <ais523> it's a minor argument really which blew up somehow
19:58:32 <oklopol> well if he thinks all proofs should have primitives with the programmer asserting something
19:58:40 <AnMaster> back
19:58:46 <oklopol> then he if obviously wrong
19:59:21 <ais523> I agree with the idea of only using a few well-checked primitives; but I think they should be the language's primitives themselves, not some layer the programmer puts on top of things
19:59:43 <ais523> AnMaster: what do you think of bfrle.c, by the way? It's a BF interp designed specifically to debug gcc-bf
19:59:46 <oklopol> ais523: well those are really two different ideas
20:00:10 <oklopol> well.
20:00:14 <AnMaster> ais523, link?
20:00:15 <ais523> they are different ideas, but I think they should be the same operators/commands/functions/whatever to reduce the chance of error
20:00:20 <ais523> AnMaster: http://rafb.net/p/sRPjBK56.html
20:00:32 <ais523> same one as before, just a different context for linking
20:00:44 <ais523> it's not quite ESO-standard brainfuck
20:00:56 <ais523> partly because ESO still hasn't started, and partly because it gives special meanings to % and *
20:01:03 <AnMaster> % and * ?
20:01:08 <AnMaster> what on earth do they do?
20:01:09 <ais523> * because run-length-encoded BF is so much shorter
20:01:15 <ais523> +*6 is equivalent to ++++++
20:01:22 <AnMaster> ah
20:01:26 <ais523> and % followed by a number means "assert the pointer is here"
20:01:36 <ais523> so %80 means that the pointer should be on the 80th cell
20:01:41 <AnMaster> hm
20:01:42 <oklopol> how's that useful?
20:01:43 <ais523> not sure offhand if it's 0-based or 1-based
20:01:52 <ais523> oklopol: to prevent mysterious crashes later
20:02:06 <ais523> if the pointer isn't where it thinks it is, it's basically UB
20:02:09 <ais523> which makes it hard to debug
20:02:39 <ais523> the pointer not being where it thinks it is means there's a bug somewhere, at that point it dumps tape so I can debug what caused it
20:03:01 <AnMaster> ais523, what about proving for programs like cfunge, what could you prove about it?
20:03:09 <ais523> AnMaster: you could prove the state of globals
20:03:16 <ais523> and that you neve read past the null terminator of a string
20:03:20 <ais523> *never
20:03:24 <ais523> and that you didn't overflow any buffers
20:03:36 <AnMaster> ais523, the former totally depends on what the befunge program does
20:03:42 <ais523> AnMaster: not all globals
20:03:50 <AnMaster> ais523, true, a few are set at load time
20:03:56 <ais523> but I mean, you could prove that whenever you tried to read the fungespace it had been allocated
20:04:01 <AnMaster> ais523, however I had them overwritten once
20:04:05 <AnMaster> due to an indexing errors
20:04:22 <AnMaster> a static array overflowed a lot and wrote in another static variable
20:04:23 <ais523> well, ideally a linter would detect that your program could potentially overwrite the wrong global
20:04:38 <ais523> or something as simple as accessing element -1 of an array
20:04:44 <AnMaster> only with mudflap did I detect it
20:04:47 <ais523> hmm... this might be a good time to use some of the stranger features of C pointers
20:05:01 <AnMaster> ais523, also it was a hard to prove case
20:05:02 <ais523> for instance, if a is an array then even calculating a-1 is UB
20:05:13 <AnMaster> ais523, and it was after, not before
20:05:18 <ais523> AnMaster: well, I'm not really going for practicality here, but for idealism
20:05:24 <AnMaster> ais523, true
20:05:38 <AnMaster> also: what about VLA?
20:05:44 <AnMaster> they are sure to mess up proving
20:05:45 <ais523> AnMaster: that's much the same as malloc
20:05:48 <AnMaster> I don't use VLA
20:05:49 <ais523> and not at all
20:05:59 <AnMaster> ais523, I *do* use flexible array members
20:06:01 <ais523> VLAs are slightly easier to lint than the equivalent malloc/free pair
20:06:07 <ais523> because you know they aren't there when they go out of scope
20:06:17 <AnMaster> as in struct with a variable size last element
20:06:21 <oklopol> ais523: okay yeah i see how it's useful
20:06:23 <oklopol> wasn't thinking
20:06:28 <AnMaster> ais523, and which is resized in chunks
20:06:35 <oklopol> i haven't been thinking much today
20:06:46 <AnMaster> and only shrunk if the difference is too large
20:06:51 <ais523> AnMaster: well, it could prove that the allocated size was always equal to the size the struct said it was
20:07:04 <ais523> anyway, I have to go home, it's been an interesting conversation but I have to have dinner sometime
20:07:06 <AnMaster> ais523, it isn't because of the flexible struct member...
20:07:18 <ais523> AnMaster: I was giving an example of what a linter could prove
20:07:32 <ais523> bye everyone, anyway
20:07:35 <AnMaster> ais523, so how would you be able to track what flexible struct member indexes are valid
20:07:36 <AnMaster> oh well
20:07:42 -!- ais523 has quit (Client Quit).
20:07:59 <oklopol> dang. i was just about to need him.
20:08:17 <AnMaster> also the reason I use flexible struct members instead of a linked list is cache locality (ehird will love that)
20:08:18 <AnMaster> ;P
20:08:30 <AnMaster> yes it did impact performance
20:08:37 <oklopol> what are flexible struct members?
20:08:53 -!- Corun has joined.
20:08:59 <AnMaster> oklopol, you know what struct mystruct { int foo; int bar }; is?
20:09:01 <AnMaster> well
20:09:11 <oklopol> AnMaster: i know c/c++
20:09:14 <AnMaster> oklopol, struct mystruct { int foo; int bar; int someints[] };
20:09:16 <AnMaster> C99
20:09:21 <oklopol> oh
20:09:28 <AnMaster> oklopol, it allows the last member to be variable size
20:09:30 <oklopol> you specify at allocation?
20:09:38 <oklopol> well yeah, makes sense they'd allow that
20:09:44 <AnMaster> oklopol, malloc(sizeof(mystruct) + whatever)
20:09:53 <oklopol> ah.
20:09:55 <oklopol> right right
20:10:04 <oklopol> what about mystruct x;
20:10:07 <AnMaster> and then you can access it as mystructvariable->someints[4]
20:10:10 <AnMaster> or whatever
20:10:20 <AnMaster> oklopol, I don't know, don't think it is legal
20:10:24 <oklopol> AnMaster: well you could just do someints[0] and have that same behavior.
20:10:35 <AnMaster> oklopol, err 0 isn't valid there
20:10:36 <AnMaster> or rather
20:10:39 <AnMaster> GCC allows it
20:10:39 <oklopol> 1 then.
20:10:44 <AnMaster> but not valid C89
20:11:00 <oklopol> i thought they allowed it at some point, but may have been c++, or just my imag
20:11:03 <AnMaster> oklopol, some compilers might complain that is out of valid range
20:11:16 <oklopol> AnMaster: i guess.
20:11:42 <oklopol> they *should* allow that for locals
20:12:08 <AnMaster> oklopol, eh?
20:12:16 <oklopol> i mean how hard is it to compute how much to move the stack pointer at runtime
20:12:36 <oklopol> AnMaster: that you could do mystruct x WITHLASTSIZE 100;
20:12:38 <AnMaster> 16 As a special case, the last element of a structure with more than one named member may
20:12:38 <AnMaster> have an incomplete array type; this is called a flexible array member. In most situations,
20:12:38 <AnMaster> the flexible array member is ignored. In particular, the size of the structure is as if the
20:12:38 <AnMaster> flexible array member were omitted except that it may have more trailing padding than the omission would imply.
20:12:47 <oklopol> WITHLASTSIZE being a keyword
20:13:05 <AnMaster> oklopol, GCC extension: alloca
20:13:18 <AnMaster> oklopol, also there is variable size array
20:13:23 <AnMaster> which is variable sized array on stack
20:13:24 <AnMaster> like
20:13:41 -!- MizardX has joined.
20:13:51 <AnMaster> int foo(int x) { int array[x]; }
20:13:58 <AnMaster> not very useful function
20:14:13 <AnMaster> oklopol, also I prefer to avoid that, larger risk for stack overflow
20:14:22 <AnMaster> and most automated tools can't protect that
20:14:29 <AnMaster> like stack smashing protection
20:14:37 <oklopol> well us real programmers don't use tools : D
20:15:03 <AnMaster> oklopol, stack smash protection means that the compiler inserts special values on the stack and verify them on return
20:15:07 <AnMaster> if they were overwritten...
20:17:00 <AnMaster> oklopol:
20:17:02 <AnMaster> EXAMPLE After the declaration:
20:17:02 <AnMaster> struct s { int n; double d[]; };
20:17:02 <AnMaster> the structure struct s has a flexible array member d. A typical way to use this is:
20:17:02 <AnMaster> int m = /* some value */;
20:17:02 <AnMaster> struct s *p = malloc(sizeof (struct s) + sizeof (double [m]));
20:17:03 <AnMaster> and assuming that the call to malloc succeeds, the object pointed to by p behaves, for most purposes, as if
20:17:06 <AnMaster> p had been declared as:
20:17:08 <AnMaster> struct { int n; double d[m]; } *p;
20:17:10 <AnMaster> (there are circumstances in which this equivalence is broken; in particular, the offsets of member d might
20:17:15 <AnMaster> not be the same).
20:17:17 <AnMaster> from C99 specs
20:17:29 <AnMaster> and:
20:17:31 <AnMaster> struct s t1 = { 0 }; // valid
20:17:32 <AnMaster> struct s t2 = { 1, { 4.2 }}; // invalid
20:17:32 <AnMaster> t1.n = 4; // valid
20:17:32 <AnMaster> t1.d[0] = 4.2; // might be undefined behavior
20:18:11 <AnMaster> The initialization of t2 is invalid (and violates a constraint) because struct s is treated as if it did not
20:18:11 <AnMaster> contain member d. The assignment to t1.d[0] is probably undefined behavior, but it is possible that
20:18:11 <AnMaster> sizeof (struct s) >= offsetof(struct s, d) + sizeof (double)
20:18:11 <AnMaster> in which case the assignment would be legitimate. Nevertheless, it cannot appear in strictly conforming
20:18:11 <AnMaster> code.
20:18:25 <AnMaster> oklopol, does that answer the issue of such structs on stack?
20:22:00 -!- moozilla has joined.
20:24:31 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
20:24:33 -!- moozilla has joined.
20:27:55 <oklopol> AnMaster: well all that was new was you could declare them as locals, and the array was by default empty.
20:28:06 <oklopol> which i don't consider that relevant a detail
20:31:49 -!- Corun has quit ("This computer has gone to sleep").
20:39:41 -!- metazilla has joined.
20:39:43 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
20:39:51 -!- metazilla has changed nick to moozilla.
20:42:00 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
20:42:03 -!- moozilla has joined.
20:46:35 -!- Judofyr has quit (Read error: 54 (Connection reset by peer)).
20:59:33 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
21:06:38 -!- CakeProphet has joined.
21:21:47 -!- Corun has joined.
21:21:58 -!- ehird has joined.
22:22:27 -!- Sgeo has joined.
22:25:58 -!- seveninchbread has joined.
22:26:03 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
22:26:06 -!- seveninchbread has changed nick to CakeProphet.
22:32:29 -!- oerjan has joined.
22:36:28 -!- GreaseMonkey has joined.
22:41:19 -!- Sgeo has quit (Remote closed the connection).
23:14:17 -!- Corun has quit ("This computer has gone to sleep").
23:23:45 -!- psygnisfive has quit ("Leaving...").
2009-01-05
00:17:41 -!- Sgeo has joined.
00:26:42 <oklopol> oh i love youtube commenters, somehow ended up watching videos of bush fucking up in his speeches, i love how the comments are rated based on amount of hate for bush
00:26:44 <oklopol> the conspiracy is that bush is destroying our country that is our lives dumb ass thats cuz you are too ignorant to realize bush had everything to do with 911 theres too much proof and dumb asses like you are why he is in office again
00:26:52 <oklopol> this has a few thousands ups
00:27:02 <oklopol> honestly, who the hell cares? he was telling a story for dramatic effect. the point of the story is that he found out a plane hit the tower and thought it was an accident at first.
00:27:07 <oklopol> this has a few hundred downs
00:27:41 <oklopol> hmm.
00:28:02 <oklopol> i should probably try sleeping or something
00:28:16 <oklopol> or read sicp and rwh *at the same time*
00:30:16 <ehird> oklopol: oklopolokok
00:30:25 <ehird> t)
00:30:25 <ehird> 00:25 <holmak> .msg NickServ identify inaktive/00
00:30:27 <ehird> 00:26 holmak has left ()
00:33:51 <ehird> oklopol: oklopol: oklopol: oklopol: oklopol: oklopol: oklopol: oklopol: oklopol: oklopol:
00:34:56 <oklopol> did he FAIL?
00:37:17 <ehird> oklopol:
00:37:32 <oerjan> ehird: ehird: ehird:
00:37:35 <ehird> oklopol:
00:37:41 <oklopol> ooooooooooooooooooooooooooo
00:37:51 <oerjan> oklopol: öööö
00:38:32 <oklopol> oerjan: please use real characters.
00:38:37 <oklopol> SLEEP.
00:38:37 <oklopol> ->
00:39:02 <ehird> oklopol: NO
00:39:08 * oerjan did not expect that from a finn
00:39:58 <oklopol> IF I HAD A GOOD COUNTER-RESPONSE TO WHATEVER YOU JUST SAID I'D PROBABLY SAY IT RIGHT ABOUT NOW
00:40:15 <oklopol> ^ applies to both of you
00:40:21 <ehird> oklopol:
00:40:23 <ehird> stay back
00:40:27 <oklopol> BACK?
00:40:36 <oerjan> ehird has a trout
00:40:43 <ehird> oklopol: yes
00:40:51 <oerjan> he's armed and crazy
00:50:04 <oerjan> ehird, that is. no idea about the trout.
01:34:52 -!- Sgeo has quit (Remote closed the connection).
01:42:28 -!- mbishop has joined.
01:42:54 <mbishop> Does anyone know if Ian Osgood comes in this channel?
01:43:55 -!- Sgeo has joined.
01:55:51 <oerjan> hm who was that
01:56:51 <oerjan> hm hasn't been on the wiki for nearly a year
01:59:25 -!- Sgeo has quit (Remote closed the connection).
02:08:46 -!- psygnisfive has joined.
02:19:09 <oklopol> oooooooooooooooooooooooo
02:19:29 <oklopol> oerjan: who was who?
02:22:12 <oerjan> Ian Osgood
02:23:21 <oklopol> "was" sounded weird
02:23:57 <oklopol> so i thought you might've somehow thought sgeo's joining aws mbishop's parting. in which case i could've punned you
02:24:05 <oklopol> *saw
02:24:29 <oerjan> You cannot pun if you cannot spell, oklopol.
02:24:33 <oklopol> of course, not really punned, more like joked, but it doesn't fit as well.
02:24:41 <oklopol> jokerized
02:24:58 <oklopol> should probably go to sleep
02:25:08 <oklopol> i really went to sleep when i told i was gonna
02:25:15 <oerjan> sleep is good, if you can afford it
02:25:26 <oklopol> but then i realized i'd been somewhat depressed over the last few days
02:25:29 <oklopol> which is for noobs
02:25:33 <oklopol> so i decided to stop it
02:25:41 <oklopol> and, well, couldn't really not code my project after that.
02:25:56 <oklopol> but it's finished now, because i'm awesome
02:26:02 <oklopol> and god i'm tired
02:26:04 <oklopol> you know
02:26:06 <oklopol> so tired
02:26:27 <oklopol> there aren't enough o's in the world for the elongated "so" to represent it.
02:27:26 <oklopol> being tired is hard to noob-filter out, because i'm usually too tired to do that, for some reason
02:27:34 <oerjan> heh
02:27:56 <oklopol> well. enough random flumber-spatter, sleepy time, really
02:28:05 <oerjan> sweet dreams
02:28:08 <oklopol> i mean polarization-exists really
02:28:17 <oerjan> yes.
02:28:25 <oklopol> sweet of so sweet mmm
02:28:25 <oklopol> ->
02:28:35 <oerjan> we did experiments in high school, it existed then at least.
02:44:15 -!- jix has quit ("Computer has gone to sleep").
02:52:15 <oklopol> i wasn't born yet when you went to high school, therefore nothing can have existed.
02:52:40 <oklopol> wait. i was like 10 when you went to highschool.
02:52:45 <oklopol> *high school
02:52:51 <oklopol> how's that possible
02:53:01 * oklopol calculates
02:53:08 * oklopol tries to sleep again ->
02:53:45 <oerjan> off by 10 error, i presume
02:54:33 <oerjan> in any case, that was 20 years ago
03:36:10 -!- moozilla has joined.
04:10:50 -!- moozilla has quit (Connection timed out).
04:14:11 <kerlo> I was like 10 when I went to high school.
04:14:14 <kerlo> Or something like that, anyway.
05:32:08 -!- oerjan has quit ("Good nigth").
06:09:25 <Slereah2> Why does the wiki has that weird 24 years ban?
06:23:34 <bsmntbombdood> urgh
06:23:57 <bsmntbombdood> so i know there's a way to calculate floor(log_2(x)) of an int
06:24:09 <bsmntbombdood> with bitwise functions in constant time
06:37:00 -!- seveninchbread has joined.
06:37:23 -!- CakeProphet has quit (Nick collision from services.).
06:37:43 -!- seveninchbread has changed nick to CakeProphet.
06:46:35 -!- mbishop has left (?).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:42:50 <oklopol> oerjan: then i guess i was just about to be born when you did that experiment
08:43:09 <oklopol> thus may well be possible polarization was actually created in that experiment.
08:45:29 <oklopol> bsmntbombdood: there is, if you know the amount of bits :P
08:45:57 <oklopol> even logtime one, can't see a constant time solution
08:48:41 <psygnisfive> o.o
08:48:57 <fizzie> What is unfun is that even though there's a ffs(x) function in POSIX to find the index of the least-significant set bit -- which GCC has a built-in-usually-compiled-to-the-single-native-opcode-if-there-is-one for -- the corresponding "find the index of the most-significant set bit" is missing.
08:51:51 <oklopol> ffs?
08:51:56 <oklopol> oh.
08:52:37 <fizzie> Probably from the words "Find First Set" instead of the more common FFS meaning.
08:53:02 <oklopol> well it's not like anyone gives a shit about stuff like that, i mean, you know, you could just make a bitarray object and loop.
08:53:11 <oklopol> i mean
08:53:57 <oklopol> i don't
08:54:25 <fizzie> It's still unsymmetric to only have a "ffs" without a "fls".
08:54:41 <oklopol> well yes, naturally
08:55:03 <fizzie> http://www.freebsd.org/cgi/query-pr.cgi?pr=61405 has a rather magical ffs implementation, also.
08:55:05 <oklopol> but there's no rot in most isas, so it's nontrivial to get one out of the other
08:55:35 <oklopol> thus it might be possible, maybe, possibly, for ffs to be more common in isas, and thus existant in that standardum
08:56:54 <oklopol> hmm. i don't get that, can't you get constant time anyway if you allow an array?
08:58:09 <oklopol> wait.
08:58:11 <oklopol> lol.
08:58:19 <oklopol> that's exactly the way to do that
08:58:32 <oklopol> yay for my fast brain \o/
08:59:57 <oklopol> i mean i don't really get that exact multiplication, but seems like it'd look like that multiplying by *something* might do the trick
09:00:08 <oklopol> should probably read that, fairly magical, yes
09:00:30 <oklopol> not read, more like try to run it on paper
09:04:09 <fizzie> It does the "x & -x" to convert xxxx1000 -> 00001000, I guess. Then the multiplication will mean bit-shifting that suitably magical constant.
09:04:57 <fizzie> It's disappointingly simple, actually, but at least it has enough very magick-looking numbers.
09:05:30 <oklopol> yeah
09:08:11 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy.").
09:08:31 <oklopol> hmm
09:08:33 <oklopol> i don't get it
09:08:44 <oklopol> that multiplication essentially just shifts the magical number right?
09:09:13 <oklopol> well yeah
09:09:14 <oklopol> you said that
09:09:50 <oklopol> but i just don't get it, it's shifted left, then right, i don't really see where it converts into a small enough number.
09:10:28 <fizzie> Since it's a 32-bit number, the >>27 makes it small enough, by taking the first five bits.
09:10:48 <oklopol> yeah seems like it would, was probably just artifact of notation
09:11:28 <oklopol> i missed the whole anding part first, so i was more worried about trying out the multiplication
09:11:33 <oklopol> assumed it was some serious magic
09:12:12 <oklopol> but it's a slim chance really any 32 bit number has the required property
09:12:44 <oklopol> (to do that kinda conversion for any number directly, given a suitable amount of shiftings and andings afterwards)
09:13:15 <oklopol> x & -x is pretty clever, although negation is not really a binary operation
09:13:40 <oklopol> ah
09:14:01 <oklopol> the magic number is just a number where all 5 bitsub sequences are different
09:14:05 <oklopol> *bit subsequences
09:14:14 <oklopol> that should've been kinda obvious
09:14:26 <fizzie> Yes. 0x0450FBAF seems to also be used elsewhere for that purpose.
09:14:38 <oklopol> err
09:14:42 <oklopol> for what length?
09:14:50 <oklopol> for five, i don't think it does it
09:14:54 <oklopol> 0F = 00001111
09:15:02 <oklopol> AF = 10101111
09:15:05 <oklopol> 01111 twice
09:15:16 <oklopol> for size four, doesn't do it either, for an even more trivial reason
09:15:59 <oklopol> for six, i can't see a problem instantly
09:16:52 <fizzie> Yes, I think it was checking the six top bits; it was for checking which interrupt needs to be processed in an interrupt handler.
09:17:46 <oklopol> err elaborate
09:17:54 <oklopol> liek checking how
09:18:26 <fizzie> Well, those things tend to have a register or something which has bits set for all the pending interrupts.
09:18:49 <fizzie> So the "find first set" thing can be used to select the lowest-numbered one for processing.
09:18:58 <oklopol> oh interrupts.
09:19:03 <oklopol> well, you see
09:19:22 <oklopol> you say interrupts, i read "this thing called X you don't need to translate to an object"
09:19:41 <oklopol> yeah, seems like it would do that
09:33:55 <fizzie> Eh, it took me something like ten minutes to remember the name ("de Bruijn sequence") for that sort of thing. (Although I guess that's not exactly it, since it's not doing the cyclic thing.)
09:36:00 <oklopol> it's doing it alright.
09:36:16 <oklopol> but names are nice, let's try to remember that one
09:38:28 <oklopol> i don't get all the human names for concepts, why not like "carnivorous sequence" or something.
09:38:58 <fizzie> It wasn't long ago a blog post about this (in the context of those four-digit decimal-number door-codes, and getting in with less than 4*10^4 keypresses since they only care about the four last ones) was going around them IRCs.
09:39:14 <oklopol> yes
09:39:21 <oklopol> well not yes, i didn't know that
09:39:31 <oklopol> but yeah i've invented the sequence in that context
09:40:37 <oklopol> usually, in turku, you can just get by knowing the firefighters' code
09:41:37 <oklopol> is that hard to create?
09:42:08 <fizzie> They've got non-human names for many number classes, though; there are at least friendly numbers, sociable numbers, weird numbers and frugal numbers.
09:42:30 <oklopol> i just know frendlies, and i don't even know what they are
09:42:49 <oklopol> but yes, also real numbers................................
09:43:12 <oklopol> i should start getting to the lib before it closes prolly
09:43:47 <fizzie> Oh, and apocalyptic numbers.
09:43:52 <oklopol> :D
09:43:54 <oklopol> perfects
09:44:01 <oklopol> surreals
09:44:13 <fizzie> ("A number of the form 2^n that contains the digits 666", according to mathworld.)
09:44:18 <fizzie> (That's a bit boring.)
09:44:40 <oklopol> well that's clearly just a stupid joke
09:45:18 <oklopol> unless they have an uneven distribution, in which case it's probably a message from satan himself
09:45:21 <oklopol> "it"?
09:45:24 <oklopol> i'm not sure what it is
09:46:28 <oklopol> oh mathworld?
09:46:31 <oklopol> hmm.
09:46:57 <oklopol> well, not sure that changes anything.
09:49:30 <fizzie> A happy number is one where the iterated sum-of-squares-of-digits ("123 -> 1+4+9 = 14 -> 1+16 = 17 -> 1+49 = 50 -> 25 -> 29 -> 85 -> 89 -> 145 -> 42 -> 20 -> 4 -> 16 -> 37 -> 58 -> 89 -> 145"; now it's in a cycle) is 1 at some point.
09:49:48 <fizzie> I'm really not sure what makes it especially happy.
09:49:50 <oklopol> well, digits -> ugly
09:50:01 <oklopol> oh
09:50:11 <oklopol> ah sum of squares of digits right
09:50:25 <oklopol> "base doesn't matter!"
09:51:11 <fizzie> "An odious number is a nonnegative number that has an odd number of 1s in its binary expansion. -- Numbers that are not odious are said to be evil numbers."
09:51:27 <fizzie> Really, it's like they've been picking adjectives from a dictionary or something.
09:51:56 <fizzie> At least "odious" sort-of sounds like "odd", but the evil part is even less justified.
09:52:51 <fizzie> Oh, right, "even". Duh.
09:52:53 <fizzie> Still.
09:53:42 <fizzie> It sounds a bit harsh to say that any nonnegative number is either odious ("unequivocally detestable") or just plain evil.
09:56:43 <oklopol> umm.
09:57:11 <oklopol> well that's at least a somewhat useful class
09:58:42 <fizzie> But think of the numbers!
09:59:10 <oklopol> :D
09:59:28 <oklopol> well integers have always been such snobs
10:00:01 <fizzie> Yes, all holier-than-thou "god made us, unlike you other *invented* numbers" pomp.
10:00:03 <oklopol> yeah they have a few more interesting properties than general complexes, seriously, who gives a shit?
10:00:18 <oklopol> yeah
10:00:21 <oklopol> exactly
10:02:07 <oklopol> i mean a real, you can sqrt, and it'll work fine, try to do that to an integer, and noooo, "nah i don't feel like it, try to guy next to me"
10:08:12 -!- Corun has joined.
10:16:38 <AnMaster> fizzie, hi
10:16:46 <AnMaster> fizzie, progress on jitfunge?
10:21:38 <fizzie> Nope. I have a habit of extended hiatuses. Hopefully I'll get back to it some day. Probably a bit busy with work and such the next couple of weeks, though.
10:55:23 -!- Corun has quit ("This computer has gone to sleep").
12:02:14 -!- Corun has joined.
12:04:01 -!- bsmntbombdood has quit (Read error: 145 (Connection timed out)).
12:14:43 -!- bsmntbombdood has joined.
12:40:28 <AnMaster> fizzie, heh ok
12:42:36 -!- AnMaster has quit (Connection reset by peer).
13:58:25 -!- comex has quit (Read error: 131 (Connection reset by peer)).
13:58:50 -!- comex has joined.
14:00:47 -!- Judofyr has joined.
14:35:39 -!- olsner has joined.
14:51:32 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
14:58:35 -!- KingOfKarlsruhe has joined.
14:58:58 -!- bsmntbombdood has joined.
14:59:59 <ehird> hi
15:01:14 <Slereah2> Hey
15:04:30 -!- AnMaster has joined.
15:07:55 <ehird> In which programming.reddit becomes a shithole:"For those of you who don't know: many of the best developers in the world hang out on irc.freenode.net. It's an amazing resource."
15:08:58 <Slereah2> Are we the world's best deeloppers?
15:12:48 <ehird> Yes.
15:13:54 <ehird> I'm going to join ##c and ask about C#.
15:23:34 <Slereah2> Yeah, go do a real language loser!
15:27:02 <ehird> :D
15:34:01 <oklopol> ehird: ask why the characters are the wrong way around
15:34:11 <ehird> yes
15:34:25 <oklopol> i think i had a dream where i was speaking in finnish in here.
15:34:49 <ehird> um you are
15:35:34 <oklopol> well, the reason i remembered was that just after saying character thing, i had a short moment of panic thinking it was in finnish
15:35:46 <oklopol> because i talked to a finnish guy in english today, not realizing it at first
15:35:51 <ehird> hahahaah
15:36:00 <ehird> oklopol: make a polyglot sentence
15:36:14 <oklopol> i don't wanna tehdä niin
15:36:22 <ehird> wat
15:36:28 <oklopol> ohh
15:36:31 <oklopol> polyglot sentence right.
15:37:22 <oklopol> i guess i could've answered "no", which would be sensible in both finnish and english
15:38:54 <ehird> oklopol: i mean
15:38:56 <ehird> what did that sentence say
15:39:22 <oklopol> the first one?
15:39:25 <oklopol> en halua do that
15:39:32 <ehird> ah
15:39:32 <ehird> :D
15:39:35 <ehird> i like it
15:45:41 -!- jix has joined.
15:56:36 <bsmntbombdood> it's because the kernel uses ffs right?
15:57:19 <oklopol> that's seems like a very probable reason
15:57:26 <oklopol> *that's mats
16:10:17 -!- oerjan has joined.
16:52:44 <oklopol> oerjan: DID YOU KNOW "TACO CAT" IS A PAL IN DROME
16:53:36 <oerjan> what's a drome
16:53:37 <Slereah2> No it's not.
16:53:46 <Slereah2> It's TAC OCAT backward.
16:54:06 <oklopol> Slereah2: i don't get it
16:54:31 <oerjan> oklopol: Slereah2 wants equal representation for whitespace
16:54:55 <oklopol> oerjan: well yes i know
16:55:05 <oklopol> I'M JUST MAKING A STATEMENT.
16:56:28 <oerjan> WELL CAN I BE MAKING A QUESTION?
16:57:11 <oklopol> :O
16:57:15 <oklopol> no :<
16:57:57 <oklopol> i mean
16:57:59 <oklopol> well
16:58:00 <oerjan> THEN I'LL MAKE AN EXCLAMATION!
16:58:14 <oklopol> i'm still not satisfied
16:58:30 <oklopol> so how come we have so many courses at the uni i can't take them all at once
16:58:52 <Slereah2> Only 24 hours per day, oklopol.
16:59:07 <oklopol> Slereah2: err.
16:59:12 <oerjan> oklopol: it's to give students incentive to invent time machines
16:59:15 <oklopol> in all unis?
16:59:39 <oerjan> it's a big worldwide plot
16:59:47 <oklopol> :|
16:59:52 <oklopol> god i hate the world
17:00:47 * oklopol takes some more courses, naturally laughing like a maniac while doing that
17:02:09 <Slereah2> Destroy the world, oerjan
17:02:10 <Slereah2> oklopol*
17:03:27 <oklopol> and have even less time for courses? funk no
17:05:29 <Slereah2> But once the world is destroyed
17:05:38 <Slereah2> You won't need to know anythinfg
17:05:56 <oerjan> and you'll have all the time in the world!
17:07:12 <Slereah2> And then, bam!
17:07:15 <Slereah2> Your glasses break
17:07:22 <Slereah2> IT'S NOT FAIR!
17:08:27 <oerjan> now that's not a problem, since there'll be nothing to see
17:08:59 <oerjan> except Cthulhu. but don't mind him.
17:09:30 <oerjan> or you'll have no mind left
17:11:49 <Slereah2> Only if you trust Lovecraft.
17:11:54 <Slereah2> Sure, he's huge and slimy.
17:11:58 <Slereah2> But is he maddening?
17:12:47 <oklopol> my eyesight is perfect
17:13:03 <oklopol> only noobs have imperfect senses
17:13:13 <Slereah2> Like DAREDEVIL?
17:13:22 <oklopol> well okay he's the exception
17:13:29 <oklopol> he's so cool, oh my god he's cool.
17:16:34 <oklopol> heh, got naked, realized to curtains were open, looked out with my mouth open, quickly closed them
17:16:39 <oklopol> must have looked comical
17:17:42 <Slereah2> Was anyone outside?
17:17:54 <oklopol> well this isn't bottom flooe
17:17:59 <oklopol> *floomy
17:18:04 <Slereah2> floomy
17:18:14 -!- Slereah2 has set topic: http://tunes.org/~nef/logs/esoteric/ floomy.
17:18:15 <oklopol> but there are menny houses darr.
17:18:41 <ehird> who wants to write c for me
17:18:53 <oklopol> c
17:18:53 <oerjan> i think c has already been written.
17:18:57 <oklopol> xDDDDDDDDDDDDDDDDDDDDDDD
17:19:04 <ehird> lol
17:19:11 <ehird> who wants to write c code for me
17:19:23 <oklopol> "c code"
17:19:25 <oklopol> xDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
17:19:33 <AnMaster> oklopol, WITHOUT THE QUOTES!
17:19:46 <oerjan> don't hurt your jaw oklopol
17:19:47 <oklopol> WITHOUT THE... okay.
17:19:57 <ehird> who wants to write a piece of c code for me
17:19:57 <AnMaster> oklopol, ARGH!
17:20:01 <AnMaster> a piece of c code for me
17:20:03 <AnMaster> done
17:20:09 <oklopol> ehird: what piece
17:20:15 <ehird> a piece
17:20:27 <AnMaster> ehird, hey I wrote it ^
17:20:34 <ehird> go away
17:20:37 <ehird> :D
17:20:49 <AnMaster> ehird, error: label away not found
17:20:53 <oerjan> int main() {printf("Hello, world!\n");}
17:21:10 <AnMaster> oerjan, forgot to include stdio.h
17:21:14 <AnMaster> and forgot to return
17:21:19 <oerjan> AnMaster: "a piece"
17:21:19 <AnMaster> #include <stdio.h>
17:21:29 <AnMaster> int main(void) {printf("Hello, world!\n"); return 0; }
17:21:35 <AnMaster> oerjan, ah truye
17:21:37 <AnMaster> true*
17:21:38 <ehird> In which the RnRS editor is a successful troll: http://groups.google.com/group/comp.lang.scheme/browse_thread/thread/06f0588e1e4c999d/89120d79e5650d94?#89120d79e5650d94
17:22:13 <ehird> LOL, then erik naggum replies without realising who it is
17:22:16 <ehird> and insults his mental capacity
17:23:43 <AnMaster> ehird, hm?
17:23:50 <ehird> RnRS = scheme standards
17:23:59 <ehird> the post linked is a joke putdown of scheme
17:24:05 <ehird> and everyone replies seriously
17:24:06 <AnMaster> hehe
17:24:46 <ehird> 1995 trolls were so much better.
17:24:52 <ehird> USE REAL LANGUAGE FAGGOTS BRAINFUCK IS NOT WHAT EVERYONE WANT
17:27:18 <AnMaster> fun thread
17:27:25 <AnMaster> sadly don't have time to read it all atm
17:27:32 <oerjan> where can i find some real language faggots?
17:27:51 <oerjan> oh right, psygnisfive
17:28:13 <ehird> groan
17:35:22 * ehird considers reinventing the wheel then doesn't because that's stupid
17:36:29 <oerjan> of course
17:37:10 <oerjan> reinvent the time machine instead. maybe _this_ time it won't be accidentally uninvented.
17:38:34 <oklopol> :D
17:42:32 <ehird> Straw poll: Should I reinvent the wheel?
17:44:12 <ehird> Oi. Vote.
17:44:21 <Slereah2> You need to destroy the wheel, first.
17:44:26 <ehird> Done.
17:44:32 <oklopol> ehird: of course :D
17:44:37 <ehird> Aight. oerjan?
17:45:11 <oerjan> YES and quickly WHY did you destroy the wheel now i'll have to WALK to town HURRY UP
17:45:24 <ehird> oerjan: here, have a wheel temporarily.
17:45:27 <ehird> until I make my awesome one.
17:45:30 * ehird givse
17:45:33 <ehird> gives
17:45:57 <oerjan> givse? is that related to goatse? no thanks.
17:46:10 * ehird gives
17:46:22 * oerjan snatches
17:49:45 <Slereah2> A temporary wheel?
17:49:50 <Slereah2> Is it octogonal?
17:50:12 * oerjan looks at it
17:50:33 <oerjan> not much
17:51:15 * ehird calls wheel-reinventing code "wheel"
17:51:25 <ehird> ... this means I have to write c code ;_;
17:52:49 <AnMaster> $ ls -l /bin/sh
17:52:50 <AnMaster> -r-xr-xr-x 1 root wheel 106348 Dec 25 11:54 /bin/sh
17:52:51 <AnMaster> hm?
17:52:54 <AnMaster> just set the group
17:52:56 <AnMaster> that should fix it
17:53:29 * AnMaster looks at ehird
17:53:30 -!- olsner_ has joined.
17:53:36 <AnMaster> olsner_, hi
17:53:37 <ehird> ...
17:53:38 <ehird> AnMaster:
17:53:41 <ehird> stop talking.
17:53:44 <AnMaster> ehird, why?
17:53:46 <ehird> you're making a fool of yourself.
17:53:55 <AnMaster> ehird, no I was playing along with the joke
17:54:06 -!- olsner has quit (Read error: 104 (Connection reset by peer)).
17:54:07 <ehird> no sentient organism could consider that a joke
17:54:18 <ehird> and I don't talk to chatterbots :D
17:54:50 <AnMaster> ehird, you mentioned you wanted to reinvent a wheel before? How does that make you feel?
17:54:54 <AnMaster> ;P
17:54:55 <ehird> AAAAAAAAAAAAAAAAAAAAAAA
17:55:11 <AnMaster> now if that wasn't funny...
17:55:13 <ehird> AnMaster: ¨ª•¶å¥•ÊÁ*‡§¶å§¢Åfi‹#€€€€€€€€€€€€€€€#¢Å‡fi‡¥å˙•ªå¶§¶∞Åfifl‡fl\0\0\0exit(1);
17:55:18 <AnMaster> ehird, thanks
17:55:22 <AnMaster> I take that as a laugh
17:55:31 <ehird> AnMaster: dammit, you didn't buffer overflo¶••••••¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶exit(1);
17:55:41 <oerjan> the _universe_ is a joke (and a bad one, too). AnMaster is merely a part of it.
17:55:49 <AnMaster> oerjan, oh yes it is
17:56:41 <oerjan> _someone_ should have realized that a joke that takes billions of years to tell isn't very good
17:56:51 <ehird> who knows scons(1)?
18:02:55 <AnMaster> ehird, I think fizzie does
18:03:41 <AnMaster> Why didn't the chicken cross the road?
18:03:42 <ehird> AnMaster: what build tool do you use, then.
18:04:25 <AnMaster> ehird, I'll answer that once you answer my question
18:04:35 <ehird> no.
18:04:43 <AnMaster> well I use cmake mostly
18:04:47 <ehird> ew
18:05:10 <AnMaster> anyway the answer was: because there was no crossing at that place
18:05:12 <AnMaster> ;P
18:05:25 <AnMaster> zebra crossing*
18:05:50 <ehird> k.
18:10:28 <ehird> specifically I'm trying to get scons to vomit all the .os and binaries into build/
18:10:33 <ehird> same with its .sconsign.dblite thang.
18:11:02 <AnMaster> ehird, I would assume you could just do something like:
18:11:04 <AnMaster> mkdir build
18:11:06 <AnMaster> cd build
18:11:09 <AnMaster> scons --source ..
18:11:10 <AnMaster> or whatever
18:11:28 <AnMaster> such systems work for cmake and autotools
18:11:29 <ehird> I'm not in the mood for assumptions.
18:11:39 <AnMaster> (cmake .., ../configure)
18:14:46 <ehird> By the way, I'm now taking guesses as to what the project is.
18:16:48 <ehird> No?
18:19:43 <ehird> Hmph. oerjan? AnMaster?
18:20:19 <AnMaster> ehird, why would I want to guess? there are lots of projects using scons
18:20:26 <AnMaster> though I much prefer scones
18:20:27 <AnMaster> :P
18:20:28 <ehird> I wasn't talking about scons.
18:20:53 <AnMaster> ehird, what on earth then were you talking about?
18:21:03 <ehird> The project. Of reinventing the wheel.
18:21:06 <ehird> I am now taking guesses as to what it is.
18:21:25 <AnMaster> a project reinventing something in a better way
18:21:27 <ehird> Yes.
18:21:29 <ehird> But what is it.
18:21:29 <AnMaster> maybe that linter?
18:21:36 <AnMaster> could be that linter...
18:21:43 <ehird> Nah.
18:22:17 <AnMaster> ehird, also I suggest not reinventing the round wheel, nor the square wheel
18:22:22 <AnMaster> I have a better shape I believe
18:22:27 <AnMaster> hexagonal
18:22:28 <AnMaster> :(
18:22:30 <AnMaster> :)*
18:22:40 <ehird> it will be a four dimensional shape.
18:22:42 <ehird> now make another guess :|
18:22:47 <AnMaster> ehird, wow
18:22:52 <AnMaster> hypercube wheel?!
18:22:59 <AnMaster> reinventing the hypercube wheel
18:23:02 <AnMaster> that sounds cool
18:23:02 <ehird> yes.
18:23:19 <AnMaster> ehird, what lang are you coding it in you said?
18:23:20 <AnMaster> C?
18:23:23 <ehird> C
18:23:41 <AnMaster> ehird, why are you using C and not python? Low level OS stuff needed, or due to performance?
18:23:45 <AnMaster> or something else?
18:23:50 <ehird> Performance, pretty much.
18:23:54 <ehird> It's not a job for Python.
18:24:01 <ehird> (It's not OS-level, either, though.)
18:24:02 <AnMaster> (or ruby or such)
18:24:05 <AnMaster> hm
18:24:13 <AnMaster> ehird, graph database?
18:24:25 <ehird> Nah, a graph database could be done in Ruby/Python/etc.
18:24:33 <AnMaster> wouldn't scale to huge datasets then
18:24:38 <AnMaster> hm
18:24:49 <AnMaster> ehird, have you mentioned this project before in the channel?
18:24:58 <ehird> I think I've mentioned doing something like it.
18:25:03 <AnMaster> hm
18:25:10 <AnMaster> ehird, no I can't guess without some hints
18:25:11 <ehird> I've yelled about the wheel I'm reinventing before in here almost certainly
18:25:20 <ehird> AnMaster: it's very much to do with IO.
18:25:31 <AnMaster> ehird, also you yelled about reinventing the wheel a lot of times
18:25:44 <AnMaster> for many different things
18:25:47 <ehird> AnMaster: it's very much to do with IO. :P
18:25:50 <AnMaster> ehird, some server?
18:25:57 <ehird> Getting hotter.
18:26:06 <AnMaster> cool, err I mean hot!
18:26:15 <AnMaster> hm
18:26:31 <AnMaster> ehird, you always complained about bad web servers
18:26:37 <ehird> OUCH IT BURNS
18:26:39 <AnMaster> apache, lighttpd, nginx, and so on
18:26:40 <ehird> Yah
18:26:47 <AnMaster> so I guess you are writing your own
18:26:50 <ehird> I am crazy enough to attempt to write my own web server. :D
18:27:03 <ehird> This will either go brilliantly or terribly.
18:27:05 <AnMaster> ehird, I was trying to be tactful...
18:27:09 <AnMaster> remember it was you who said it
18:27:20 <ehird> Yeah but you got it :P
18:29:08 <ehird> Basically, this webserver will have mod_kitten.
18:29:11 <ehird> Everything else comes from that.
18:29:14 -!- Judofyr_ has joined.
18:29:17 <ehird> Well, by mod_kitten I mean modules/kitten.c.
18:37:49 <ehird> I dunno what it'll do.
18:37:53 <ehird> Give you an ASCII art kitten?
18:40:38 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
18:41:40 <Asztal> that's thinking small.
18:42:13 <Asztal> it should enclose every page in a speech bubble so that a kitten's saying it.
18:44:19 <oklopol> so
18:44:22 <oklopol> any programmers in here?
18:44:37 <ehird> nope
18:44:38 <oerjan> no
18:44:47 <oklopol> i'm thinking maybe i should look into that
18:44:52 <oklopol> i hear it can be pretty fun
18:44:59 <oklopol> think that's true?
18:45:12 <ehird> yes
18:45:15 <ehird> Administrivia
18:45:16 <ehird> err
18:45:18 <ehird> 10:41:40 <Asztal> that's thinking small.
18:45:19 <ehird> 10:42:13 <Asztal> it should enclose every page in a speech bubble so that a kitten's saying it.
18:45:21 <ehird> fuck _yes_
18:45:54 <oerjan> i understand some people here have trouble understanding humor.
18:46:03 <oerjan> this page may help: http://www.insaneabode.com/roboterotica/jokesexplained/jokes.html
18:46:31 <oklopol> oerjan: but how can i open that when it's old?
18:46:41 <oklopol> :<
18:46:49 * oklopol is sad
18:47:12 <oerjan> in that case, _this_ page may help: http://www.mezzacotta.net/singles/jokes_explained_explained.php
18:47:47 <oerjan> and if you still aren't getting, it, try: http://www.mezzacotta.net/singles/jokes_explained_explained_explained.php
18:47:52 <oklopol> oh
18:47:54 <oklopol> that one is new!
18:48:03 <oerjan> from today
18:48:24 <oklopol> I WONDER WHAT THEY COME UP WITH NEXT
18:52:03 -!- atrapado has joined.
18:56:18 -!- oerjan has quit ("Gotta get the wheel to the bus").
18:56:52 <oklopol> plausible explanation
18:59:03 -!- MizardX has quit ("Blue squares floting about...").
18:59:30 -!- MizardX has joined.
19:10:03 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:12:33 <ehird> hey. uhh, who knows c here and is alive. AnMaster: what hash table lib do you use
19:12:55 <AnMaster> libghthash, but there are many others
19:13:01 -!- Vendan has quit (Read error: 60 (Operation timed out)).
19:13:11 <ehird> this is for storing http headers fwiw
19:13:17 <AnMaster> one called sunrisedd (iirc) looked good but had possibly bad license
19:13:24 <ehird> so short string -> medium-length string
19:13:31 <ehird> also, needs to be MIT-compatible
19:13:31 <AnMaster> ehird, I suggest testing different ones and finding out which one works best for you
19:13:38 <ehird> mm, but that's work
19:13:40 <ehird> maybe I should roll my own
19:13:43 <AnMaster> ehird, libghthash is lgpl
19:13:56 <AnMaster> also rolling your own hash library is kind of hard
19:14:09 <ehird> i wrote a hash table in my sleep once, but it sucked :P
19:14:14 <ehird> hrm
19:14:18 <ehird> does lgpl mesh with mit?
19:14:22 <AnMaster> ehird, IANAL
19:15:31 <AnMaster> ehird, hm, the current main performance bottle neck in cfunge is pushing strings on the stack it seems
19:15:50 <AnMaster> I guess I could make the stack grow down instead and then simply memcpy() them
19:15:56 <AnMaster> no need to reverse the data then
19:16:27 <AnMaster> and it could make use of SSE ;P
19:16:32 <AnMaster> ehird, what do you think?
19:16:39 <ehird> go for it.
19:16:48 <ehird> AnMaster: did you do that static fungespace thing?
19:16:56 <AnMaster> yes I did
19:17:24 <AnMaster> it is using libghthash if outside the static area
19:17:35 <AnMaster> works fine for most common programs since they usually only use a small area around 0,0
19:19:00 <ehird> how much does fungot stray from it?
19:19:01 <fungot> ehird: this is fnord to see their fnord pomorski only needs to be used to support the views herein. given that other prominent sources ( including britannica) follow the medical discharge story, perhaps we should all be moved down to near the end of the second
19:19:06 <ehird> ^style
19:19:07 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp*
19:19:10 <ehird> heh
19:19:22 <AnMaster> ehird, not much excelt when running underload
19:19:26 <AnMaster> then it can go way off
19:19:35 <ehird> ah
19:19:59 <AnMaster> by using a 128 MB static array I managed to fit the underload area nicely into the static area, but that sucked for other reasons obviously
19:20:08 * ehird decides to make static file serving a module because he is crazy.
19:20:11 <AnMaster> I bet you can imagine
19:20:23 <AnMaster> ehird, heh
19:20:28 <ehird> AnMaster: hey, my VPS could run two whole funge programs with that.
19:20:30 <ehird> assuming no OS.
19:20:32 <AnMaster> ehird, going to use sendfile()?
19:20:37 <ehird> yes.
19:20:51 * ehird has to support both kqueue and epoll because he devs on os x and deploys on linux :''''''''''''(
19:20:59 <AnMaster> ehird, hah, well normal size of the static array is 1024*1024*4 bytes in a 32-bit build
19:21:04 <AnMaster> so around 4 MB
19:21:39 <AnMaster> the main issue with fungot is that it uses a lot of cells left and right
19:21:40 <fungot> AnMaster: quoting the article: ' ' adding 3 meas. of 5/ 8, though i tried to find a q&a that is no longer the inevitable number 1 in both categories. small—preceding wikipedia:signaturesunsigned comment added by special:contributions/ fnord)
19:21:43 <AnMaster> for underload stack things
19:22:09 <AnMaster> ehird, bbl
19:22:20 <ehird> Hmm. You can't stuff sockets into a FILE * can you?
19:22:22 <ehird> Dammit.
19:22:51 -!- Corun has quit ("This computer has gone to sleep").
19:25:29 -!- Judofyr has joined.
19:28:07 -!- Judofyr has quit (Client Quit).
19:33:23 -!- Judofyr_ has quit (Read error: 113 (No route to host)).
19:36:11 <AnMaster> ehird, afaik: no
19:36:20 <AnMaster> ehird, why would you want to?
19:36:30 <AnMaster> also use writev() if you have more than one thing to write
19:36:33 <AnMaster> not write()
19:36:41 <ehird> AnMaster: Trying to represent "socket or file", although I guess it's more "socket or file or just about anything else, like a string"
19:36:49 <ehird> So I guess I should write my own abstract-io layer for that.
19:36:58 <AnMaster> ehird, std:basic_stream<whatever> ;P
19:36:59 * AnMaster ducks
19:37:04 <ehird> die
19:37:05 <AnMaster> ::*
19:37:14 <ehird> what
19:37:25 <AnMaster> s/:/::/ == ::*
19:37:48 <ehird> o
19:37:48 <AnMaster> ehird, anyway C has string-as-stream iirc
19:37:50 <ehird> the * comes first :P
19:37:50 <AnMaster> oh
19:37:52 <ehird> also, does it?
19:37:54 <AnMaster> glibc does too
19:37:56 <ehird> wat
19:38:00 <AnMaster> err
19:38:03 <AnMaster> C++ does
19:38:06 <AnMaster> and so does glibc
19:38:31 <AnMaster> for C++:
19:38:32 <AnMaster> std::stringstream
19:38:49 <AnMaster> for glibc, I'm currently trying to remember the function name
19:40:46 <AnMaster> ehird, man fmemopen
19:40:50 <AnMaster> on a system with glibc
19:40:54 <AnMaster> it is a glibc extension
19:41:00 <AnMaster> totally crazy one
19:41:14 <ehird> right, I'm not making myself gnu-specific
19:41:20 <AnMaster> ehird, agreed
19:41:24 <AnMaster> I wouldn't use it either
19:41:26 <ehird> because i gdon't like it :D
19:41:33 <AnMaster> ehird, except iirc it is in POSIX.1-2008
19:41:45 <ehird> w/e :P
19:41:48 <ehird> i'll write my own layer
19:42:02 <AnMaster> ah yes it is
19:45:36 -!- Corun has joined.
20:28:20 <psygnisfive> i AM a real language faggot :o
20:28:34 <psygnisfive> btw have i mentioned how delicious cocks are?
20:28:53 <psygnisfive> and by that i mean like
20:29:03 <psygnisfive> oh muh gawwwd cocks <3<3<#
20:29:43 <ehird> ...
20:29:44 <ehird> hi,.
20:29:50 <psygnisfive> hey.
20:29:54 <oklopol> hello psygnisfive
20:30:01 <psygnisfive> hey oklopol.
20:30:04 <psygnisfive> nice to see you back to normal
20:30:14 <oklopol> back to normal?
20:30:21 <psygnisfive> yes
20:30:30 <psygnisfive> as in not oklo[^d]ol
20:30:30 <oklopol> i guess it's all the c++ i've been reading.
20:30:34 <oklopol> ah!
20:30:39 <psygnisfive> er
20:30:41 <psygnisfive> [^p]
20:30:48 <psygnisfive> damn rotational lysdexia
20:31:19 <ehird> rotational dyslexia? i am skeptical
20:31:31 <psygnisfive> :)
20:31:35 <psygnisfive> so whats up kiddos
20:31:52 * oklopol goes back to reading, just had to help making that highly sophisticated group joke, which failed
20:32:00 <oklopol> *try to help
20:32:18 <oklopol> psygnisfive: same as usual. you know, stuff.
20:32:22 <oklopol> rd ->
20:32:27 <psygnisfive> wait wait wait
20:32:28 <psygnisfive> STUFF?
20:32:35 <psygnisfive> when the fuck did THIS happen?
20:32:49 <ehird> oklopol is
20:32:50 <ehird> pregnant
20:32:57 <psygnisfive> well yes, he would be
20:36:55 <psygnisfive> my farina was too sweet :(
21:10:26 <AnMaster> <ehird> rotational dyslexia? i am skeptical <-- googling shows the term exist, 120 hits, all seems to be forums or similar, no verifiable source
21:10:54 <AnMaster> that was with quotes
21:31:57 <oklopol> psygnisfive: well depends on the definition of "stuff"
21:32:20 <oklopol> i've been reading quite a lot for about half a year now
21:32:28 <oklopol> but that's really it.
21:34:27 <oklopol> well. not really a lot. maybe 40 page average a day.
21:34:41 <oklopol> more like steady.
21:35:16 <psygnisfive> ive been reading jared diamonds "collapse"
21:35:57 <oklopol> i've been reading all kinds of shit.
21:37:14 <oklopol> wtf. i just keep getting more and more money no matter how much i spend.
21:37:27 <AnMaster> oklopol, hm give some to me?
21:37:34 <AnMaster> ;P
21:37:51 <oklopol> AnMaster: the more money i have the less i want to share it. except if i had enough, that would probably change.
21:37:52 <psygnisfive> yeah give me some too
21:38:10 <psygnisfive> oh oklopol but obviously if you spend it frivolously you have even MORE money!
21:38:14 <AnMaster> oklopol, you said you read "all kinds of shit", what did you see in it? I assume it is like reading the future in innards, except using excrement instead.
21:38:14 <psygnisfive> so spend it on us :D
21:38:20 <oklopol> i mean one of my dreams has always been to pick a random bum and give them a million dollars.
21:38:29 <psygnisfive> pick me pick me! :D
21:38:44 <ehird> AnMaster: excrement books
21:38:45 <ehird> i see a market
21:38:55 <oklopol> AnMaster: what ehird said, only faster.
21:38:57 <oklopol> i mean
21:39:00 <oklopol> *only slower
21:39:09 <AnMaster> ehird, hm... "don't scratch and sniff"
21:39:13 <oklopol> since that fucker types faster than i think
21:39:59 <oklopol> wait... i'm just about to pay a 400 dollar bill, that's why i saw how much i have :DD
21:40:05 <oklopol> way to use my brain.
21:40:16 <oklopol> so yeah, k, i haven't really gotten much richer if you take that to account.
21:40:26 <oklopol> or rather take that from my account
21:40:31 <oklopol> (zing)
21:40:42 <ehird> badum tish
21:55:48 <oklopol> oh. it's because my demented grandma's munnies are being transferred to me.
21:55:59 <oklopol> i guess i should do a shopping spree or something
21:56:11 <oklopol> ...what do ppl buy except food?
21:56:21 <ehird> umm
21:56:22 <ehird> things
21:56:24 <ehird> computers?
21:56:32 <oklopol> hmm
21:56:46 <oklopol> yeah another computer would be nice
21:56:56 <ehird> oklopol: ummm houses?
21:56:58 <ehird> i don't know
21:56:58 <oklopol> i used to use three of them, that was so nerdly
22:00:25 <oklopol> okay, sleep and sp ->
22:21:13 <AnMaster> ehird, there?
22:21:17 <AnMaster> that web server thing
22:21:19 <ehird> yes
22:21:22 <ehird> mmhm
22:21:31 <AnMaster> still working on it?
22:21:40 <ehird> i don't give up on projects that easily :-)
22:21:41 <ehird> yes
22:21:46 <AnMaster> what about using publicfile?~
22:21:46 <ehird> but not actually coding it atm
22:21:49 <ehird> wat?
22:22:06 <AnMaster> http://cr.yp.to/publicfile.html
22:22:23 <ehird> AnMaster: you mean using it for an http server?
22:22:30 <AnMaster> ehird, yes~
22:22:36 <ehird> oh, sarcasm marks :P
22:22:49 <ehird> i was about to reply why it's useless for anything but serving static files if you're djb :P
22:22:53 <AnMaster> ehird, no not at all~
22:23:21 <ehird> Some versions of fhttpd allowed remote users to take over the entire machine. ``I don't think bugs of this kind are left in it,'' the author says. How much is he willing to bet?
22:23:27 <ehird> ^ jeez, djb, and how do you know you have no bugs?
22:23:48 <ehird> more likely nobody's told you of any because nobody uses your server.
22:23:54 <AnMaster> "# publicfile avoids bug-prone libraries such as stdio. "
22:24:00 <AnMaster> I'd like to see his replacement
22:24:01 <ehird> well i agree there, stdio sux
22:24:04 <ehird> AnMaster: he has it on his site
22:24:44 <ehird> AnMaster: http://www.fefe.de/djb/ is an extracted version of djb libs including his io lib
22:24:54 <AnMaster> hm ok
22:25:02 * AnMaster was reading http://cr.yp.to/lib/io.html atm
22:26:35 <psygnisfive> libio, is that next to libya?
22:27:05 <ehird> i still want to writ libibido
22:28:31 <AnMaster> hm how much of music can midi describe? I mean stuff like on a violin you can play pizzicato (plucking strings with finger) as well as lots of other variations
22:28:52 -!- GreaseMonkey has joined.
22:29:37 <oklopol> ooooooooooooo
22:29:55 <oklopol> pizzicato is just a female staccato
22:30:21 <oklopol> and staccato is just a gay [short note followed by a pause]
22:30:27 * psygnisfive plucks anmaster's guitar strings
22:31:03 <psygnisfive> anmaster, i suspect that midi can describe it in arbitrary detail to some extent
22:31:21 <oklopol> i think he's point is whether it has that actual concept.
22:31:24 <psygnisfive> i mean, Kurzweil synths do midi out, and also can basically synth any music
22:31:38 <oklopol> well can't you somehow add instruments to midi?
22:31:43 <oklopol> i don't actually know much about it
22:31:54 <psygnisfive> midi i think is just a standard for music representation
22:32:03 <psygnisfive> i think its instrument independent, to some extent
22:32:11 <oklopol> hmm, yes that's very probably
22:32:19 <oklopol> i don't really know its ideology
22:32:21 <oklopol> hey
22:32:27 <oklopol> i was gonna sleep.
22:32:28 <oklopol> ->
22:32:34 <psygnisfive> so whether or not something is plucked vs bowed i think depends on how you read off the midi to audio
22:34:07 <ehird> AnMaster: will you use my server? i would feel bad if nobody did ;'(
22:34:14 <psygnisfive> whats your server do, ehird
22:34:19 <ehird> serve thigs
22:34:19 <ehird> things
22:34:24 <psygnisfive> yes but what for?
22:34:30 <ehird> for whatever
22:34:39 <psygnisfive> can i host porn on there?
22:34:59 <ehird> what?
22:35:05 <ehird> it's a server.
22:35:06 <ehird> a program.
22:35:13 <ehird> code.
22:35:15 <ehird> you know.
22:35:17 <ehird> in a programming language.
22:35:27 <psygnisfive> yes
22:35:56 <ehird> how can you host porn on a program
22:37:05 <psygnisfive> same way you host anything on a server.
22:37:35 <ehird> psygnisfive: if I told you I had just written an IRC server
22:37:44 <ehird> would you say "can i host porn on your irc server?"
22:37:48 <ehird> no because that makes no fucking sense
22:37:49 <ehird> it's just a program
22:37:57 <psygnisfive> no, but you just said "server"
22:38:01 <psygnisfive> so i asked what kind
22:38:05 <psygnisfive> what does it do
22:38:08 <psygnisfive> and you said it serves things
22:38:17 <psygnisfive> so i asked if it could serve porn
22:38:21 <psygnisfive> none of this is contradictory
22:39:00 <ehird> yes, you can use the program to host porn. but "there" is incorrect
22:39:06 <ehird> "can i host porn with it?" would be more valid
22:39:18 <ehird> it's just a web server
22:40:27 <psygnisfive> yes, well
22:40:32 <psygnisfive> you host things on web servers.
22:41:30 <oklopol> ooooooooooooo.
22:41:35 <psygnisfive> klopol.
22:41:42 <oklopol> o. klo. pol.
22:41:50 <psygnisfive> ok. lop. ol.
22:42:03 <psygnisfive> okl. opo. l .
22:42:13 <oklopol> my thoughts exactly
22:42:21 <oklopol> ugain ~>
22:42:22 <psygnisfive> oklo. pol. .
22:51:37 -!- Sgeo has joined.
23:06:24 -!- oerjan has joined.
23:45:51 <ehird> who is alive
23:46:26 <oerjan> the doctor?
23:49:46 <oklopol> meeeeeeeeeeeeeeee
23:50:01 <oerjan> mooooooooooooooo
23:50:09 <ehird> who else
23:51:05 <ehird> guys I'm going to set my computer to the year 9999
23:51:07 <ehird> and see what breaks
23:51:10 <ehird> wish me luck
23:51:38 <oerjan> in the year ninety-nine, ninety-nine
23:51:45 <ehird> ok im in 2038
23:51:50 <ehird> whoa
23:51:52 -!- seveninchbread has joined.
23:51:57 <ehird> 23:59:59 1 jan 2038
23:51:58 <ehird> goes to
23:52:01 <ehird> 00:00:00 1 jan 2038
23:52:04 <ehird> i have found groundhog day
23:52:06 <ehird> duuuuuuuuuuuuuuuuuuuude
23:52:19 <ehird> duuuuuuuuuuuuuuuuuuuuude
23:52:38 <ehird> lol i wondr how much is broke
23:52:50 <ehird> WHAT SHOULD I DO IN THE FUTURE OERJAN
23:52:51 <oerjan> would have expected that to be in 2012, me thinks
23:53:01 <ehird> everything lagggggggggg
23:53:03 <ehird> something doesn't like this
23:53:04 -!- Corun has quit ("This computer has gone to sleep").
23:53:08 <ehird> LOL
23:53:11 <ehird> The server error encountered was: Mail was unable to verify the identity of this server, which has a certificate issued to "imap.googlemail.com". The error was:
23:53:12 <ehird> The certificate for this server has expired.
23:53:12 <oerjan> time dilation
23:53:16 <ehird> it thinks it expired like yeaaaaaars ago
23:53:16 <ehird> XD
23:53:47 <ehird> this is so lulzy
23:53:50 <oerjan> YM millennia
23:53:55 <ehird> naw
23:53:58 <ehird> 2009 -- 2038
23:54:04 <ehird> it didn't set further than that
23:54:06 <oerjan> oh you're not at 9999 yet
23:54:09 <ehird> i can't
23:54:17 <ehird> 01/01/2038 is the last unix representable date
23:54:22 <ehird> in 32-bit
23:54:23 <oerjan> oh
23:54:31 <oklopol> ooooooooooooooo
23:54:32 <ehird> that's why 23:59:59 rolled to 00:00:00 on the _same day_
23:54:34 <oerjan> 01/01? that's a bit of coincidence...
23:54:36 <ehird> this day repeats itself, FOREVER
23:54:37 <ehird> oerjan: not rly
23:54:40 <ehird> epoch is 01/01/1970
23:54:46 <ehird> i.e., that's time 0
23:54:53 <oklopol> oerjan: it's basically multiplication to figure that out
23:54:58 <oklopol> how come you didn't see it
23:55:03 <oerjan> yes but why would it be a whole number of years
23:55:25 <ehird> this is all logging to 2038 ^.^
23:56:45 <ehird> ok im back in 2008
23:57:02 -!- rodgort has quit ("Coyote finally caught me").
23:57:16 -!- rodgort has joined.
23:59:17 <oerjan> "The minimum representable time is 1901-12-13, and the maximum representable time is 2038-01-18"
23:59:31 <oerjan> not 01-01
2009-01-06
00:01:12 <ehird> huh ok
00:01:22 <ehird> ok now ill go prehistoric
00:02:12 <ehird> bah
00:02:13 <ehird> didnt work
00:02:46 <oerjan> "1901-12-13"
00:02:56 -!- seveninchbread has quit (Remote closed the connection).
00:04:34 <ehird> nah
00:04:35 <ehird> 1970
00:09:00 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
00:15:34 <ehird> so who's alive
00:15:38 -!- atrapado has quit (Remote closed the connection).
00:17:50 <oklopol> well. i guess i'm here again
00:17:55 <oklopol> but just about to leave
00:18:01 <oklopol> i'm *really* gonna sleep now.
00:18:01 <oklopol> ->
00:18:21 <oerjan> why does ehird keep asking who is alive
00:18:26 <ehird> cuz
00:18:34 <oerjan> does he have some nefarious purpose, picking us off one by one
00:35:00 <ehird> yes
00:38:21 <oerjan> i guess it's obvious when you think about it
00:38:29 <ehird> yes
00:47:13 -!- moozilla has joined.
00:48:59 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
00:48:59 -!- metazilla has joined.
00:52:16 -!- metazilla has quit (Read error: 131 (Connection reset by peer)).
01:13:20 -!- jix has quit ("...").
02:03:01 -!- moozilla has joined.
02:05:42 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:36:37 -!- moozilla has joined.
02:36:39 -!- moozilla has quit (Nick collision from services.).
02:36:41 -!- metazilla has joined.
02:36:55 -!- moozilla has joined.
02:38:35 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
02:38:36 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:38:40 -!- metazilla has joined.
02:53:46 -!- metazilla has changed nick to moozilla.
03:22:22 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
03:23:02 -!- metazilla has joined.
03:36:39 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
04:13:53 -!- moozilla has joined.
04:21:56 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
04:48:27 -!- oerjan has quit ("Good night").
05:01:19 -!- oklopol has quit (Success).
06:46:31 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
06:57:05 -!- oklopol has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:10:15 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy.").
09:25:08 -!- kar8nga has joined.
09:31:35 <AnMaster> * psygnisfive plucks anmaster's guitar strings <-- I don't have a guitar. Nor do I play violin (I do play piano)
09:31:48 <AnMaster> <ehird> AnMaster: will you use my server? i would feel bad if nobody did ;'( <-- probably not, but what about yourself
09:38:17 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
09:40:51 -!- oerjan has joined.
09:41:16 -!- psygnisfive has joined.
09:41:51 <psygnisfive> who said my name
09:42:00 <oerjan> when
09:42:08 <psygnisfive> recently like
09:42:10 <psygnisfive> ten minutes ago
09:42:26 <oerjan> AnMaster
09:42:37 <AnMaster> oerjan, yes?
09:42:47 <oerjan> ^
09:43:00 <AnMaster> oerjan, infinite loop?
09:43:09 <psygnisfive> anmaster
09:43:25 <AnMaster> psygnisfive, why didn't you read it before you quit then?
09:43:28 <AnMaster> <AnMaster> * psygnisfive plucks anmaster's guitar strings <-- I don't have a guitar. Nor do I play violin (I do play piano)
09:43:31 <AnMaster> afk
09:43:34 <psygnisfive> my computer choked on me
09:43:40 <psygnisfive> infact
09:43:48 <psygnisfive> it choked because i came back just to read it :P
09:49:47 -!- Corun has joined.
10:16:03 -!- moozilla has joined.
10:16:25 -!- moozilla has quit (Client Quit).
10:23:58 -!- KingOfKarlsruhe has joined.
11:08:39 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
11:10:54 -!- oerjan has quit ("leaving").
11:38:52 -!- Corun has quit (Read error: 131 (Connection reset by peer)).
11:39:05 -!- Corun has joined.
11:48:11 -!- Azstal has joined.
11:56:26 -!- Corun has quit (Read error: 110 (Connection timed out)).
12:18:23 -!- puzzlet_ has quit (Read error: 60 (Operation timed out)).
12:18:31 -!- puzzlet has joined.
12:19:26 -!- Slereah has joined.
12:23:30 -!- Slereah2 has quit (Read error: 60 (Operation timed out)).
13:09:16 -!- Corun has joined.
13:14:23 -!- KingOfKarlsruhe has quit (Remote closed the connection).
13:27:46 -!- olsner_ has changed nick to olsner.
13:46:02 -!- kar8nga has joined.
13:59:22 -!- sebbu2 has quit (Client Quit).
14:04:04 -!- ehird has left (?).
14:04:37 -!- ehird has joined.
14:04:45 -!- ehird has left (?).
14:04:49 -!- ehird has joined.
14:04:51 -!- ehird has left (?).
14:04:55 -!- ehird has joined.
14:04:57 -!- ehird has left (?).
14:05:01 -!- ehird has joined.
14:05:03 -!- ehird has left (?).
14:05:07 -!- ehird has joined.
14:05:09 -!- ehird has left (?).
14:05:13 -!- ehird has joined.
14:14:52 <ehird> 09:43 <AnMaster> <AnMaster> * psygnisfive plucks anmaster's guitar strings <-- I don't have a guitar. Nor do I play violin (I do play piano)
14:14:56 <ehird> he was making a sexual joke.
14:15:09 <AnMaster> oh
14:15:22 <ehird> it's psygnisfive; couldn't you have guessed?
14:15:29 -!- sebbu has joined.
14:15:40 <Slereah> He's fingering a minor
14:15:42 <Slereah> WINK WINK
14:18:02 <ehird> oh lawd
14:18:06 <ehird> that was terrible
14:23:52 -!- oklopol has quit (Read error: 54 (Connection reset by peer)).
14:23:53 -!- oklofok has joined.
14:31:05 <oklofok> oooooooooooo
14:31:12 <oklofok> umm.
14:31:17 <ehird> hi oklofok
14:31:21 <oklofok> did i just disconnect a few minutes ago?
14:31:33 <oklofok> i mean. i just got home, and the computer was closed
14:31:37 <ehird> 14:23 oklopol has left IRC (Read error: 54 (Connection reset by peer))
14:31:38 <ehird> 14:23 oklofok has joined (n=nnscript@a91-153-121-248.elisa-laajakaista.fi)
14:31:39 <oklofok> i think that happened yesterday too
14:31:41 <ehird> liek, yeah man
14:31:45 <oklofok> umm.
14:31:45 <ehird> it's 14:31 rite nao
14:31:46 <oklofok> so
14:32:02 <oklofok> when i touch the computer, it disconnects, and wants my password
14:32:15 <oklofok> but until then, it's nicely sitting on irc, connected
14:32:19 <oklofok> i mean that's pretty awesome
14:32:43 <Azstal> hmm... what OS is this?
14:33:01 <ehird> oklofok uses windoze
14:33:16 <Azstal> I seem to recall Windows XP does some odd stuff with networking when you use fast user switching.
14:33:43 <oklofok> no this is the new one
14:33:48 -!- Slereah has quit.
14:33:59 <ehird> Asztal: he uses vistah.
14:34:30 <oklofok> ehird: could you just say my lines too from n
14:34:45 <ehird> Asztal: i'm just going to say what oklofok says, forever.
14:35:10 <oklofok> feeling kinda t
14:35:19 <ehird> Asztal: he's feeling kind of T.
14:35:24 <Azstal> ok.
14:35:41 <ehird> oklofok: Asztal's ok.
14:35:50 <oklofok> that thing where vista shows the windows like all 3d
14:35:58 <Azstal> flip 3d?
14:36:17 <Azstal> http://drunkmenworkhere.org/170 <- I had it down to 4 incorrect answers at one point. Now I've gone and messed it up :(
14:36:18 <oklofok> everyone was like oh my god it's cool
14:36:24 <oklofok> i mean, you know, all the idiots i know
14:36:35 <oklofok> which is just i myself
14:36:40 <oklofok> i thought it looked pretty cool
14:36:42 <oklofok> i've never used it
14:36:49 <ehird> Asztal: he thinks flip 3d looks pretty cool
14:36:51 <ehird> but he's never used it
14:36:52 <oklofok> it just doesn't fit the rest at all
14:36:56 <ehird> but all the idiots he knew like it
14:37:01 <ehird> and it doesn't fit with the rest of the os
14:37:09 <ehird> in his opinion
14:37:17 <oklofok> i mean using it would be like driving a car, and once in a while using the flying mode to park it
14:37:27 <oklofok> because it's simpler that way
14:37:37 <ehird> Asztal: he says using it would be like driving a car but it has a flying mode but you can only use it to park it
14:38:05 -!- Slereah_ has joined.
14:38:07 <Azstal> I pretty much just never use it because I can't break my Alt-Tab reflex.
14:38:21 <oklofok> don't you agree with flying cars?
14:38:26 <Azstal> oh yes
14:38:55 <oklofok> i mean not agreeing with flying cars would be like... well i can't really think of another analog.
14:39:17 <ehird> would be like sucking.
14:39:18 <oklofok> a flying car analog for flying cars would be okay though, because, well, they can fly
14:39:28 <ehird> oklofok: the word is analogy
14:40:31 <oklofok> umm
14:40:49 <oklofok> well i can't really correct it anymore
14:40:53 <oklofok> because you did
14:41:08 <oklofok> please use pm's next time, so i can look like i spotted the error myself.
14:41:24 <ehird> :D
14:41:27 <oklofok> okay, IE froze up.
14:41:33 <oklofok> seems it can do that
14:41:34 <ehird> oklofok: LET'S MAKE AN ESOLANG. :|
14:42:15 <oklofok> could it consist entirely of emoticons, but without emoticons actually having any meaning, the semantics just force you to have them everywhere for different reasons
14:42:35 <oklofok> like j, but instead of : and . suffixes, you have ; and : prefixes
14:42:36 <ehird> maybe
14:42:51 <oklofok> well no, that would pretty much just be having emoticons
14:42:59 <oklofok> maybe it could not have any point at all
14:43:15 <oklofok> umm.
14:43:25 <oklofok> the problem with ie is, if it frozes, i can't actually do anything.
14:43:34 <oklofok> well i can close it, but afaik it doesn't save state
14:44:28 <oklofok> ohhhhhh
14:44:34 <oklofok> this wasn't ie's problem, vista's
14:44:46 <oklofok> i have the maximum ~30 windows open
14:48:12 <oklofok> oh, there's a freebie
14:49:54 <oklofok> also a pretty funny one
15:05:26 <oklofok> hehe
15:06:01 <oklofok> @ 11, ask how many B's, i've deduced enough to know exactly that the amount of B's is between the given range of options :D
15:06:10 <oklofok> which helps a zero amount \o/
15:07:37 <oklofok> wait. i probably misunderstood the questions that ask what the answer of another questino is
15:07:39 <oklofok> *question
15:07:49 <oklofok> does that mean the question letter, or the actual answer?
15:07:49 <oklofok> hmm
15:07:54 <oklofok> "all of the above"
15:07:58 <oklofok> so i guess kinda obvious
15:11:05 <oklofok> blargh
15:11:24 <oklofok> but then 6 and 17 will just be the same, that doesn't seem very sensible either...
15:11:25 -!- jix has joined.
15:11:39 <oklofok> oh you can clean the thing ofc
15:12:26 <oklofok> hmm.
15:12:32 <oklofok> so okay
15:12:47 <oklofok> if i choose A from both 6 and 17
15:12:49 <oklofok> it's wrong
15:13:03 <oklofok> therefore the question must mean "what is the answer's label"
15:13:12 <oklofok> now, unless the thing is absolutely retarded
15:13:24 <oklofok> then 10 and 16 must work the same way
15:13:33 <oklofok> then
15:13:43 <oklofok> 10A 16D is the only solution
15:13:52 <oklofok> so clearly 9 is A
15:14:01 <oklofok> in which case 13 is A too, contradicting itself
15:14:16 <oklofok> either the test or my logic is flawed
15:14:35 <oklofok> probably the first one, but i won't continue unless someone feels like explaining why
15:15:06 <oklofok> which i don't assume anyone does, just saying
15:15:34 <oklofok> Asztal: highlight for you since you said you were playing
15:16:10 <oklofok> presumably by pressing random buttons with some heuristic because you "had it down to 4 incorrect answers"
15:16:14 <oklofok> but still
15:17:04 <oklofok> no wait
15:17:11 <oklofok> 10A 16A is okay it seems
15:17:27 <oklofok> and right my logic was indeed flawed
15:17:34 <ehird> What is the wrong answer to this question?
15:17:35 <ehird> A: B
15:17:37 <ehird> B: A
15:17:46 <ehird> (For extra lulz, A: A and B: B.)
15:17:54 <oklofok> 9 can't be deduced to be A from 10A, of course
15:17:57 <ehird> (Or A: B, B : C and C : A.)
15:18:07 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
15:18:19 -!- psygnisfive has joined.
15:25:55 <Azstal> I'm down to 3 now
15:26:14 <Azstal> but I suspect I can't solve it by merely changing these 3
15:28:54 <Azstal> actually, I think there's a bug in the checking, because I have 9B and 11C.
15:29:08 <Azstal> (and 9 isn't red)
15:29:41 <oklofok> well i at least need to wait a mo before they change, you might not have noticed if the lag is in my end
15:30:40 <Azstal> it can be slow :(
15:31:33 <oklofok> i currently have 4 correct, 1 with 2 choices, 3 with 3 choices, 9 with 4 choices, 3 with 5 choices
15:32:15 <oklofok> i'm assuming this is solvable without any major long-term problems, because, well, it looks like a puzzle
15:32:31 <oklofok> not long-term, more like something else.
15:35:22 <Azstal> one red one... but all the options contradict something else :(
15:35:51 <oklofok> don't show the solution yet when you're finished
15:36:02 <Azstal> I probably won't :D
15:41:22 <ehird> GregorR: I just saw someone link to extra-www in an interwebs argument.
15:41:24 <ehird> You are famous.
15:41:38 <oklofok> 15 is a fun one
15:41:47 <oklofok> i bet it's there just out of necessity
15:42:35 <ehird> i wanna bruteforce it
15:43:23 <oklofok> 5^20
15:43:23 <oklofok> 9.53674e13
15:43:41 * ehird bruteforces 15 to bruteforce 12
15:43:42 <oklofok> except maybe if i give you the few things i've deduced
15:43:43 <oklofok> let's see
15:43:45 <Azstal> not quite, since 20, 10, and 16 can be solved easily
15:44:08 <ehird> WTF
15:44:09 <oklofok> also 6 and 17, but not that easily
15:44:10 <ehird> #15
15:44:13 <ehird> is WRONG on ALL OF THEM
15:44:20 <ehird> WHATTTTTTTTT
15:44:22 <Azstal> you have to answer 12
15:44:23 <oklofok> ehird: it's about answer labels
15:44:27 <ehird> Asztal: o
15:44:28 <ehird> oklofok: i no
15:44:58 <oklofok> oh, you thought they are red if the answer isn't in the actual correct solution
15:45:05 <Azstal> there's also a lot of restricted choices because only one odd answer can be A, and only one pair of consecutive answers can be equal
15:45:06 <oklofok> that would be a fun problem solving interface, yes.
15:47:02 <ehird> I have:
15:47:06 <ehird> 6,10,16,17
15:47:07 <ehird> 20
15:47:09 <ehird> down
15:47:33 <oklofok> you mean actually solved, or solved on your screen?
15:47:57 <Azstal> They're pretty much self-contained
15:48:07 <oklofok> 6 and 17 aren't
15:48:12 <oklofok> they have two choices
15:48:23 <ehird> I got 6 = D17 = B
15:48:31 <Azstal> me too
15:48:34 <ehird> or should I say D6B17
15:48:49 <oklofok> ehird: based on what?
15:48:59 <ehird> based on love.
15:49:01 <oklofok> why not 6B17D
15:49:06 <ehird> dunno
15:49:08 <oklofok> i mean
15:49:12 <oklofok> the decision, not the syntax
15:49:12 <ehird> tha's just what i did
15:49:15 <ehird> 'cuz I did 6 first
15:49:16 <ehird> then 17
15:49:18 <ehird> so.
15:49:26 <oklofok> okay. well it's correct.
15:49:27 <Azstal> because then 16 and 17 would be consecutive and equal, and 2 would cry
15:49:30 <oklofok> yes
15:49:39 <oklofok> Azstal: yes, naturally, i just doubted ehird saw that
15:49:44 <Azstal> :)
15:49:56 <Azstal> I don't think I saw that
15:49:59 <ehird> the ones I hate are the ones where I have to solve every other question first.
15:50:09 <ehird> whoa, #19 is, um, ...
15:50:10 <ehird> lol
15:50:13 <oklofok> you mean the ones that actually make sense?
15:50:19 <oklofok> that actually require thinking?
15:50:21 * ehird brutforcez
15:50:23 <ehird> oklofok: :DD
15:50:44 <oklofok> i hate those too, they make puzzles too hard :<<<<<<<<<<
15:51:08 <ehird> i agree, yo
15:52:05 <ehird> hokay, I've done all the self contained ones
15:52:06 <ehird> now what
15:56:14 <oklofok> yay.
15:56:22 <oklofok> i found another one with just 2 choices
15:56:29 <oklofok> I'M PRETTY CLOSE.
15:56:59 <ehird> oklofok: do you just like brute force it?
15:57:08 <ehird> i can't think of any way of answering the non-self contained ones other than guessing
15:59:09 <oklofok> i mostly think
15:59:18 <oklofok> yay, third with just 2
15:59:22 <ehird> oklofok: but how, i mean, i can't answer any of them since I have to solve all the other ones first to do them
15:59:31 <ehird> which then depends on the answer to it
15:59:52 <oklofok> ehird: afaik you can't solve them directly without making a really long inference chain that branches.
15:59:58 <oklofok> well more like "probably"
16:00:12 <ehird> oklofok: so that's what you do? :<<<
16:00:14 <oklofok> but you can store certain information about what the answers must be, and make inferences.
16:00:20 <oklofok> no
16:00:22 <oklofok> that's cheating
16:00:24 <ehird> what do you do then
16:00:37 <ehird> :oo
16:00:42 <oklofok> systematically make short inferences
16:01:00 <oklofok> that give me less information
16:01:21 <oklofok> i just have a list of possibilities for all questions ofc
16:01:22 <ehird> ah.
16:01:29 <oklofok> well "just" wasn't ofc
16:01:37 <oklofok> but the fact i have a list for each of them was
16:01:48 <oklofok> because i've spilled parts of its content
16:03:51 <oklofok> well it
16:04:00 <oklofok> 's not cheating if you check every branch
16:04:14 <oklofok> but educated guessing is, unless you can justify it
16:05:06 <AnMaster> what are you discussing?
16:05:23 <ehird> http://drunkmenworkhere.org/170
16:05:27 <ehird> self-referential puzzle.
16:05:50 <oklofok> seems it's a bit too hard for me.
16:06:01 <ehird> oklofok: DON'T ADMIT DEFEAT
16:06:31 <AnMaster> question 20 isn't self ref it seems?
16:06:32 <AnMaster> or?
16:06:51 <ehird> no, it isn't
16:07:06 <AnMaster> though I don't know what the answer is for it
16:07:07 <ehird> AnMaster: i think there has to be non self-referential question to have a consistent, unique anserset
16:07:10 <ehird> *answerset
16:07:19 <AnMaster> yes probably
16:07:25 <ehird> also, it's E
16:07:30 <ehird> it doesn't really matter so yeah
16:08:44 <ehird> AnMaster: and the self-contained ones are:
16:08:52 <ehird> 6,17
16:08:57 <ehird> 10,16
16:09:07 <ehird> 19
16:09:08 <ehird> 20
16:09:19 <AnMaster> so nothing depends on 19?
16:09:20 <ehird> i.e., beyond that they all depend on multiple questions
16:09:26 <ehird> AnMaster: no, most things depend on everything
16:09:31 <ehird> but those don't depend on anyhitng out of their pair
16:09:31 <AnMaster> ehird, right true
16:09:34 <ehird> so you can complete them first
16:09:40 <AnMaster> a search of all possibilities to find a consistent set seems the only way then
16:09:47 <ehird> yeah, with your brain :P
16:09:53 <ehird> well, 19 isn't really eslf-contained
16:09:57 <ehird> since all answers are correct
16:10:08 <AnMaster> you have to match it so it match up with what you answer elsewhere
16:10:17 <ehird> AnMaster: yes, incrementally
16:10:17 <AnMaster> for "number of consonants"
16:10:18 <AnMaster> and such
16:10:26 <ehird> so you can just backtrack when you can't get it further
16:10:28 <Azstal> I hate 12
16:10:32 <AnMaster> ehird, true
16:10:39 <AnMaster> prolog should be great for this I assume
16:10:51 <oklofok> ehird: nah you don't need a non self-referential question
16:10:59 <ehird> oklofok: so 20 is just silly
16:11:04 <ehird> AnMaster: no, you're meant to use your brain.
16:11:06 <oklofok> what's the answer to this question? A: A, B: C, C: B
16:11:06 <ehird> not a computer.
16:11:08 <ehird> it's called a puzzle.
16:11:12 <AnMaster> ehird, also some are invalid, like 1-A
16:11:16 <ehird> oklofok: a
16:11:17 <ehird> :P
16:11:24 <ehird> AnMaster: well, duh
16:11:24 <oklofok> AnMaster: it just checks current state of affairs
16:11:40 <AnMaster> oklofok, what checks?
16:11:46 <oklofok> AnMaster: the site.
16:11:53 <AnMaster> ah some javascript there?
16:11:59 <ehird> no
16:12:01 <ehird> it's server-side
16:12:04 <ehird> well
16:12:07 <ehird> it uses javascript to submit
16:12:08 <ehird> yes
16:12:08 <AnMaster> I see no submit button
16:12:13 * AnMaster enables scripts then
16:12:14 <ehird> it auto-submits wen you change answer
16:12:15 <ehird> :P
16:12:21 <ehird> woo, i did 9
16:12:30 <ehird> and 2
16:12:32 <ehird> awesome
16:12:34 <ehird> i'm getting somewhere
16:12:49 <AnMaster> hm
16:13:02 <AnMaster> with javascript on it take ages
16:13:02 <AnMaster> strange
16:13:03 <AnMaster> ages to load that is
16:13:03 <ehird> and 13
16:13:03 <ehird> woop woop
16:13:05 <ehird> er
16:13:06 <ehird> nope
16:13:17 <ehird> AnMaster: slow server
16:13:22 <AnMaster> ah
16:13:23 <ehird> oklofok: can you hal
16:13:24 <ehird> p
16:13:40 <Azstal> it would be funny if there was no solution
16:13:46 <ehird> heh
16:14:43 <AnMaster> 6,17 is impossible?
16:15:08 <ehird> it is not.
16:15:13 <AnMaster> ah right
16:15:17 <ehird> heh
16:15:20 <ehird> oklofok: see /msgs
16:15:22 <ehird> :{
16:15:25 <ehird> i hate sayng that
16:15:56 <oklofok> came, saw, solved.
16:16:04 <oklofok> ...that is, your message ;)
16:16:22 <ehird> lawl
16:17:30 <ehird> i have 2,5,17,9,10,16,17,19,20 done
16:17:52 <oklofok> i finally solved a sixth one
16:18:00 <oklofok> question 1
16:18:10 <oklofok> it's of course one of the simple ones
16:18:13 <ehird> you only had 5 done?!
16:18:26 <oklofok> yes.
16:19:15 <oklofok> well now 7 of course, 1 kinda does that
16:19:16 <Azstal> I've got 2 answers for #1 :(
16:19:42 <oklofok> Azstal: it's actually a rather short inference to get it
16:32:36 <AnMaster> I have all by 4 solved now
16:33:14 <AnMaster> s/by/but/
16:36:25 <oklofok> i have 10 solved
16:40:39 <ehird> isn't 10 A?
16:42:55 <oklofok> well yes
16:49:05 <AnMaster> I give up
16:49:08 <AnMaster> too much work
17:06:11 <oklofok> okay solved
17:06:23 <oklofok> the beginning was quite hard
17:06:29 <oklofok> hmm
17:06:32 <oklofok> well i'll check it
17:08:16 <oklofok> yeah
17:08:22 <oklofok> not that it's very surprising
17:08:26 <oklofok> should probably do something
17:08:28 <oklofok> now
17:08:37 <oklofok> maybe, like, read
17:09:10 <oklofok> ehird: you need some simple algebra with the amounts of characters in addition to just simple inference
17:09:22 <oklofok> but like. 4+3>6
17:11:06 <oklofok> also god that took long :D
17:11:14 <oklofok> over 2 hours
17:11:26 <oklofok> i thought it was like 20 minutes or something
17:13:09 <oklofok> the longest "let's try this and see what happens" chain you need is length 3; but there's are pretty obvious signs you should try it
17:13:49 <oklofok> (getting that answer is the only thing that can conceivably give you any data, so there must be a solution given what you currently have)
17:14:48 <oklofok> hmm yeah i should probably analyze this a bit longer
17:15:48 <oklofok> so, err. seriously ->
17:16:04 <oklofok> also if someone wants the solution, i can give it
17:16:15 <oklofok> ->
17:17:36 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
17:18:22 <ehird> blargl
17:24:30 <oklofok> <-
17:24:38 <oklofok> although i do kinda wanna try prolog on that
17:25:33 <oklofok> then again i'm not sure how to get anything that efficient out of the sum ones
17:33:26 -!- kar8nga has joined.
18:04:59 -!- jix has quit ("...").
18:20:47 <AnMaster> oklofok, sure I want the solution
18:21:04 <AnMaster> anyway there are certain ones that are impossible, quite a lot in fact
18:21:40 <AnMaster> like 1-{A,B} (Since if 2 was B then A and B would have the same value)
18:21:58 <AnMaster> err
18:22:05 <AnMaster> like 1-{A,B} (Since if 2 was B then 1 and 2 would have the same value)
18:22:06 <AnMaster> I mean
18:22:08 <oklofok> well yes, that's one of the trivial things you can conclude
18:22:21 <oklofok> well, explaining is for humans
18:22:22 <AnMaster> oklofok, I managed to get all except 4 to match
18:22:34 <oklofok> i prefer to think of it as checking all (1,2)-pairs :P
18:22:36 <AnMaster> but I couldn't make 4 work without breaking everything else
18:22:53 <AnMaster> oklofok, so I would like to see the solution
18:23:41 <oklofok> umm
18:23:49 <oklofok> well, it's in your priv now
18:23:50 <oklofok> but...
18:23:57 <AnMaster> thanks
18:24:04 <oklofok> that's pretty sick when you read it out loud :D
18:24:11 <AnMaster> hah
18:24:12 <ehird> oklofok: what???
18:24:12 <ehird> tell me
18:24:14 <ehird> tell me tell me
18:24:18 <ehird> the solution
18:24:18 <oklofok> well not sick
18:24:18 <ehird> thatis
18:24:20 <ehird> not the sick
18:24:22 <ehird> i get that
18:24:24 <ehird> but
18:24:26 <ehird> ssolutioant
18:24:33 <oklofok> just pornative
18:24:35 <oklofok> umm
18:24:50 <oklofok> well i'll priv it too
18:25:00 <oklofok> in case Asztal is still trying or something
18:25:19 <oklofok> it wasn't as sick as i thought
18:25:30 <oklofok> i mean i didn't realize at first it was actually completely sensible
18:25:42 <oklofok> so i just thought it was about having sex with dead babies
18:25:54 <oklofok> "ded"
18:26:36 <ehird> Dad bedded a bad, bad babe.
18:26:47 <oklofok> did he now?
18:28:12 <AnMaster> there are two possible solutions I think
18:28:26 <oklofok> yeah right.
18:28:36 <oklofok> seriously i didn't make one guess solving that.
18:28:49 <AnMaster> ah wait
18:28:52 <ehird> Wow, apple just removed all the drm from their itunes store [source: http://daringfireball.net/linked/2009/01/06/drm-free]
18:28:54 <AnMaster> then 6&7 doesn't match
18:28:59 <ehird> Hey, I might actually use it now. :P
18:28:59 <oklofok> AnMaster: shocking
18:29:04 <AnMaster> oklofok, ?
18:29:09 <oklofok> AnMaster: nm
18:29:36 <AnMaster> oklofok, the pair 6,17 in itself have 2 possible solution
18:30:11 <ehird> AnMaster: but only one is consistent
18:30:13 <ehird> with all the others
18:30:13 <oklofok> yes. also the singleton {19} has 5 possibles solution
18:30:24 <ehird> i could write this in prolog easy prolly
18:30:25 <AnMaster> ehird, true
18:30:39 <AnMaster> and prolog would indeed be a good language to solve it
18:31:06 <AnMaster> or some other back tracking language
18:31:17 <ehird> prolog is just a DSL for exponential-time algorithms.
18:31:23 <ehird> :D
18:31:39 <AnMaster> heh
18:31:52 <AnMaster> ehird, can't you write user interfacing programs in it?
18:32:02 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
18:32:03 <ehird> yes, but you don't want to.
18:32:14 <AnMaster> hah
18:32:17 <oklofok> sure you do, imperative prolog is fun
18:32:25 <ehird> it kind of sucks.
18:32:39 <AnMaster> hm, xcut? oh wait that is used, it would be somewhat like xmonad otherwise
18:32:45 <oklofok> well it's pretty eso used like that
18:32:52 <oklofok> probably wouldn't be fun to write
18:32:55 <AnMaster> true
18:33:05 * AnMaster has looked a bit at prolog, not much though
18:33:15 <oklofok> more like it's funny to read what weirness results when ppl write imperativish stuff with it
18:33:26 <oklofok> i've read a book about it
18:33:30 <oklofok> never used it iirc
18:33:33 * ehird writes solver for dis in prolooooog
18:33:37 <AnMaster> oklofok, about prolog or about imperative prolog?
18:33:43 <oklofok> AnMaster: what's imperative prolog?
18:33:49 <AnMaster> <oklofok> more like it's funny to read what weirness results when ppl write imperativish stuff with it
18:34:05 <AnMaster> ok... s/imperative/imperativish/
18:34:11 <oklofok> well prolog is pretty sequential
18:34:18 <oklofok> you can write io stuff with it
18:34:21 <oklofok> that's what i meant really.
18:34:33 <oklofok> getting input, outputting, doing computation in between
18:34:38 <AnMaster> anyway that sounds fun... imperative haskell and functional basic
18:34:39 <AnMaster> :D
18:34:46 <oklofok> ehird: I DOUBT IT'LL BE AS FAST AS MY 2 HOURS
18:34:53 <ehird> :DD
18:35:01 <oklofok> well
18:35:11 <oklofok> actually imperative haskell is something i would very much like.
18:35:12 <AnMaster> how many possible combinations of the options are there if you brute force
18:35:14 <AnMaster> lets see
18:35:16 <oklofok> i was just thinking that the other day
18:35:18 <AnMaster> 20 options
18:35:20 <ehird> too many AnMaster
18:35:21 <ehird> not worth it
18:35:37 <AnMaster> 5 alternatives each
18:35:38 <AnMaster> so
18:35:40 <AnMaster> 5^20
18:35:44 <AnMaster> right, too many
18:35:51 <oklofok> i mean it's so perfect, but usually i just don't feel like functional, because, well, it requires me to know more in advance about what i want the prog to do
18:36:00 <oklofok> so it's not as good for randomly hacking stuff up imo
18:36:17 <AnMaster> oklofok, you have a point there
18:36:20 <ehird> oklofok: refactoring.
18:36:21 <ehird> yo.
18:36:21 * AnMaster was hacking a script in awk
18:36:29 <ehird> hack some shit up, mess it up if it doesn't fit
18:36:31 <ehird> repeat until works
18:36:33 <AnMaster> in retrospect... it would have been better in some other language
18:36:39 <AnMaster> however it is almost done
18:36:41 <oklofok> ehird: yeah that's so much fun. you're missing the point.
18:36:45 <ehird> it is fun
18:36:47 <ehird> it's trivial
18:37:18 <oklofok> well whatever, either agree or don't.
18:37:30 <ehird> lol
18:37:54 <AnMaster> oklofok, depends on if you have an IDE (select, click extract method) or an unix-like system (sed, awk and grep will fix it most of the time) or just a simple text editor (it is not fun then)
18:38:04 <AnMaster> for the first two it is easy enough
18:38:11 <oklofok> fix what?
18:38:32 <AnMaster> oklofok, fix the function names and so on after refactoring
18:38:38 <ehird> ...
18:38:44 <ehird> you fail to understand what i meant by refactoring.
18:39:02 <AnMaster> ehird, I assumed you meant the normal mainstream meaning of it?
18:39:02 <ehird> i meant hacking up the structure of the program, not renaming bloody functions
18:39:55 <oklofok> having to do refactoring in a quick hack pretty much proves my point functional paradigm is often not as nice for it. not that i agree you need to do it.
18:40:00 <AnMaster> ehird, true, but sometimes you end up renaming functions as a part of refactoring
18:40:17 <ehird> no.
18:40:18 <oklofok> it's just it takes a little longer to write a program because you need to know a bit more about what the end result will look like
18:40:23 <ehird> if you just rename functions and that's it, you fail.
18:40:30 <AnMaster> ehird, true
18:40:32 <AnMaster> you do more
18:40:35 <ehird> oklofok: refactoring is a quick hack though
18:40:39 <ehird> it's quicker
18:40:48 <ehird> quick hacks are easy in functional langs
18:41:20 <oklofok> whatever, i don't see how you can argue what experience has shown me about my brain.
18:41:57 <oklofok> so plz just agree or don't, stop teaching me, i hate you doing that.
18:44:03 <ehird> :D
18:44:23 <oklofok> :)
18:45:16 <AnMaster> oklofok, s/or/and/
18:45:46 <oklofok> AnMaster: correcting my sentence?
18:45:51 <oklofok> i mean, i liked it the way it was
18:46:13 <AnMaster> oklofok, I prefer it with "agree and don't"
18:46:22 <oklofok> well
18:46:29 <oklofok> okay then
18:46:46 <oklofok> ehird: whichever you chose, could you try doing the other thing too?
18:47:12 <ehird> what other thing
18:47:20 <oklofok> ehird: nm
18:47:25 <ehird> no what
18:47:33 <oklofok> to cover a lot of cost you must use a lot of weight......
18:48:02 <ehird> how do you split an atom into its chars in prolog
18:48:26 <oklofok> umm. that's kinda technical, i suggest ggl.
18:48:31 <oklofok> unless #prolog
18:48:34 <oklofok> or something
18:48:38 <oklofok> also ggl
18:49:47 <ehird> one(R, X) :- opt(X, [1,2,3,4,5], Y), Y2 is Y+1, at(R, Y2, b).
18:49:51 <ehird> woop
18:50:58 <ehird> actually
18:51:01 <ehird> one(R, X) :- opt2(X, Y), Y2 is Y+1, at(R, Y2, b).
18:51:56 -!- Corun has quit ("This computer has gone to sleep").
18:52:41 <ehird> holy shit
18:52:42 <ehird> | ?- solve(R).
18:52:42 <ehird> R = [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_|_] ? ;
18:52:44 <ehird> zsh: bus error gprolog
18:52:46 <ehird> i crashed fucking gprolog
18:52:48 <ehird> :D
18:53:43 <ehird> 2. The only two consecutive questions with identical answers are questions:
18:53:45 <ehird> bah that's just too hard.
18:53:48 <ehird> to formulate.
18:54:04 <AnMaster> ehird, oh?
18:54:10 <ehird> in prolog.
18:54:16 <ehird> for me.
18:54:17 <AnMaster> mh
18:54:19 <AnMaster> hm*
18:54:59 <oklofok> i don't think i have time to do it myself
18:55:01 <oklofok> but would be cool
18:55:05 <oklofok> so maybe after this week
18:55:12 <oklofok> if i remember the whole thing anymoer
18:55:48 <AnMaster> hm
18:56:06 <ehird> hm
18:56:42 <AnMaster> well I was thinking of how many ways existed to build cfunge...
18:57:07 <AnMaster> too many compile time options to test all combinations (and that not including cflags)
18:57:29 <ehird> http://www.apple.com/pr/library/2009/01/06itunes.html 's official
19:05:30 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
19:41:08 <AnMaster> hm
19:41:20 <AnMaster> there is diff for comparing 2 files, and diff3 for comparing 3 files
19:41:28 <AnMaster> what I'm missing is a diffn for comparing n files
19:41:55 <AnMaster> because currently I want to compare 36 different test result output of mycology from building in different configurations with different compilers
19:44:32 <ehird> AnMaster: pipe diff3's
19:44:36 <ehird> or use kdiff or sth
19:44:41 <AnMaster> kdiff?
19:44:48 <AnMaster> kompare?
19:44:54 <AnMaster> anyway kompare just does 2 files
19:45:18 <AnMaster> kdiff3 exists
19:45:23 <AnMaster> but that doesn't solve it
19:48:45 <ehird> AnMaster: write it.
19:49:01 <AnMaster> hm
19:50:03 <ehird> AnMaster: it's just longest common subsequence :P
19:50:08 <ehird> just generalize it for multiple sequences
19:50:18 <AnMaster> hm maybe
19:50:31 <ehird> http://en.wikipedia.org/wiki/Longest_common_subsequence_problem
19:51:11 <AnMaster> "The problem is NP-hard for the general case of an arbitrary number of input sequences."
19:51:15 <AnMaster> right
19:52:13 <ehird> sure.
19:52:15 <Deewiant> 36 doesn't sound like too many though
19:52:23 <AnMaster> Deewiant, true
19:52:36 <Deewiant> Depends on the complexity of the best algos of course
20:05:24 -!- Corun has joined.
20:31:54 -!- psygnisfive has joined.
20:32:59 <psygnisfive> ehird, in all likelihood it'll be in the typical prologish fashion like atom_equates_to_string(TheAtom, TheString)
20:59:16 <oklofok> err
20:59:25 <oklofok> AnMaster: you don't need the np-hard algo
20:59:39 <oklofok> well
20:59:40 <AnMaster> oklofok, true
20:59:45 <oklofok> umm, yeah, maybe you do
20:59:45 <AnMaster> anyway I solved it another way
20:59:47 <oklofok> but
20:59:54 <oklofok> i assumed you needed to get just all pairs
21:00:04 <oklofok> but then again why would there be diff3 if that's what you wanted
21:00:14 <AnMaster> I want a diff36
21:00:21 <AnMaster> like all files side by side with differences
21:00:23 <oklofok> yes but what does diff36 do
21:00:28 <oklofok> hmm okay
21:00:32 <oklofok> yeah then it's exactly that.
21:00:37 <oklofok> sorry, i'm a guesser
21:10:05 -!- GreaseMonkey has joined.
21:24:53 -!- ais523 has joined.
21:34:34 <AnMaster> hi ais523
21:34:46 <ais523> hi AnMaster
21:36:09 <AnMaster> ais523, just about half an hour ago I was looking for something like "diff36", that is like diff takes 2 files diff3 takes 3 files, even better would be a diffn. I solved the issue in another way, but do you know any software which can diff n files? I may write my own one for the future if not
21:37:01 <ais523> I've had a similar problem before
21:37:09 <ais523> I found a utility called interdiff, which diffs diffs
21:37:15 <ais523> repeatedly applying that and diff2 and diff3 works I think
21:37:28 <ais523> although I'm not entirely sure if it works in all cases
21:37:32 <AnMaster> ais523, diff2 *and* diff3?
21:37:38 <ais523> yes
21:37:42 <AnMaster> why?
21:37:43 <ais523> because there's more than one way to do a diff4
21:37:53 <ais523> the way you apply things depends on exactly what you're trying to do
21:38:01 <AnMaster> combine 2 diff2?
21:38:10 <ais523> well, what is a diff4?
21:38:25 <AnMaster> all the 4 files side by side in a GUI showing differences in my case
21:38:35 <ais523> oh, that's quite different from what I was doing
21:38:43 <AnMaster> ais523, think something like "kompare"
21:38:48 <AnMaster> but with 4 files side by side
21:38:50 <ais523> I was trying to work out differences from C to D which weren't changed from A to B
21:38:56 <AnMaster> or in my case 36 files
21:38:58 <AnMaster> side by side
21:38:59 <ais523> besides, a diff3 is not what you're describing
21:39:14 <AnMaster> ais523, hm what exactly is a diff3 then
21:39:23 <ais523> diff3 combines changes in a diff from A to B with changes in a diff from A to C
21:39:38 <ais523> in other words, it merges two working versions given a base version
21:40:15 <AnMaster> ais523, so what about the thing I want?
21:40:28 <AnMaster> ais523, I want to inspect 36 outputs for differences, some differences are ok, some are not
21:40:37 <AnMaster> and only manual inspection will work well sadly
21:40:49 <ais523> do you have a base case to compare against?
21:40:54 <ais523> if so, then just diff2 them all against the base case
21:41:04 <ais523> hmm... actually, do you know about comm?
21:41:05 <AnMaster> ais523, no clear base case no
21:41:18 <AnMaster> ais523, and sure I know about comm, but I would like context
21:41:23 <AnMaster> like in a -u diff
21:41:41 <ais523> AnMaster: comm does provide context by default, although its output format is weird
21:41:51 <ais523> it sounds like what you're trying to do now is like a multi-file comm with a saner output format
21:41:58 <ais523> rather than a multi-file diff with a saner output format
21:42:05 <AnMaster> ais523, basically I had mycology output from building 36 combinations of compile time options and compilers
21:42:16 <AnMaster> mkdir $(for i in build_{,gc_}{,nothr_}{32,64}_{mud,gcc,gcc-346,icc,llvm}; do echo $i; done | sed '/gc.*_mud/d')
21:42:37 <ais523> AnMaster: I suggest you construct a base case by hand which simply omits all the lines you expect to change
21:42:43 <ais523> then diff everything against that
21:42:50 <AnMaster> ais523, hm but I want to make sure the change is sane
21:42:56 <ais523> yes, exactly
21:43:01 <ais523> all the lines that change
21:43:05 <ais523> and all the lines which aren't in the base case
21:43:08 <ais523> show up in the diff
21:43:18 <AnMaster> ais523, well what if one says "The time is 27 : 17 : 18"
21:43:21 <AnMaster> sure it changes
21:43:25 <AnMaster> but 27 would be invalid
21:43:26 <ais523> AnMaster: well, that line isn't in the base case
21:43:34 <ais523> so it shows up in every single diff
21:43:54 <AnMaster> ais523, also thread/no-threading, hm 2 base cases
21:44:00 <ais523> yes, ok
21:44:18 <ais523> actually, why aren't you just inspecting the whole output? Because lots of it's boilerplate?
21:44:38 <AnMaster> ais523, well I did a hackish and rather complex way of solving it, I did sed -i on all files to change any small differences to N
21:44:48 <AnMaster> thus reducing the interesting info
21:44:53 <AnMaster> after aroudn 40 sed expressions
21:45:01 <AnMaster> so I could compare md5sum
21:45:21 <AnMaster> still this is not a simple way of doing it
21:48:12 <ais523> AnMaster: there is no simple way of doing it, mostly because you aren't entirely sure what you're doing
21:48:23 <AnMaster> ais523, oh and this script proved quite useful in a backwards kind of way: http://rafb.net/p/K2KrwY85.html
21:48:49 <AnMaster> ais523, I want to check if there are any "bad" output differences between lots of different builds of cfunge built with different combinations
21:48:52 <AnMaster> of options
21:49:06 <AnMaster> ais523, and that is just a few of the possible combinations
21:49:17 <ais523> AnMaster: yes, but translating that into speak a computer will understand is not trivial
21:49:22 <AnMaster> ais523, indeed
21:49:41 <AnMaster> ais523, oh and if you know prolog well I think ehird had a prolog issue
21:49:46 <AnMaster> maybe you can help him
21:50:00 <AnMaster> <ehird> 2. The only two consecutive questions with identical answers are questions:
21:50:00 <ais523> AnMaster: I thought ehird didn't believe in Prolog
21:50:00 <AnMaster> <ehird> bah that's just too hard.
21:50:00 <AnMaster> <ehird> to formulate.
21:50:02 <ehird> No i did not.
21:50:14 <ehird> It's not hard.
21:50:16 <ehird> just tedious.
21:50:21 <ehird> Adn I didn't have much of an attention span on it anyway.
21:50:43 <AnMaster> ais523, it was about http://drunkmenworkhere.org/170
21:50:53 <AnMaster> ais523, needs javascript
21:56:29 <ehird> Huh. I went to reddit.com and saw my submission at #1. That was...unexpected.
21:56:39 <ais523> ehird: is it still there?
21:56:45 <ehird> Yeah. Might be #2 now.
21:56:52 <ais523> main reddit, or proggit?
21:56:53 <Azstal> still #1!
21:56:54 <ehird> Main.
21:57:05 <ehird> Well, obviously it's at the top of proggit too.
21:57:24 <ais523> well, that is major news, well done for being the first to submit it
21:57:31 <AnMaster> ehird, heh first comment says "Not programming."
21:57:33 <AnMaster> I agree
21:57:39 <ehird> AnMaster: subreddits are communities, not tags
21:57:49 <ehird> this has been stated by the team many, many times before but nobody listens
21:57:58 <ehird> DRM is a very relevant issue to the -community- of /r/programming
21:57:58 <AnMaster> ehird, well it would make more sense in "music"
21:58:03 <ehird> no, it wouldn't
21:58:04 <AnMaster> but also true
21:58:06 <psygnisfive> im such a horrible person
21:58:13 <ais523> I like the reply which says it should be in religion, though
21:58:13 <ehird> psygnisfive: yes. yes you are
21:58:22 <ehird> ais523: indeed.
21:58:30 <psygnisfive> ive been spreading lies and deceit throughout the little conlang community i frequent
21:58:40 <ehird> everything is lies and deceit so yous hould be ok
21:59:05 <psygnisfive> the other day i lied about how pol pot got his inspiration for his xenophobic policies from the khmer language's lack of tones compared to all the surrounding languages which have tones
21:59:31 <ehird> horrific.
21:59:32 * ais523 reckons it'll end up twice on Slashdot, once in the Apple section and once in YRO
21:59:48 <psygnisfive> and just now i apparently convinced someone else that miscellaneous section of the skype eula that was showing up as just blocks on his screen was actually in a central african writing system called mfune block writing
22:00:05 <ehird> how can you be so awful.
22:00:28 <psygnisfive> people are naive so i take advantage of it.
22:00:28 <ehird> ais523: of course, apple are still charging 30c per song to "upgrade" the drmed files to non-drm
22:00:29 <psygnisfive> :D
22:00:30 <Slereah_> By being a faggot
22:00:42 <ehird> but they deserve what they get anyway for buying that
22:00:51 <psygnisfive> they do :D
22:00:58 <ais523> ehird: charging to upgrade to non-DRM doesn't surprise me at all
22:01:11 <ais523> in fact I guessed that before you told me, and even guessed the price point pretty accurately
22:01:25 <ehird> they call it iTunes Plus because it sounds so much better than calling everything else iTunes Minus (- mark pilgrim)
22:01:30 <psygnisfive> im going to take these little lies to absurd extremes
22:01:39 <psygnisfive> to see how far i can go
22:01:42 <ehird> I think I once convinced someone I was bill gates
22:01:54 <ais523> ehird: that's quite impressive, really
22:01:59 <ehird> ais523: they were an idiot, though.
22:02:06 <ais523> was this online or in RL?
22:02:10 <ais523> RL might be hard given the age difference
22:02:12 <ehird> hahhahaha, online
22:02:18 <ais523> also, I have a beard
22:02:22 <ais523> which would make RL convincing hard
22:02:23 <ehird> is it turing complete
22:02:36 <ais523> ehird: no idea
22:02:42 <ais523> probably, most sufficiently complex things are
22:02:50 <ais523> probably a volume of empty space is TC
22:03:04 <ais523> or indeed, uncomputable
22:03:30 <AnMaster> hm
22:03:38 <AnMaster> it's strange that the record labels agreed
22:03:38 <psygnisfive> not that many of you will be interested but
22:03:38 <psygnisfive> http://www.spinnoff.com/zbb/viewtopic.php?p=658125#658125
22:03:43 <ehird> AnMaster: not really.
22:03:50 <ehird> amazon has been offering drm-free mp3s for like a year now
22:03:50 <AnMaster> ehird, oh? What about RIAA?
22:04:05 <ehird> also, the riaa are too busy eating babies
22:11:43 <oklofok> is reddit www.reddit.com?
22:13:17 <oklofok> i mean that's a finnish page for me, which feels kinda wtfy.
22:13:25 <oklofok> empty too
22:13:29 <ehird> err
22:13:30 <ehird> screenshot?
22:14:59 <oklofok> too complicated
22:15:10 <ehird> oklofok: well
22:15:11 <ehird> i wanna see
22:15:33 <oklofok> http://www.vjn.fi/pb/p455455412.txt
22:15:49 <ehird> dude
22:15:51 <ehird> so not helpful.
22:16:27 <ehird> http://www.vjn.fi/pb/p455455412.txt
22:16:28 <ehird> err
22:16:30 <ehird> t��ll� ei n�yt� olevan mit��n.
22:16:31 <ehird> what does that mean
22:16:42 <oklofok> it's a scrambled "seems to be nothing here"
22:16:47 <ehird> ah.
22:16:52 <ehird> well your browser is le fucked
22:16:58 <ehird> :D
22:16:59 <oklofok> that's not how it looks
22:17:02 <ehird> just change it to english
22:17:03 <ehird> or sth
22:17:06 <oklofok> how?
22:17:13 <ehird> umm change your windoze language to english/
22:17:14 <ehird> XD
22:17:27 <oklofok> there's just a little content, and that's clearly finnish
22:17:27 <oklofok> umm
22:17:40 <oklofok> there's nothing finnish about my windows except my keyboard layout
22:17:50 <ehird> its detecting it from your ip then
22:17:50 <AnMaster> hm
22:18:01 <ehird> ask #reddit
22:18:02 <AnMaster> poll: what is your favourite music format?
22:18:05 <ehird> oh
22:18:05 <ehird> oklofok:
22:18:08 <oklofok> probably. i was mainly wondering if it did that for, say, the swede, and he could tell me what to do.
22:18:09 <ehird> http://en.reddit.com/
22:18:21 <ehird> AnMaster: lossless FLAC (but I use ALAC for iTunes), lossy ogg or aac
22:18:34 <ehird> oklofok: en.reddit.com
22:18:36 <ehird> try it
22:18:36 <AnMaster> ALAC? I think it is called AAC?
22:18:40 <ehird> AnMaster: no
22:18:40 <oklofok> ehird: that's in finnish too.
22:18:43 <AnMaster> ehird, oh?
22:18:43 <oklofok> and empty.
22:18:47 <ehird> http://en.wikipedia.org/wiki/Apple_Lossless
22:18:48 <oklofok> i mean
22:18:50 <AnMaster> ah
22:18:58 <oklofok> i've been to reddit
22:19:03 <oklofok> it hasn't done that
22:19:04 <AnMaster> ehird, FLAC, OGG, WAW > * for me
22:19:06 <ehird> ask #reddit :P
22:19:08 <AnMaster> in that order
22:19:14 <ehird> WAW?
22:19:23 <AnMaster> ehird, to get everyone asking
22:19:24 -!- psygnisfive has quit ("Leaving...").
22:19:31 <AnMaster> ehird, no I don't really use it
22:19:35 <ehird> wha tis waw
22:19:48 <AnMaster> ehird indeed
22:19:51 <AnMaster> what is it?
22:19:57 <ehird> i dont know
22:20:12 <AnMaster> ehird, I would think it is a merge of the two words wav and wow
22:20:14 <AnMaster> not sure
22:20:17 <AnMaster> and no idea why
22:20:31 <AnMaster> also what about .au?
22:20:36 <AnMaster> it seems like the worst format ever
22:20:42 <ehird> nope.
22:20:44 <ehird> audacity uses it internally
22:20:48 <AnMaster> oh?
22:20:52 <AnMaster> really hm
22:21:27 <ehird> Although the format now supports many audio encoding formats, it remains associated with the µ-law logarithmic encoding. This encoding was native to the SPARCstation 1 hardware, where SunOS exposed the encoding to apps through the /dev/audio interface. This encoding and interface became a de facto standard for Unix sound.
22:21:38 <ehird> /dev/audio is in the de-facto au format
22:21:58 <AnMaster> hm
22:22:02 <AnMaster> ehird, I have no such device
22:22:10 <AnMaster> did you mean /dev/dsp?
22:22:12 <ehird> no.
22:22:27 <ehird> 22:22 <fawkesmulder> oklofok, ill give you an ip
22:22:27 <ehird> wat
22:22:37 <oklofok> i wondered too
22:22:43 <ehird> WHY THANK YOU FAWKESMULDER FOR THAT FRESH IP
22:22:48 <oklofok> oh ip of reddit
22:22:50 <ehird> 22:22 <fawkesmulder> oklofok, just put it in the address bar of the browser
22:22:51 <ehird> DNS fail
22:23:01 <AnMaster> huh?
22:23:07 <AnMaster> oklofok, you have dns issues?
22:23:12 <ehird> no
22:23:16 <ehird> #reddit is just retarded
22:23:18 <AnMaster> then why...
22:23:31 <ehird> i think fawkesmulder is computer illiterate but doesn't know it
22:24:40 <oklofok> i would've thought a browser would try to read that ip's 80
22:24:45 <AnMaster> ehird, I get English reddit
22:24:53 <AnMaster> oklofok, it does
22:26:24 <oklofok> AnMaster: uhhuh. then what's ehird bitching about, and what's the 400 about
22:26:37 <ehird> AMAZING GREEN GREEN
22:26:42 <ehird> oklofok: its http shit
22:26:44 <ehird> Host: header
22:26:46 <ehird> not specified in the req
22:26:50 <ehird> so server go barf barf.
22:26:57 <AnMaster> oklofok, what 400?
22:27:30 <AnMaster> ehird, ah you mean missing host header right
22:28:17 <oklofok> ehird: i see.
22:29:01 -!- jix has joined.
22:51:20 -!- Sgeo has joined.
22:56:41 <AnMaster> night
22:58:51 -!- psygnisfive has joined.
23:35:26 -!- jix has quit ("...").
2009-01-07
01:02:59 -!- Corun has quit ("This computer has gone to sleep").
02:02:10 <bsmntbombdood> hi bsmnt_bot
02:02:32 <ais523> hi bsmnt_bot
02:02:33 <ais523> welcome back
02:05:41 <bsmntbombdood> ~echo foo
02:05:51 <bsmntbombdood> ~raw privmsg #esoteric :foooop
02:05:51 <bsmnt_bot> foooop
02:06:16 <Slereah_> butt
02:07:13 <bsmntbombdood> hawt
02:07:36 <bsmnt_bot> ooooh fuck
02:07:49 <bsmnt_bot> WHO SAID THAT
02:08:12 <Slereah_> bsmnt_bot, are you a robot
02:08:37 <ais523> Slereah_: bsmnt_bot is a long-standing bot in this channel
02:08:49 <ais523> bsmntbombdood: does it still do Brainfuck?
02:08:51 <bsmnt_bot> i r real hooman!
02:08:56 <bsmnt_bot> i has feelings!
02:09:09 <Slereah_> ais523 : but he usually shuts his trap
02:09:19 <ais523> someone's sending ~raw to it in /msg
02:09:28 <ais523> presumably bsmntbombdood, IIRC it doesn't work when other people do it
02:09:36 <ais523> ~raw PRIVMSG #esoteric :Testing.
02:09:40 <ais523> yep
02:09:57 <bsmnt_bot> Testing.
02:13:10 -!- ais523_ has joined.
02:13:30 -!- ais523 has quit (Nick collision from services.).
02:13:32 -!- ais523_ has changed nick to ais523.
02:41:44 <MizardX> ~raw privmsg #esoteric :+ul (~raw privmsg #esoteric :Dangerous!)S
02:46:18 <ais523> MizardX: thutubot isn't here atm
02:46:37 <ais523> also, I still don't think bsmnt_bot responds to other people's ~raws
02:46:43 <ais523> I reckon bsmntbombdood sent it a copy of my ~raw in /msg to confuse people
02:47:03 <bsmnt_bot> +ul (~raw privmsg #esoteric :Dangerous!)S
02:47:18 <bsmntbombdood> wow he is laggy today
02:47:28 <ais523> ~raw JOIN ##nomic
02:47:29 <MizardX> :P
02:47:48 * ais523 waits patiently for nothing to happen
02:48:09 <ais523> ~exec "Syntax error
02:48:10 <bsmnt_bot> SyntaxError: EOL while scanning single-quoted string
02:48:33 <ais523> that's the easiest way to tell, I wouldn't expect bsmnt_bot to do things out of order...
02:48:45 <bsmntbombdood> lol
02:49:43 <kerlo> ~exec self.raw("JOIN ##nomic")
02:49:50 <kerlo> ~exec self.raw("PART ##nomic")
02:49:55 <kerlo> I love how easy that is to circumvent.
02:50:00 <ais523> kerlo: it worked
02:50:04 <kerlo> I know.
02:50:07 <ais523> ah, you're in ##nomic too
02:51:51 <kerlo> ~exec sys.stdout("foo")
02:51:51 <bsmnt_bot> foo
02:51:55 <kerlo> ~exec sys.stdout(str("foo"))
02:51:55 <bsmnt_bot> foo
02:51:59 <kerlo> ~exec sys.stdout(repr("foo"))
02:52:00 <bsmnt_bot> 'foo'
02:52:02 <kerlo> Aha!
02:52:08 <ais523> someone find my BF interp in bsmnt-bot speak in the logs
02:52:15 <ais523> I had it in a text file, but the whitespace got corrupted
02:52:28 <ais523> (this is pretty much the direct cause of my hate for whitespace-sensitive languages)
02:52:46 <bsmntbombdood> ais523: programming over irc isn't exactly the usual usage case
02:52:52 <ais523> well, no
02:52:54 <ais523> except, it is for me
02:52:57 <ais523> for some langs
02:53:02 <kerlo> ~exec (lambda x: sys.stdout(x + repr(x) + ')'))('~exec (lambda x: sys.stdout(x + repr(x) + \')\'))(')
02:53:03 <bsmnt_bot> ~exec (lambda x: sys.stdout(x + repr(x) + ')'))("~exec (lambda x: sys.stdout(x + repr(x) + ')'))(")
02:53:13 <ais523> I have written more Python in files than over IRC
02:53:15 <kerlo> ~exec (lambda x: sys.stdout(x + repr(x) + ')'))("~exec (lambda x: sys.stdout(x + repr(x) + ')'))(")
02:53:15 <ais523> but not by much
02:53:16 <bsmnt_bot> ~exec (lambda x: sys.stdout(x + repr(x) + ')'))("~exec (lambda x: sys.stdout(x + repr(x) + ')'))(")
02:53:23 <ais523> kerlo: repr's too clever for your first quine to work
02:53:31 <ais523> but that was pretty quick, well done
02:53:37 <kerlo> repr outclevered me!
02:53:53 <kerlo> Sometimes when a quine doesn't work, you can run its output instead. :-)
02:54:16 <ais523> I was talking about the original quine, but that's such a true observation
02:54:30 <MizardX> ~exec print 'a'; print 'b'
02:54:32 * kerlo nods
02:54:40 <ais523> MizardX: this is Python we're talking about...
02:55:04 <ais523> ~exec exec("print 'a'\nprint 'b'")
02:55:15 <ais523> but print won't do anything
02:55:26 <ais523> ~exec exec("sys.stdout('a')\nsys.stdout('b')")
02:55:26 <bsmnt_bot> a
02:55:26 <bsmnt_bot> b
02:55:42 <ais523> bsmntbombdood: by the way, have you ported bsmnt_bot to Python 3 yet?
02:55:44 <MizardX> ~exec sys.stdout(repr(locals()))
02:55:45 <bsmnt_bot> {'message': ':MizardX!n=MizardX@92.254.128.248 PRIVMSG #esoteric :~exec sys.stdout(repr(locals()))', 'r': <_sre.SRE_Match object at 0xf7c90068>, 'command': 'sys.stdout(repr(locals()))', 'self': <__main__.IRCbot instance at 0xf7c8b6ec>, 'env': ({'QuitIRC': <class __main__.QuitIRC at 0xf7c7768c>, 'thread_info': <thread._local object at 0xf7cf68a8>, 'exec_global_tracer': <fun
02:55:45 <bsmnt_bot> ction exec_global_tracer at 0xf7c7db1c>, 'pprint': <module 'pprint' from '/usr/lib/python2.4/pprint.pyc'>, 'StopHandlingCallbacks': <class __main__.StopHandlingCallbacks at 0xf7c7765c>, 're': <module 're' from '/usr/lib/python2.4/re.pyc'>, 'SysWrapper': <class __main__.SysWrapper at 0xf7c8541c>, 'exec_local_tracer': <function exec_local_tracer at 0xf7c8a5dc>, '__doc__': No
02:55:45 <bsmnt_bot> ne, 'math': <module 'math' from '/usr/lib/python2.4/lib-dynload/math.so'>, 'IRCbot': <class __main__.IRCbot at 0xf7c7780c>, 'args': {'ident': 'bsmnt', 'realname': 'bsmntbombdood bot', 'chan': ['#esoteric', '#esoteric-blah'], 'nick': 'bsmnt_bot', 'host': '85.188.1.26', 'exec_chans': ['#esoteric', '#baadf00d', '#esoteric-blah'], 'owner': 'bsmntbombdood!\\S*gavin@\\S*'}, '__b
02:55:50 <bsmnt_bot> uiltins__': <module '__builtin__' (built-in)>, '__file__': '/bot/ircbot.py', 'inspect': <module 'inspect' from '/usr/lib/python2.4/inspect.pyc'>, 'IRCFileWrapper': <class __main__.IRCFileWrapper at 0xf7c853ec>, 'sys': <module 'sys' (built-in)>, '__name__': '__main__', 'copy': <module 'copy' from '/usr/lib/python2.4/copy.pyc'>, 'types': <module 'types' from '/usr/lib/python
02:55:55 <bsmnt_bot> 2.4/types.pyc'>, 'RemoveCallback': <class __main__.RemoveCallback at 0xf7c776bc>, 'socket': <module 'socket' from '/usr/lib/python2.4/socket.pyc'>, 'thread': <module 'thread' (built-in)>, 'StringIO': <built-in function StringIO>, 'os': <module 'os' from '/usr/lib/python2.4/os.pyc'>, 'traceback': <module 'traceback' from '/usr/lib/python2.4/traceback.pyc'>, 'bot': <__main__
02:55:58 <bsmntbombdood> ais523: bsmnt_bot is in py2.4
02:55:58 * kerlo blinks
02:56:00 <bsmnt_bot> .IRCbot instance at 0xf7c8b6ec>, 'threading': <module 'threading' from '/usr/lib/python2.4/threading.pyc'>, 'time': <module 'time' from '/usr/lib/python2.4/lib-dynload/time.so'>, 'pickle': <module 'pickle' from '/usr/lib/python2.4/pickle.pyc'>, 'marshal': <module 'marshal' (built-in)>}, {...})}
02:56:09 <bsmntbombdood> ais523: i haven't looked at it since the
02:56:09 <ais523> kerlo: introspection is fun
02:56:15 <ais523> especially with introspection/IRC bot mixes
02:56:28 <kerlo> I wonder how QuitIRC works.
02:56:30 <ais523> fun fact: it's possible to get gprolog to dump all the strings it knows of
02:56:34 <kerlo> ~exec sys.stdout(3)
02:56:34 <bsmnt_bot> 3
02:56:38 <kerlo> ~exec sys.stdout(QuitIRC)
02:56:38 <bsmnt_bot> __main__.QuitIRC
02:56:41 <kerlo> Lovely.
02:56:44 <ais523> some of them are filenames of files on the computers that built it
02:56:49 <kerlo> ~exec sys.stdout(dir(QuitIRC))
02:56:49 <bsmnt_bot> ['__doc__', '__module__']
02:56:58 <kerlo> ~exec sys.stdout(dir(QuitIRC.__module__))
02:56:58 <bsmnt_bot> ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__str__', 'capitalize', 'cen
02:56:58 <bsmnt_bot> ter', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
02:57:01 <bsmntbombdood> kerlo: just run it loser
02:57:08 -!- oerjan has joined.
02:57:12 <kerlo> ~exec QuitIRC()
02:57:22 <kerlo> Did it quit IRC?
02:57:43 <bsmntbombdood> naming convention says it's a class
02:57:50 <kerlo> ~exec sys.stdout('No.')
02:57:50 <bsmnt_bot> No.
02:58:10 <kerlo> ~exec QuitIRC.__init__()
02:58:13 <bsmnt_bot> AttributeError: class QuitIRC has no attribute '__init__'
02:58:29 <kerlo> ~exec QuitIRC('baroo?')
02:58:29 <bsmnt_bot> TypeError: this constructor takes no arguments
02:58:32 <kerlo> Okay.
02:58:48 <MizardX> ~exec sys.stdout(sys.version)
02:58:48 <bsmnt_bot> 2.4.3 (#1, Oct 25 2006, 21:45:16)
02:58:49 <bsmnt_bot> [GCC 4.1.1 (Gentoo 4.1.1)]
02:58:58 <ais523> kerlo: join #bsmnt_bot_errors if you're trying to do proper development on bsmnt_bot
02:59:14 <kerlo> ~exec sys.stdout(repr(sys.version))
02:59:15 <bsmnt_bot> '2.4.3 (#1, Oct 25 2006, 21:45:16) \n[GCC 4.1.1 (Gentoo 4.1.1)]'
02:59:19 <kerlo> Gasp.
02:59:26 <bsmntbombdood> what?
02:59:28 <ais523> I like doing revgenos in the room with the Castle wand
02:59:32 <ais523> wait, wrong channel
02:59:45 <bsmntbombdood> class QuitIRC:
02:59:46 <bsmntbombdood> pass
02:59:54 <bsmntbombdood> kerlo: QuitIRC is an exception
02:59:59 <kerlo> Oh.
03:00:02 <kerlo> Well, that's boring.
03:00:03 <bsmntbombdood> you raise it in a callback when you want to quit
03:00:21 <kerlo> ~exec QuitIRC.__init__ = lambda: bot.raw('QUIT')
03:00:26 <bsmntbombdood> ....no
03:00:34 <kerlo> Mm.
03:00:40 <kerlo> ~exec raise QuitIRC
03:00:41 <bsmnt_bot> TypeError: <lambda>() takes no arguments (1 given)
03:00:50 <bsmntbombdood> ....no
03:00:56 <kerlo> ~exer QuitIRC()
03:01:04 <kerlo> ~exec QuitIRC()
03:01:04 <bsmnt_bot> TypeError: <lambda>() takes no arguments (1 given)
03:01:16 <kerlo> ~exec QuitIRC.__init__ = lambda *x: bot.raw('QUIT')
03:01:18 <bsmntbombdood> ~exec self.register_raw(r".*quit1234.*", lambda *args:raise QuitIRC)
03:01:18 <bsmnt_bot> SyntaxError: invalid syntax
03:01:30 <bsmntbombdood> oh right
03:01:37 <kerlo> ~exec QuitIRC()
03:01:37 -!- bsmnt_bot has quit.
03:01:40 <kerlo> Whew.
03:01:45 <bsmntbombdood> python is dumb, you can't have statements in a lambda
03:01:47 -!- bsmnt_bot has joined.
03:01:56 <bsmntbombdood> kerlo: you are doing it wrong
03:02:15 <kerlo> On the contrary, any way of doing it is doing it right.
03:02:29 <kerlo> It's Python, so you can just say 'import ai' and it will automatically optimize everything.
03:02:39 <bsmntbombdood> ~ps
03:02:39 <bsmnt_bot> 0: 'self.handle_callback(message, m, i)', 0.00 seconds
03:02:48 <bsmntbombdood> lol i even adding multitasking support
03:03:18 <kerlo> ~exec while 1: __import__('time').sleep(60)
03:03:22 <kerlo> ~ps
03:03:22 <bsmnt_bot> 0: "while 1: __import__('time').sleep(60)", 3.96 seconds
03:03:22 <bsmnt_bot> 1: 'self.handle_callback(message, m, i)', 0.00 seconds
03:03:27 <kerlo> Lovely.
03:03:45 <MizardX> ~exec sys.stdout(os.getcwd())
03:03:45 <bsmnt_bot> /
03:04:08 * oerjan recalls something about "from future import". wouldn't that be more appropriate?
03:04:22 <ais523> from __future__ import put_some_new_feature_here
03:04:34 <bsmntbombdood> ~ps
03:04:34 <bsmnt_bot> 0: "while 1: __import__('time').sleep(60)", 75.87 seconds
03:04:34 <bsmnt_bot> 1: 'self.handle_callback(message, m, i)', 0.00 seconds
03:04:37 <bsmntbombdood> ~kill 0
03:04:42 <bsmntbombdood> ~ps
03:04:42 <bsmnt_bot> 0: "while 1: __import__('time').sleep(60)", 83.81 seconds, killed
03:04:42 <bsmnt_bot> 1: 'self.handle_callback(message, m, i)', 0.00 seconds
03:04:43 <ais523> "from __future__ import braces" is a standard running joke in Python, it seems
03:04:53 <kerlo> Cool.
03:04:54 <bsmntbombdood> i remember that taking some hacking
03:04:54 <kerlo> ~ps
03:04:54 <bsmnt_bot> 0: "while 1: __import__('time').sleep(60)", 96.32 seconds, killed
03:04:55 <bsmnt_bot> 1: 'self.handle_callback(message, m, i)', 0.00 seconds
03:04:58 <kerlo> Running while killed.
03:05:07 <bsmntbombdood> kerlo: it has to wait for the sleep to end
03:05:07 <kerlo> Just wait 10 seconds.
03:05:10 <kerlo> ~ps
03:05:10 <bsmnt_bot> 0: "while 1: __import__('time').sleep(60)", 112.05 seconds, killed
03:05:10 <bsmnt_bot> 1: 'self.handle_callback(message, m, i)', 0.00 seconds
03:05:19 <kerlo> ~ps
03:05:20 <bsmnt_bot> 0: 'self.handle_callback(message, m, i)', 0.00 seconds
03:05:23 <kerlo> Yay.
03:05:43 * oerjan wondered why xkcd didn't use it in the alt text here: http://xkcd.com/521/
03:06:24 <MizardX> ~exec sys.stdout(os.popen('ls').read())
03:07:23 <oerjan> ais523: except iirc from __future__ wasn't _just_ a joke, there were some features actually using it... or was i just duped?
03:07:38 <ais523> there are some features using it
03:07:43 <ais523> the from braces is a joke
03:07:53 <oerjan> that much is obvious
03:07:57 <ais523> but genuinely it can be used to request features that are scheduled for future versions
03:08:02 <ais523> and are in this version, but not on by default
03:08:25 <ais523> sort of like Perl's very-slightly-backward-incompatible operators
03:08:33 <kerlo> ~exec sys.stdout('Y%sn%sconozc%scom%snosotr%s d%s som%s l%s lob%s'%'o ','o ','o ','o ','os','os','os','os','os')
03:08:33 <bsmnt_bot> TypeError: not enough arguments for format string
03:08:38 <kerlo> ~exec sys.stdout('Y%sn%sconozc%scom%snosotr%s d%s som%s l%s lob%s'%'o ','o ','o ','o ','os','os','os','os','os','os')
03:08:39 <bsmnt_bot> TypeError: not enough arguments for format string
03:08:39 <MizardX> ~exec sys.stdout(repr(dir(__import__('__future__'))))
03:08:44 <ais523> kerlo: you need an extra pair of parens
03:08:48 <bsmnt_bot> ['CO_FUTURE_DIVISION', 'CO_GENERATOR_ALLOWED', 'CO_NESTED', '_Feature', '__all__', '__builtins__', '__doc__', '__file__', '__name__', 'all_feature_names', 'division', 'generators', 'nested_scopes']
03:08:50 <ais523> around the right-hand arguments to %
03:08:53 <kerlo> ~exec sys.stdout('Y%sn%sconozc%scom%snosotr%s d%s som%s l%s lob%s'%('o ','o ','o ','o ','os','os','os','os','os'))
03:08:53 <bsmnt_bot> Yo no conozco como nosotros dos somos los lobos
03:09:08 <kerlo> Now all I need to do is figure out how to make this compression algorithm actually make it smaller.
03:10:02 <MizardX> ('o ',)*4 + ('os',)*5
03:10:25 <kerlo> Does that work?
03:10:46 <kerlo> Anyway, everyone knows /// is the best compression format.
03:10:57 <MizardX> ~exec sys.stdout(repr(('o ',)*4 + ('os',)*5))
03:10:57 <bsmnt_bot> ('o ', 'o ', 'o ', 'o ', 'os', 'os', 'os', 'os', 'os')
03:12:15 <kerlo> /#/! //@/o //!/os/Y@n@conozc@com@n!otr#d#som#l#lob!
03:12:22 <kerlo> Who cares if it's longer than the original? :-P
03:14:12 <ais523> kerlo: that looks vaguely like Perl
03:14:14 <ais523> but it isn't
03:14:16 <ais523> what lang is it?
03:14:20 <kerlo> ///
03:14:33 <ais523> oh, ofc
03:14:44 <ais523> except don't you re-replace the !s you replace the #s with?
03:14:54 <kerlo> I do, don't I?
03:28:18 <bsmntbombdood> grr i can't find my pickle extension
03:30:41 <bsmntbombdood> oh i found it
03:30:48 <bsmntbombdood> ~exec self.print_callbacks(sys.stdout)
03:30:49 <bsmnt_bot> [('^PING (.*)$', 'pong'),
03:30:49 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG \\S* :~quit ?(.*)', 'do_quit'),
03:30:49 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG \\S* :~raw (.*)', 'do_raw'),
03:30:49 <bsmnt_bot> ('^\\S+ PRIVMSG \\S+ :~ctcp (\\S+) (.+)', 'do_ctcp'),
03:30:50 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG (\\S*) :~pexec (.*)', 'do_exec'),
03:30:51 <bsmnt_bot> ('\\S+ PRIVMSG (#esoteric|#baadf00d|#esoteric-blah|#bsmnt_bot_errors) :~exec (.*)',
03:30:52 <bsmnt_bot> 'do_exec'),
03:30:54 <bsmnt_bot> ('\\S+ PRIVMSG \\S+ :~ps', 'do_ps'),
03:30:56 <bsmnt_bot> ('^\\S+ PRIVMSG (#esoteric|#baadf00d|#esoteric-blah|#bsmnt_bot_errors) :~kill (.*)',
03:30:58 <bsmnt_bot> 'do_kill'),
03:31:00 <bsmnt_bot> ('^ERROR :Closing Link:.*', '<lambda>')]
03:31:29 <ais523> bsmntbombdood: that's pretty ridiculous security, you care about a nick of bsmntbombdood and a username of gavin?
03:31:36 <ais523> I can understand securing on just nick
03:31:42 <bsmntbombdood> ais523: ?
03:31:48 <ais523> but nick (which is changeable) + username (which is changeable) doesn't add an extra layer of security
03:31:53 <bsmntbombdood> everyone is able to ~exec
03:32:02 <ais523> I mean, for things like ~quit
03:32:04 <bsmntbombdood> that was probably added before i chrooted
03:32:10 <ais523> caring about the username as well as the nick seems a bit silly
03:32:17 <bsmntbombdood> ~exec __import__("sys").quit()
03:32:17 <bsmnt_bot> AttributeError: 'module' object has no attribute 'quit'
03:32:24 <bsmntbombdood> ~exec __import__("sys").exit(1)
03:32:37 <bsmntbombdood> errr
03:32:48 <ais523> ~exec do_quit()
03:32:48 <bsmnt_bot> NameError: name 'do_quit' is not defined
03:32:58 <ais523> hmm...
03:33:17 <bsmntbombdood> ~exec self_do_quit('', '')
03:33:17 <bsmnt_bot> NameError: name 'self_do_quit' is not defined
03:33:21 <bsmntbombdood> ~exec self.do_quit('', '')
03:33:22 <bsmnt_bot> AttributeError: 'str' object has no attribute 'group'
03:34:13 <bsmntbombdood> ~exec self.disconnect("bye")
03:34:14 -!- bsmnt_bot has quit ("bye").
03:34:16 <bsmntbombdood> that's better
03:34:16 -!- bsmnt_bot has joined.
03:34:32 <ais523> I admit that the security's pointless in the first place
03:34:48 <bsmntbombdood> ais523: like i said, that was added before i put it in a chroot
03:36:18 <ais523> thutubot isn't chrooted
03:36:28 <oerjan> do_run_around_screaming
03:36:31 <ais523> but I do run it in taint mode
03:36:34 <bsmntbombdood> ~exec self.register_raw(r".*asdfgg.*", lambda *args: self.raw("PRIVMSG #esoteric :my pickle still works!!!"))
03:36:39 <bsmntbombdood> asdfgg
03:36:40 <bsmnt_bot> NameError: global name 'self' is not defined
03:36:43 <ais523> so in theory people can't do anything with it but print stuff to stdout
03:37:06 <ais523> (Thutubot's run via compiling to Perl, and interpreting the result)
03:37:17 <bsmntbombdood> ais523: that's effecient
03:37:25 <bsmntbombdood> ~quit
03:37:25 -!- bsmnt_bot has quit (Client Quit).
03:37:27 -!- bsmnt_bot has joined.
03:37:34 <bsmntbombdood> ~exec self.register_raw(r".*asdfgg.*", lambda *args: bot.raw("PRIVMSG #esoteric :my pickle still works!!!"))
03:37:37 <bsmntbombdood> asdfgg
03:37:37 <bsmnt_bot> my pickle still works!!!
03:37:40 <MizardX> ~exec sys.stdout((lambda s,r=[],o=[None]:reduce(lambda p,(i,s):[lambda:reduce(lambda s,(o,n):s.replace(o,n),r,s),lambda:o.__setitem__(0,s),lambda:r.append((o[0],s))][i%3]()or p,enumerate(s.split('/'))))("/#/! //@/o //!/os/Y@n@conozc@com@n!otr#d#som#l#lob!"))
03:37:40 <bsmnt_bot> Yo no conozco como nosotros dos somos los lobos
03:37:44 <ais523> bsmntbombdood: Thutu is not exactly efficient in the first place
03:37:53 <bsmntbombdood> ~exec self.save_callbacks("penis")
03:37:53 <bsmnt_bot> IOError: [Errno 13] Permission denied: 'penis'
03:37:57 <ais523> it's even slower than Ruby
03:38:01 <bsmntbombdood> oh snap!
03:38:19 <bsmntbombdood> ~exec sys.stdout(sys.ls("/bot/"))
03:38:20 <bsmnt_bot> AttributeError: 'module' object has no attribute 'ls'
03:38:24 <bsmntbombdood> ~exec sys.stdout(os.ls("/bot/"))
03:38:27 <bsmnt_bot> AttributeError: 'module' object has no attribute 'ls'
03:38:32 <bsmntbombdood> ~exec sys.stdout(os.dir("/bot/"))
03:38:39 <bsmnt_bot> AttributeError: 'module' object has no attribute 'dir'
03:38:45 <bsmntbombdood> wtf is the command i'm thinking of?
03:38:47 <oerjan> it's rather convenient for esolangers that IRCbots only need to do stdin -> stdout IO...
03:38:54 <ais523> yes
03:39:12 <bsmntbombdood> oerjan: real bots use real sockets
03:39:14 <ais523> that's the only reason Thutubot's possible
03:39:17 <bsmntbombdood> like mine
03:39:31 <ais523> well, I could use PSOX
03:39:45 <oerjan> real bots are written in machine code!
03:39:53 <ais523> but that's written in Python, it would start a flamewar if it was hooked up to a Perl interpreter
03:40:11 <oerjan> a flamewar all inside itself
03:40:55 <bsmntbombdood> wow my code is pretty ugly
03:41:06 <bsmntbombdood> no wonder i never went back to bsmnt_bot
03:41:19 <MizardX> http://xkcd.com/378/
03:41:38 <bsmntbombdood> also, bsmnt_bot blocks when it should
03:41:41 <bsmntbombdood> needs moar threads
03:42:22 <ais523> write in Thue, you get multithreadedness for free
03:42:47 <ais523> (longtime Thue or Thutu programmers will be aware that it's pretty easy to accidentally make a program multithreaded when you don't mean to...)
03:42:57 <ais523> easier in Thue than in Thutu, though
03:43:19 <bsmntbombdood> is thue eso?
03:43:30 <ais523> yes
03:43:33 <ais523> http://esolangs.org/wiki/Thue
03:44:29 <bsmntbombdood> uuuh
03:44:35 <bsmntbombdood> you didn't write an ircbot in that did you?
03:44:41 <ais523> no, I wrote one in Thutu
03:44:43 <ais523> http://esolangs.org/wiki/Thutu
03:44:46 <ais523> which is also eso
03:46:23 <ais523> bsmntbombdood: if you're interested, http://filebin.ca/yzarrj/ul.t is an Underload interp I wrote in Thue
03:46:42 <ais523> pretty repetitive due to the lack of regexen
03:48:55 <ais523> bsmntbombdood: and http://pastebin.ca/1302138 is the source code to Thutubot
04:03:24 <psygnisfive> ais523, you're crazy
04:03:24 <psygnisfive> :)
04:03:36 <ais523> psygnisfive: for which of those programs?
04:03:41 <psygnisfive> all of them :D
04:04:02 <ais523> all this is making me very confident about the Great Underlambda Project, when I get round to it
04:04:23 <ais523> which is a project to make compilers to Underlambda from as many known esolangs as possible
04:04:32 <ais523> and compilers from Underlambda to as many known TC esolangs as possible
04:04:36 <ais523> thus making them all interconvertible
04:04:51 <ais523> Underlambda interps in various langs will also be included
04:05:08 <ais523> ...and Underlambda is an Underload-based language I am currently designing to work well in this project
04:12:04 <bsmntbombdood> ais523: lol nice
04:12:23 <psygnisfive> whats underlambda ais
04:12:33 <ais523> psygnisfive: an Underload-like lang I haven't finished yet
04:12:39 <ais523> and whose spec keeps changing and is mostly stored in my head
04:12:41 <psygnisfive> whats underload
04:12:46 <ais523> http://esolangs.org/wiki/Underload
04:12:54 <psygnisfive> stop it with your logic
04:13:12 <psygnisfive> lmfao
04:13:13 <ais523> Underlambda is higher-level, but compiles into a subset of itself that's slightly lower-level than Underload
04:13:24 <psygnisfive> the quin is (:aSS):aSS
04:13:25 <psygnisfive> XD
04:13:42 <ais523> which is an important trick to be able to compile both into it and out of it easily
04:13:47 <oerjan> ^ul (:aSS):aSS
04:13:47 <fungot> (:aSS):aSS
04:13:58 <psygnisfive> :D
04:14:27 * oerjan is amazed, no SHOCKED that psygnisfive hasn't grabbed onto this yet
04:14:40 <oerjan> *before
04:14:52 <psygnisfive> i think the aSS part is completely irrelevant. lol
04:14:55 <Slereah_> I was making ass jokes of underload before it was cool
04:15:01 <psygnisfive> oh no, its not
04:15:03 <psygnisfive> is it?
04:15:09 <psygnisfive> oooh its not :o
04:15:16 <psygnisfive> hah.
04:15:17 <psygnisfive> :D
04:15:36 <oerjan> that's some IMPORTANT ass
04:15:52 <ais523> psygnisfive: the aSS stuff is coincidence
04:16:05 <psygnisfive> suuuuuuure
04:16:10 <ais523> the quine didn't even look like that in Overload, it just turned out like that once I tarpitted it into Underload
04:16:24 <psygnisfive> SO YOU SAY
04:16:43 <oerjan> BUT YOUR SUBCONSCIOUS DISAGREES
04:16:57 <psygnisfive> ais's ass
04:17:06 <ais523> my subconcious must have been working on Underload way before me, in that case
04:17:16 <oerjan> but of course
04:17:37 <oerjan> it's a platonic idea.
04:18:09 <MizardX> ~exec sys.stdout('privmsg #esoteric :^ul (~exec sys.stdout("privmsg #esoteric ::P)S")')
04:18:09 <bsmnt_bot> privmsg #esoteric :^ul (~exec sys.stdout("privmsg #esoteric ::P)S")
04:18:18 <oerjan> FAIL
04:18:24 <MizardX> ~exec sys.stdout('^ul (~exec sys.stdout(":P)S")')
04:18:24 <bsmnt_bot> ^ul (~exec sys.stdout(":P)S")
04:18:42 <ais523> MizardX: you want an extra S at the end of that
04:18:57 <ais523> or something like that
04:19:10 <MizardX> ~exec sys.stdout('^ul (~exec sys.stdout(":P"))S')
04:19:10 <bsmnt_bot> ^ul (~exec sys.stdout(":P"))S
04:19:10 <fungot> ~exec sys.stdout(":P")
04:19:10 <bsmnt_bot> :P
04:20:56 <psygnisfive> lol
04:22:37 <ais523> do you want me to create a botloop again?
04:22:40 <ais523> or will I get in trouble for that?
04:22:44 <psygnisfive> do it! :o
04:22:58 <ais523> let me think, I haven't done it with bsmnt_bot/fungot yet
04:22:58 <fungot> ais523: hitler wasn't that young either true some people found his statements about jews amusing, and it wouldn't show that the " pc" stands for a system this old, there is no
04:23:10 <ais523> fungot: Godwin's law invoked, you lose
04:23:11 <fungot> ais523: nope, he only serves his country, democratic or fnord. user:ted wilkested wilkes 20:46, 6 december 2005 ( utc)
04:23:14 <bsmntbombdood> can i put a boner array in my butt loop?
04:23:24 <Slereah_> You sure can
04:23:56 <psygnisfive> the most elegant programming language ever!
04:24:01 <psygnisfive> ironically, it looks exactly like c
04:24:12 <ais523> what, Underload?
04:24:16 <Slereah_> That's because C is like a boner in your butt
04:24:23 <psygnisfive> no, the language with boner arrays and butt loops
04:24:30 <bsmntbombdood> that comic is pretty stupid
04:24:33 <psygnisfive> it is
04:24:46 <bsmntbombdood> because they can just change the keywords and the language is just as elegant...
04:24:48 <psygnisfive> obviously the most elegant programming language ever is either scheme or haskell.
04:25:05 <bsmntbombdood> also, the most elegant programming language ever can't look like C
04:25:08 <ais523> psygnisfive: or Prolog
04:25:16 <ais523> which is elegant a different way
04:25:20 <psygnisfive> it is indeed
04:25:37 <psygnisfive> unification confuses me tho
04:25:44 <psygnisfive> simple binding doesnt but unification does
04:28:13 <MizardX> ~exec (lambda s='~exec (lambda s=%r: sys.stdout(s%%s))()\n': sys.stdout(s%s))()
04:28:14 <bsmnt_bot> ~exec (lambda s='~exec (lambda s=%r: sys.stdout(s%%s))()\n': sys.stdout(s%s))()
04:28:28 <ais523> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*):^
04:28:37 <ais523> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:37 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:37 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:37 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:38 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:38 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:38 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:38 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:38 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:38 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:38 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:38 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:39 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:40 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:40 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:42 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:42 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:44 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:44 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:45 <ais523> someone break the loop!
04:28:46 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:46 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:48 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:48 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:50 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:50 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:52 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:52 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:54 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:54 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:55 <ais523> ~quit
04:28:56 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:56 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:28:58 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:28:58 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:00 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:00 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:01 <psygnisfive> hahaha
04:29:02 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:02 <ais523> bsmntbombdood: break the loop, please?
04:29:02 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:04 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:04 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:04 <MizardX> ~ps
04:29:06 <bsmnt_bot> 0: 'self.handle_callback(message, m, i)', 0.00 seconds
04:29:06 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:08 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:08 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:10 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:10 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:12 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:12 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:13 <bsmntbombdood> oh balls
04:29:14 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:14 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:16 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:16 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:18 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:18 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:19 <ais523> bsmntbombdood: just ~quit
04:29:20 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:20 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:22 <bsmnt_bot> ^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^
04:29:22 <fungot> ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""")
04:29:23 <bsmntbombdood> ~quit
04:29:23 -!- bsmnt_bot has quit (Remote closed the connection).
04:29:25 -!- bsmnt_bot has joined.
04:29:33 <ais523> well, it worked
04:29:38 <ais523> second try, I forgot the S to output first try
04:29:40 <psygnisfive> so you just type ~exec sys.stdout("""^ul (a(:^)*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S):^""") ?
04:29:44 <ais523> yes
04:29:46 <psygnisfive> thats craaaazy!
04:29:47 <bsmntbombdood> i remember creating an epiiiic quine in #scheme
04:29:54 <psygnisfive> so you mean if i just did......
04:29:55 <ais523> well, I started on fungot not bsmnt_bot
04:29:56 <fungot> ais523: 87 113 d fr-200m fnord) ms (9/ 2-) 0 kev.
04:30:00 -!- bsmntbombdood has left (?).
04:30:00 -!- bsmntbombdood has joined.
04:30:00 <ais523> because that one's shorter
04:30:02 <psygnisfive> no im kidding i wouldnt. :P
04:30:49 <ais523> I love Underload so much for writing quines...
04:30:53 <bsmntbombdood> that thing went on for like 15 minutes
04:30:58 <ais523> it's an excellent lang for the purpose
04:33:22 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
04:33:23 -!- psygnisf_ has joined.
04:33:24 <oerjan> bsmntbombdood: for a value of 15 close to 2
04:33:39 <bsmntbombdood> oerjan: nuh uh
04:33:39 <oerjan> or wait you mean in #scheme?
04:33:46 <bsmntbombdood> oerjan: in #scheme
04:34:10 <oerjan> you'd think scheme people would be accustomed to handling quines
04:34:11 <bsmntbombdood> i wonder where the code for that is
04:34:30 <ais523> bsmntbombdood: was it a loop between two bots?
04:34:39 <Sgeo> <ais523> well, I could use PSOX
04:34:40 <Sgeo> Oh?
04:34:53 <bsmntbombdood> ais523: either 2 or 3
04:34:55 <Sgeo> What's this about PSOX?
04:35:03 <ais523> Sgeo: talking about how IRC using stdin/stdout was the only way that Thutubot could work
04:35:13 <ais523> and then remembering that PSOX would have provided an alternative if more streams were needed
04:35:28 <ais523> well, stdin/stdout can be mapped to the IRC streams, they generally aren't IRC by default
04:35:37 <oerjan> ~exec bot.raw("QUIT")
04:35:37 -!- bsmnt_bot has quit.
04:35:40 -!- bsmnt_bot has joined.
04:35:50 <bsmntbombdood> oerjan: l337
04:35:55 <Sgeo> But since you don't need extra streams, you're not using PSOX..
04:35:59 <ais523> yes
04:36:01 <oerjan> just checking if i remembered it
04:36:10 <ais523> not to mention that handling NULs is a bit tricky in most langs
04:36:12 <oerjan> in case someone else does a bot loop
04:36:29 <ais523> they can be expressed as \x0 in Thutu, just I don't know if putting them inside strings drives Perl mad
04:37:34 <Sgeo> If there's interest, I might work on an update to PSOX to allow langs restricted to alphanumerics to work with it
04:38:05 <ais523> the eso world probably needs something like PSOX. However, all attempts to do so seem to have ended in failure, for some reason
04:38:11 <ais523> PESOIX; EsoAPI...
04:38:32 <Sgeo> ais523, lack of others expressing interest is the reason I abandoned PSOX
04:38:48 <ais523> yes, it's hard to get anyone to express interest in the eso world
04:39:00 <ais523> and most of the sort of things I work on, PSOX-stuff is irrelevant
04:39:14 <ais523> because I'm more interested in paradigms, which don't normally care about I/O
04:39:25 <Sgeo> I think everyone in the eso world lost interest
04:40:39 * Sgeo is reading a webcomic with 1 comic/day since before the universe began
04:40:50 <ais523> Sgeo: mezzacotta?
04:40:57 <ais523> it's been linked here several times in the past
04:41:06 <ais523> and I read it, and ehird read it once and probably still does
04:41:13 <ais523> and lots of other people here do too, I reckon
04:41:17 <Sgeo> Oh
04:41:28 <Sgeo> Yes, I was referring to mezzacotta
04:41:38 <MizardX> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda s1=%r,s2=%r:sys.stdout.write(s1%%s2%%(s1,s2,n-1) if n else "stop"))(%d)': sys.stdout.write(s1%s2%(s1,s2,n-1) if n else "stop"))(3)
04:41:38 <bsmnt_bot> SyntaxError: invalid syntax
04:41:45 <MizardX> geh
04:41:51 <ais523> MizardX: what is that program?
04:42:13 <ais523> are you attempting a bot loop with trivial Underload rather than trivial Python?
04:42:23 <ais523> ^
04:42:41 <MizardX> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda s1=%r,s2=%r:sys.stdout(s1%%s2%%(s1,s2,n-1) if n else "stop"))(%d)': sys.stdout(s1%s2%(s1,s2,n-1) if n else "stop"))(3)
04:42:42 <bsmnt_bot> SyntaxError: invalid syntax
04:42:42 <ais523> (that's a pointer to where the syntax error is, btw, it probably only works in fixed-width font though and my client's using variable-width)
04:42:58 <ais523> ^
04:43:14 <MizardX> mirc strips repeated whitespace
04:43:21 <ais523> oh, not particularly useful then...
04:43:22 <oerjan> my question is, can you make a loop where _both_ sides do copying
04:43:46 <ais523> oerjan: it's surely possible, but wouldn't that result in exponential growth?
04:43:53 <ais523> or would you delete one of the copies on each side?
04:44:16 <oerjan> well the copied part would be the execution of the other...
04:44:57 <MizardX> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)': sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(3)
04:44:57 <bsmnt_bot> ^ul (~exec (lambda s1='^ul (%s)S',s2='~exec (lambda s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(2))S
04:44:57 <fungot> ~exec (lambda s1='^ul (%s)S',s2='~exec (lambda s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(2)
04:44:57 <bsmnt_bot> NameError: global name 'n' is not defined
04:45:11 <oerjan> huh
04:45:17 <MizardX> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)': sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(3)
04:45:17 <bsmnt_bot> ^ul (~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(2))S
04:45:17 <fungot> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(2)
04:45:18 <bsmnt_bot> ^ul (~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(1))S
04:45:18 <fungot> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(1)
04:45:18 <bsmnt_bot> ^ul (~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(0))S
04:45:18 <fungot> ~exec (lambda n,s1='^ul (%s)S',s2='~exec (lambda n,s1=%r,s2=%r:sys.stdout.write(n and s1%%s2%%(s1,s2,n-1) or "stop"))(%d)':sys.stdout.write(n and s1%s2%(s1,s2,n-1) or "stop"))(0)
04:45:18 <bsmnt_bot> stop
04:45:42 <ais523> aha, a terminating botloop
04:45:43 <MizardX> that was what I was trying to do
04:45:47 <Sgeo> Is the mezzacotta algorithm public?
04:45:51 <ais523> now I have to write one in Underload
04:45:59 <oerjan> Sgeo: no
04:47:40 <Sgeo> It's supposed to be gibberish more often than not, and the only way of finding good ones is to look at the top rated?
04:47:52 <oerjan> essentially
04:48:16 <oerjan> i feel it has deteriorated since the start though, not enough people voting
04:48:39 <oerjan> or maybe not enough people looking for new ones
04:48:46 <Sgeo> So the algorithm doesn't check to make sure the responses are semi-coherent or obey any sort of grammar?
04:49:14 <oerjan> there are several characters, some of which look at previous speech
04:49:36 <oerjan> some of the characters are not _intended_ to be coherent
04:50:08 <Sgeo> Where does it get "previous speech" from?
04:50:16 <Sgeo> And where can I get an FAQ on all this?
04:50:18 <oerjan> er the previous panels
04:50:36 <oerjan> you could look at the forum discussion, there is no FAQ
04:50:50 <oerjan> as i said the algorithm is not publicized
04:51:53 <oerjan> anything known is just deduced from the examples
04:52:47 <oerjan> you could say the characters resemble the themes in fungot, some of them
04:52:48 <fungot> oerjan: deleted the word ' ' av". ( i'd change it but although i've made a report to fnord for fnord
04:53:38 <oerjan> there's an eliza psychologist program, a mad scientist, someone quoting the D&D player's handbook or something like that
04:53:51 <Sgeo> How is it that there are two good comics in 9999999999999 BC?
04:54:16 <Sgeo> Also, where are the forums?
04:54:22 <oerjan> since it's the first year, someone went to the trouble of looking through all of them
04:54:55 <ais523> ^ul (:*:*:*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~**(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*)~^:^
04:55:04 <ais523> ^ul (:*:*:*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~**(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:04 <fungot> ~exec sys.stdout("""^ul :((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~**(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^!!()()********::::::::""")
04:55:04 <bsmnt_bot> ^ul :((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~**(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^!!()()********::::::::
04:55:04 <fungot> ...out of stack!
04:55:17 <ais523> ^ul (:*:*:*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~*~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:17 <fungot> ~exec sys.stdout("""^ul !!()()********:::::::::((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~*~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:17 <bsmnt_bot> ^ul !!()()********:::::::::((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~*~*~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:17 <fungot> ...out of stack!
04:55:30 -!- moozilla has joined.
04:55:37 <ais523> ^ul (:*:*:*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:37 <fungot> ~exec sys.stdout("""^ul (::::::::!!()()********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:38 <bsmnt_bot> ^ul (::::::::!!()()********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:38 <fungot> ~exec sys.stdout("""^ul (:::::::!!()()*******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:38 <bsmnt_bot> ^ul (:::::::!!()()*******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:38 <fungot> ~exec sys.stdout("""^ul (::::::!!()()******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:38 <bsmnt_bot> ^ul (::::::!!()()******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:38 <fungot> ~exec sys.stdout("""^ul (:::::!!()()*****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:39 <bsmnt_bot> ^ul (:::::!!()()*****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:40 <fungot> ~exec sys.stdout("""^ul (::::!!()()****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:41 <bsmnt_bot> ^ul (::::!!()()****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:43 <fungot> ~exec sys.stdout("""^ul (:::!!()()***):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:44 <bsmnt_bot> ^ul (:::!!()()***):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:46 <fungot> ~exec sys.stdout("""^ul (::!!()()**):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:47 <bsmnt_bot> ^ul (::!!()()**):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:55:49 <fungot> ~exec sys.stdout("""^ul (:!!()()*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:55:50 <bsmnt_bot> ^ul (:!!()()*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:01 <ais523> and there we have it, a terminating botloop
04:56:05 <ais523> where the Underlambda part does the counting
04:56:16 * ais523 makes it twice as long
04:56:21 <ais523> ^ul (:*:*:*:*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:21 <fungot> ~exec sys.stdout("""^ul (::::::::::::::::!!()()****************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:21 <bsmnt_bot> ^ul (::::::::::::::::!!()()****************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:21 <fungot> ~exec sys.stdout("""^ul (:::::::::::::::!!()()***************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:21 <bsmnt_bot> ^ul (:::::::::::::::!!()()***************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:22 <fungot> ~exec sys.stdout("""^ul (::::::::::::::!!()()**************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:22 <bsmnt_bot> ^ul (::::::::::::::!!()()**************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:22 <fungot> ~exec sys.stdout("""^ul (:::::::::::::!!()()*************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:22 <bsmnt_bot> ^ul (:::::::::::::!!()()*************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:24 <fungot> ~exec sys.stdout("""^ul (::::::::::::!!()()************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:24 <bsmnt_bot> ^ul (::::::::::::!!()()************):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:27 <fungot> ~exec sys.stdout("""^ul (:::::::::::!!()()***********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:27 <bsmnt_bot> ^ul (:::::::::::!!()()***********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:30 <fungot> ~exec sys.stdout("""^ul (::::::::::!!()()**********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:30 <bsmnt_bot> ^ul (::::::::::!!()()**********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:33 <fungot> ~exec sys.stdout("""^ul (:::::::::!!()()*********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:33 <bsmnt_bot> ^ul (:::::::::!!()()*********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:36 <fungot> ~exec sys.stdout("""^ul (::::::::!!()()********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:36 <bsmnt_bot> ^ul (::::::::!!()()********):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:39 <fungot> ~exec sys.stdout("""^ul (:::::::!!()()*******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:39 <bsmnt_bot> ^ul (:::::::!!()()*******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:42 <fungot> ~exec sys.stdout("""^ul (::::::!!()()******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:42 <bsmnt_bot> ^ul (::::::!!()()******):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:45 <fungot> ~exec sys.stdout("""^ul (:::::!!()()*****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:45 <bsmnt_bot> ^ul (:::::!!()()*****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:48 <fungot> ~exec sys.stdout("""^ul (::::!!()()****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:48 <bsmnt_bot> ^ul (::::!!()()****):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:51 <fungot> ~exec sys.stdout("""^ul (:::!!()()***):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:51 <bsmnt_bot> ^ul (:::!!()()***):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:54 <fungot> ~exec sys.stdout("""^ul (::!!()()**):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:54 <bsmnt_bot> ^ul (::!!()()**):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:56:57 <fungot> ~exec sys.stdout("""^ul (:!!()()*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^""")
04:56:57 <bsmnt_bot> ^ul (:!!()()*):((!())~^):*^(a(~^:^)*(:((!())~^):*^)~*~:(:)~^~(*)~^(!!()())~**a~*(^ul )~*(")::**:(~)~a*^**a(~exec sys.stdout)~*S)~^:^
04:57:54 <psygnisf_> bsmnt_bot!
04:57:57 <oerjan> Sgeo: huh, there doesn't seem to be a forum link from the main comic
04:58:01 -!- psygnisf_ has changed nick to psygnisfive.
04:58:03 <bsmntbombdood> lol
04:58:07 -!- metazilla has joined.
04:58:15 -!- moozilla has quit (Nick collision from services.).
04:58:17 -!- metazilla has changed nick to moozilla.
04:58:19 <psygnisfive> bdmntbombdood, remind me
04:58:25 <psygnisfive> do you like cock?
04:58:31 <psygnisfive> and, do you like vagina?
04:58:42 <psygnisfive> and simultaneously, do you like girls? do you like boys?
04:59:01 <Slereah_> Ask him directly if he'll fuck you.
04:59:22 <oerjan> Sgeo: http://www.irregularwebcomic.net/draakslair/index.php
05:00:02 <psygnisfive> slereah_: i dont want him to. i just cant remember what bend he is.
05:00:02 <oerjan> it's a forum for several webcomics, the mezzacotta ones are the third sublist
05:00:17 <Sgeo> There are .. 2 threads in the mezzacotta forums on there
05:00:31 <psygnisfive> for some reason i have the feeling hes either not straight, or has exceptionally odd fetishes.
05:00:43 <ais523> Sgeo: probably because they aren't linked from the comic itself
05:00:55 <oerjan> Sgeo: whoops, it seems it's set to expire
05:01:22 <oerjan> or what ais523 said
05:04:09 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
05:04:33 -!- moozilla has joined.
05:05:15 <oerjan> Sgeo: ah, the forums were only linked from a blog post, which is buried a long way down
05:05:35 <oerjan> well it's _supposed_ to be half-baked :D
05:06:18 <ais523> oerjan: what do you think of my terminating botloop, by the way?
05:06:29 <oerjan> fine, fine
05:06:47 <ais523> I'm quite proud of that given that I wrote it at 4:55am
05:32:33 -!- oerjan has quit ("Succubus").
05:51:16 <bsmntbombdood> hey guys i saw a cool datastructure
05:51:18 <bsmntbombdood> http://www.cs.uwaterloo.ca/research/tr/1999/09/CS-99-09.pdf
05:51:46 <bsmntbombdood> similar to http://en.wikipedia.org/wiki/Hashed_array_tree
05:53:03 <psygnisfive> gregorr are you here?
05:54:21 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
05:54:24 -!- moozilla has joined.
06:01:39 <ais523> AnMaster: I know you're asleep now and I ought to be too, but I've finally started to review your C-INTERCAL patch submissions
06:06:32 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
06:06:34 -!- metazilla has joined.
06:17:27 <olsner> ais523: he should be getting up about now anyway
06:17:54 * ais523 laughs at oerjan's quit reason
06:52:57 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:02:45 <psygnisfive> hmm
07:02:55 <psygnisfive> i want to try some evolutionary programming
07:02:59 <psygnisfive> on simple tasks
07:03:19 <psygnisfive> to try and create something nearly inscrutable, but simple, which solves some simple problem
07:05:30 <psygnisfive> and then reverse engineer the solution
07:51:33 <ais523> wow, when hunting down the HAVE_SYS_INTERPRETER bug, I tried Googling
07:51:55 <ais523> it seems that C-INTERCAL is the top hit for autoconf HAVE_PROG_SH, and the second hit for autoconf HAVE_SYS_INTERPRETER
07:52:03 <ais523> no wonder it isn't a high priority for the autconf developers...
07:54:49 <ais523> it is very very /very/ INTERCAL to use a documented feature of autoconf to check for something that ought to be checked for but nobody bothers
07:54:54 <ais523> pity they deprecated it
07:54:59 <ais523> incidentally: http://members.cox.net/stefanor/intercal.vim
07:57:05 -!- olsner has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:48:32 -!- GreaseMonkey has quit ("You only need one wheel. Bikers are just greedy.").
09:01:25 <AnMaster> ais523, morning
09:01:31 <ais523> morning
09:01:32 <AnMaster> ais523, hi
09:01:34 <AnMaster> right
09:01:36 <ais523> or very late night, depending on your point of view
09:01:37 <AnMaster> nice
09:01:56 <AnMaster> ais523, 10:01 isn't "night" in any meaning of the work
09:01:57 <AnMaster> word*
09:01:57 * ais523 suddenly wonders the wisdom in checking for sh in an autoconf-based build system
09:01:58 <AnMaster> IMO
09:02:05 <ais523> AnMaster: it is if you didn't go to sleep in the meantime...
09:02:11 <AnMaster> * ais523 suddenly wonders the wisdom in checking for sh in an autoconf-based build system <-- agreed
09:02:25 <ais523> the reason it was in there was that I used to have a bypass-autoconf alternative for the DOS build
09:02:28 <ais523> which worked even without sh
09:02:33 <ais523> I'm thinking about dropping that possibility, though
09:02:56 <AnMaster> ais523, well you could just #define it to be on except for dos
09:03:09 <AnMaster> so static forced on with autoconf
09:03:19 <AnMaster> and static forced off without autoconf
09:03:58 <ais523> yes
09:04:06 <ais523> that would deal with the PROG_SH thing
09:04:16 <ais523> and also explain why C-INTERCAL was the only hit
09:04:17 <AnMaster> interesting new tool in last valgrind release http://www.valgrind.org/docs/manual/pc-manual.html
09:04:23 <ais523> it's the HAVE_SYS_INTERPRETER that's the tricky one
09:04:30 <AnMaster> only issue it is detects a number of issues in ld.so
09:04:42 <AnMaster> and one inside ncurses
09:04:51 <AnMaster> apart from that cfunge passes it with flying colours
09:05:01 <AnMaster> and I can hardly fix those inside system libraries
09:05:05 <ais523> yes, looks interesting
09:05:28 <ais523> <AnMaster> and I can hardly fix those inside system libraries <--- if it happens in gcc-bf, let me know, you maybe could fix it there by telling me
09:05:36 <AnMaster> not it wasn't
09:05:39 <ais523> although I don't think valgrind's been ported to Brainfuck yet
09:05:43 <AnMaster> indeed
09:06:09 <AnMaster> ais523, oh and *sometimes* it reports an issue inside asin()...
09:06:25 <AnMaster> but it says the tool is experimental
09:06:37 <AnMaster> anyway nothing directly in cfunge
09:07:00 <AnMaster> but some stuff in ncurses, ld.so, and (sometimes) libm.so
09:12:50 <AnMaster> ais523, oh also memcheck has some new cool option to detect uninitialised values when they happen or something rather than way way later
09:12:55 <AnMaster> in the last release
09:12:59 <AnMaster> I haven't tested it yet
09:13:08 -!- moozilla has joined.
09:13:16 <AnMaster> it says it will run way way slower
09:14:31 <ais523> interesting, ptrcheck's one of the first programs I've seen that actually relies on various guarantees the C standard makes about pointers
09:14:56 <ais523> one of the perennial arguments at comp.lang.c is about whether pointers in theory have to still work if you split them into pieces and reassemble them
09:14:58 <AnMaster> ais523, it can break though, note the issue it mentions about " p = /* arbitrary condition */ ? &a[i] : &b[i];"
09:15:03 <ais523> and now we have a C implementation it breaks
09:15:14 <AnMaster> ais523, also it runs machine code
09:16:39 <AnMaster> ais523, I think an actual error checking C *interpreter* or at least byte code interpreter could be very interesting
09:16:45 <AnMaster> a lot more complex however
09:17:01 <ais523> yes
09:17:11 <ais523> you could probably do that by mixing a modified gcc with a modified valgrind
09:17:19 <ais523> modified to share more information
09:17:42 <AnMaster> well, there is also libmudflap, and you can actually run a mudflap program under valgrind, strange I know...
09:17:49 <ais523> not strange at all
09:17:51 <AnMaster> and slow as hell
09:17:57 <ais523> no theoretical reason why it wouldn't work
09:18:14 <AnMaster> ais523, well yes I think it is since for example boehm-gc + valgrind = sigsegv at startup
09:18:37 <AnMaster> and mudflap certainly does dirty stack tricks too
09:18:49 <ais523> ah, I didn't realise it did dirty stack tricks
09:19:02 <AnMaster> ais523, well I'm pretty sure I read that it did
09:19:16 <ais523> C-INTERCAL doesn't really do dirty stack tricks, at least the ones it does are sanctioned by the C standard
09:19:28 <AnMaster> ais523, oh and funny thing, mudflap has an option to "wipe on free()"
09:19:33 <AnMaster> that crashes with cfunge
09:19:44 <AnMaster> since it tries to wipe a readonly mmap()
09:19:58 <AnMaster> on munmap()
09:20:01 <ais523> sounds like a bug in mudflap
09:20:16 <ais523> probably they weren't expecting people to allocate read-only memory...
09:20:18 <AnMaster> ais523, yes and I don't have last gcc, I run stable gentoo, otherwise I would report it
09:20:28 <AnMaster> ais523, I don't, I mmap() a file as read only
09:20:33 <AnMaster> it isn't anonymous memory
09:20:39 <ais523> yes, I know
09:20:53 * ais523 tries to figure out if a hypothetical read-only malloc would have any use
09:21:10 <ais523> I suppose you could try to determine if the system set unallocated memory to any particular value
09:21:13 <AnMaster> well mmap() and malloc() are quite different
09:21:42 <AnMaster> also checking unallocated memory is highly undef behaviour
09:21:47 <AnMaster> err
09:21:48 <ais523> yes, I know
09:21:53 <AnMaster> allocated un-written
09:21:54 <AnMaster> I meant
09:21:58 <ais523> both
09:22:01 <AnMaster> true
09:22:12 <ais523> although I'm not entirely sure that the second is illegal via an unsigned char pointer
09:22:19 <ais523> but I'm dubious that it's legal, too
09:22:28 <AnMaster> it is legal I suspect
09:22:35 <AnMaster> how would memcpy() work otherwise?
09:22:36 -!- metazilla has quit (Connection timed out).
09:22:36 <ais523> you can get away with all sorts of things with unsigned char pointers that you can't with other things
09:22:39 <AnMaster> if the struct has padding
09:22:46 <ais523> AnMaster: by magic
09:22:49 <ais523> to be more precise
09:23:01 <ais523> I mean the interp that defines memcpy knows that it can get away with doing that
09:23:38 <AnMaster> ais523, well, you can memcpy() a struct that is fully initialised but has padding. Even valgrind allows copying uninitialised memory without reporting error for that reason
09:23:44 <AnMaster> there would be too many errors otherwise
09:24:00 <ais523> AnMaster: yes, but imagine a hypothetical interpreter whose memcpy didn't copy padding
09:24:11 <ais523> and each byte in memory had an extra is_padding bit
09:24:22 <ais523> I don't think that violates the C standard, even though that's stupid
09:24:22 <AnMaster> ais523, then that would break tricks that copied them using other ways
09:24:26 <AnMaster> which I think are valid
09:24:38 <ais523> what other tricks?
09:25:09 <AnMaster> ais523, well if the struct is on the stack and not a pointer isn't it valid to copy with = iirc?
09:25:15 * AnMaster is pretty sure it is
09:25:49 <AnMaster> that may be C99 or I may be wrong
09:25:56 <AnMaster> or it may be C89 even
09:26:07 <ais523> that's C89
09:26:10 <AnMaster> right
09:26:14 <ais523> and the compiler knows about padding when it implements =
09:26:16 <AnMaster> then you have an example
09:26:26 <ais523> in fact, I expect many compilers wouldn't copy the padding at all
09:26:36 <AnMaster> err
09:26:38 <ais523> unless it was faster to do a block-copy than several move instructions
09:26:39 <AnMaster> that could be slower
09:26:45 <AnMaster> yes exactly
09:26:49 <ais523> it could be slower for a big struct, I agree
09:26:57 <ais523> I bet it would be faster for struct {char c; int i;} though
09:27:13 <ais523> at least on x86
09:27:19 <AnMaster> ais523, depends, a single moveq should be faster on amd64 I expect
09:27:48 <AnMaster> moveq is gas name for it though iirc
09:28:33 <AnMaster> intel syntax use another name probably since amd64 ref docs talk about the "rex prefix byte" making operands of the next instruction 64-bit
09:30:03 <AnMaster> ais523, oh btw, ptrcheck for cfunge (in a run where it didn't complain about errors inside asinl()): http://rafb.net/p/DF6sVr22.html
09:30:20 <ais523> Mycology, by any chance?
09:30:32 <AnMaster> ais523, yes, and my ncurses and ld.so both have debugging info
09:30:47 <AnMaster> so I'm not sure why it doesn't report symbols in those
09:30:51 <AnMaster> seems rather strange
09:30:56 <ais523> it may be the wrong format of debugging info
09:31:01 <ais523> ptrcheck seems to care about dwarf3
09:31:12 <AnMaster> well. what is -ggdb then?
09:31:23 <ais523> probably a dwarf3 variant
09:31:30 <AnMaster> -ggdb
09:31:30 <AnMaster> Produce debugging information for use by GDB. This means to use the most expressive format available (DWARF 2, stabs, or the native format if neither of
09:31:30 <AnMaster> those are supported), including GDB extensions if at all possible.
09:31:31 <AnMaster> hm
09:31:35 <AnMaster> right dwarf2?
09:31:42 <ais523> IIRC, it's "use whatever's best for gdb out of the formats I know, plus GNU extensions"
09:32:02 <AnMaster> ais523, well cfunge was built with -ggdb too
09:32:08 <AnMaster> and there are symbols for it in the trace
09:32:37 <AnMaster> -gdwarf-2
09:32:38 <AnMaster> Produce debugging information in DWARF version 2 format (if that is supported). This is the format used by DBX on IRIX 6. With this option, GCC uses fea‐
09:32:38 <AnMaster> tures of DWARF version 3 when they are useful; version 3 is upward compatible with version 2, but may still cause problems for older debuggers.
09:32:38 <AnMaster> hm
09:34:34 <AnMaster> ais523, well there is no option for pure dwarf3 in my man gcc, nor is cfunge built in any other way
09:34:41 <AnMaster> so something weird is going on there
09:35:08 <AnMaster> also I get the same odd errors from a simple valgrind --tool=exp-ptrcheck build/cfunge -h
09:36:53 <AnMaster> hah
09:36:54 <AnMaster> ==18184== Invalid read of size 8
09:36:54 <AnMaster> ==18184== at 0x343000D3BF: (within /lib64/ld-2.6.1.so)
09:36:54 <AnMaster> ==18184== by 0x3430432A18: exit (in /lib64/libc-2.6.1.so)
09:36:54 <AnMaster> ==18184== by 0x401375: (within /bin/echo)
09:36:54 <AnMaster> ==18184== by 0x343041DB73: (below main) (in /lib64/libc-2.6.1.so)
09:36:55 <AnMaster> ==18184== Address 0x3430739b98 is not derived from any known block
09:37:26 <AnMaster> ais523, well any binary I try on report those, I guess some missing suppression entries for whatever libc version I have
09:52:27 <AnMaster> ais523, there?
09:52:31 <ais523> yes
09:52:50 <ais523> as long as eso-std.org is effectively down, I'm here whenever I'm logged in
09:53:04 <AnMaster> I have profiled cfunge and the current largest speed problem is pushing strings
09:53:55 <AnMaster> any idea how to optimise? I have been wondering if maybe making funge stack grow down would help, it would mean I could memcpy() the string... on the other hand it would also mean that growing the stack wouldn't be a simple realloc() any more
09:54:03 <AnMaster> (and yes I realloc in chunks)
09:56:51 <AnMaster> ais523, any good idea?
09:57:31 <ais523> AnMaster: you could store a pointer to the string on the stack, rather than the string itself
09:57:41 <ais523> and only expand it if someone cares about the individual chars in it
09:57:47 <ais523> but that would be really complex
09:58:02 <ais523> ideally, you'd have to recognise print loops, etc, for it to work well
09:58:17 <AnMaster> yes it would and have the overhead of type tagging values
09:58:24 <AnMaster> ais523, yes indeed
09:58:29 <AnMaster> something for jitfunge rather
09:59:25 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
09:59:32 <AnMaster> ais523, it would basically need a total redesign, and for "" strings it is hard to use, in fact it stack_push_string() isn't used there since that would break threads badly
10:00:01 <ais523> ah, ofc
10:00:07 -!- moozilla has joined.
10:00:14 <AnMaster> stack_(push|pop)_string are used instead for stuff like fingerprint instructions and i, o, y and such that need to push and/or pop strings
10:04:18 -!- Corun has joined.
10:08:05 <AnMaster> hm
10:08:09 * AnMaster has an evil idea
10:08:27 <AnMaster> basically like C++ templates but in C, by using macros
10:09:58 <ais523> AnMaster: that's far more fun using gcc extensions
10:10:05 <ais523> typeof and ({ }), in particular
10:11:04 <AnMaster> ais523, well I was thinking generating the result types statically, like putting something like this in the header: GEN_FUNCS(char)
10:11:09 <AnMaster> and so on for different types
10:11:19 <AnMaster> that would still be portable
10:11:28 <AnMaster> and with other macros you could hide this
10:12:13 <AnMaster> ais523, anyway it is strange that C99 has tgmath.h but not typeof()
10:12:34 <AnMaster> how did they think tgmath.h would be implemented without typeof()
10:12:58 <ais523> sizeof works fine
10:13:12 <AnMaster> ais523, not really, how would it work for complex types?
10:13:27 <ais523> I thought tgmath was just float vs double vs long double
10:13:40 <AnMaster> ais523, doesn't it support the complex variants too?
10:13:41 * AnMaster checks
10:14:17 <AnMaster> 4 For each unsuffixed function in <math.h> for which there is a function in
10:14:18 <AnMaster> <complex.h> with the same name except for a c prefix, the corresponding type-
10:14:18 <AnMaster> generic macro (for both functions) has the same name as the function in <math.h>. The
10:14:18 <AnMaster> corresponding type-generic macro for fabs and cabs is fabs.
10:14:53 <ais523> I'm having trouble parsing that paragraph...
10:14:58 <ais523> and clearly, it isn't fabs
10:15:06 <ais523> because that isn't a tgmath function
10:15:30 <AnMaster> ais523, it isn't? GCC's tgmath support is incomplete
10:15:43 <ais523> I meant, it would be called something else
10:15:45 <ais523> fabs is
10:15:53 <AnMaster> http://rafb.net/p/xK94QQ46.html
10:15:53 <ais523> just the tgmath version is called something else IIRC
10:15:55 <AnMaster> see that table
10:18:11 <AnMaster> ais523, http://rafb.net/p/8QZbDk26.html
10:20:13 <AnMaster> hah from my system tgmath.h: "/* This is ugly but unless gcc gets appropriate builtins we have to do something like this. Don't ask how it works. */"
10:20:19 <AnMaster> # define __floating_type(type) (((type) 0.25) && ((type) 0.25 - 1))
10:20:21 <AnMaster> ew
10:20:49 <ais523> I don't see why the part after the && is needed
10:20:57 <ais523> or are there types which round upwards?
10:21:05 <AnMaster> ais523, no idea
10:22:14 <AnMaster> ais523, also:
10:22:16 <AnMaster> # define __tgmath_real_type_sub(T, E) \
10:22:16 <AnMaster> __typeof__(*(0 ? (__typeof__ (0 ? (double *) 0 : (void *) (E))) 0 \
10:22:16 <AnMaster> : (__typeof__ (0 ? (T *) 0 : (void *) (!(E)))) 0))
10:22:20 <AnMaster> wtf is that
10:23:02 <ais523> heh, that's really clever
10:23:12 <ais523> it's exploiting the type of ?:'s return value rules
10:23:21 <ais523> to do the tgmath calcuation in one macro
10:24:05 <AnMaster> ais523, I don't know what those rules are
10:24:08 <AnMaster> so what does it do
10:24:57 <ais523> AnMaster: remember I haven't gone to bed yet, I'm not really in a fit state to work it out
10:25:07 <ais523> and my quick explanation of how it works may be completely wrong
10:26:54 <AnMaster> ais523, about those ick patches
10:26:57 <AnMaster> any questions btw?
10:27:07 <ais523> not really
10:27:13 <ais523> I have a funky error message for the buffer overflow
10:27:19 <AnMaster> ais523, also: http://rafb.net/p/bro27D69.html
10:27:24 <AnMaster> ais523, what buffer overflow?
10:27:29 <AnMaster> oh that one
10:27:32 <AnMaster> now I remember
10:27:34 <ais523> AnMaster: ick_snprintf_or_die
10:27:37 <AnMaster> right
10:27:39 <ais523> it's BETTER LATE THAN NEVER
10:27:42 <ais523> given the circumstances that cause it
10:27:46 <AnMaster> it was so long ago that I worked on it
10:27:51 <AnMaster> ais523, heh right
10:28:54 <AnMaster> wow...... http://rafb.net/p/2pUgX781.html
10:29:00 <ais523> hmm... ick build is giving more warnings now
10:29:07 <ais523> but I think that's because you tweaked the warning level up
10:29:11 <ais523> rather than due to buggier code
10:29:19 <AnMaster> ais523, I didn't in configure.ac afaik
10:29:23 <AnMaster> I only did for cfunge
10:29:27 <AnMaster> that is iffi
10:29:39 <AnMaster> iirc
10:29:43 <ais523> warning: ignoring return value of ‘system’, declared with attribute warn_unused_result
10:29:55 <ais523> I wonder what's causing that
10:30:17 <AnMaster> __attribute__((warn_unused_result))
10:30:28 <AnMaster> I think it is included in -Wall
10:30:48 <ais523> I'm wondering why it's happening now, and wasn't before
10:30:54 <ais523> hmm... maybe due to an OS upgrade
10:30:57 <ais523> I might have better header files now
10:31:02 <AnMaster> right
10:31:08 <ais523> anyway, why check the return value from system? It's unportable
10:31:26 <AnMaster> ais523, hm? system() is ISO C
10:31:36 <ais523> AnMaster: its return value is unportable
10:31:45 <ais523> it's not defined to mean anything in particular, IIRC
10:31:54 <ais523> (its argument is unportable too, but has more of a consistent meaning)
10:31:56 <AnMaster> extern int system (__const char *__command) __wur;
10:32:04 <AnMaster> it seems __wur means warn_unused_result
10:32:51 <fizzie> system(NULL) has a defined return value, though. But system() with a non-null argument has a completely implementation-defined value.
10:33:05 <AnMaster> fizzie, what is the result of system(NULL)?
10:33:06 <AnMaster> also
10:33:14 <AnMaster> I suspect it is defined by POSIX
10:33:34 <AnMaster> which may be the reason that linux headers think you should check the result
10:33:34 <fizzie> system(NULL) returns nonzero "if a command processor is available". Of course that's a bit vague, too.
10:35:35 <fizzie> POSIX does define it, yes.
10:35:41 <ais523> it vaguely means that system(NULL) returns nonzero if you can ever get system to do anything
10:35:43 -!- Corun has quit ("This computer has gone to sleep").
10:35:47 <ais523> and zero if it's a no-op
10:36:43 <fizzie> Actually I don't see a clear definition what system("foo"); should do if system(NULL) returns zero.
10:36:58 <ais523> no, but in practice no-op seems likely
10:37:13 <ais523> anyway, how much more implementation-defined can you get than "causes the implementation to act in an implementation-defined manner"?
10:37:58 <AnMaster> /home/anmaster/cfunge/trunk/src/fingerprints/DATE/DATE.c:123: warning: cast from function call of type 'long double' to non-matching type 'long long int'
10:37:59 <AnMaster> wtf
10:38:02 <AnMaster> return (fungeCell)roundl(jdn);
10:38:04 <fizzie> C99 verbiage is: "-- passes the string -- to that command processor to be executed in a manner which the implementation shall document; this might then cause the program calling system to behave in a non-conforming manner or to terminate."
10:38:06 <AnMaster> what is wrong with that?
10:38:14 <AnMaster> it makes no sense to me
10:38:20 <ais523> AnMaster: what is jdn?
10:38:22 <AnMaster> why would I cast the function call, I'm casting the result
10:38:30 <AnMaster> ais523, long double jdn
10:38:44 -!- Corun has joined.
10:38:44 <AnMaster> anyway the issue is that I'm trying to cast the result of roundl()
10:38:47 <ais523> and what's the type of roundl?
10:38:52 <AnMaster> ais523, man roundl
10:38:58 <AnMaster> it is a C99 standard function
10:39:13 <AnMaster> long double roundl(long double x);
10:39:20 <ais523> hmm... your compiler doesn't like casting from long double to long long int
10:39:28 <ais523> because the long long int might not fit in a long double, presumably
10:39:28 <AnMaster> ais523, GCC
10:39:30 <AnMaster> anyway
10:39:34 <AnMaster> that isn't the issue
10:39:36 <AnMaster> if I do:
10:39:43 <ais523> they only have a bit over 50 bits of precision, IIRC
10:39:44 <ais523> not 64
10:39:48 <AnMaster> long double tmp = roundl(jdn);
10:39:53 <AnMaster> return (fungeCell)tmp;
10:39:56 <AnMaster> it doesn't complain
10:40:03 <AnMaster> only if I directly cast the result of roundl()
10:40:07 <AnMaster> that is pretty strange
10:40:32 <AnMaster> ais523, ^
10:40:40 <ais523> yes
10:40:45 <ais523> the warning seems to be something specific
10:40:48 <ais523> I wonder why it's there
10:40:53 <ais523> I mean, the error message is pretty specific
10:41:25 <AnMaster> ais523, it seems to happen whenever I put (integer-type-goes-here)function_that_returns_a_floating_point_type();
10:41:45 <ais523> I wonder why that's a warning
10:41:52 <AnMaster> I have no idea
10:41:53 <ais523> I'd expect splint to warn about that sort of thing
10:41:56 <ais523> but then, it warns about everything
10:42:18 <ais523> it even has options for enforcing naming conventions on variables, IIRC
10:43:53 <AnMaster> ais523, hm -Wbad-function-cast cause it
10:44:01 <AnMaster> -Wbad-function-cast (C and Objective-C only)
10:44:01 <AnMaster> Warn whenever a function call is cast to a non-matching type. For example, warn if "int malloc()" is cast to "anything *".
10:44:11 <AnMaster> now that doesn't make much sense
10:44:15 <ais523> yes it does
10:44:18 <ais523> I see what's going on here
10:44:28 <ais523> casting malloc hides errors due to forgetting to include stdlib.h
10:44:34 <ais523> in which case it's int malloc implicitly
10:44:50 <ais523> that's gcc's attempt to nevertheless produce a warning when that happens
10:45:06 <ais523> anyway, I don't see why you have the cast there at all
10:45:13 <AnMaster> ais523, sure, in that case it would be int-to-anything
10:45:14 <ais523> long double casts implicitly to long long int...
10:45:38 <ais523> and as comp.lang.c will tell you, implicit casts are better than explicit casts
10:45:43 <AnMaster> ais523, also gcc already warns about missing prototypes
10:45:54 <ais523> (the only reason NULL is cast to const char* for lose.h is the ridiculousness, AFAICT...)
10:46:19 <AnMaster> ais523, I was trying to shut up ICC's warning about "may change the value"
10:46:32 <AnMaster> also a 32-bit build would be long double -> int cast
10:46:50 <ais523> it doesn't matter
10:46:57 <ais523> the function is declared to return a fungeCell, isn't it?
10:47:00 <ais523> so they cast is just redundant
10:47:02 <ais523> *the
10:47:07 <AnMaster> /home/anmaster/cfunge/trunk/src/fingerprints/DATE/DATE.c(123): warning #810: conversion from "long double" to "fungeCell={int32_t={int}}" may lose significant bits
10:47:07 <AnMaster> return roundl(jdn);
10:47:07 <AnMaster> ^
10:47:10 <AnMaster> sigh
10:47:28 <ais523> I dislike the may lose significant bits warnings
10:47:31 <ais523> ofc, they're correct
10:47:34 <ais523> but they're also what I mean
10:47:44 <AnMaster> ais523, yes and even useful sometimes, it helped me catch a few bugs
10:47:47 <ais523> I remember just turning that one off, back when I used to use bcc
10:47:51 <fizzie> With an existing prototype the warning is a bit unexpected, since the compiler knows the "physical" type of the return value of roundl and should be able to work "correctly".
10:48:07 <AnMaster> fizzie, indeed
10:48:26 <fizzie> Java is very fond of "may lose bits" warnings, which are actually errors there.
10:48:35 <ais523> I probably wouldn't have even used roundl
10:48:45 <AnMaster> ais523, also gcc-4.3.2 warns about "may lose ..." with -Wconversion
10:48:45 <ais523> more likely I'd have added 0.5, then implicitly casted the return value
10:48:49 <ais523> although I'm not sure that works for negatives
10:48:51 <AnMaster> earlier versions didn't
10:48:56 <fizzie> And not related, but: there's llroundl which does directly "long double" -> "long long int"; of course that's not very useful for you if you want it to work no matter what the fungeCell type is.
10:49:08 <ais523> fizzie: is that C99?
10:49:11 <fizzie> Yes.
10:49:23 <AnMaster> fizzie, really? *looks*
10:49:30 <ais523> there's lots of ifdefs for 32/64-bit in cfunge anyway
10:49:46 <AnMaster> ais523, yes but I use int64_t/int32_t
10:49:55 <AnMaster> and almost all those ifdef are in one header
10:50:06 <ais523> well, there's nothing wrong with casting to long long
10:50:17 <ais523> and then relying on low-bit preservation
10:50:20 <ais523> but that probably gives warnings
10:51:00 <fizzie> The round/lround/llround always round to the nearest integer, with halfway cases away from zero, no matter what the rounding mode is. That's not exactly what +0.5 and truncation does.
10:51:06 <AnMaster> well, one issue is that some *bsd lack the *l math.h functions
10:51:19 <AnMaster> freebsd have roundl but lacks sinl for example
10:51:46 <AnMaster> (which is the reason I check and fall back on the double version)
10:51:48 -!- puzzlet has quit (Remote closed the connection).
10:51:56 -!- puzzlet has joined.
10:52:07 <AnMaster> fizzie, indeed
10:52:28 <AnMaster> iirc round() isn't in C89 either
10:57:25 <AnMaster> hm
10:57:28 <Ilari> Why its converting from long double anyway?
10:57:44 <AnMaster> is casting a double NaN to integer undefined?
10:58:22 <AnMaster> Ilari, the program? because it did floating point computations and want an integer result, it is converting from year/month/day to whole number julian day number
10:58:23 <ais523> Ilari: round returns floating-point...
10:58:33 <AnMaster> which need floating point computation in between
10:58:44 <ais523> wait, why does year/month/day to Julian involve floating point?
10:58:54 <AnMaster> and it needs the round() rounding behaviour when it comes to negative julian days
10:59:08 <Ilari> Round returns floating point, but it also takes floating point as argument (otherwise it wouldn't make any sense).
10:59:09 <AnMaster> ais523, because it returns the wrong result otherwise?
10:59:18 <AnMaster> Ilari, yes indeed
11:00:23 -!- Corun has quit (Read error: 104 (Connection reset by peer)).
11:00:36 <Ilari> Err, year/month/day to Julian day number involves floating point computations?
11:00:52 <AnMaster> Ilari, yep
11:01:04 <AnMaster> integer division made it break
11:01:12 <AnMaster> long double jdn = date->day + floorl((153 * m + 2)/5.0) + 365 * y
11:01:12 <AnMaster> + floorl(y/4.0) - floorl(y/100.0) + floorl(y/400) - 32045;
11:01:36 <AnMaster> if you use integer division there instead it breaks, no I didn't bother figuring out why
11:02:08 <AnMaster> possibly some of those don't need it
11:02:51 -!- metazilla has joined.
11:02:57 -!- moozilla has quit (Nick collision from services.).
11:03:43 <AnMaster> int64_t a = floorl((14 - date->month) / 12.0);
11:03:43 <AnMaster> long double y = Y + 4800 - a;
11:03:55 <AnMaster> looking at that it should be possible to change y to int64_t
11:03:56 <AnMaster> except
11:03:59 <AnMaster> mycology says BAD then
11:04:03 <AnMaster> BAD: J should push -1119007 given [-7777,2,29]
11:04:18 <Ilari> Ah, negative values of y.
11:04:27 <AnMaster> Ilari, yes they need to be correct of course...
11:05:18 <AnMaster> ais523, I hope that explains it for you too?
11:05:26 <ais523> yes
11:06:01 <AnMaster> in fact I'd go as far as calling the current calculations I use for this "extremely brittle" and thus I don't want to change anything in them if possible
11:06:55 <AnMaster> julian_to_ymd() is even worse, it needs casting to integer almost all the time
11:08:46 -!- Corun has joined.
11:09:10 <AnMaster> Ilari, ais523 if you are interested, here is the relevant code for converting back and forth, most code I found on the web only handled positive julian day numbers so here is some code that handles negative ones too: http://rafb.net/p/33SjNl24.html
11:09:29 <AnMaster> as far as I know it is correct, at least for the values that mycology tests
11:11:46 <AnMaster> yes I wrote the code and no I don't fully understand it :P
11:14:56 * AnMaster waits for any comments on it
11:15:50 <Ilari> Probably easiest way to get rid of those FP ops would be to have dedicated function that performs that division and floor using only integer math...
11:16:14 <AnMaster> Ilari, why would I want that? integer division isn't much faster than floating point division
11:17:05 <AnMaster> in fact I suspect that floating point math ends up as significantly faster in this case, at least on most non-embedded architectures
11:17:28 <ais523> probably slower if you don't have an FPU
11:17:36 * ais523 shoots an angry glance at gcc-bf
11:20:51 <AnMaster> well, I designed cfunge for common desktop computers, which means x86/amd64. Though it should work just as fine on other architectures, such as PPC and so on (but I don't have the possibility to test on such). And it should *work* on other arches as well
11:21:04 <AnMaster> like gcc-bf, if it can support the POSIX facilities needed
11:21:22 <ais523> hopefully it'll be able to eventually
11:21:33 <AnMaster> ais523, I suspect it wouldn't work with the build system though
11:22:02 <AnMaster> cross compiling to gcc-bf using cmake, probably nopt
11:22:04 <AnMaster> not*
11:22:33 <AnMaster> in fact I never tried cross compiling cfunge
11:22:37 <AnMaster> nor do I have a cross toolchain
11:22:50 <ais523> I have two cross toolchains
11:23:03 <ais523> gcc-bf, which doesn't produce working executables yet but is good enough to test with
11:23:13 <ais523> and an ARM cross-toolchain I used for a project a couple of years back
11:23:17 <AnMaster> also I think when it checks for header files it may check system headers. It certainly ignore feature rest macros when looking for functions I know
11:23:21 <ais523> which is the one I normally use to test cross-compile setups
11:23:36 <AnMaster> hm
11:23:47 <AnMaster> qemu can emulate non-native arches
11:24:05 <AnMaster> sparc, ppc and arm for example it seem
11:24:07 <AnMaster> seems*
11:24:26 <AnMaster> and binary emulation, just running a binary and not a full os. heh?
11:24:54 <ais523> qemu is an emulator
11:25:16 <ais523> although it goes into virtualisation mode when host processor = target processor
11:25:27 <ais523> at least on x86
11:25:34 <ais523> binary emulation is kind-of clever
11:25:51 <AnMaster> ais523, yes... but:
11:25:58 <AnMaster> * User mode emulation. In this mode, QEMU can launch processes compiled for one CPU on another CPU. It can be used to launch the Wine Windows API emulator (http://www.winehq.org) or to ease cross-compilation and cross-debugging.
11:26:16 <AnMaster> ais523, that seems quite useful
11:26:31 <ais523> I've never got it to work, although I haven't really tried
11:26:41 <ais523> just one quick try failed and I never bothered to look up the correct syntax
11:26:47 <AnMaster> ais523, I know a friend who got it to work using static binaries
11:26:59 <AnMaster> didn't work for dynamic without lots of weird tricks he said
11:27:55 <AnMaster> hm anyone knows an emulator for lisp machines?
11:28:00 -!- oklofok has quit (kornbluth.freenode.net irc.freenode.net).
11:28:00 -!- sebbu has quit (kornbluth.freenode.net irc.freenode.net).
11:28:00 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
11:28:01 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
11:28:01 <AnMaster> that would be kind of cool
11:28:08 <ais523> AnMaster: what about a Lisp interp?
11:28:13 <ais523> or does that not count?
11:28:40 <AnMaster> ais523, well I assume a real lisp machine would have some extra commands like possibly something for shutting down and so on
11:28:50 <AnMaster> ?
11:29:24 <AnMaster> also what lisp dialect did the lisp machines use?
11:29:35 -!- oklofok has joined.
11:29:35 -!- sebbu has joined.
11:29:35 -!- comex has joined.
11:29:35 -!- lament has joined.
11:51:48 <AnMaster> ais523, there still?
11:51:58 <AnMaster> what do you call the L after #define FOO 19237L
11:51:59 <ais523> yes, more or less, but not really paying attention
11:52:00 <AnMaster> or whatever
11:52:11 <ais523> hmm... I mentally pronounce it as the letter L
11:52:14 <ais523> I'm not sure it has a name
11:52:24 <ais523> probably it's something like type specifier
11:52:31 <AnMaster> I'm trying to find it in C99 spec...
11:52:33 <AnMaster> hm
11:53:11 <AnMaster> 6.7.2 Type specifiers
11:53:11 <AnMaster> Syntax
11:53:11 <AnMaster> 1 type-specifier:
11:53:11 <AnMaster> void
11:53:11 <AnMaster> char
11:53:12 <AnMaster> ...
11:53:14 <AnMaster> nop
11:53:16 <AnMaster> nope*
11:53:18 <AnMaster> that is something else
11:53:31 <fizzie> Type suffix, or something.
11:53:35 <fizzie> Some sort of suffix it was.
11:53:46 <fizzie> Or maybe not.
11:54:22 <fizzie> "integer-suffix" is the name in the syntax part.
11:54:50 <fizzie> "An integer constant -- may have a prefix that specifies its base and a suffix that specifies its type."
11:54:59 <AnMaster> ah found it too
11:55:21 <AnMaster> 6.4.4.1
11:59:06 <fizzie> Given those quotations, "type suffix" isn't the worst possible name, anyway. (Unless you want to explicitly refer to the integer constant suffix in 6.4.4.1 and not to the corresponding F/L suffixes for floating-point constants in 6.4.4.2.)
11:59:42 <AnMaster> fizzie, I was actually looking for what the floating point ones were
11:59:52 <AnMaster> so I probably wanted the generic name
11:59:57 <AnMaster> oh btw in the char section:
12:00:01 <AnMaster> "The value of an integer character constant containing more than one character (e.g., 'ab'), or containing a character or escape sequence that does not map to a single-byte execution character, is implementation-defined."
12:00:04 <AnMaster> that seems very strange
12:00:39 <ais523> AnMaster: for entering Unicode execution characters on an ASCII source character set
12:00:46 <ais523> although they invented \u since, so it's probably moot now
12:01:08 <ais523> still, say your program is written in EBCDIC and the execution set is ASCII, what should ¬ map to?
12:01:11 <AnMaster> ais523, then one would use wchar_t not char
12:01:26 <ais523> "implementation-defined" is at least a nice handwavy way to avoid the problem
12:01:51 <AnMaster> ais523, well it means you can't depend on any specific behaviour
12:02:20 <AnMaster> character-constant:
12:02:21 <AnMaster> ' c-char-sequence '
12:02:21 <AnMaster> L' c-char-sequence '
12:02:22 <AnMaster> hm
12:02:24 <AnMaster> what does the L mean?
12:02:33 <AnMaster> I can't find that
12:02:38 <ais523> yes, but if your source and execution character sets aren't the same, your implementation details probably matter
12:02:41 <AnMaster> ah wait
12:02:43 <AnMaster> found it
12:02:44 <ais523> and L'' is for wchar_t constants, IIRC
12:02:48 <AnMaster> right
12:03:25 <fizzie> There's a corresponding L"foo" for strings of wchar_t.
12:03:36 <AnMaster> hm is there any library for floating point > long double?
12:03:44 <AnMaster> such as 256 bit floating point or whatever
12:04:56 <fizzie> You could use some arbitrary-precision one, I think at least some of those have well-twiddleable settings. Maybe not as fast as a fixed K-bit floating-point lib.
12:05:25 <AnMaster> fizzie, arbitrary-precision wouldn't be floating point would it?
12:05:42 <AnMaster> rather based on fractions or something
12:06:06 <fizzie> GMP at least has functions for arbitrary-precision integers, rationals or floating-point (mpf*) values.
12:06:11 <AnMaster> heh
12:06:22 <AnMaster> does it have a constant for pi ;P
12:07:05 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
12:07:10 -!- puzzlet has joined.
12:07:27 <fizzie> The mpf-floats have a fixed-size exponent ("2^-68719476768 to 2^68719476736" on a 32-bit system, something larger for 64-bit; it doesn't seem to be exactly the exponent) and arbitrary-precision mantissa.
12:07:47 <AnMaster> mh
12:07:48 <AnMaster> hm*
12:08:53 <fizzie> You can select the mantissa precision when initializing a variable; the mpf_* functions will truncate to the precision of the destination variable.
12:09:31 <fizzie> Although the precision is "at least x bits" and not "exactly x bits", but I don't think that usually matters much.
12:09:40 <AnMaster> ais523, you should use the comma operator more in ick
12:09:47 <AnMaster> would make the code more confusing
12:10:10 <ais523> AnMaster: there's some of that in clc_cset.c, IIRC
12:10:17 <AnMaster> ais523, hm ok
12:10:21 <ais523> but that's one of the more confusing files of the lot, it even confuses me
12:10:22 <ais523> and I wrote it
12:11:34 <fizzie> The GMP floats do lack infinities and NaNs, though.
12:12:05 <AnMaster> ais523, hm clc-cset.c does have confusing indentation...
12:12:18 <AnMaster> while(j<cs->setlen*cs->shifts)
12:12:18 <AnMaster> if((cs->set[j++]=(unsigned char)(c=ipf(in))),c==EOF && in != NULL)
12:12:18 <AnMaster> {if(in) (void)fclose(in); return;}
12:12:19 <AnMaster> like that
12:12:38 <ais523> that indentation is not only confusing, it's correct
12:12:51 <ais523> the while only has one statement as argument, so it's indented 2 to the right
12:13:02 <AnMaster> hm?
12:13:03 <ais523> and opening brace is on the same column as the if it applies to
12:13:13 <AnMaster> ais523, there should be some newlines there
12:13:22 <ais523> (clc-cset.c is possibly the only good argument I've seen for GNU-style indentation, by the way)
12:13:33 <ais523> and yes, of course there shuold be, but that's missing the point
12:13:42 <AnMaster> true
12:13:48 <AnMaster> while(j<cs->setlen*cs->shifts)
12:13:48 <AnMaster> if((cs->set[j++]=(unsigned char)(c=ipf(in))),c==EOF && in != NULL) {
12:13:48 <AnMaster> if(in)
12:13:48 <AnMaster> (void)fclose(in);
12:13:48 <AnMaster> return;
12:13:48 <AnMaster> }
12:13:51 <AnMaster> is much more readable
12:13:59 <ais523> that looks ridiculous, though
12:14:04 <AnMaster> ais523, it does?
12:14:06 <ais523> admittedly, the original also looks ridiculous
12:14:12 <AnMaster> anyway
12:14:17 <AnMaster> it uses the comma operator
12:14:25 <AnMaster> I'm not sure what the line if((cs->set[j++]=(unsigned char)(c=ipf(in))),c==EOF && in != NULL) does
12:14:30 <ais523> neither am I
12:14:50 <AnMaster> ais523, is that (c==EOF) && in or c==(EOF && in)?
12:15:02 <AnMaster> what is the precedence order there
12:15:06 <ais523> ((c==EOF) && (in != NULL))
12:15:13 <ais523> C precedence is not something I have problems with
12:15:15 <AnMaster> ah right
12:15:31 <ais523> although I find it's funnier and more confusing to overparenthesise than underparenthesise when I'm writing obfuscated C
12:15:38 <AnMaster> ais523, well I use so many different languages that I end up not remembering precedence of any
12:16:01 <ais523> C precedence is a subset of Perl precedence
12:16:06 <ais523> which reduces the number by 1
12:16:10 <AnMaster> well I don't know perl
12:16:25 <fizzie> && having higher precedence than == would be really freaky; I for one would not expect "a == 0 && b == 1", which is not uncommon, to be parsed like "a == (0 && b) == 1".
12:16:56 <ais523> I can't remember offhand which way == associates, which would also be relevant there
12:17:08 <ais523> the associativity of == is something I don't think has ever come up for me, even in obfuscated code
12:17:18 <ais523> (I know which way = associates, that's much more common)
12:17:37 <ais523> arguably, a == b == c should actually associate as (a == b) && (b == c), but that's a stretch
12:17:40 <ais523> and I know it doesn't
12:18:05 <AnMaster> oh and erlang got some really odd precedence issues, and/or have very high precedence (higher than ==), but the short-circuit variants andalso/orelse have low precedence (lowest of them all)
12:18:33 <ais523> AnMaster: that is strange
12:18:40 <ais523> Perl has two and/or operators
12:18:41 <AnMaster> ais523, http://rafb.net/p/Chsqmt44.html
12:18:47 <ais523> && has the same precedence as in C
12:18:53 <ais523> whereas and is very very low precedence
12:18:57 <ais523> lower even than ,
12:19:05 <ais523> and =
12:19:19 <ais523> it's used as a substitute if statement, normally
12:19:26 <fizzie> There was something really silly in C operator precedences, though. Was it so that & has a lower precedence than == -- so that you need "(a & 1) == 1" for masking, since "a & 1 == 1" would be "a & (1 == 1)" -- because back in the dawn of C the && operator didn't exist yet.
12:19:47 <ais523> fizzie: yep, that's it
12:19:52 <AnMaster> haha
12:20:06 <ais523> and & is still usable for logical and if you have a comparison on both sides
12:20:15 <ais523> you just have to remember it doesn't short-circuit so probably is less efficient
12:20:42 <ais523> (incidentally, gcc compiles (a == b) & (c == d) to appropriate arithmetic code involving the status word, if that's expressible on the target platform)
12:21:01 <AnMaster> if((padstyle==1&&(i==1||i==9) && !(outword&(1<<(co->nbytes*8-i)))) || (padstyle==2&&(rand()>RAND_MAX/2||!outword)))
12:21:04 <AnMaster> err
12:21:05 <AnMaster> wtf?
12:21:10 <AnMaster> paste issue
12:21:12 <AnMaster> lets try again
12:21:21 <AnMaster> if((padstyle==1&&(i==1||i==9) && !(outword&(1<<(co->nbytes*8-i)))) ||
12:21:21 <AnMaster> (padstyle==2&&(rand()>RAND_MAX/2||!outword)))
12:21:22 <AnMaster> there
12:21:27 <AnMaster> weird indentation
12:21:41 <AnMaster> or possibly broken mixing of tab and space
12:21:46 <fizzie> You probably should look at it with an 8-space tab.
12:21:59 <AnMaster> fizzie, well that is broken IMO.
12:22:09 <fizzie> Broken, but not weird.
12:22:41 <AnMaster> else outword |= (unsigned short)((val>>(co->bitorder[i]-'a'))&1)
12:22:41 <AnMaster> << (co->nbytes*8-i-1);
12:22:43 <AnMaster> hm
12:22:51 <AnMaster> well apart from indentation
12:22:59 <AnMaster> not using a newline after else is strange too
12:23:10 <AnMaster> at least when the statement is multi-line
12:23:24 <fizzie> All that reminds me of Nethack sources. Especially since it involves rand.
12:23:40 <AnMaster> fizzie, yes indeed
12:23:44 <AnMaster> no idea why it does
12:23:54 <AnMaster> static void ick_bitencout(char** pop, const struct cset* co,
12:23:54 <AnMaster> unsigned short val, int padstyle)
12:23:57 <AnMaster> is the function it is from
12:24:06 <AnMaster> no idea why that needs rand()
12:24:22 <AnMaster> ais523, can you explain that?
12:24:28 <fizzie> Only for padstyle==2, though.
12:24:36 <AnMaster> fizzie, well yes
12:24:39 <AnMaster> whatever that one is
12:24:49 <AnMaster> magic numbers...
12:25:11 <ais523> AnMaster: it's for random padding of the high bits of characters
12:25:21 <AnMaster> ais523, err what?
12:25:22 <ais523> if, say, you have a 7-bit character set like ASCII
12:25:28 <ais523> and you're trying to store it on an 8-bit system
12:25:31 <ais523> you have one free bit
12:25:37 <ais523> C-INTERCAL lets you choose what to do with that bit
12:25:38 <AnMaster> then all first would be 0 wouldn't they?
12:25:50 <ais523> AnMaster: you have three choices: pad with 0, pad to printable, pad with random
12:25:59 <ais523> pad to printable is particularly useful on 5-bit character sets
12:26:00 <AnMaster> ais523, it would make sense to have "no padding"
12:26:17 <AnMaster> as in "store the bits packed"
12:26:18 <ais523> AnMaster: nobody stores ASCII packed 8 chars to 7 bytes
12:26:27 <AnMaster> ais523, well NOT YET
12:26:32 <AnMaster> you could do it
12:26:36 <AnMaster> because no one else did
12:26:36 <ais523> although that as another option would be interesting
12:26:56 <ais523> and something like that will probably be needed if/when I add support for UTF-9
12:26:58 <AnMaster> compression
12:27:20 <AnMaster> ais523, wouldn't you store it padded in 16 bits?
12:27:21 <fizzie> There's no "pad to even/odd parity" option? :p
12:27:31 <ais523> anyway, the randomly padded thing is needed
12:27:31 <AnMaster> fizzie, hah that would be nice too
12:27:35 <ais523> for certain things
12:27:40 <ais523> fizzie: no, but only because I didn't think of it
12:27:44 <AnMaster> really? what needs random padding?
12:27:44 <ais523> of course that one's necessary
12:27:53 <ais523> AnMaster: it's in the CLC-INTERCAL spec for something, IIC
12:27:55 <ais523> *IIRC
12:28:02 <ais523> although I think that was binary data
12:28:10 <AnMaster> ais523, how would it be able to detect *random* padding
12:28:12 <ais523> which is padded from 8 bits to 16 bits for no apparent reason
12:28:16 <AnMaster> there is no way you can verify it
12:28:28 <ais523> AnMaster: it doesn't at the moment, but threatens the possibility of randomness checks in the future
12:28:39 <AnMaster> ais523, that is impossible
12:28:40 <ais523> besides, the other way round, compiler-generated randomness, can be checked mycorand-style
12:28:44 <ais523> AnMaster: usually impossible
12:28:58 <AnMaster> to quote Dillbert: 99999....
12:29:02 <ais523> but programs failing to work at random, or scamming the randomness checks, would both be very in-the-spirit-of-INTERCAL
12:29:52 <AnMaster> ais523, yes sure but you could potentially have to run mycorand for a lot of iterations
12:30:04 <AnMaster> more than can be found in the file
12:30:31 <ais523> AnMaster: checking the compiler you can generate as many test-cases as you like
12:31:17 <AnMaster> true, but isn't the random padding for files, where the receiver won't have the original generating program?
12:31:35 <ais523> the random padding's for I/O
12:31:58 <ais523> and anyway, the spec for binary CLC-INTERCAL I/O (which I haven't yet implemented) requires data to be padded from 8 bits to 16 bits at random
12:32:01 <ais523> for no apparent reason
12:32:02 <AnMaster> ais523, oh? this file isn't used by convickt?
12:32:18 <ais523> I decided to add a random-padding option to the Baudot conversion too
12:32:22 <ais523> and then ASCII because I might as well
12:32:28 <ais523> on the basis that it makes it harder to read
12:32:45 <ais523> and if you're using Baudot in the first place, probably unreadability is your goal
12:33:14 <AnMaster> ais523, or backward compatibility
12:33:26 <ais523> very backward compatibility
12:33:30 <AnMaster> yes
12:33:32 <ais523> given that Baudot was invented before computers were
12:33:43 <ais523> it's a 19th century character set
12:34:23 <AnMaster> ais523, using letters at all is very backward compatible, considering the Romans (mostly) invented the current charset we use today
12:34:38 <ais523> they didn't encode them as numbers, though
12:34:41 <ais523> well, not directly
12:34:49 <ais523> they had Polybius' Checkerboard
12:34:51 <AnMaster> well indeed, they did the other way around
12:34:53 <ais523> although that was a Greek invention
12:35:02 <AnMaster> ais523, what is this polybius thing?
12:35:18 <ais523> AnMaster: basically, write the alphabet in a rectangular matrix, give letters by giving the row and column
12:35:31 <ais523> it was apparently used to send messages long-distance
12:35:32 <AnMaster> ok, and what did they use it for?
12:35:39 <ais523> by raising a set number of torches
12:35:43 <ais523> or something similar
12:35:44 <AnMaster> heh
12:35:51 <AnMaster> early telegraph?
12:35:54 <ais523> more or less
12:35:59 <ais523> but for military purposes
12:36:05 <ais523> and with much shorter messages
12:36:07 <AnMaster> you should support it in convickt!
12:36:15 <ais523> convickt's extensible
12:36:22 <ais523> although the file format confuses me
12:36:29 <ais523> and again, I created it
12:36:32 <AnMaster> err
12:36:34 <AnMaster> wtf is this:
12:36:36 <AnMaster> ick_cset_recent[ic].nbytes || (ick_clc_cset_load(ick_cset_recent+ic,incset),0);
12:36:36 <AnMaster> ick_cset_recent[oc].nbytes || (ick_clc_cset_load(ick_cset_recent+oc,outcset),0);
12:36:51 <ais523> it's pretty simple
12:36:58 <ais523> it's a standard Perl idiom translated to C
12:37:02 <ais523> only it makes sense in Perl
12:37:11 <ais523> think short-circuit evaluation
12:37:21 <AnMaster> well what does variable || (functioncall(),0)
12:37:22 <AnMaster> do?
12:37:25 <ais523> and the ,0 is to avoid having a void expression on the right hand side of ||, which is legal in Perl but wrong in C
12:37:29 <AnMaster> which is what it seems to be
12:37:36 <ais523> it's equivalent to if(!variable) functioncall()
12:37:43 <AnMaster> oh my
12:37:54 <ais523> in Perl, that's idiomatically written "variable or functioncall();"
12:38:03 <ais523> because Perl doesn't have single-statement ifs
12:38:11 <AnMaster> yes right foo || bar in shell
12:38:12 <ais523> but short-circuiting is standard
12:38:35 <AnMaster> (void)(oc==-1 && (ick_cset_recent[oc=ick_csetow++].nbytes=0)); <-- that is another nasty variant of it
12:38:54 <AnMaster> why don't you use that paradigm for this then:
12:38:56 <AnMaster> if(ic==-1) for(i=NCSETRECENT;i--;) if(!ick_cset_recent[i].nbytes) ic=i;
12:39:08 <AnMaster> the last two statements could be re-done that way
12:39:10 <AnMaster> I think
12:39:36 <AnMaster> if(!ick_cset_recent[i].nbytes) ic=i; would be ick_cset_recent[i].nbytes || ic=i;
12:39:38 <AnMaster> I think?
12:40:04 <ais523> yes, it would be
12:40:10 <ais523> except you need parens due to precedence
12:40:17 <AnMaster> well ok
12:40:24 <ais523> and a cast to void because otherwise gcc doesn't believe you really meant that
12:40:58 <AnMaster> I can understand gcc's opinion there!
12:43:16 <AnMaster> char setname[9]; /* 8.3 filenames are enforced! */
12:43:18 <AnMaster> ais523, wtf?
12:43:27 <ais523> AnMaster: the extension is fixed
12:43:32 <ais523> so that's 8 bytes plus the terminating NUL
12:43:35 <AnMaster> err
12:43:37 <ais523> and those are internal-use filenames
12:43:41 <AnMaster> why only 8?
12:43:53 <AnMaster> why can't you allow full length *nix style
12:43:56 <ais523> AnMaster: because the 8.3 filename is a running joke amongst DOS/Windows users
12:44:07 <AnMaster> hm?
12:44:19 <AnMaster> I'm pretty sure it is no longer needed on windows
12:44:22 <ais523> it isn't
12:44:38 <ais523> but clc-cset is all about insane compatibility dating back centuries
12:44:44 <ais523> even assuming the existence of files is a stretch
12:44:50 <ais523> or directories
12:44:54 <ais523> DOS 1 didn't have directories, for instance
12:45:36 <AnMaster> hah
12:47:17 <AnMaster> _PC_NAME_MAX
12:47:17 <AnMaster> returns the maximum length of a filename in the directory path or fd that the process is allowed to create. The corresponding macro is _POSIX_NAME_MAX.
12:47:27 <AnMaster> on my /home (ext3) this seems to be 255
12:47:40 <AnMaster> strange
12:47:46 <AnMaster> thought it would be much longer
12:50:17 <fizzie> Path names are indeed surprisingly short.
12:54:13 <AnMaster> hm interesting issue
12:54:20 <AnMaster> considering the comma operator
12:54:24 <AnMaster> shouldn't this be valid:
12:54:29 <AnMaster> int x, int y;
12:54:31 <AnMaster> :D
12:54:39 <ais523> int x isn't an expression
12:54:43 <AnMaster> ok
12:54:49 <AnMaster> int x=3, int y=4;
12:54:50 <ais523> (my x), (my y); is indeed valid Perl, I think
12:54:59 <ais523> although arguably it shouldn't be
12:55:16 <fizzie> You're missing them $s.
12:55:20 <ais523> oh, yes
12:55:33 <ais523> well, x and y were functions returning symbolic references, just so that they could correct my mistake
12:55:36 <AnMaster> well
12:55:43 <ais523> there's some debate about 0 and (my $x);
12:55:45 <AnMaster> I meant C
12:55:46 <AnMaster> ...
12:56:01 <ais523> I think that it was officially ruled that people shouldn't depend on any particular value of $x if they do that
12:56:04 <AnMaster> 1 expression:
12:56:04 <AnMaster> assignment-expression
12:56:04 <AnMaster> expression , assignment-expression
12:56:07 <AnMaster> hm
12:56:09 <AnMaster> so
12:56:14 <fizzie> And "int x=3, int y=4;" is not syntactic either; those aren't assignment-expressions there.
12:56:33 <AnMaster> hm....
12:57:01 <ais523> put it this way: int x=2, y=3 is not equivalent to int x=(2,(y=3))
12:57:17 <AnMaster> ais523, indeed
12:57:23 <AnMaster> the former is pretty normal syntax
12:57:32 <ais523> and the second is insane
12:57:35 <AnMaster> yes
12:57:46 <AnMaster> what exactly is the result of the second?
12:57:56 <AnMaster> x == 3? and y == 3?
12:58:00 <ais523> it assigns 3 to a new auto variable called x
12:58:04 <ais523> and 3 to an existing variable called y
12:58:11 <ais523> which is presumably in an outer scope
12:58:14 <AnMaster> "If an attempt is made to modify the result of a comma operator or to access it after the next sequence point, the behavior is undefined."
12:58:24 <AnMaster> I'm not sure it does due to that
12:58:30 <ais523> it doesn't violate that rule
12:58:35 <AnMaster> hm ok
12:58:42 <AnMaster> that what does that rule mean?
12:58:43 <ais523> that's disallowing things like (2, y) = 3
12:58:49 <AnMaster> ah right
12:58:51 <fizzie> "int x=3;" is an instance of the 'declaration' syntax; It's something like (declaration (declaration-specifiers (type-specifier "int")) (init-declarator-list (init-declarator (declarator "x") "=" (initializer "3"))))))))))))))))))))))))))) in tree form.
12:58:52 <ais523> which make no sense in any language, really, except Perl
12:58:57 <fizzie> (Didn't bother counting the )s.)
12:59:13 <ais523> in Perl, that's equivalent to y=3
12:59:21 <ais523> Perl is quite good at assigning meanings to otherwise meaningless expressions
12:59:33 <AnMaster> hah
12:59:35 <ais523> hmm... maybe it isn't, actually
12:59:41 <ais523> you might have to write scalar (2, y) = 3
12:59:45 <ais523> to get the right sort of comma operator
12:59:58 <AnMaster> ais523, I much prefer a language with a consistent and sane syntax, and C isn't one of them. Perl certainly isn't
13:00:36 <AnMaster> scheme definitely is if you disregard those non-clean macros
13:01:12 -!- Corun has quit ("This computer has gone to sleep").
13:01:14 <fizzie> It's easy to have a consistent and sane syntax if you have so little of it, like Scheme has.
13:01:26 <AnMaster> on the other hand, scheme doesn't have a portable rand() afaik
13:01:43 <AnMaster> I don't know clisp
13:01:58 <AnMaster> it may be better
13:02:37 <AnMaster> fizzie, and yes not having much syntax helps a lot
13:05:27 <fizzie> Still, my written-in-Prolog Scheme syntax parser is a whopping 335 lines.
13:05:52 <ais523> that's just because good-style Prolog is inherently very vertical
13:06:08 <fizzie> It's not very good-style. :p
13:06:13 <fizzie> Most of it is about numbers, anyway.
13:06:14 <ais523> although using \+ and ; and -> a lot makes it less readable but shorter
13:07:38 <fizzie> There's the exact/inexact prefixes, radix prefixes, and complex numbers to care about.
13:08:24 <ais523> numbers always seem hacked into Prolog
13:08:29 <ais523> it would be much more elegant without them
13:08:34 <ais523> you could use list lengths instead, or something
13:08:41 <ais523> and get round all the random restrictions on numbers that exist
13:09:12 <fizzie> I think I converted the Scheme constants into SWI-Prolog numbers, and used the inelegant operations.
13:09:48 <fizzie> Or, hmm. Actually not.
13:10:06 <fizzie> I seem to have implemented some sort of auto-normalized rationals there.
13:11:25 <fizzie> But no bignums. :/
13:11:33 <fizzie> Well, it was just a course programming exercise.
13:18:23 <AnMaster> fizzie, I would like to see it
13:18:41 <AnMaster> also any good online prolog tutorial?
13:19:01 <AnMaster> and what open source prolog implementation would you recommend?
13:19:13 <ais523> I'd recommend gprolog, mostly because I'm used to it
13:19:19 <ais523> and it even attempts to implement some sort of standard library
13:19:26 <AnMaster> Description: GNU Prolog is a native Prolog compiler with constraint solving over finite domains (FD)
13:19:27 <AnMaster> hm?
13:19:28 <ais523> above what ISO guarantees, which isn't a lot
13:19:32 <AnMaster> what about debugging prolog?
13:19:34 <ais523> AnMaster: you can ignore the FD stuff
13:19:38 <ais523> and it has a good debugger
13:19:43 <AnMaster> right
13:19:43 <ais523> it's both a compiler and an interpreter
13:19:47 <ais523> both together, in fact
13:20:00 <ais523> if you run a null program through the compiler, you get the interpreter
13:20:04 <AnMaster> hah
13:20:18 <AnMaster> ok, so what about tutorial?
13:21:03 <ais523> I learnt Prolog from RL books
13:21:09 <ais523> which in retrospect weren't all that useful
13:21:20 <AnMaster> use amd64 && append-flags -fno-tree-dce
13:21:21 <AnMaster> wtf
13:21:31 <AnMaster> it fails with dead code elimination on amd64?
13:21:37 <AnMaster> that was from the ebuild
13:22:07 <fizzie> Well, I've used SWI-prolog exclusively.
13:22:26 <fizzie> It's not bad, but I'm unqualified to judge very well.
13:22:58 <fizzie> And I learnt prolog from (a) "The Art of Prolog" book and (b) the SWI-prolog manual (the details; it's very much not a tutorial).
13:23:10 <AnMaster> hm
13:23:47 <fizzie> I'm not sure how portable this plscheme thing is. It uses SWI-Prolog's module system thing, at least.
13:24:14 <AnMaster> h
13:24:15 <AnMaster> hm*
13:24:25 <ais523> fizzie: I agree with reading the manual for details once you've learnt the basics, but not before
13:24:41 <AnMaster> so what about learning the basics?
13:24:46 <AnMaster> online resource that is
13:26:14 <fizzie> http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/contents.html was the "Missing course book? Try an online tutorial to Prolog." link.
13:26:24 <fizzie> I don't think I've looked it at all, so caveat IRC-or.
13:32:36 <AnMaster> hm
13:32:37 <AnMaster> thanks
13:51:16 -!- Corun has joined.
14:07:31 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
14:08:07 -!- moozilla has joined.
14:11:52 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:11:56 -!- moozilla has joined.
14:12:49 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:12:56 -!- moozilla has joined.
14:18:32 -!- metazilla has joined.
14:18:38 -!- moozilla has quit (Nick collision from services.).
14:18:42 -!- metazilla has changed nick to moozilla.
14:21:42 -!- metazilla has joined.
14:21:42 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:21:50 -!- metazilla has changed nick to moozilla.
14:31:13 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:31:16 -!- moozilla has joined.
14:33:57 -!- metazilla has joined.
14:33:57 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:34:03 -!- metazilla has changed nick to moozilla.
14:34:06 -!- jix has joined.
14:40:34 <AnMaster> ais523, did you check all the patches or?
14:40:49 <ais523> more or less
14:41:01 <AnMaster> ok
14:41:11 <ais523> haven't checked the build in detail
14:41:13 -!- Mony has joined.
14:41:17 <ais523> I've checked source, but I want to check the executable too
14:41:25 <AnMaster> well of course
14:42:45 <Mony> yello
14:43:53 <AnMaster> yello?
14:43:55 <AnMaster> jello?
14:44:05 <AnMaster> or maybe jelly=
14:44:06 <AnMaster> ?
14:46:01 -!- metazilla has joined.
14:46:06 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:46:10 -!- metazilla has changed nick to moozilla.
14:47:44 <Mony> it's like hello ^^
14:47:58 <ehird> hm.
14:48:04 <ehird> does valgrind work on os x yet
14:48:41 -!- metazilla has joined.
14:48:45 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:48:50 -!- metazilla has changed nick to moozilla.
14:49:57 <AnMaster> ehird, some tools do iirc
14:50:01 <AnMaster> but not all
14:50:16 <AnMaster> same for ppc
14:50:42 <AnMaster> ah no it doesn't
14:51:07 <AnMaster> ehird, iirc xcode is bundled with some tool to check for "object leaks" or such
14:51:12 <AnMaster> better than nothing
14:51:17 * ehird wonders if #define S(x) ((string_t){strlen(x),x}) is sane.
14:51:27 <ehird> Well, it'd probably not go in a constant section.
14:51:31 <AnMaster> ehird, what is the type of string_t?
14:51:33 <ehird> That's kind of bad.
14:51:34 <ehird> AnMaster: struct.
14:51:45 <AnMaster> also indeed it wouldn't I bet
14:52:04 <ehird> Mmph.
14:52:13 <AnMaster> ?
14:52:30 <AnMaster> ehird, it is a nice idea though
14:52:51 <ehird> There's a gcc-specific hack to put things in the constant section I think, but, uh, it's a gcc-specific hack.
14:53:18 <AnMaster> well yes being gcc specific is part of the definition of being a gcc specific hack
14:53:36 <AnMaster> so that makes sense, it would ineed be specific to gcc
14:54:17 <AnMaster> ehird, is OS X on intel 32-bit or 64-bit?
14:54:47 <ehird> AnMaster: it's kind of complicated. This is a 64-bit machine, but the programs I run are 32-bit, I don't know about the kernel.
14:54:48 <ehird> However.
14:54:57 <ehird> Apparently 10.5 (which I don't have) is 100% 64-bit.
14:55:05 <AnMaster> can you run 64-bit programs on 10.4?
14:55:10 <ehird> Yes, I believe so.
14:55:13 <AnMaster> hm
14:55:20 <ehird> I could try if you want.
14:55:21 <AnMaster> interesting mixed userland then
14:55:45 <AnMaster> ehird, -m64 to gcc I believe
14:55:55 <AnMaster> at least that is what is needed on multilib gcc here
14:56:01 <AnMaster> not sure for darwin
14:56:05 <ehird> Holy fuck, 189% of my CPU is being used.
14:56:09 <ehird> (Dual core :P)
14:56:14 <ehird> Okay, what's using it...
14:56:17 <ehird> Um... prl_disp_service.
14:56:19 <ehird> Process ID 302.
14:56:24 <ehird> wat
14:56:27 <AnMaster> prl_disp_service?
14:56:35 <AnMaster> perl display service?
14:56:37 <ehird> Oh. prl_disp_service is something to do with Parallels.
14:56:41 <AnMaster> ah
14:56:43 * ehird kills it.
14:56:58 <ehird> lol, I didn't notice 180% of my CPU disappearing
14:57:09 <AnMaster> err
14:57:17 <AnMaster> 189% is rounded to 190%
14:57:26 <ehird> I forgot the exact number by that line.
14:57:40 <ehird> But the only reason I noticed it is I started activity monitor to see if it had anything 64-bit related.
14:57:47 <ehird> AnMaster: got a test program that prints out if it's 64-bit?
14:57:48 <AnMaster> ha
14:57:56 <AnMaster> err that is kind of hard
14:58:01 <AnMaster> well
14:58:09 <AnMaster> #include <stdio.h>
14:58:36 <AnMaster> int main(void) { printf("%zu\n", sizeof(char*)); return 0; }
14:58:41 <AnMaster> what about that?
14:58:44 <ehird> I'll try it.
14:58:47 <AnMaster> if 64-bit it should print 8
14:59:16 <ehird> [ehird:~] % gcc -m64 64bit.c -o 64bit
14:59:16 <ehird> [ehird:~] % ./64bit
14:59:18 <ehird> 8
14:59:20 <ehird> [ehird:~] % gcc 64bit.c -o 64bit
14:59:22 <ehird> [ehird:~] % ./64bit
14:59:24 <ehird> 4
14:59:30 <AnMaster> interesting
14:59:34 <AnMaster> so 32-bit is default?
14:59:36 <AnMaster> mhm
14:59:54 <ehird> AnMaster: I imagine it's because all the system libs are presumably 32-bit.
15:00:12 <ehird> So 64-bit wouldn't be very useful, generally.
15:00:13 <AnMaster> ehird, well I assume there is a 64-bit libc, or that program wouldn't have worked
15:00:20 <ehird> True, but what about the OS X apis?
15:00:33 <ehird> Hm, what's that program that prints out the libs a binary uses?
15:00:36 <AnMaster> oh you mean the super sized coca.h?
15:00:40 <AnMaster> or whatever the name is
15:01:00 <ehird> AnMaster: CoreFoundation, Cocoa, and all the 500 million other libs.
15:01:07 <ehird> QuickTime, ..
15:01:14 <AnMaster> #include <cocoa.h>
15:01:19 <AnMaster> int main(void) { return 0; }
15:01:21 <ehird> I don't think that works.
15:01:23 <AnMaster> gcc -E file.c
15:01:29 <AnMaster> check the size of the result
15:01:29 <AnMaster> :D
15:01:35 <AnMaster> ehird, oh?
15:01:38 <ehird> For one, all OS X headers use CamelCase.h
15:01:43 <ehird> Two, Cocoa is an objective-c library
15:01:46 <AnMaster> ah hm
15:01:57 <ehird> #include <CoreFoundation.h> might work.
15:02:00 <ehird> Or was it Foundation.h?
15:02:01 <ehird> Let's see.
15:02:01 <AnMaster> ehird, so what about C and C++ programs that want to use GUI?
15:02:24 <ehird> AnMaster: Generally, they shouldn't. Objective-C is a strict superset of C. But they can use Carbon.
15:02:41 <ehird> Carbon has fewer high-level widgets than Cocoa, though, and it's generally fading away.
15:02:41 <AnMaster> err carbon is kind of outdated isn't it?
15:02:48 <ehird> AnMaster: Finder is written in Carbon.
15:02:52 <AnMaster> really?
15:02:53 <AnMaster> still
15:02:54 <AnMaster> strange
15:02:55 <ehird> ((Although it probably shouldn't be.))
15:03:01 <ehird> AnMaster: carbon isn't outdated
15:03:04 <ehird> just a bit neglected
15:03:10 <AnMaster> ehird, carbon was around at OS 9....
15:03:20 <ehird> Not strictly true.
15:03:31 -!- metazilla has joined.
15:03:32 <ehird> Carbon is an evolution of the API that was there in OS 9.
15:03:33 <AnMaster> ehird, really?
15:03:38 -!- moozilla has quit (Nick collision from services.).
15:03:40 -!- metazilla has changed nick to moozilla.
15:03:41 <ehird> But the implementation is all new, I think.
15:03:45 <AnMaster> err there was a Carbon file in /System/Extensions
15:03:48 <AnMaster> err
15:03:53 <ehird> Was there? OK then
15:03:57 <AnMaster> Macintosh HD:System:Extensions
15:03:58 <AnMaster> even
15:03:59 <AnMaster> :D
15:04:06 <ehird> OS X is a rather bizarre system.
15:04:18 <AnMaster> ehird, nothing compared to pre-OS X
15:04:20 <ehird> From the start, the kernel is the lovechild of BSD and Mach.
15:05:06 <AnMaster> mh
15:05:29 * ehird tries to found Foundation.h
15:05:38 <AnMaster> ehird, isn't : invalid in paths on OS X still?
15:05:42 <AnMaster> filenames
15:05:52 -!- metazilla has joined.
15:05:55 <ehird> AnMaster: Yeah, you can use them/
15:05:57 <ehird> in paths
15:05:59 -!- moozilla has quit (Nick collision from services.).
15:06:00 <AnMaster> indeed
15:06:03 -!- metazilla has changed nick to moozilla.
15:06:18 <AnMaster> that is due to that they were used for path component separator back on pre-OSX
15:06:38 <ehird> iTunes reports filenames with : paths in its info dialog for tracks.
15:06:42 <ehird> I don't think anything else does, though.
15:07:00 <AnMaster> I think that OS 9 was possibly the only system I used that allowed / in a directory name
15:07:14 <ehird> Can't do that in OS X for obvious reasons :P
15:07:44 <ehird> AnMaster: Well, you can.
15:07:45 <AnMaster> well true
15:07:47 <ehird> I just saved a file as a/b.txt
15:07:48 <AnMaster> oh?
15:07:51 <ehird> BUT
15:07:58 <ehird> % ls a:b.txt
15:07:58 <ehird> a:b.txt
15:08:04 <AnMaster> err
15:08:05 <AnMaster> what?
15:08:10 <AnMaster> now you totally confused me
15:08:10 <ehird> In each interface, it displays the character as the one that isn't forbidden.
15:08:14 <ehird> Crazy, I know.
15:08:15 <AnMaster> haha
15:08:21 <AnMaster> oh yes crazy indeed
15:08:35 <AnMaster> ehird, I thought both were forbidden everywhere?
15:08:36 <ehird> and % touch foo:bar.txt gives foo/bar.txt in finder, similarly
15:08:41 <ehird> AnMaster: seems not
15:08:47 <AnMaster> wtf
15:08:53 <ehird> : is forbidden in OS X-land, / is forbidden in unix-land
15:08:54 <AnMaster> ehird, what char is it internally?
15:09:03 <ehird> Probably /.
15:09:09 <AnMaster> really?
15:09:11 <AnMaster> hm
15:09:22 <AnMaster> well I guess that would work better for HFS
15:09:30 <ehird> HFS+, actually.
15:09:33 <AnMaster> well yah
15:09:36 <AnMaster> yeah*
15:09:40 <ehird> I don't know what the + means apart from perhaps "okay, it's slightly more tolerable now"
15:09:46 <AnMaster> even MacOS 8 had had HFS+
15:10:02 <AnMaster> ehird, it is the difference between FAT16 and FAT32 basically iirc
15:10:12 <AnMaster> large disk issues with plain HFS
15:10:16 <ehird> Now now, I'd say HFS+ is far superior to fat32. :P
15:10:31 <AnMaster> ehird, yes and HFS far superior to fat16
15:10:55 <AnMaster> but I mean the 32/+ were both basically created to solve the same issue
15:11:00 <ehird> % echo '#include <Carbon.h>' | cpp -I/System/Library/Frameworks/Carbon.framework/Versions/A/Headers|wc -l
15:11:04 <ehird> (snip some misc errors from headers)
15:11:06 <ehird> 174516
15:11:13 <ehird> It's rather... complete.
15:11:15 <AnMaster> ehird, that's pretty massive
15:11:42 <AnMaster> the differences between HFS and HFS+ are larger than between FAT16 and FAT32 iirc
15:11:52 <AnMaster> I think HFS didn't use a b-tree, but HFS+ does
15:11:55 <ehird> yeah, HFS+ behaves much like a regular unix fs day-to-day
15:12:00 <ehird> apart from the case insensitive thing, which I like
15:12:01 <AnMaster> I don't remember the details
15:12:05 -!- scriptdevil has joined.
15:12:14 <AnMaster> ehird, I have no clue how they managed to stick permissions into HFS+
15:12:20 <ehird> Oh wtf, i'm still on reddit's frontpage.
15:12:20 <scriptdevil> is it possible to set the current cell to 0 in brainfuck?
15:12:21 <AnMaster> without breaking classic mac os
15:12:24 <ehird> That's just ridiculous.
15:12:25 <ehird> scriptdevil: [-]
15:12:28 <ehird> or [+]
15:12:41 <AnMaster> yes common idiom
15:13:12 <scriptdevil> ehird: Oh.. Common sense.. I am new to brainfuck. :P
15:13:16 <ehird> :-)
15:13:23 <ehird> Common sense is pretty bad in here!
15:13:27 <AnMaster> ehird, ah no hm: "Like HFS, HFS Plus uses B*-trees to store most volume metadata."
15:13:31 <AnMaster> (from wikipedia)
15:14:07 <AnMaster> ehird, the second paragraph on http://en.wikipedia.org/wiki/HFS_Plus describes the differences pretty well
15:14:23 <ehird> ugh, mac os roman
15:14:26 <ehird> i think i died
15:14:29 <AnMaster> ehird, what?
15:14:39 <ehird> awful character set
15:14:39 <AnMaster> it was another charset
15:15:00 <AnMaster> ehird, yes it messed up for us Swedes, iirc åäö mapping differed from everyone else
15:15:05 <ehird> ha
15:16:30 <ehird> Jeez, the 'not programming' guys is still the top comment.
15:16:39 <ehird> Guy got 338 points for it.
15:20:02 <AnMaster> ehird, those *.dmg files, how does one open them on non-OSX?
15:20:09 <AnMaster> such as on linux
15:20:20 <ehird> AnMaster: that would be difficult. A dmg is a disk image containing an HFS+ filesystem.
15:20:33 <ehird> (Why it's used for distributing applications is a rather long story.)
15:20:42 <AnMaster> ehird, well linux supports reading hfs+
15:20:54 <ehird> http://baghira.sourceforge.net/dmg.htm ?
15:20:56 <AnMaster> the issue is it isn't just a dump, it seems to have some compression
15:21:02 <ehird> Just use mount.
15:21:02 <AnMaster> hm *looks*
15:22:03 <AnMaster> ehird, that doesn't work for compressed *.dmg
15:22:16 <fizzie> At some point, some part of OS X had a habit of using Unicode combining characters in filenames; the file "bläh" would've been "bla\u0308h".
15:22:21 <ehird> http://www.google.com/search?hl=en&q=compressed+dmg+linux&btnG=Search <- hm.
15:22:35 <ehird> AnMaster: I think you're fecked.
15:22:43 <AnMaster> ehird, closed format?
15:22:52 <ehird> AnMaster: Don't think so, I just think there aren't any tools from the looks of it.
15:22:53 <ehird> AnMaster: If you send me the dmg I can open it for you.
15:23:18 <AnMaster> ehird, I don't have one now, but I had one just last week and all this OS X talk reminded me of that
15:23:24 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
15:23:27 -!- metazilla has joined.
15:23:28 <ehird> http://vu1tur.eu.org/tools/ ths might work
15:23:31 <ehird> it says compressed
15:23:32 <ehird> and has source code
15:23:34 <AnMaster> I was unable to find a tool then so I thought now "would be useful for the future"
15:23:39 * AnMaster looks
15:23:55 <AnMaster> an 1 in the url?
15:24:12 <ehird> Yes.
15:24:22 <ehird> You weird person and your non-clickable lnks.
15:24:24 <ehird> links
15:24:32 <AnMaster> no
15:24:41 <AnMaster> just it gives the classical AOL feeling
15:24:44 <AnMaster> ;P
15:24:58 <ehird> Tell that to ais523 :P
15:25:14 <AnMaster> ehird, well in ais523 they aren't replacing letters
15:25:31 <AnMaster> but if I changed my nick to 4nM4ster or such
15:25:34 <AnMaster> it would be that bad
15:25:49 <AnMaster> actually s -> 5 iirc
15:26:08 <ehird> Tell that to w1n5t0n, then, whose name is so irritating that he doesn't even refer to himself by it.
15:26:11 -!- moozilla has joined.
15:26:19 <ehird> Which, in fact, implies you have a point.
15:26:29 <AnMaster> heh
15:26:30 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:26:30 -!- moozilla has changed nick to metazilla.
15:26:45 <AnMaster> ehird, also I never seen this "w1n5t0n"
15:27:04 <AnMaster> so I couldn't tell him since I don't know where to find him
15:27:06 <ehird> He plays Agora & B Nomic.
15:27:06 <ehird> :P
15:27:09 <AnMaster> ah
15:30:33 <AnMaster> ehird, hm from looking at the source code it seems to be compressed with libz
15:30:38 <AnMaster> with some strange header
15:30:48 <ehird> huh.
15:31:49 <ehird> Hm.
15:32:05 -!- scriptdevil has left (?).
15:34:13 <AnMaster> ehird, yeah a header called "plist" it seems
15:34:18 <ehird> Oh, plist.
15:34:22 <AnMaster> what?
15:34:23 <ehird> http://en.wikipedia.org/wiki/Property_list
15:34:54 <ehird> Although unless it's XML or the plaintext format, I doubt it's the same plist.
15:35:54 <AnMaster> err
15:35:56 <AnMaster> "Since XML files, however, are not the most space-efficient means of storage, version 10.2 introduced a new format where property list files are stored as binary files. Starting with version 10.4, this is the default format for preference files."
15:37:06 <ehird> Ah.
15:37:09 <ehird> That'd be it then.
15:37:12 <AnMaster> anyway
15:37:15 <AnMaster> I don't know
15:37:21 <AnMaster> the parsing is rather strange
15:38:19 <AnMaster> ehird, it is the xml variant
15:38:33 <ehird> x.x
15:38:35 <AnMaster> since it checks that it begins with the string in plist_begin
15:38:35 <ehird> In a binary disk image?
15:38:36 <AnMaster> and
15:38:37 <AnMaster> const char plist_begin[]="<plist version=\"1.0\">";
15:38:41 <ehird> My lord.
15:39:22 <AnMaster> ehird, it doesn't actually parse xml, it seems to check that it "looks like plist, go to pre-computed offset for value we want, read it"
15:39:28 <ehird> ha
15:39:29 <AnMaster> quite a horrible way to parse xml
15:39:44 <ehird> are there any non horrible ways
15:39:51 <AnMaster> if (!strstr(plist, plist_begin) ||
15:39:52 <AnMaster> !strstr(&plist[pl_size-20], plist_end)) {
15:39:52 <AnMaster> printf("ERROR: Property list is corrupted.\n");
15:39:52 <AnMaster> exit(-1);
15:39:52 <AnMaster> }
15:39:57 <AnMaster> that is one of the worst ones
15:39:57 <ehird> hahaha
15:40:35 <AnMaster> ehird, also lucky that the source code is short, because it is not well commented
15:40:52 <ehird> You'd hate my code.
15:40:52 <AnMaster> s/lucky/luckily/
15:41:01 <ehird> I have like 1 comment per 100 lines.
15:41:21 <AnMaster> ehird, 2 / 300 in this case I believe
15:41:24 <AnMaster> + copyright header
15:41:55 <ehird> 1/100 is when I'm actually trying to comment. Normally it'd be more like 3 comments per 1000 lines...
15:42:08 <ehird> But I try to make up for that by having the code simple enough to read.
15:42:14 <AnMaster> well
15:42:18 <AnMaster> this code isn't simple to read
15:42:24 <AnMaster> parts = (char**)realloc(parts, partnum*sizeof(char*));
15:42:24 <AnMaster> partlen = (unsigned int *)realloc(partlen, partnum*sizeof(int));
15:42:24 <AnMaster> if (!parts || !partlen) mem_overflow();
15:42:24 <AnMaster> parts[i] = (char*)malloc(data_size+1);
15:42:24 <AnMaster> if (!parts[i]) mem_overflow();
15:42:27 <AnMaster> is just an example
15:42:42 <ehird> That sounds like it could do with being put into a function.
15:42:45 <AnMaster> no clue what is up with "mixed tab/space for same level" indention
15:43:01 <AnMaster> ehird, oh yes everything so far is in main() it seems
15:43:11 <AnMaster> yep
15:43:14 <ehird> I'm going to try and compile cfunge with 64 bit because I hate myslf.
15:43:41 <ehird> Woo, macports has 1.10. I don't have to manually compile bzr.
15:43:44 <AnMaster> ehird, mkdir build && cd build && CC=gcc CFLAGS='-m64' cmake ..
15:43:49 <AnMaster> something like that
15:43:53 <AnMaster> would probably work
15:43:59 <AnMaster> assuming cmake is in path
15:44:00 <ehird> AnMaster: Does that include the SUPAH OPTIMIZED crap? :P
15:44:01 <AnMaster> then make after
15:44:13 <AnMaster> ehird, not really extra optimised no
15:44:30 <AnMaster> if you want that answer these questions three
15:44:36 <AnMaster> What is your -march?
15:44:50 <AnMaster> What is your favorite colour?
15:45:00 <ehird> 1. ¯\(°_o)/¯ the CPU is intel core 2 duo, fwiw
15:45:04 <AnMaster> What is the air speed velocity of a macbook?
15:45:07 <ehird> 2. octarine
15:45:20 <ehird> 3. macbook air? Infinite :P
15:45:33 <AnMaster> ehird, I don't know what the -march is for core2
15:45:41 <AnMaster> nor does my gcc man page mention it
15:45:45 <AnMaster> too old gcc I believe
15:45:50 <ehird> To the googlemobile ->
15:46:15 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:46:21 -!- moozilla has joined.
15:46:29 <ehird> Hmm, nothing here i think.
15:46:35 <ehird> Nor in man gcc.
15:47:31 <ehird> where's the full list of marches
15:47:33 <AnMaster> well on gcc 4.3 at least: CFLAGS="-march=core2 -m64 -O3 -pipe" cmake -DCMAKE_BUILD_TYPE:STRING=Release ..
15:47:37 <ehird> ?
15:47:43 <AnMaster> ehird, man gcc in my case
15:47:44 <AnMaster> ?
15:47:45 <ehird> AnMaster: -FUNROLL-LOOPS :D
15:47:50 <ehird> (no, I'm not that crazy.)
15:47:58 <ehird> Ha, what about the batshit insane flags you use for profiling?
15:47:58 <AnMaster> ehird, benchmark show no benefit from it
15:47:59 <AnMaster> however
15:47:59 <ehird> Are they stable?
15:48:14 <AnMaster> ehird, for profiling I don't use cmake, I use -combine and -fwhole-program
15:48:15 <AnMaster> and such
15:48:28 <ehird> AnMaster: I remember you pasting a shell script with the most insane optimization flags I ever saw.
15:48:34 <ehird> Something like unsafe-loops.
15:48:36 <AnMaster> yes I know that script
15:48:39 <AnMaster> oh yes that too
15:49:01 -!- metazilla has joined.
15:49:03 <AnMaster> anyway: on gcc 4.3 at least: CFLAGS="-march=core2 -m64 -O3 -pipe" cmake -DCMAKE_BUILD_TYPE:STRING=Release -DUSE_GC:BOOL=OFF ..
15:49:08 -!- moozilla has quit (Nick collision from services.).
15:49:10 -!- metazilla has changed nick to moozilla.
15:49:22 <AnMaster> ehird, gcc 4.2 doesn't seem to support core2
15:49:32 <AnMaster> no idea what one you have
15:49:34 <ehird> % gcc --version
15:49:35 <ehird> i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5363)
15:49:41 <ehird> oldskool
15:49:41 <AnMaster> no core2 support there
15:49:46 -!- KingOfKarlsruhe has joined.
15:49:49 <AnMaster> so I don't know what is best for it
15:49:55 <AnMaster> when it comes to -march
15:49:58 <ehird> I could try compiling my own gcc.
15:50:06 <ehird> except I'm not sure I hate myself enough
15:50:19 <AnMaster> ehird, well you might want that for other reasons, like llvm-gcc
15:50:31 <AnMaster> which is 4.2.1 iirc
15:50:33 <ehird> why would you use llvm with gcc
15:50:34 <ehird> instead of clang
15:50:41 <AnMaster> ehird, because clang isn't ready yet
15:50:50 <ehird> nor is llvm :P
15:50:53 <AnMaster> it fails with "can't codegen this thing yet" when building cfunge
15:50:54 <AnMaster> for example
15:51:12 <ehird> llvm is unfortunately not as generic as it seems to want to be
15:51:22 <AnMaster> true it is too mac specific it seems
15:51:29 <ehird> er what
15:51:30 <AnMaster> bad influence from apple no doubt ;P
15:51:33 <ehird> I was meaning more,
15:51:38 <ehird> it's still imperative-centric
15:51:42 <AnMaster> ehird, apple sponsor llvm and help develop it
15:51:44 <AnMaster> ah right
15:51:46 <ehird> I don't think it will ever be useful for building functional languages, for instance
15:51:46 <AnMaster> that is true
15:51:54 <AnMaster> ocaml-llvm
15:51:59 <AnMaster> pretty sure I read about it
15:52:13 <ehird> I want my damn functional CPU
15:52:22 <AnMaster> ehird, single assignment?
15:52:24 <ais523> so do I, but I have no idea how to make one
15:52:28 <ehird> AnMaster: Yes!
15:52:33 <ehird> ais523: there's some research regarding them
15:52:46 <ehird> it's pretty hard to efficiently embed the lambda calculus in the real world :-)
15:53:05 <ehird> AnMaster: what're your crazy profiling cflags?
15:54:14 * ehird downloads gcc
15:54:17 <ehird> 56MB? It's grown.
15:54:17 <AnMaster> http://rafb.net/p/inBv8T82.html
15:54:46 <ehird> AnMaster: so that's the fastest cfunge you could ever possibly get? XD
15:55:00 <AnMaster> ehird, not sure, on intel cpus using icc may be better
15:55:01 <ehird> I am so tempted to link to http://funroll-loops.info/ here. Oh wait I just did
15:55:05 <AnMaster> at least it was on a pentium3
15:55:07 <AnMaster> I tried with
15:55:28 <AnMaster> ehird, as you will notice it says -march=k8, which means amd64
15:55:38 <AnMaster> as in AMD's product
15:55:50 <AnMaster> with a different setup other flags may be better
15:56:11 <ehird> Okay, time to build gcc :x
15:56:14 <AnMaster> also I haven't done any sort of exhaustive search of the cflags space
15:56:19 <AnMaster> ehird, good luck with that
15:56:31 <AnMaster> ehird, it may need special steps on OS X
15:56:34 <ehird> AnMaster: I will not rest until cfunge runs mycology in minus 1ms
15:57:27 * ehird tries to figure out how to make gcc just build a c compiler
15:58:02 <ais523> ehird: the setting's in gcc-bf's build script somewhere
15:58:12 <ehird> ais523: NO :-P
15:58:16 <AnMaster> ehird, very funny, on my system it takes around 0.035 s
15:58:17 <ehird> I think i will google it instead
15:58:27 <ehird> AnMaster: what, the whole fucking thing?
15:58:28 <ehird> jesus christ.
15:58:37 <AnMaster> ehird, it is like --enable-lang=c
15:58:38 <ehird> why not just hardcode the output
15:58:39 <AnMaster> or such
15:58:40 <ais523> --enable-languages=c)
15:58:43 <ais523> without the closing paren
15:58:51 <AnMaster> ais523, ah I was almost right then
15:58:59 <ehird> configure: error: Building GCC requires GMP 4.1+ and MPFR 2.3.0+.
15:59:03 <ehird> good lord i hate you gcc
15:59:12 <ehird> why do you need arbitrary precision numbers to compile c
15:59:13 <AnMaster> don't everyone have those?
15:59:21 <ehird> AnMaster: i think those versions are super-recent
15:59:31 <AnMaster> ehird, what gcc version?
15:59:34 <AnMaster> 4.3.2?
15:59:38 <ehird> yeah.
15:59:44 <ehird> gmp @4.2.4 (devel, math)
15:59:45 -!- Corun has quit ("This computer has gone to sleep").
15:59:46 <ehird> ok, I have gmp
15:59:49 <AnMaster> what I have on my arch linux
15:59:55 <ehird> guess I'll just try pointing it to /opt/local/{include,lib}
16:00:09 <AnMaster> gcc 4.3.2 and glibc 2.9
16:00:16 -!- metazilla has joined.
16:00:18 <AnMaster> oh and kernel 2.6.28
16:00:29 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
16:00:29 -!- metazilla has changed nick to moozilla.
16:00:30 -!- moozilla has quit (Nick collision from services.).
16:00:38 <AnMaster> ...
16:00:53 -!- moozilla has joined.
16:01:19 <ehird> oh jeez
16:01:20 <AnMaster> moozilla, care to fix your connection?
16:01:20 <ehird> checking for correct version of gmp.h... yes
16:01:20 <ehird> checking for correct version of mpfr.h... no
16:01:22 <ehird> configure: error: Building GCC requires GMP 4.1+ and MPFR 2.3.0+.
16:01:24 <ehird> only complain about the one you can't find kthxbai
16:01:40 <AnMaster> ehird, err it probably does like:
16:01:41 <ais523> ehird: never try to read gcc's configure script
16:01:46 <ehird> AnMaster: yes, I know
16:01:53 <ehird> ais523: the compiled version?
16:01:59 <ais523> either
16:02:04 <AnMaster> if !gmp_ok() || !mpfr_ok()
16:02:06 <AnMaster> error out;
16:02:07 <ais523> the decompiled version is bad enough
16:02:10 <AnMaster> (pseudo code)
16:02:18 <ehird> yes, no shit :P
16:02:41 <ehird> i just looked at gcc's configure
16:02:42 <ehird> and puked
16:02:51 <AnMaster> welll
16:02:53 <AnMaster> well*
16:02:58 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
16:03:01 <AnMaster> any compiled configure
16:03:02 -!- moozilla has joined.
16:03:03 <AnMaster> is crap
16:03:10 <AnMaster> moozilla, please fix your connection.............
16:03:28 <ehird> AnMaster: shut up
16:03:32 <ehird> it only happens once in a while
16:03:34 <ehird> and it's like 2 lines
16:03:58 <ehird> ha apparently the original THX sound only took 325 lines of C instead of 20,000
16:04:05 <ehird> http://slashdot.org/comments.pl?sid=183734&cid=15182029 (the proof of identity is 404'd now tho)
16:04:13 <AnMaster> arvid@tux /mnt/phoenix/llvm/llvm-gcc $ wc -l configure.in
16:04:13 <AnMaster> 2523 configure.in
16:04:15 <AnMaster> wtf?
16:04:22 <AnMaster> ok
16:04:23 <AnMaster> real wtf
16:04:31 <AnMaster> ### WARNING: this file contains embedded tabs. Do not run untabify on this file.
16:04:32 <AnMaster> err
16:04:33 <AnMaster> wtf
16:04:41 <ehird> for testing things
16:04:42 <ehird> i assume
16:04:45 <AnMaster> ahy
16:04:47 <AnMaster> ah*
16:05:18 <AnMaster> *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
16:05:18 <AnMaster> ;;
16:05:18 <AnMaster> *-*-netbsd* | *-*-freebsd* | *-*-openbsd*)
16:05:18 <AnMaster> ;;
16:05:18 <ehird> http://rafb.net/p/Sf0HFX18.html Pipe to /dev/dsp
16:05:19 <AnMaster> err
16:05:23 <AnMaster> why is it doing stuff like that
16:05:30 <AnMaster> I thought that was what configure.sub did?
16:05:39 <AnMaster> config.sub*
16:05:59 <AnMaster> ehird, what?
16:06:09 <ehird> AnMaster: compile, run piped to /dev/dsp
16:06:20 <AnMaster> I bet this is a new rickroll or something
16:06:25 <ehird> ha, no
16:06:35 <AnMaster> "CWG[Cgcg[eYcb^bV^eW^be^bVecb^" <-- encoded notes?
16:06:39 <ehird> beats me
16:06:52 <AnMaster> ehird, what does it do then?
16:07:02 <ehird> try it
16:07:19 <AnMaster> main(v,i,z,n,u,t){for(v=-1;;)for(n=pow(/* gcc -lm sig.c; a.out > /dev/dsp */
16:07:20 <AnMaster> well
16:07:26 <AnMaster> that main signature isn't valid
16:07:33 <ehird> who cares, it compils
16:07:34 <ehird> and runs
16:08:45 <AnMaster> ehird, what is that music?
16:08:53 <ehird> made for the program, I assume
16:08:56 <AnMaster> ah
16:09:01 <ehird> the link points to a demoscene group
16:09:18 <AnMaster> ehird, where did you find this?
16:09:29 <ehird> reddit comments
16:13:11 <ehird> I wonder what the format of /dev/dsp is.
16:13:13 <ehird> Well, it's raw PCM.
16:13:20 <ehird> I wonder how to make PCM.
16:14:20 <ehird> I guess I should look it up.
16:14:39 <AnMaster> ehird, hm about that script I posted, I get much worse speed than a -O3 -fweb -ftracer -frename-registers -fno-ident -fvisibility=hidden -funsafe-loop-optimizations -ftree-vectorize -march=k8 -msse3 now
16:14:49 <AnMaster> which is same as that with no profile feed back
16:14:53 <AnMaster> strange
16:14:56 <AnMaster> it used to be better
16:14:59 <ehird> You are bat shit insane :-)_
16:15:07 <AnMaster> ehird, thanks, aren't we all in here
16:15:08 <ehird> Woo, gcc is compiling.
16:15:12 <AnMaster> in our own ways
16:17:16 -!- metazilla has joined.
16:17:25 -!- moozilla has quit (Nick collision from services.).
16:17:27 -!- metazilla has changed nick to moozilla.
16:17:51 <AnMaster> ehird, I love the last xkcd
16:17:53 <AnMaster> have you read it?
16:18:09 * ehird looks. Ha.
16:18:35 -!- sebbu2 has joined.
16:18:50 -!- oerjan has joined.
16:19:38 <AnMaster> ehird, also irregular webcomic has gone insane recently
16:19:43 <AnMaster> just pure insane
16:19:44 <ehird> O?
16:19:48 <AnMaster> not even funny any more
16:20:01 -!- metazilla has joined.
16:20:04 <AnMaster> yes sure, the first few of these were funny
16:20:05 <ehird> Insane is funny.
16:20:08 -!- moozilla has quit (Nick collision from services.).
16:20:09 <ehird> http://www.irregularwebcomic.net/
16:20:09 <ehird> okay
16:20:10 <ehird> What
16:20:12 <ehird> is
16:20:12 -!- metazilla has changed nick to moozilla.
16:20:14 <ehird> that
16:20:18 <AnMaster> ehird, red
16:20:18 <ehird> AnMaster: link me to the start of whatever the fuck this is
16:20:24 <ehird> plz
16:20:30 <oerjan> :D
16:20:37 <ehird> oerjan: or you
16:20:40 <ehird> I MUST SEE
16:20:55 <ehird> HELLOOOOOOOOO
16:21:03 <AnMaster> ehird, http://www.irregularwebcomic.net/2167.html
16:21:09 <oerjan> except it's crashing on me
16:21:21 <ehird> AnMaster: okay, that's white
16:21:23 <ehird> ok next one is blue
16:21:31 <ehird> then it's darker blue
16:21:31 <ehird> ahahaha
16:21:33 <ehird> this is great
16:21:38 <AnMaster> ehird, really?
16:21:41 <ehird> okay now we're BLUE OR RED
16:21:42 <ehird> KIND OF THING
16:21:44 <AnMaster> sure the first few one
16:21:51 <ehird> WHOA RED
16:21:56 <ehird> and and and and and and and
16:22:00 <ehird> MORE SOLID RED
16:22:06 <ehird> yow
16:22:07 <oerjan> ehird: it may make _slightly_ more sense if you look at 2166 too
16:22:07 <ehird> it's total red
16:22:19 <ehird> oerjan: i'll do that
16:22:38 <ehird> Ah.
16:22:39 <AnMaster> oerjan, also he should learn to properly compress his png
16:22:48 <ehird> Is this... THE END OF IWC?
16:22:57 <oerjan> we don't know, obviously :D
16:23:05 <ehird> I BET IT IS.
16:23:06 <AnMaster> indeed
16:23:13 <AnMaster> ehird, someone suggested it was rebooting
16:23:19 <AnMaster> also notice the cross over list
16:23:23 <ehird> i know
16:23:23 <ehird> XD
16:23:25 <AnMaster> it excludes 2 of the comics
16:23:27 <AnMaster> someone said
16:23:28 <ehird> oh
16:23:28 <ehird> which ones
16:23:36 <AnMaster> ehird, spy theme and super hero theme
16:23:45 <oerjan> every theme except Espionage, Supers and Miscellaneous
16:23:50 <AnMaster> Miscellaneous too?
16:23:54 <AnMaster> huh
16:24:03 <ehird> I bet the first comic after these is http://www.irregularwebcomic.net/1.html
16:24:30 <AnMaster> ehird, I certainly hope not
16:24:52 <AnMaster> he claimed he wanted do more comics than some other strip before
16:24:58 <AnMaster> and I think he haven't reached it by far yet
16:25:06 <ehird> yes, I mean it'll repeat #1
16:25:16 <AnMaster> ehird, but with better image quality?
16:25:24 <ehird> maybe it'll be entirely drawn
16:25:27 <ehird> or remade
16:25:32 <ehird> with new photos
16:25:32 <AnMaster> heh
16:25:37 <oerjan> Calvin and Hobbes, at 3 thousand something
16:25:53 <AnMaster> oerjan, well last irregular is 2173
16:25:56 <AnMaster> currently
16:26:24 <oerjan> the excluded themes are those that weren't included in the buildup, too (no time paradox setup)
16:27:06 <ehird> ah did the universe end in all of them
16:27:08 <AnMaster> oerjan, err what is the misc theme?
16:27:20 <oerjan> everything not included in another theme
16:27:45 <oerjan> the Allosaurus used to be there, but now he's more in Martian i think
16:27:54 <AnMaster> yes he is martian indeed I think
16:28:14 <oerjan> he fights the martians
16:29:22 <oerjan> i just hope this won't end with a hobbit pun because then it'll go on until 2196 :D
16:29:39 <oerjan> (someone suggested it on the forums)
16:29:59 <oerjan> ok, it would still be better than IWC _ending_...
16:30:37 <oerjan> we haven't even found out if the Allosaurus won the president reelection...
16:30:56 <ehird> What happened to dmm killing himself?
16:31:26 <oerjan> 2165
16:31:40 <oerjan> that was one of the time paradox setups
16:31:56 <ehird> ha
16:32:33 <ehird> i love the thread titels for them on the forum
16:33:00 <AnMaster> oerjan, err the hobbit one have moved slightly
16:33:09 <AnMaster> sometimes a bit earlier, sometimes a bit later
16:33:16 <oerjan> never earlier i think
16:33:17 <AnMaster> iirc it changed somewhere near the beginning
16:33:22 <AnMaster> oerjan, hm ok
16:33:28 <oerjan> and it has been on 96 for some time
16:33:34 <AnMaster> yes maybe
16:33:36 <oerjan> the last one was 2096
16:33:55 <oerjan> officially, no more than every 100th strip
16:34:10 <AnMaster> oerjan, true, but one time it was 1-2 strips off iirc
16:34:19 <AnMaster> due to scheduling issues
16:34:22 <AnMaster> it was quite early
16:35:30 <AnMaster> hm
16:35:33 <AnMaster> I checked the misc theme
16:35:39 <AnMaster> they tend to have long annotations
16:35:47 <AnMaster> much longer than most themes average
16:35:56 -!- sebbu has quit (Read error: 110 (Connection timed out)).
16:36:15 <ehird> I bet IWC keeps doing this until it reaches (0,0,0)
16:36:27 <AnMaster> ehird, maybe
16:36:33 <ehird> and then it stays like that for like 10 comics
16:36:38 <ehird> and then, something
16:36:48 <AnMaster> ehird, well, time will tell
16:36:55 <oerjan> ouch then it might actually hit 2196
16:37:07 -!- metazilla has joined.
16:37:15 -!- moozilla has quit (Nick collision from services.).
16:37:17 -!- metazilla has changed nick to moozilla.
16:37:19 <ehird> oerjan: ha
16:37:22 <ehird> you've figured it out.
16:38:21 <AnMaster> what
16:38:22 <AnMaster> like
16:38:30 <AnMaster> "don't make a hobbit of destroying the world"?
16:38:34 <ehird> ...
16:38:35 <ehird> Oh lord.
16:38:38 <oerjan> actually that it might fade to black and end up in the fantasy cave was suggested on the forum
16:38:54 <ehird> [[Oh well, at least there's no way this could be a bigger disappointment than mezzacotta! =D ]]
16:38:54 <AnMaster> ehird, yes it was bad
16:38:56 <ehird> --2170
16:39:02 <AnMaster> ehird, well true
16:39:14 <oerjan> hm what was the fantasy setup
16:39:24 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
16:39:24 <AnMaster> oerjan, ?
16:39:28 -!- moozilla has joined.
16:39:58 <oerjan> the last fantasy strip
16:40:26 <AnMaster> no idea
16:40:31 <AnMaster> check theme index?
16:41:07 <oerjan> gah IWC is slow
16:42:17 <oerjan> oh 2152, there was no obvious paradox for that theme
16:42:47 <AnMaster> oh wait
16:42:50 <ehird> gcc compile is slowwwwwww
16:42:51 <AnMaster> does this mean
16:43:15 <AnMaster> fantasy theme explosion and space explosion
16:43:20 <AnMaster> or fantasy bright light
16:43:25 <AnMaster> or such
16:43:32 <oerjan> except they _have_ gone back in time, of course
16:43:39 <AnMaster> oerjan, oh yes true
16:45:07 <oerjan> although destroying the multiverse was mentioned in 2122
16:47:13 <ehird> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/exception.txt;hb=HEAD
16:48:00 <oerjan> * ais523 laughs at oerjan's quit reason
16:48:07 <oerjan> the bus indeed did suck
16:48:07 <AnMaster> bbl
16:48:14 <ehird> I wonder if ais523 is still awake.
16:48:20 <ais523> yes
16:48:23 <ais523> more or less
16:48:26 <ais523> just not concious
16:48:39 <ais523> I'm IRCing on autopilot, usually a bad sign
16:49:01 <ehird> ais523: describe intercal's select to me
16:49:08 <oerjan> it got stuck on the ice so we had to walk to the next stop, the bus they promised would pick us up didn't show up, and we had to wait half an hour
16:49:10 <ais523> ehird: read the manual
16:49:10 <ehird> (a good way to determine the current awake-level of anyone)
16:49:21 <ehird> ais523: where's the manual
16:49:28 <ais523> it was on eso-std.org
16:49:34 <ehird> ais523: where is it now :
16:49:35 <ehird> :D
16:49:42 <ais523> in a tarball from intercal.freeshell.org
16:49:50 <ehird> how can I unpack tarballs
16:49:57 <ais523> tar xzvf
16:50:02 <ehird> where do I put that
16:50:13 <ehird> (in a few minutes, we should be down to quarks)
16:50:17 <ais523> ehird: you're running Mac OS X, it should be able to figure it all out for you
16:50:25 <ehird> what is a os x
16:50:35 <ais523> ehird: stop trolling
16:50:41 <ehird> what's trolling <.<
16:52:06 * oerjan would do the obvious thing but then ehird would only ask what's swatting
16:52:26 <ehird> what's the obvious thing
16:52:59 <oerjan> yes. yes it is.
16:55:38 <AnMaster> wtf
16:55:42 <AnMaster> W T F
16:55:49 <AnMaster> screen saver is supposed to blank screen
16:55:51 <AnMaster> black
16:55:58 <AnMaster> this time it didn't
16:56:03 <AnMaster> it just showed password dialog
16:56:07 <AnMaster> without blanking it
16:57:32 <AnMaster> oerjan, I think it is time for the frying pan
16:57:33 <AnMaster> ...
16:57:47 <oerjan> for whom?
16:57:58 <oerjan> your screen saver?
16:58:08 <AnMaster> oerjan, ehird
16:58:17 <AnMaster> and for my screen saver, it seems to work now
16:58:24 <AnMaster> no clue what caused blanking to fail
16:58:28 <oerjan> i would generally recommend against using frying pans on screen savers, incidentally.
16:58:36 -!- metazilla has joined.
16:58:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
16:58:46 -!- metazilla has changed nick to moozilla.
16:58:52 <AnMaster> oerjan, I agree there
16:59:36 <oerjan> although a frying pan _in_ a screen saver might work, as long as it is properly fastened.
17:00:13 <AnMaster> oerjan, my screen saver is just blanking + kde password dialog
17:00:32 <ehird> du du du du du
17:00:36 <ehird> du du du du du du.
17:00:47 <oerjan> eg eg eg eg eg
17:00:52 <oerjan> eg eg eg eg eg eg.
17:00:57 <Badger> du -h
17:01:02 <AnMaster> 82 /bin/du
17:01:08 <Badger> man
17:01:11 <Badger> that was fast
17:01:12 <ehird> ed
17:01:20 -!- metazilla has joined.
17:01:21 <AnMaster> ?
17:01:25 <oerjan> cat
17:01:29 <Badger> meow
17:01:29 -!- moozilla has quit (Nick collision from services.).
17:01:30 <AnMaster> ?
17:01:31 <AnMaster> ?
17:01:31 -!- metazilla has changed nick to moozilla.
17:01:33 <ehird> 40 /usr/bin/du
17:01:33 <ehird> I win
17:01:33 <Badger> !
17:01:34 <Badger> !
17:01:35 <Badger> !
17:01:41 <ehird> ((how is du that small))
17:01:57 <AnMaster> ehird, err
17:01:57 <ehird> oh
17:01:59 <ehird> that's kilobytes
17:02:00 <AnMaster> freebsd win
17:02:01 <ehird> yikes
17:02:03 <AnMaster> $ du /usr/bin/du
17:02:04 <AnMaster> 8 /usr/bin/du
17:02:04 <Badger> $ du -h /usr/bin/du
17:02:04 <Badger> 12.0K /usr/bin/du
17:02:05 <AnMaster> :P
17:02:15 <AnMaster> $ du -h /usr/bin/du
17:02:16 <AnMaster> 8.0K /usr/bin/du
17:02:21 <Badger> heh
17:02:26 <AnMaster> the GNU one us 82 KB
17:02:27 <AnMaster> btw
17:02:33 <Badger> damn gnu
17:02:36 <AnMaster> wtf is in it
17:02:42 <Badger> :/
17:02:58 <Badger> openbsd's is bigger than free :P
17:03:11 <Badger> more secure!
17:03:17 <Badger> 3kb of security
17:03:34 <oerjan> it probably contains a buggy implementation of half of emacs
17:03:37 <AnMaster> Badger, I mean it GNU du more than half the size of cfunge, and cfunge supports lots of fingerprints
17:03:51 <Badger> heh
17:03:56 <ehird> gnu ca is hilarious
17:03:58 <ehird> *cat
17:04:07 <AnMaster> 56 KB?
17:04:20 <AnMaster> freebsd one is 10 KB
17:04:22 <Badger> $ du /bin/cat
17:04:22 <Badger> 208 /bin/cat
17:05:02 <oerjan> sheesh did IWC get reddited or something
17:05:29 <Badger> AnMaster: why is my cat so fat :P
17:05:30 <oerjan> DMM supposedly just made the site _more_ efficient...
17:05:44 <AnMaster> oerjan, oh?
17:05:58 <AnMaster> oerjan, oh yes to use javascript or something
17:06:19 <oerjan> rather than reloading the whole page on options change
17:06:30 <oerjan> but i assume he did more than that
17:06:49 <AnMaster> oerjan, that means sending much more data for those who don't want the extra stuff
17:06:55 <ehird> % du -h /bin/cat
17:06:56 <ehird> 36K /bin/cat
17:06:58 <ehird> fucking what
17:07:07 <Badger> lols
17:07:07 <AnMaster> ehird, that is still less than GNU cat
17:07:08 <oerjan> hm
17:07:24 <Badger> $ du -h /bin/cat
17:07:24 <Badger> 104K /bin/cat
17:07:26 <Badger> :>
17:07:47 <oerjan> but still the optional parts are just text
17:08:08 <oerjan> shouldn't be that different
17:08:29 <Badger> oh, idea
17:08:30 <Badger> 5.4M /bin
17:08:36 <Badger> AnMaster? :P
17:08:40 <Badger> ehird?
17:08:50 <AnMaster> fbsd ~ $ du -h /bin
17:08:51 <AnMaster> 1.2M /bin
17:08:57 <Badger> :D
17:09:09 <AnMaster> Badger, note that is using /usr/bin/du
17:09:16 <AnMaster> du isn't in /bin on freebsd
17:09:24 <Badger> nor on openbsd
17:09:33 <AnMaster> so this isn't a fair comparison for my linux system
17:09:37 <AnMaster> that even has bash in /bin
17:09:39 <AnMaster> $ du -sh /bin
17:09:40 <AnMaster> 9,7M /bin
17:09:44 <AnMaster> also
17:09:47 <ais523> $ du -h /bin
17:09:48 <ais523> 6.7M/bin
17:09:49 <ehird> 6.6M /bin
17:09:54 <AnMaster> that linux system is 64bit
17:09:58 <ehird> 140M /usr/bin
17:10:02 <AnMaster> while the freebsd system is 32bit
17:10:15 <Badger> ha
17:10:15 <Badger> 23.5M /usr/bin
17:10:22 <AnMaster> ehird, hey OS X installs all their stuff outside /usr/bin
17:10:25 * ehird tries /opt/local
17:10:31 <AnMaster> $ du -sh /usr/bin
17:10:31 <AnMaster> 29M /usr/bin
17:10:32 <ehird> AnMaster: i'm talking about unix tools here.
17:10:33 <AnMaster> on freebsd
17:10:48 <AnMaster> ehird, well on my system X and what not are in /usr/bin
17:10:54 <AnMaster> my linux system that is
17:11:03 * ehird is trying /opt/local
17:11:04 <ehird> (macports)
17:11:05 <AnMaster> ehird, so that is impossible to compare
17:11:11 <ehird> probably like 5000000000G
17:11:12 <Badger> o_O
17:11:19 <Badger> /obsd: ELF 64-bit LSB executable, x86-64, version 1, statically linked, not stripped
17:11:23 <AnMaster> 457M /usr/bin <-- gentoo, and that comains KDE
17:11:25 * Badger wonders what the devil that is
17:11:31 <AnMaster> Badger, kernel?
17:11:34 <Badger> o
17:11:34 <AnMaster> boot loader?
17:11:46 <ehird> o[pen]bsd
17:11:52 <AnMaster> ehird, well yes
17:11:55 <AnMaster> but what for open bsd
17:11:56 <Badger> I meant, oh
17:11:58 <ehird> kernel
17:12:00 <ehird> like vmlinux :P
17:12:01 <AnMaster> hm
17:12:05 <Badger> kernel wouldn't be that type
17:12:07 <Badger> would it?
17:12:09 <AnMaster> that is /boot/kernel/kernel or so here
17:12:11 <AnMaster> on freebsd
17:12:19 <ehird> Badger: % file /obsd
17:12:33 <AnMaster> $ du -sh /boot/kernel/kernel
17:12:33 <AnMaster> 5.6M /boot/kernel/kernel
17:12:39 <AnMaster> ehird, he ran that above
17:12:41 <ais523> 128M/boot
17:12:56 <AnMaster> ais523, unfair for me, I have several kernels in /boot
17:12:58 <AnMaster> some outdated
17:12:59 <AnMaster> and such
17:13:11 <AnMaster> it ends up at 99 MB due to that
17:13:12 <ehird> -rw-r--r-- 1 root wheel 8.2M 2007-10-11 02:24 mach_kernel
17:13:14 <ais523> I have loads of kernels in /boot
17:13:16 <AnMaster> on my fbsd
17:13:20 <Badger> heh
17:13:21 <ais523> I have to delete the old backups to be able to upgrade my OS
17:13:22 <ehird> 6.4G /opt/local
17:13:23 <Badger> obsd has /boot
17:13:24 <ehird> it completed!
17:13:24 <AnMaster> hey
17:13:30 <AnMaster> 9,6M /boot <-- my gentoo linux
17:13:31 <Badger> $ file /boot
17:13:31 <Badger> /boot: ELF 32-bit LSB executable, Intel 80386, version 1, statically linked, stripped
17:13:31 <ehird> 6.4GB :D
17:13:32 <AnMaster> :D
17:13:34 <AnMaster> :PPPPPPPPP
17:13:49 <AnMaster> Badger, well on obsd it is the boot loader
17:13:53 <AnMaster> elsewhere it is a directory
17:13:57 <Badger> mmm
17:14:00 <Badger> guess so
17:14:04 <Badger> so obsd must be the kernel
17:14:07 <Badger> hah
17:14:32 <AnMaster> Badger, check docs?
17:14:42 <Badger> oh weird
17:14:42 <AnMaster> *bsd have good man pages usually
17:15:01 <AnMaster> Badger, what is weird?
17:15:14 <Badger> I sshed to another box
17:15:15 <Badger> linux
17:15:19 <AnMaster> yes and?
17:15:20 <Badger> and um
17:15:25 <Badger> /boot is empty
17:15:28 <Badger> but I can cd to it
17:15:31 <AnMaster> Badger, maybe not mounted
17:15:37 <AnMaster> I don't auto-mount my /boot
17:15:40 <Badger> ah
17:15:50 <AnMaster> standard practise on linux
17:16:34 <ehird> gcc still compiles
17:16:41 <AnMaster> ehird, it takes ages yes
17:16:47 <AnMaster> you know it will likely boot strap itself
17:16:50 <AnMaster> 3 stages
17:17:06 <AnMaster> ehird, check if the output contains xgcc
17:17:07 <ais523> heh, presumably it's faster in a cross-compile for that reason
17:17:10 <ehird> it took like half an hour last time
17:17:17 <ehird> /Users/ehird/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc/xgcc -B/Users/ehird/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc/ -B/usr/local/i386-apple-darwin8.11.1/bin/ -B/usr/local/i386-apple-darwin8.11.1/lib/ -isystem /usr/local/i386-apple-darwin8.11.1/include -isystem /usr/local/i386-apple-darwin8.11.1/sys-include -c -DHAVE_CONFIG_H -O2 -g -g -O2 -m64 -I. -I../../.././libiberty/../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedanti
17:17:20 <ehird> c ../../.././libiberty/regex.c -o regex.o
17:17:22 <ehird> up to that
17:17:37 <AnMaster> ehird, looks like it is compiling the third stage using the second one
17:17:52 <AnMaster> ehird, also that looks fucked
17:17:56 <ehird> fucked, why?
17:18:07 <ehird> I'm not going to make install this btw
17:18:09 <ehird> just make
17:18:10 <AnMaster> are you building a -m64 with "host-i386-apple-darwin8.11.1"
17:18:11 <AnMaster> ?
17:18:12 <ehird> and use it from there
17:18:14 <ehird> AnMaster: er
17:18:16 <ehird> not -m64
17:18:20 <AnMaster> yes
17:18:22 <AnMaster> look below
17:18:23 <ais523> AnMaster: compiling third using second is correct
17:18:25 <ehird> A 32-bit compiler can compile a 64-bit binary, I'm sure
17:18:29 <ais523> if they aren't identical binaries, something went wrong
17:18:31 <AnMaster> well true
17:18:35 <ehird> Woo
17:18:35 <AnMaster> ehird, also it needs to be installed
17:18:37 <ehird> gcc compiled
17:18:39 <ehird> AnMaster: does it?
17:18:39 <AnMaster> I assume you used --prefix
17:18:44 <ehird> no.
17:18:45 <AnMaster> ehird, afaik yes
17:18:47 <AnMaster> maybe wrong
17:18:48 <ehird> I was just planning on using it as it is here.
17:18:54 <ais523> it works as-is
17:18:58 <AnMaster> ais523, really?
17:18:59 <AnMaster> huh
17:18:59 <ais523> at least if you invoke xgcc directly
17:19:06 <ehird> ok, so where's my final gcc built to?
17:19:07 <ais523> as that one's designed to be run from the build treee
17:19:08 <AnMaster> ais523, well using the final stage I meant
17:19:18 <ehird> xgcc would be fine
17:19:23 <ehird> as long as it does core2
17:19:37 <ais523> AnMaster: the final and intermediate stage are bit-for-bit identical
17:19:45 <AnMaster> ehird, even in support files?
17:19:47 <AnMaster> err
17:19:48 <AnMaster> ais523, ^
17:20:08 <oerjan> oklofok: http://www.mezzacotta.net/singles/jokes_explained_explained_explained_explained.php
17:20:20 <ais523> not so sure about that, but the advantages of comparison are so high that you'd expect them to try hard to make it work
17:20:28 <ehird> % ./host-i386-apple-darwin8.11.1/gcc/xgcc --version
17:20:28 <ehird> xgcc (GCC) 4.3.2
17:20:48 <ehird> okay
17:20:53 <ehird> AnMaster: paste your cfunge cflags again?
17:21:41 <AnMaster> ehird, I recommend CFLAGS="-march=core2 -pipe -O3 -ftracer -frename-register -fweb" for you
17:21:42 <AnMaster> also
17:21:52 <AnMaster> ehird, you need to set CC *before* you call cmake
17:21:53 <ehird> AnMaster: what about the unsafe loop optimizations!
17:21:54 <AnMaster> or it breaks
17:22:12 * ehird uses ccmake
17:22:18 <ehird> for the config gui :P
17:22:18 <AnMaster> ehird, same for ccmake
17:22:23 <AnMaster> you must set it in the env
17:22:24 <AnMaster> before
17:22:27 <AnMaster> or it won't work
17:22:37 <ais523> ehird: you check the program first to make sure the loop optimisations are in fact safe in the context of the program
17:22:44 <AnMaster> ais523, indeed
17:22:47 <ehird> xgcc: error trying to exec 'cc1': execvp: No such file or directory
17:22:50 <ehird> need to adjust PATH :P
17:22:53 <AnMaster> ehird, sure
17:23:11 -!- ais523 has quit.
17:23:27 -!- metazilla has joined.
17:23:33 <ehird> AnMaster: does cmake need installing?
17:23:35 -!- moozilla has quit (Nick collision from services.).
17:23:39 -!- metazilla has changed nick to moozilla.
17:23:40 <AnMaster> ehird, no clue
17:23:50 <AnMaster> I only installed it through my package manager
17:23:54 <AnMaster> never tried any other way
17:23:59 <ehird> err
17:24:01 <ehird> i mean cfunge
17:24:06 <AnMaster> ah cfunge, no need
17:24:40 <AnMaster> ehird, oh do you have ncurses? I have no clue if the ncurses detection I use works on os x
17:24:42 <ehird> CMake Error: The C compiler
17:24:42 <ehird> "/Users/ehird/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc/xgcc" is not able to
17:24:44 <ehird> compile a simple test program.
17:24:46 <ehird> balrgh
17:24:56 <ehird> ld: can't locate file for: -lgcc
17:24:56 <ehird> x.x
17:24:59 <AnMaster> ehird, you managed to get it to use the right c compiler at least
17:25:00 <ehird> need LD_LIBRARY_PATH
17:25:01 <AnMaster> good!
17:25:01 <ehird> or whatever
17:25:06 <AnMaster> ehird, yes probably
17:25:42 <AnMaster> ehird, also I assume you enabled multilib when compiling? otherwise you won't have any 64-bit libgcc
17:25:44 <AnMaster> :P
17:25:56 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
17:26:00 <AnMaster> hey no one said gcc compiling was fun!
17:26:01 -!- moozilla has joined.
17:26:02 <ehird> Er, what's multilib?
17:26:17 <ehird> Is it enabled by default?
17:26:17 <AnMaster> ehird, both 32-bit and 64-bit libs, you have it for your system gcc and your libc
17:26:28 <AnMaster> ehird, I don't know if it is on by default
17:26:29 <ehird> libgcc_s_x86_64.1.dylib
17:26:31 <ehird> Am I safe?
17:26:35 <AnMaster> ehird, maybe
17:26:39 <ehird> (in ~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc)
17:26:40 <AnMaster> I don't know for dylib
17:26:46 <ehird> dylib is just .so for os x
17:26:50 <AnMaster> ehird, you may not have any 32-bit one then
17:26:56 <ehird> That's ok.
17:27:06 <ehird> I'm not using this for anyhing else
17:27:13 <ehird> "/Users/ehird/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc/xgcc" is not able to
17:27:13 <ehird> compile a simple test program.
17:27:15 <ehird> Butts
17:27:18 <ehird> ld: can't locate file for: -lgcc
17:27:19 <ehird> fsdfsdf
17:27:22 <ehird> guess I need to symlink
17:27:38 <ehird> aha
17:27:39 <ehird> libbackend.a libgcc.a libgcc_eh.a libgcov.a
17:27:51 <oerjan> they just had to dyliberately call it something different
17:27:57 <ehird> groan
17:28:02 <ehird> Woo
17:28:04 <ehird> It configuring
17:28:16 <Badger> why osx?
17:28:24 <ehird> AnMaster: will this compile all fingerprints by default?
17:28:28 <ehird> Badger: it sucks less than everything else
17:28:34 <ehird> WARNING: This project requires version 2.6 of CMake. You are running version
17:28:34 <ehird> 2.4.6.
17:28:34 <Badger> heh
17:28:37 <ehird> I hate you, AnMaster.
17:28:40 <AnMaster> ehird, it will disable TERM and NCRS if it can't find ncurses library and/or headers
17:28:57 <AnMaster> but apart from that it will compile all
17:29:07 <AnMaster> also this depends on version
17:29:12 <AnMaster> NCRS isn't in last release
17:29:12 <ehird> bzr top
17:29:17 <AnMaster> ah well
17:29:21 <AnMaster> then you have NCRS
17:29:32 <ehird> This is the biggest waste of time ever :)
17:29:36 <AnMaster> ehird, tell me if mycoterm works on your computer, it would be nice to know
17:29:42 <AnMaster> also what do you mean waste of time?
17:29:45 <AnMaster> just install last cmake
17:29:51 <AnMaster> can't be hard to upgrade
17:29:55 <ehird> I compiled freaking gcc just to squeeze a few ms out of a befunge interpreter.
17:30:02 <AnMaster> on my system it is just a single command as root
17:30:05 <AnMaster> to upgrade a package
17:30:16 <AnMaster> making my package manager upgrade
17:30:22 <ehird> yes, yes
17:30:23 <AnMaster> isn't it as easy on OS X?
17:30:25 <ehird> % sudo port upgrade cmake
17:30:28 <ehird> stop trolling :P
17:30:33 <AnMaster> ehird, ok sorry
17:30:52 <ehird> macports is written in tcl xD
17:30:53 <AnMaster> now I seriously hope windows never gets an unified package manager
17:31:05 <AnMaster> that would kind of make windows suck less
17:31:07 <AnMaster> which would be bad
17:31:28 <AnMaster> ehird, also don't you upgrade weekly btw?
17:31:30 <AnMaster> all ports
17:31:38 <ehird> no
17:31:41 <AnMaster> huh
17:31:45 <ehird> i'm lazy and the existing versions work for anything but cfunge
17:32:01 <AnMaster> ehird, no I upgraded myself to 2.6 because OSG needed it
17:32:19 <AnMaster> then the 2.4 cmakefile didn't work well with 2.6, it had lots of warnings then
17:32:22 <AnMaster> so I upgraded
17:32:30 -!- sebbu2 has quit ("@+").
17:32:33 <AnMaster> and yes cmake sucks, but the alternatives suck more
17:32:34 <AnMaster> :(
17:32:45 <AnMaster> for example consider that PATH thing you needed for CC
17:32:49 <ehird> scons sucks a bit less
17:32:51 <AnMaster> with scons that would have been a pain
17:32:57 <AnMaster> since it would have ignored your env variables
17:33:11 <ehird> I tried to use rake (ruby make) for something, it works well for some things but not building progarms
17:33:12 <ehird> programs
17:33:16 <AnMaster> well
17:33:22 <AnMaster> specialized ones work well usually
17:33:26 <AnMaster> like the emake for erlang
17:33:33 <ehird> rake isn't for making ruby.
17:33:36 <AnMaster> oh?
17:33:39 <ehird> rake is a generic build tool written in ruby
17:33:41 <AnMaster> aha
17:33:51 <ehird> unfortunately, it doesn't let you do things like %.o from %.c
17:33:59 <oerjan> progarms, for when your software needs to get a grip on things
17:34:05 <AnMaster> oh just list every file by hand
17:34:07 <ehird> i.e., you have to manually make the file targets (of course, you can just glob them which is easy enough)
17:34:09 <ehird> AnMaster: no
17:34:09 <AnMaster> ehird, or use plain make?
17:34:13 <ehird> you'd have to duplicate it for every item
17:34:13 <ehird> but
17:34:21 <ehird> Dir['src/*.c'].each do |src|
17:34:29 <ehird> file blah => [src] do
17:34:29 <ehird> ...
17:34:30 <AnMaster> err
17:34:31 <ehird> end
17:34:32 <ehird> end
17:34:33 <AnMaster> I can't read that?
17:34:37 <ehird> AnMaster: basically
17:34:37 <AnMaster> as in what does it do
17:34:41 <ehird> glob src/*.c
17:34:43 <ehird> then make a file target for each
17:34:44 <AnMaster> right
17:34:47 <ehird> without writing it all out
17:34:50 <ehird> but still, it's pretty ugly
17:35:06 <AnMaster> FILE(GLOB CFUNGE_SOURCES RELATIVE ${CFUNGE_SOURCE_DIR} src/*.c
17:35:06 <AnMaster> )
17:35:09 <AnMaster> well it is longer
17:35:13 <AnMaster> since I list more
17:35:21 <AnMaster> like subdirs and included libraries
17:35:26 <ehird> yeah, it's just that rake doesnt' have a general understanding of pattern rulse
17:35:28 <AnMaster> but that is pretty horrible syntax yes
17:35:32 <ehird> I could build something on top of it
17:35:42 <AnMaster> ehird, I think there is a REGEX or some such
17:35:46 <AnMaster> apart from GLOB
17:35:47 <AnMaster> in cmake
17:36:04 <AnMaster> also UPPERCASE shows it is a SERIOUS QUERY LANGUAGE... err wait what?
17:36:05 <ehird> I could probably do something like:
17:36:08 <AnMaster> I meant BUILD SYSTEM
17:36:09 <AnMaster> of course
17:36:30 <AnMaster> wait
17:36:32 <AnMaster> that would rock
17:36:35 <AnMaster> SQLbuild
17:36:47 <ehird> pattern %{build/\1.o} => [%r{src/(.+).c}] do
17:36:48 <ehird> ...
17:36:49 <ehird> end
17:37:04 <AnMaster> SELECT * FROM src LIKE '~.c' INTO SOURCEFILES;
17:37:05 <AnMaster> :D
17:37:09 <ehird> ugh
17:37:13 <AnMaster> ehird, yes horrible
17:37:21 <AnMaster> also broken sql syntax I think
17:37:30 * AnMaster don't remember LIKE pattern rules
17:37:42 <ehird> cmake builds slowly
17:37:47 <AnMaster> ehird, it is C++
17:37:51 <AnMaster> what did you expect?
17:37:52 <ehird> lol
17:37:52 <oerjan> SYNTAX QUITE LOUD
17:38:02 -!- metazilla has joined.
17:38:07 <AnMaster> OERJAN, YES INDEED
17:38:10 -!- moozilla has quit (Nick collision from services.).
17:38:14 -!- metazilla has changed nick to moozilla.
17:38:22 <AnMaster> moozilla, please fix your connection
17:38:29 <ehird> http://www.mezzacotta.net/singles/jokes_explained_explained_explained_explained.php I think I'll write X := X Explained
17:39:40 <ehird> AnMaster: stop bugging him
17:39:42 <ehird> it only bothers you
17:40:16 -!- metazilla has joined.
17:40:25 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:40:27 -!- metazilla has changed nick to moozilla.
17:40:30 -!- moozilla has quit (Nick collision from services.).
17:40:48 <oerjan> O_o
17:40:53 -!- moozilla has joined.
17:41:14 <ehird> looks like a ghostbot
17:42:09 <AnMaster> "# If black boxes on planes are indestructible, why isn't the whole plane made of that material?" <-- actually, why?
17:42:22 <oerjan> AnMaster: consider reading to the end
17:42:32 <AnMaster> ah right
17:42:57 <AnMaster> right that makes sense
17:43:21 <oerjan> maybe if they use carbon nanotubes...
17:43:45 <AnMaster> oerjan, well maybe it would work to make certain important structural components out of them
17:43:52 <AnMaster> anyway even if they did it wouldn't help much
17:44:08 <oerjan> i mean, those are supposed to be both strong and light iirc
17:44:10 <AnMaster> because even if the plane survived the crash would cause a high G load
17:44:13 <AnMaster> on anyone inside
17:44:29 <AnMaster> s/ would/, it would/
17:45:17 -!- sebbu has joined.
17:45:24 <oerjan> yes but not worse than currently
17:45:30 <AnMaster> wow
17:45:43 <AnMaster> mezacotta breaks when you zoom the page
17:45:49 <AnMaster> the comic get scrollbars
17:54:52 -!- metazilla has joined.
17:55:00 -!- moozilla has quit (Nick collision from services.).
17:55:04 -!- metazilla has changed nick to moozilla.
17:57:26 -!- metazilla has joined.
17:57:26 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:57:33 -!- metazilla has changed nick to moozilla.
17:58:06 <oerjan> i never metazilla that would stay
17:58:27 <AnMaster> hah
17:59:48 <AnMaster> ehird, progress?
18:00:18 <AnMaster> I can (try) to help with specific issues if you want, hopefully none of them are due to the way you compiled gcc
18:01:57 <ehird> cmake compiled
18:03:01 <ehird> now to try again
18:03:06 <ehird> % PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$PATH CC=xgcc DYLD_LIBRARY_PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$DYLD_LIBRARY_PATH LD_LIBRARY_PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$LD_LIBRARY_PATH ccmake ..
18:03:22 <ehird> yay it configures
18:03:27 <ehird> AnMaster: where do i set cflags in ccmake
18:03:31 <ehird> ah t
18:03:36 <ehird> CMAKE_C_FLAGS
18:03:39 <ehird> CMAKE_C_FLAGS_RELEASE
18:03:42 <ehird> AnMaster: paste your cflags again?
18:03:46 <ehird> and is release on by default?
18:04:16 <AnMaster> hm
18:04:25 <AnMaster> ehird, not release by default no
18:04:34 <ehird> ok, how do i make it release
18:04:47 <AnMaster> there is a CMAKE_BUILD_TYPE setting somewhere there
18:04:51 <AnMaster> can you find it?
18:04:55 <ehird> yep
18:04:57 <ehird> make it RELEASE?
18:05:00 <AnMaster> Release
18:05:09 <AnMaster> case doesn't matter though
18:05:14 <ehird> paste your cflags?
18:05:23 <AnMaster> I suggested for your system:
18:05:47 <AnMaster> <AnMaster> ehird, I recommend CFLAGS="-march=core2 -pipe -O3 -ftracer -frename-register -fweb" for you
18:06:02 <ehird> CMAKE_OSX_ARCHITECTURES i386
18:06:05 <ehird> do I have to change anything there
18:06:14 <AnMaster> ehird, don't know, it doesn't show up on linux
18:06:27 <AnMaster> ehird, doesn't it display help in the lower status bar
18:06:32 <AnMaster> just above the key help info
18:06:37 <AnMaster> a white bar on your black console
18:06:42 <ehird> CMAKE_OSX_ARCHITECTURES: Build architectures for OSX
18:06:50 <ehird> ahh
18:06:53 <AnMaster> ehird, well that doesn't help me decide what it does
18:06:54 <ehird> it's i386 vs ppc
18:07:00 <AnMaster> maybe related to universal binary?
18:07:03 <ehird> what's the name of i386 that is 64 bit?
18:07:15 <ehird> also /me adds -m64 to the cflags
18:07:18 <AnMaster> ehird, on *linux* it is x86_64 usually, but that may differ
18:07:26 <AnMaster> I don't know for OS X
18:07:26 <ehird> ill ask #cmake
18:07:44 <AnMaster> ehird, with your custom gcc I wouldn't touch CMAKE_OSX_ARCHITECTURES
18:07:52 <AnMaster> try it the way it is and see if it works
18:07:56 <ehird> USE_GC OFF
18:07:59 <ehird> should taht be on
18:08:01 <AnMaster> ehird, keep it off
18:08:03 <AnMaster> faster
18:08:04 <AnMaster> :P
18:08:05 <ehird> ok
18:08:06 <ehird> but
18:08:09 <ehird> AnMaster: leaks memory?
18:08:14 <AnMaster> ehird, valgrind clean
18:08:21 <ehird> k
18:08:33 <AnMaster> apart from a few bytes of still reachable in REFC, but that is ok
18:08:53 <AnMaster> same for SOCK and FILE, all of them need to track global lists of handles
18:09:21 <AnMaster> so basically they are like "static" arrays allocated dynamically
18:10:33 <AnMaster> ehird, oh and I haven't tried gc + ncurses yet so I would definitely keep GC off atm
18:11:25 <ehird> x86_64 seems ok
18:11:28 * ehird puts it in
18:11:38 <ehird> ok lets try this
18:11:43 <ehird> Press [enter] to edit option CMake Version 2.6 - patch 2
18:11:43 <ehird> Press [c] to configure
18:11:45 <ehird> Press [h] for help Press [q] to quit without generating
18:11:46 <AnMaster> c
18:11:47 <ehird> Press [t] to toggle advanced mode (Currently On)
18:11:49 <ehird> what now :|
18:11:51 <AnMaster> c
18:11:53 <AnMaster> then g
18:11:56 <ehird> puts me back to the same screen
18:11:59 <AnMaster> yes
18:12:01 <AnMaster> but with g option
18:12:04 <AnMaster> I bet?
18:12:05 <ehird> CURSES_EXTRA_LIBRARY CURSES_EXTRA_LIBRARY-NOTFOUND
18:12:05 <ehird> ?
18:12:08 <AnMaster> ok
18:12:11 <ehird> what does that mean
18:12:13 <AnMaster> I don't know about that either
18:12:17 <ehird> LIBRT_LOCATION LIBRT_LOCATION-NOTFOUND
18:12:18 <AnMaster> it is the ncurses check from cmake
18:12:23 <AnMaster> ok on os x
18:12:30 <AnMaster> the needed function is in libc on *bsd
18:12:34 <AnMaster> so I assume the same on os x
18:12:36 <ehird> ok did g
18:12:37 <ehird> it exited
18:12:38 <ehird> now just make?
18:12:39 <AnMaster> make
18:12:40 <AnMaster> then
18:12:41 <AnMaster> yep
18:12:47 <ehird> xgcc: error trying to exec 'cc1': execvp: No such file or directory
18:12:49 <AnMaster> err "yep" was NOT a command
18:12:49 <ehird> need the PATH again
18:12:49 <ehird> :P
18:12:53 <AnMaster> ehird, probably yes
18:12:58 <ehird> % PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$PATH CC=xgcc DYLD_LIBRARY_PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$DYLD_LIBRARY_PATH LD_LIBRARY_PATH=~/gcc-4.3.2/host-i386-apple-darwin8.11.1/gcc:$LD_LIBRARY_PATH make
18:13:01 <ehird> i feel just like a gentoo use.
18:13:02 <ehird> user
18:13:05 <AnMaster> looks horrible
18:13:14 <ehird> [ 1%] Building C object CMakeFiles/cfunge.dir/lib/libghthash/cfunge_mempool.c.o
18:13:14 <ehird> cc1: error: unrecognized command line option "-arch"
18:13:15 <ehird> cc1: error: unrecognized command line option "-frename-register"
18:13:17 <AnMaster> wtf
18:13:18 <ehird> butts
18:13:25 <ehird> butts on a freaking stick
18:13:25 <AnMaster> ehird, I got no clue what is going on there
18:13:29 <AnMaster> err
18:13:32 <AnMaster> yes I do
18:13:35 <AnMaster> it is -march not -arch
18:13:43 <ehird> ha ha ha well that's your fault the
18:13:43 <ehird> n
18:13:51 <ehird> er
18:13:52 <AnMaster> ehird, and -frename-registers
18:13:53 <ehird> I have no march
18:13:56 <AnMaster> <AnMaster> <AnMaster> ehird, I recommend CFLAGS="-march=core2 -pipe -O3 -ftracer -frename-register -fweb" for you
18:14:00 <AnMaster> 1) march
18:14:01 <ehird> I copied that right in
18:14:06 <ehird> i guess -arch is being passed to cc1
18:14:08 <AnMaster> 2) yes rename-register was wrong
18:14:08 <ehird> by xgcc
18:14:19 <AnMaster> ehird, don't know
18:14:21 <ehird> it doesnt recognize -arch because it was only compiled for 64 bit?
18:14:22 <ehird> maybe?
18:14:26 <ehird> gimme your 64 bit test program again
18:14:27 <ehird> plz
18:14:31 <AnMaster> a sec
18:14:51 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
18:15:00 <AnMaster> out of scrollback
18:15:02 -!- moozilla has joined.
18:15:04 * AnMaster checks log
18:15:39 <AnMaster> jan 07 15:58:08 <AnMaster> #include <stdio.h>
18:15:39 <AnMaster> jan 07 15:58:36 <AnMaster> int main(void) { printf("%zu\n", sizeof(char*)); return 0; }
18:15:56 <AnMaster> ehird, anyway check if it can compile hello world with those flags
18:16:00 <Deewiant> the return 0 is redundant
18:16:02 <ehird> % ./a.out
18:16:02 <ehird> 4
18:16:03 <Deewiant> (btw)
18:16:07 <AnMaster> Deewiant, no?
18:16:08 <ehird> I hate my life.
18:16:10 <Deewiant> AnMaster: yes.
18:16:15 <AnMaster> Deewiant, why?
18:16:18 <Deewiant> AnMaster: C99.
18:16:25 <AnMaster> Deewiant, really?
18:16:28 <Deewiant> AnMaster: yes.
18:16:40 <AnMaster> Deewiant, paragraph?
18:16:42 <oerjan> YOU LIED TO ME
18:16:43 <ehird> so, AnMaster
18:16:46 <Deewiant> AnMaster: beats me. :-P
18:16:48 <ehird> do i have to recompile gcc
18:16:49 <ehird> if you say yes
18:16:51 <ehird> I will kill you
18:16:57 <AnMaster> ehird, did you include -m64 to gcc there?
18:17:14 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
18:17:15 <ehird> well now I did and:
18:17:17 <ehird> ld64-59.2 failed: library not found for -lgcc
18:17:20 -!- moozilla has joined.
18:17:21 <AnMaster> ah
18:17:21 <ehird> I need multilib don't i
18:17:22 <ehird> ahahahahah
18:17:25 <AnMaster> no multilib
18:17:27 <AnMaster> indeed
18:17:38 <ehird> ahahahahah
18:17:39 <Deewiant> what's going on?
18:17:46 <ehird> Deewiant: i compiled a new gcc
18:17:49 <ehird> just to compile cfunge fast
18:17:52 <ehird> and I compiled it wrong
18:17:54 <ehird> and it took hours
18:17:57 <Deewiant> how wrong
18:18:03 <AnMaster> Deewiant, I think ehird got a mental shock
18:18:03 <ehird> no multilib
18:18:07 <AnMaster> decipher, no 64-bit libgcc
18:18:09 <AnMaster> err
18:18:10 <AnMaster> Deewiant, ^
18:18:14 <ehird> anyway, so I am about to hop on a plane to sweden
18:18:16 <ehird> track down AnMaster
18:18:17 <ehird> and kill him
18:18:20 <AnMaster> ehird, why?
18:18:20 <ehird> ->
18:18:25 <AnMaster> you should have read the docs
18:18:28 <AnMaster> ;P
18:18:31 <ehird> AnMaster: if cfunge didn't exist this wouldn't have happened
18:18:31 <ehird> now ->
18:18:32 <Deewiant> so he's got a 32-bit system and he's trying to build a 64-bit gcc, or what?
18:18:39 <ehird> Deewiant: 64 bit system
18:18:42 <ehird> but gcc only built 32 bit shit
18:18:43 <ehird> ->
18:18:47 <AnMaster> Deewiant, he has 64-bit OS X with 32-bit userland
18:18:56 <Deewiant> right
18:18:56 <AnMaster> system gcc is multilib
18:19:00 <Deewiant> ew
18:19:02 <AnMaster> but he wanted last
18:19:04 <Deewiant> just set up a chroot
18:19:08 <AnMaster> Deewiant, on OS X?
18:19:16 <ehird> os x is certified unix
18:19:17 <AnMaster> I got no fcking clue what that does
18:19:18 <ehird> of course it freaking does chroots
18:19:19 <Deewiant> I don't know anything about OS X
18:19:21 <AnMaster> yes
18:19:28 <Deewiant> But I'd assume it can chroot
18:19:31 <AnMaster> but where would you get a system to run in the chroot?
18:19:35 <ehird> umm
18:19:37 <AnMaster> you can't just download a linux distro
18:19:38 <ehird> /
18:19:42 <ehird> copy shit in
18:19:42 <ehird> :P
18:19:50 <Deewiant> install a full 64-bit userland into the chroot
18:19:51 <ehird> AnMaster: can I get multilib __without__ recompiling all of gcc
18:19:53 <ehird> _say_ _yes_
18:19:53 <AnMaster> ehird, wouldn't it be rather pointless to copy same old gcc in it?
18:19:59 <AnMaster> ehird, I don't know
18:20:04 <ehird> The answer is yes
18:20:07 <ehird> now tell me how :P
18:20:12 <AnMaster> ehird, I said I don't know
18:20:14 <ehird> dammit
18:20:17 * ehird make clean
18:20:22 * ehird make suicide
18:20:23 <AnMaster> well
18:20:29 <AnMaster> I don't know know OS X well
18:20:29 <AnMaster> but
18:20:31 <ehird> GOOD BYE GCC
18:20:46 <ehird> AnMaster: what is the multilib option
18:20:52 <ehird> also, how can I make gcc build with m64
18:20:53 <AnMaster> mkdir gcc-build; cd gcc-build; ../gcc-source/configure --prefix=$HOME/gcc43 --help
18:21:09 <ehird> --with-multilib i guess
18:21:18 <ehird> and CFLAGS="-m64" on cmd line of configure
18:21:20 <AnMaster> that sounds correct
18:21:29 <AnMaster> ehird, and I don't know about that
18:21:33 <ehird> % CFLAGS="-m64" ./configure --enable-languages=c --with-gmp=/opt/local --with-mpfr=/opt/local --with-multilib --prefix=$HOME/gcc43
18:21:34 <ehird> will that work
18:21:34 <AnMaster> ehird, err
18:21:36 <AnMaster> wait
18:21:37 <ehird> if you say yes and it doesn't
18:21:38 <AnMaster> what about host?
18:21:38 <ehird> be prepared to die
18:21:42 <ehird> ah.
18:21:44 <ehird> good point.
18:21:49 <AnMaster> ehird, I'm not sure about this
18:21:55 <AnMaster> since I never done any build like that
18:21:58 <ehird> how do I find out what host/target it defaults to?
18:22:05 <AnMaster> I only ever used package manger and done llvm-gcc builds
18:22:20 <AnMaster> ehird,
18:22:20 <AnMaster> arvid@tux /mnt/phoenix/llvm/llvm-gcc $ ./config.guess
18:22:20 <AnMaster> x86_64-unknown-linux-gnu
18:22:36 <AnMaster> find the config.guess file
18:22:37 <ehird> i386-apple-darwin8.11.1
18:22:39 <AnMaster> see what it thinks
18:22:44 <ehird> ok, so I s/i386/x86_64/.
18:22:51 <AnMaster> ehird, unknown if that works
18:22:53 <AnMaster> it may not
18:23:00 <ehird> --build=BUILD configure for building on BUILD [guessed]
18:23:00 <ehird> --host=HOST cross-compile to build programs to run on HOST [BUILD]
18:23:02 <ehird> --target=TARGET configure for building compilers for TARGET [HOST]
18:23:05 <ehird> so I just set all of them to the same thing then
18:23:20 <AnMaster> ehird, um maybe or maybe not
18:23:28 <AnMaster> it could result in a cross compiled build
18:23:31 <AnMaster> or a cross compiler
18:23:37 <ehird> well host is for cross compiling
18:23:40 <AnMaster> ehird, ais knows this better
18:23:45 <ehird> i'll just do build
18:23:52 <ehird> % CFLAGS="-m64" ./configure --enable-languages=c --with-gmp=/opt/local --with-mpfr=/opt/local --with-multilib --prefix=$HOME/gcc43 --build=x86_64-apple-darwin8.11.1
18:23:52 <ehird> GO
18:23:58 <AnMaster> ehird, that would probably mean it look for the host gcc
18:24:01 <AnMaster> with that name
18:24:02 <AnMaster> not sure
18:24:04 <ehird> checking for correct version of gmp.h... yes
18:24:04 <ehird> checking for correct version of mpfr.h... no
18:24:05 <ehird> aha
18:24:07 <ehird> ahahahaha
18:24:09 <ehird> ha
18:24:11 <AnMaster> huh
18:24:17 <ehird> a
18:24:18 <AnMaster> that's odd
18:24:18 <ehird> ahahaha
18:24:19 <ehird> ha
18:24:21 <AnMaster> wrong path?
18:24:40 <AnMaster> ehird, also you should build gcc out of tree
18:24:46 <AnMaster> the gcc devs say so
18:24:53 <AnMaster> and not in a subdir
18:25:03 <ehird> ha. ha. ha
18:25:19 <AnMaster> ehird, well gcc devs say everything else is unsupported iirc
18:25:22 <ehird> i want to die :D
18:25:23 <AnMaster> just a friendly warning
18:25:26 <ehird> mpfr @2.3.2_0+darwin_i386 (active)
18:25:28 <ehird> ok i have that
18:25:34 <AnMaster> well
18:25:43 <ehird> this worked last time
18:25:45 <AnMaster> ehird, I would try skipping host
18:25:51 <AnMaster> err --build
18:25:53 <AnMaster> and those
18:25:59 <ehird> ahh
18:26:00 <ehird> Variants: darwin_i386, darwin_x86
18:26:01 <AnMaster> multilib should mean both work
18:26:01 <ehird> I need x86
18:26:01 <AnMaster> and
18:26:03 <ehird> instead of i386
18:26:05 <ehird> in macports
18:26:10 <AnMaster> not setting cflags
18:26:14 <ehird> % sudo port uninstall mpfr; sudo port install mpfr +darwin_x86
18:26:24 <AnMaster> ehird, multilib variant?
18:26:31 <ehird> thikn so
18:26:47 <AnMaster> ehird or your end up with breaking stuff due to missing 32-bit version :D
18:27:00 <AnMaster> that would be funny wouldn't it?
18:27:04 <ehird> lol
18:27:07 <ehird> yes
18:27:13 <ehird> this is so not worth cfunge
18:27:17 <ehird> i bet i'm gaining like
18:27:19 <ehird> 1ms speed
18:27:20 <ehird> for being 64 bit
18:27:27 <AnMaster> ehird, anyway I suggest dropping CFLAGS and --build from GCC line
18:27:34 <ehird> nah, ill try it like this
18:27:34 <AnMaster> but keeping multilib of course
18:27:35 <ehird> btw
18:27:40 <ehird> 64 bit is faster with cfunge
18:27:41 <ehird> right
18:27:45 <AnMaster> ehird, a bit in fact
18:27:54 <AnMaster> due to more registers and better calling convention
18:27:55 <ehird> oh jesus
18:27:56 <AnMaster> mainly
18:27:56 <ehird> AnMaster:
18:28:02 <AnMaster> ehird, yes?
18:28:02 <ehird> please resume complaining to metazilla
18:28:04 <ehird> /moozilla
18:28:09 <ehird> i just switched to #reddit
18:28:14 <AnMaster> ehird, what?
18:28:15 <oerjan> ehird: i guess that you will have used 100x more time on this than you'll ever save on the cfunge runs, combined :D
18:28:19 <ehird> he's arguing with someone that a supernatural god can be objectively proved
18:28:25 <AnMaster> oerjan, agreed
18:28:32 <AnMaster> oerjan, for linux this would be easy always
18:28:35 <ehird> x_x
18:28:37 <AnMaster> on gentoo you just do
18:29:50 <AnMaster> crossdev -t arm-unknown-linux-gnu -s3
18:29:57 <AnMaster> and it builds a cross compiler to arm for you
18:30:01 <oerjan> naturally, god cannot be proved. supernaturally, however, he can.
18:30:07 <AnMaster> -s3 means "up to C compiler but skip C++ one"
18:30:16 <oerjan> </h2g2>
18:30:32 * ehird reruns configure
18:30:38 <ehird> checking for correct version of mpfr.h... no
18:30:38 <ehird> gahwhat
18:30:42 <AnMaster> huh
18:30:43 <ehird> mpfr @2.3.2_0+darwin_i386+darwin_x86
18:30:43 <AnMaster> strange
18:30:44 <ehird> facepalm
18:30:49 <AnMaster> ehird, how strange
18:30:55 <ehird> [ehird:~] % sudo port uninstall mpfr; sudo port install mpfr -darwin_i386 +darwin_x86
18:30:57 <AnMaster> ehird, what is that version string from?
18:30:58 <ehird> let's try that again
18:31:05 <ehird> AnMaster: macports
18:31:13 <Deewiant> ehird: see the configure.log to see what it's missing
18:31:23 <ehird> its because i have both variants installed
18:31:24 <ehird> :P
18:31:44 <AnMaster> Deewiant, good idea
18:32:05 <AnMaster> ehird, "port: 32-bit mfpr missing: unable to run"
18:32:07 * AnMaster ducks
18:32:19 <AnMaster> err
18:32:21 <AnMaster> mpfr
18:32:32 <AnMaster> well I hope that doesn't happen to you
18:32:42 <AnMaster> oh and never ever mount proc on / by mistake
18:32:43 <AnMaster> did that once
18:32:50 -!- olsner has joined.
18:32:59 <Deewiant> what's wrong with that
18:33:01 <AnMaster> managed to get out of it thanks to having a rescue binary in the same directory
18:33:03 <AnMaster> as I was in
18:33:03 <ehird> AnMaster: do you really think macports -- a tcl program -- uses mpfr, a multiple-precision floating-point computation library?
18:33:07 <Deewiant> well, much is wrong, but what problems does it cause :-P
18:33:10 <AnMaster> ehird, no I was joking
18:33:12 <ehird> :P
18:33:19 <AnMaster> Deewiant, /bin/ld.so not found
18:33:20 <AnMaster> for exampl
18:33:30 <AnMaster> no no dynamically linked binaries can run
18:33:33 <AnMaster> so no*
18:33:45 <Deewiant> oh right, so you lost your /
18:33:46 <AnMaster> Deewiant, in other words: pretty bad
18:33:50 <AnMaster> yes
18:33:51 <Deewiant> I thought just proc superimposed on top of /
18:34:00 <AnMaster> except I still had relative path
18:34:02 <AnMaster> where I was
18:34:09 <ehird> ---> Activating mpfr @2.3.2_0+darwin_i386+darwin_x86
18:34:11 <AnMaster> and could find a rescue shell that way
18:34:12 <ehird> That did not work
18:34:17 <AnMaster> ehird, no idea
18:34:29 <ehird> configure.log time
18:34:34 <AnMaster> ehird, also what did config.log say?
18:34:40 <ehird> 18:34 <ehird> configure.log time
18:34:41 <AnMaster> err isn't the name config.log?
18:34:46 <ehird> no
18:34:48 <AnMaster> hm
18:34:50 <AnMaster> it is here
18:34:56 <AnMaster> arvid@tux /mnt/phoenix/llvm/llvm-gcc $ ls ../gcc-build
18:34:56 <AnMaster> Makefile config.log i686-pc-linux-gnu libiberty prev-libcpp stage1-gcc stage1-libdecnumber stage_last
18:35:00 <AnMaster> [...]
18:35:09 <ehird> er
18:35:09 <ehird> yes
18:35:10 <ehird> its config.lo
18:35:12 <ehird> g
18:35:14 <ehird> XD
18:35:23 <AnMaster> .lo? isn't that somehow related to libraries?
18:35:28 <ehird> ld64 warning: in /opt/local/lib/libmpfr.dylib, file is not of required architecture
18:35:28 <ehird> ld64 warning: in /opt/local/lib/libgmp.dylib, file is not of required architecture
18:35:33 <ehird> Kill me
18:35:34 <ehird> Kill me
18:35:35 <ehird> Kill me
18:35:36 <AnMaster> ah no .la
18:35:37 <ehird> Kill me
18:35:39 <ehird> Kill me
18:35:41 <ehird> Kill me
18:35:43 <ehird> Kill me
18:35:45 <ehird> Kill me
18:35:46 * Mony kills ehird
18:35:47 <ehird> Kill me
18:35:51 <AnMaster> I don't know
18:35:52 <AnMaster> :(
18:35:54 <Mony> heh
18:35:54 <ehird> thx Mony
18:35:55 <AnMaster> ehird, well one idea
18:36:02 <Mony> you're welcome
18:36:03 <ehird> I could manually compile gmp and mpfr.
18:36:06 <AnMaster> ehird, what about dropping the --build and CFLAGS I mentioned
18:36:08 <ehird> I could also kill myeslf.
18:36:11 <ehird> AnMaster: well, ok.
18:36:13 <AnMaster> it would still be multilib
18:36:17 <AnMaster> and hopefully work
18:36:26 <AnMaster> ehird, I hope this works out for you
18:36:33 <ehird> So do I, man :P
18:36:34 <AnMaster> ehird, and don't forget the c only build thing
18:36:37 <ehird> yes
18:36:50 <AnMaster> g++ take AGES to build
18:37:01 <AnMaster> at least only C and C++ are built by default iirc
18:37:06 <ehird> so does gcc
18:37:07 <ehird> :P
18:37:17 <AnMaster> ehird, not really, not compared to g++
18:37:24 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:37:29 <AnMaster> oh
18:37:31 -!- moozilla has joined.
18:37:35 <ehird> ya moozilla left
18:37:35 <AnMaster> hm
18:37:35 <ehird> fuck
18:37:38 <ehird> *yay
18:37:44 <AnMaster> he came back
18:37:53 <ehird> i know
18:37:55 <ehird> thus the fuck :D
18:39:31 <AnMaster> gah too long channel list
18:39:37 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:39:43 <AnMaster> I'm just scrolling between it's end
18:39:45 <AnMaster> ends*
18:39:47 <AnMaster> all the times
18:39:50 <AnMaster> time*
18:39:51 <AnMaster> gah
18:39:56 -!- moozilla has joined.
18:40:06 <ehird> /bin/sh: line 1: build/genmodes: No such file or directory
18:40:06 <ehird> make[3]: *** [s-modes-h] Error 127
18:40:07 <ehird> make[3]: Leaving directory `/Users/ehird/gcc-build/gcc'
18:40:09 <ehird> make[2]: *** [all-stage1-gcc] Error 2
18:40:11 <ehird> make[2]: Leaving directory `/Users/ehird/gcc-build'
18:40:13 <ehird> make[1]: *** [stage1-bubble] Error 2
18:40:15 <ehird> make[1]: Leaving directory `/Users/ehird/gcc-build'
18:40:17 <ehird> make: *** [all] Error 2
18:40:19 <ehird> gdfgjdfkgjdkflgjkldfgjdfljgdfklgjdfgkldfjgkldfjg WHAT
18:40:21 <ehird> build/genmodes -h > tmp-modes.h
18:40:23 <ehird> was the failing thing
18:40:31 <ehird> ah
18:40:34 <ehird> maybe because
18:40:37 <ehird> im in ~/gcc-build
18:40:42 <ehird> and its in ~/gcc-blahblahblah/
18:40:44 <ehird> or something?
18:41:46 <AnMaster> eh
18:41:48 <ehird> 18:41 <metazilla> OMNILOL
18:41:48 <AnMaster> wtf
18:41:49 <ehird> 18:41 <metazilla> HAHAHAHA
18:41:49 <ehird> 18:41 <metazilla> o rite
18:41:57 <AnMaster> ehird, where is that from?
18:42:01 <ehird> #reddit
18:42:02 <ehird> hm
18:42:06 <ehird> metazilla != moozilla
18:42:11 <ehird> but moozilla signs on as metazilla, sometimes
18:42:13 <ehird> this is confusing
18:42:15 <ehird> name clash XD
18:42:19 <AnMaster> ehird, yes indeed
18:42:20 <ehird> [different ISPs]
18:42:25 <ehird> that must be why he keeps getting ghosted
18:42:35 <ehird> ok
18:42:36 <ehird> now
18:42:39 <ehird> why did my build fail crazily
18:42:40 <ehird> :D
18:42:53 <AnMaster> where is the pristine copy of the GCC source?
18:43:00 <AnMaster> and where is the clean build directory?
18:43:05 <AnMaster> and what is the configure command line
18:43:16 <AnMaster> answer those questions
18:43:17 <ehird> [ehird:~/gcc-build] % ../gcc-4.3.2/configure --enable-languages=c --with-gmp=/opt/local --with-mpfr=/opt/local --with-multilib --prefix=$HOME/gcc43
18:43:19 <ehird> All questions solved in one
18:43:23 <AnMaster> ok
18:43:26 <oerjan> ehird: except it's the moozilla nick that is ghosted
18:43:33 <ehird> oerjan: confusing
18:43:33 <AnMaster> ehird, is ../gcc-4.3.2 really make distclean
18:43:33 <AnMaster> ?
18:43:37 <AnMaster> or is it just make clean
18:43:40 <oerjan> and most of the quit/joins are not ghostings
18:43:40 <ehird> oh
18:43:42 <ehird> make clean
18:43:45 * ehird makes distclean it
18:43:47 <AnMaster> ehird, try make distclean
18:43:53 <AnMaster> or just re-extract the tarball
18:44:05 <AnMaster> also remove all files in the build dir after
18:44:11 <AnMaster> including any hidden files
18:44:13 <AnMaster> and rerun configure
18:44:19 <ehird> yep
18:44:20 <ehird> doing so
18:44:50 <AnMaster> ehird, hm you have dual core right?
18:45:02 <AnMaster> maybe I should use openmp
18:45:09 <AnMaster> sadly I don't have any dual core to test that on
18:45:19 <ehird> dual core, yes
18:45:21 <AnMaster> gcc 4.3 supports openmp
18:45:32 <AnMaster> with the right build time options I assume
18:45:33 <AnMaster> for gcc
18:45:34 <ehird> you can test on this box, but you'd have to deal with OS X oddities :-P
18:45:41 <AnMaster> ehird, such as?
18:45:51 <AnMaster> not having access to the box I'm testing on!?
18:45:53 <ehird> well, i don't notice them but I imagine someone who uses linux every day would
18:45:54 <AnMaster> anyway
18:46:00 <ehird> AnMaster: that would be one thing :P
18:46:01 <AnMaster> ehird, well right
18:46:08 <AnMaster> I use linux and freebsd
18:46:10 <AnMaster> every day
18:46:20 <AnMaster> freebsd isn't too far off
18:46:26 <ehird> true
18:46:43 <AnMaster> but not having access and having to rely on you would be a serious issue
18:46:57 <AnMaster> when I get a dual core system I may reconsider it
18:47:06 <AnMaster> meanwhile I wish cfunge could make use of openmpi
18:47:07 <ehird> Yeah I'm so unreliable :P
18:47:16 <AnMaster> since I have a gigabit switch
18:47:21 <ehird> still, if you do put in some openmp stuff I'm happy to give you ssh acess
18:47:36 <AnMaster> ehird, well I need to build myself a gcc which supports it first
18:47:43 <oerjan> hm random speculation from the IWC forum: "At the end of this, the strips will be rearrangeable to form a valid PIET program."
18:47:51 <AnMaster> also I seem to have outdated mpfr and gmp on this computer :D
18:47:57 <AnMaster> no way I'm going ~arch
18:47:59 <ehird> AnMaster: well, why not build it on my system? i mean, if you have to test on it...
18:48:15 <AnMaster> well I'd rather not depend on your goodwill
18:48:39 <ehird> depend on anyone in #esoteric with a dualcore system :-P
18:48:41 <AnMaster> ehird, also I'm not sure openmp would help much, due to the way funge is specced there isn't much you can paralize
18:48:46 <AnMaster> one thing is file loading
18:48:51 <ehird> admittedly, profiling over ssh would be a pain
18:48:59 <AnMaster> 2 threads would probably help for mycology
18:49:03 <AnMaster> when loading the file
18:49:15 <AnMaster> but apart from that I don't think there are many places to gain in
18:49:51 <AnMaster> ehird, yes especially since stuff like cachegrind or callgrind wouldn't work
18:49:55 <AnMaster> both are very good for profiling
18:50:02 <AnMaster> both are valgrind tools
18:50:13 <ehird> hee, yes
18:50:20 <ehird> this system can run linux you know
18:50:23 <AnMaster> on OS X aren't you basically stuck with using gcc -pg?
18:50:27 <ehird> but I don't think I'd boot into linux at your will :P
18:50:36 <AnMaster> ehird, I didn't expect that
18:50:36 <ehird> AnMaster: XCode probably has a profiler.
18:50:43 <AnMaster> ehird, well xcode over ssh?
18:50:43 <ehird> wait, can't you emulate a dual core system?
18:50:44 <ehird> with qemu
18:50:45 <AnMaster> does that work?
18:50:48 <ehird> also, no :P
18:51:03 <AnMaster> ehird, well I could probably emulate that. but profiling would show a slowdown then I bet
18:51:10 <ehird> sure, profile without openmp
18:51:11 <ehird> then with it
18:51:13 <ehird> in the emulated system
18:51:31 <AnMaster> well you wouldn't gain much since it would still have the same total computational resources
18:51:36 <AnMaster> I think
18:51:44 <ehird> true
18:51:54 <ehird> isn't openmp really ugly?
18:52:09 <AnMaster> ehird, it is one of the less ugly ways to add threading IMO
18:52:10 <AnMaster> I mean
18:52:16 <AnMaster> compare with phtreads call over all the app
18:52:17 <AnMaster> to
18:52:28 <AnMaster> #pragma omp parallel for
18:52:36 <AnMaster> for (whatever ....)
18:52:57 <AnMaster> to me openmp seems like the least bad alternative in fact
18:53:40 <AnMaster> ehird, oh and cfunge is of course already coded so to make use of SSE where possible by allowing gcc vectorizer to convert loops to use SSE
18:53:41 <AnMaster> however
18:53:49 <AnMaster> gcc's vectorizer still suck
18:54:10 <AnMaster> it has problems detecting if the overhead of setting up sse is larger than the benefit
18:54:20 <AnMaster> basically you loose on it for few iterations and gain for many
18:54:28 <AnMaster> I heard that would be fixed in gcc 4.4....
18:54:30 <ehird> AnMaster if I wrote a cfunge patch for trds would you accept it
18:54:30 <ehird> :P
18:54:40 <AnMaster> ehird, I would at least review it
18:54:49 <AnMaster> ehird, also it must be possible to turn it off
18:54:49 <ehird> it would avoid touching the rest of the code by doing run-time code modifiation on the rest of cfunge
18:54:50 <ehird> >:D
18:54:54 <AnMaster> since it would break ick otherwise
18:55:13 <AnMaster> IFFI can't work with threads
18:55:27 <AnMaster> which is one of several reasons concurrent funge is a compile time option
18:56:12 <AnMaster> ehird, bbiab, going afk for a few minutes
18:56:29 <AnMaster> oh and a multilib build will probably take longer than a non-multilib one
19:01:17 -!- kar8nga has joined.
19:01:42 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:01:50 -!- moozilla has joined.
19:04:26 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
19:04:27 -!- metazilla has joined.
19:05:27 <ehird> oh, metazilla IS the one from reddit.
19:07:08 <oerjan> um how can that be?
19:08:16 <oerjan> huh they've switched isps from last i checked
19:08:36 <oerjan> i guess they are the same after all, on two isps, but the same set of two nicks, conflicting...
19:13:10 <ehird> 18:42 <metazilla> i just found this http://alienate.on.nimp.org/profile
19:13:12 <ehird> [DON'T CLICK]
19:13:23 <ehird> yeah can we kick him for being an idiot in other channels?
19:14:16 <AnMaster> metazilla, are you there?
19:16:14 <ehird> he's talking in #reddit
19:16:15 <ehird> and ignoring us
19:16:58 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
19:17:06 -!- metazilla has joined.
19:17:30 <AnMaster> ehird, sure it is same person?
19:17:37 <ehird> 99%
19:17:43 <AnMaster> err
19:17:50 <ehird> their join/parts coincide
19:17:52 <AnMaster> one is moozilla the other is metazilla
19:17:56 <ehird> their join/parts coincide
19:17:58 <AnMaster> they alternative?
19:18:01 <AnMaster> alternate*
19:18:05 <ehird> and they both enter #reddit
19:18:25 <AnMaster> mhm
19:19:06 <AnMaster> ehird, I have met this person on another network before, if he talks I can probably see if the style is familiar
19:19:18 <ehird> he's talked in here before
19:19:23 <ehird> in much the same way as in #reddit
19:19:27 <ehird> he's obviously the same person :P
19:19:28 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
19:19:42 -!- metazilla has joined.
19:20:04 <AnMaster> ehird, with different isps
19:20:14 <ehird> sigh
19:20:15 <ehird> both
19:20:16 <ehird> switch
19:20:18 <ehird> not just one
19:20:19 <AnMaster> true
19:20:34 <AnMaster> ehird, why not ask him directly?
19:20:51 <ehird> i'd have to attempt to communicate with him. plus, he is obviously the same person
19:22:22 <AnMaster> ehird, I'm on another network where he is, I'm oper there so I can know there is only one of him and he keeps reconnecting
19:22:31 <AnMaster> and he uses the .dyn.centurytel.net one
19:22:33 <AnMaster> only
19:22:38 <ehird> nobody gives a shit AnMaster
19:22:41 <ehird> he's the same person, end of
19:22:52 <ehird> 19:19 metazilla has joined (n=moozilla@207-118-28-35.dyn.centurytel.net)
19:22:53 <ehird> see that n=?
19:22:59 <AnMaster> yes and?
19:23:01 <ehird> sigh
19:23:09 <ehird> metazilla: are you moozilla of #reddit.
19:23:28 <AnMaster> ehird, 1) it makes no sense to ignore one 2) it makes no sense to use totally different isps
19:23:50 <ehird> 1) ignore one? What? 2) proxies. different machines. maybe one's a shell. who knows
19:24:04 <AnMaster> ehird, 1) ignore one client, the one in here
19:24:14 <ehird> no, he ignores this channel
19:24:15 <AnMaster> does he speak on both over in reddit?
19:24:18 <ehird> because he's talking in reddit
19:24:20 <ehird> AnMaster: yes
19:24:25 <AnMaster> hm ok
19:24:36 <AnMaster> ehird, as in *both isps?
19:24:39 <AnMaster> both*
19:24:40 <oerjan> obviously the two isps have different channel settings
19:24:45 <ehird> yes god damnit AnMaster
19:24:47 <AnMaster> right
19:24:49 <ehird> stop acting confused
19:24:51 <ehird> he's the same person
19:24:54 <ehird> i've told you this 5 times
19:24:59 <AnMaster> who?
19:25:00 <AnMaster> what?
19:25:04 <oerjan> only one is here, maybe it's only the other one he is present at
19:25:05 <AnMaster> confused? what is that?
19:25:08 <AnMaster> eh?
19:25:21 <AnMaster> oerjan, ???
19:25:44 <oerjan> AnMaster: maybe one is his home machine and he is not there, and that happens to be the one in this channel
19:26:16 <oerjan> i.e. he really doesn't see messages here
19:26:37 <ehird> that would make sense
19:26:39 <oerjan> or to the centurytel.net
19:27:05 <AnMaster> oerjan, but ehird just said he talked from both clients and isps on redit
19:27:12 <ehird> i dont recall
19:27:13 <ehird> jesus christ
19:27:15 <ehird> i don't even care
19:27:22 <ehird> this is the most tedious pointless conversation ever
19:27:24 <AnMaster> ok both are same
19:27:24 <AnMaster> sure
19:27:25 <ehird> it's the same person
19:27:27 <ehird> get over yourself :P
19:27:29 <AnMaster> right whatever
19:27:31 <AnMaster> anyway
19:27:36 <ehird> gcc still compilin
19:27:36 <ehird> g
19:27:40 <AnMaster> right
19:27:43 <AnMaster> was just about to ask that
19:29:42 <oerjan> yeah let's talk about _real_ frustrations instead :D
19:30:08 <ehird> software sucks
19:30:37 <AnMaster> ehird, how do you feel about FPGAs?
19:30:43 <AnMaster> do they suck too?
19:30:55 <ehird> everything sucks
19:30:55 <ehird> 19:30 <moozilla> grab your dick you fucking helmut
19:30:57 <ehird> stunning intellect
19:31:06 <ehird> found a flaw with oerjan's propositio
19:31:06 <ehird> n
19:31:11 <ehird> there is no way this guy is employed
19:32:37 <ehird> British Gov't wants private firms to build $12b super database for tracking every citizen's Internet usage, phone call, text message, and other transactions --reddit
19:32:43 <ehird> woop woop
19:32:52 <ehird> uk<--->police state
19:32:53 <ehird> uk<-->police state
19:32:57 <ehird> uk<->police state
19:33:08 <oerjan> i didn't say the other was work, could be school
19:33:42 <AnMaster> ehird, if you remove that last - it isn't so bad any more
19:33:48 <ehird> heh
19:33:51 <ehird> mathematical rope
19:33:55 <AnMaster> at least not if <> is defined as in (iirc) perl
19:34:17 <AnMaster> ehird, "mathematical rope"?
19:34:24 <ehird> it turns into operators :P
19:34:28 <AnMaster> aha
19:34:29 <AnMaster> heh
19:34:34 <ehird> the funny thing is, the uk is only not a total police state because our govt is too incompetent to implement its crazy schemes
19:34:36 <AnMaster> also you went "heh" at something I said
19:34:39 <AnMaster> this means
19:34:41 <AnMaster> I HAVE HUMOR!
19:34:41 <ehird> oh god
19:34:42 <AnMaster> :P
19:34:42 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
19:34:43 <ehird> world
19:34:45 <ehird> ending
19:34:46 -!- metazilla has joined.
19:34:50 <AnMaster> *CRASH*
19:34:57 <ehird> *four white panels*
19:34:59 <AnMaster> *GNNNNRGH*
19:35:01 <ehird> *four fading in blue panels*
19:35:04 <AnMaster> *BANG*
19:35:04 <ehird> ... wait a second
19:35:07 <ehird> where have I seen this before?
19:35:14 <AnMaster> ehird, the explosion haven't ended yet
19:35:17 <ehird> oh
19:35:19 <AnMaster> you were too early
19:35:19 * ehird waits
19:35:23 <oerjan> something irregular is going on
19:35:30 <ehird> what the UK needs is a bearocracy.
19:35:33 <ehird> we just let bears run it
19:35:34 <AnMaster> *CRASH* *BANG* *KABOOOM*
19:35:42 <ehird> "mr bear, do you like this policy?"
19:35:42 <AnMaster> there
19:35:45 <AnMaster> now you can do it
19:35:48 <ehird> "*MAUL* *RIP *CRUNCH*"
19:35:52 <ehird> "OK, ok, we'll reject it"
19:35:55 <ehird> AnMaster: k
19:35:58 <ehird> *four white panels*
19:36:02 <ehird> *four fading in blue panels*
19:36:05 <ehird> where have I seen this before?
19:36:07 <ehird> done
19:36:12 <AnMaster> you forgot "<ehird> ... wait a second"
19:36:17 <AnMaster> too late now
19:36:20 <ehird> bah.
19:36:25 <oerjan> time has been lost
19:36:43 <AnMaster> oerjan, try Undelete for DOS ;P
19:36:51 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
19:37:01 <oerjan> everything is now pahpnenigt a hetmase mite
19:37:05 <ehird> i used undelete onceuahsiuhiahi
19:37:09 <ehird> oerjan: akhjkashdjkfhkjdg ndfkjgn
19:37:15 <ehird> dsfj ids oa ofhi m, a ufua hiauh! askndaskd??
19:37:17 <ehird> jkahsdkjahdkJASHDklAJHSDJK!!! KAJHASD!!
19:37:24 <ehird> sdfjsdfoijsdofijoijoi˝•¶¥¶̂̄†̂›†‹̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀̀NO CARRIER
19:37:37 <oerjan> INSERT PIGEON
19:37:40 <ehird> (*&8•ª°·‡̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄̄°·Y&*(YH9•ˍ(*̈ ̏•ª‡°‰Þ̂‡° ̏‡̂Þ¶ˆþ¶ˆþ¶ˆþˆ¶þ¯˙˝˜˚¯˛˝̛Ø̛̱̋̄̈ ̱̑ÐNO UNIVERSE
19:37:54 <AnMaster> <oerjan> everything is now pahpnenigt a hetmase mite <--?
19:38:20 <AnMaster> INSERT PIGEON INTO HOLE WHERE HOLE IS NULL?
19:38:22 <AnMaster> :
19:38:23 <AnMaster> :D*
19:38:38 <AnMaster> hm
19:38:48 <oerjan> PLEASE SELECT FINE STRUCTURE CONSTANT FOR REBOOT >
19:38:52 <AnMaster> Talk LIKE SQL day?
19:39:30 <ehird> oerjan: hmmm
19:39:37 <ehird> i'll go for...
19:39:42 <AnMaster> +++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++
19:39:58 <ehird> oerjan: well a nice round number, how about 1
19:40:00 <ehird> yeah, 1
19:40:02 <ehird> 1<ENTER>
19:40:10 <AnMaster> ehird, bad one
19:40:12 <AnMaster> iirc
19:40:18 <ehird> naturally
19:40:18 <oerjan> UNIVERSE REBOOTING...
19:40:29 <AnMaster> oerjan, what about other constants?
19:40:32 <ehird> ((how long will this take...))
19:40:44 <AnMaster> ehird, not as long as compiling GCC
19:40:47 <oerjan> FORMING PUDDING
19:40:49 <ehird> oerjan can I set pi?
19:40:58 <ehird> if so I set pi to 3 (I am a religious man)
19:41:06 <AnMaster> ehird, just hit the break key to enter the debugger
19:41:09 <ehird> ah
19:41:10 <AnMaster> and enter values
19:41:13 <oerjan> SORRY, PI IS IN THE BIOS ROM
19:41:19 <AnMaster> damn
19:41:20 <ehird> oerjan: oh okay.
19:41:23 <ehird> how goes the reboot
19:41:25 <AnMaster> can you redirect the mapping?
19:41:27 <AnMaster> I mean
19:41:35 <AnMaster> just remap in the MMU
19:41:40 <AnMaster> so it use another PI
19:41:47 <ehird> 19:40 moozilla is now known as and_voidg2
19:41:47 <ehird> 19:40 <moozilla> now we can be null and void
19:41:48 <ehird> 19:41 <moozilla> for over 9000 lulz
19:41:48 <AnMaster> first copy the original constant page of course
19:41:51 <oerjan> STARS COLLAPSING DUE TO LOW FSC
19:42:01 <ehird> agh
19:42:02 <ehird> ^C
19:42:04 <ehird> let's try that again
19:42:11 <ehird> # UNVRS
19:42:12 <oerjan> LIFE FORMING ON NEUTRON STARS
19:42:17 <AnMaster> wait
19:42:20 <AnMaster> this is interesting
19:42:22 <ehird> hmm
19:42:22 <ehird> okay
19:42:25 <ehird> forget that ^C
19:42:30 <AnMaster> indeed
19:42:32 <ehird> i love sentient computer
19:42:32 <ehird> s
19:42:39 <AnMaster> ehird, it catches ^C anyway
19:42:44 <oerjan> INTELLIGENCE EVOLVED
19:42:44 <ehird> how goes that life oerjan
19:42:46 <ehird> ooh
19:42:52 <AnMaster> ehird, you would have needed to use the reset key
19:42:52 <ehird> can we communicate with it?
19:42:54 <oerjan> MANAGEMENT INVENTED
19:42:59 <ehird> fuck
19:43:00 <AnMaster> ARGH!
19:43:01 <ehird> lost hope
19:43:04 <ehird> ^C
19:43:09 <AnMaster> ehird, doesn't work
19:43:12 <ehird> oh right
19:43:13 <AnMaster> use the reset button
19:43:14 <oerjan> UNIVERSE ABORTED
19:43:17 <ehird> good
19:43:18 <AnMaster> with a straighted out gem
19:43:20 <ehird> # UNVRS
19:43:22 <AnMaster> hm
19:43:26 <ehird> let's try this again
19:43:40 <ehird> hmm
19:43:41 <ehird> # UNVRS
19:43:43 <AnMaster> ehird, what about fine structure constant? NaN?
19:43:44 <ehird> <ENTER>
19:43:47 <ehird> AnMaster: how about -1
19:43:58 <AnMaster> ehird, wouldn't that be equally bad in the other direction?
19:44:02 <AnMaster> but ok
19:44:04 <AnMaster> try it
19:44:07 <ehird> maybe it'll be equally good
19:44:11 <ehird> oerjan: FINESTRUCTURE= -1<ENTER>
19:44:18 <ehird> START<ENTER>
19:44:21 <AnMaster> ehird, what about NaN if this doesn't work?
19:44:26 <ehird> possibly
19:44:27 <ehird> or 1/0
19:44:35 <AnMaster> ehird, 1.0/0.0
19:44:41 <ehird> oerjan: ping
19:44:43 <AnMaster> or it would be integer division by zero
19:44:47 <AnMaster> which would be BAD
19:45:01 <ehird> i think I broke the oerjanputer
19:45:07 * ehird hits reset
19:45:08 <AnMaster> ehird, reset it too?
19:45:14 <ehird> OERJANPUTER VERSION 8645645615
19:45:16 <ehird> BY OERJANCORP
19:45:21 <AnMaster> <AnMaster> ehird, reset it too?
19:45:22 <AnMaster> >oerjan< CTCP VERSION
19:45:22 <AnMaster> -oerjan- VERSION irssi v0.8.10 - running on Linux i686
19:45:22 <AnMaster> <ehird> OERJANPUTER VERSION 8645645615
19:45:23 <AnMaster> wtf
19:45:24 <ehird> "SERVING YOUR UNIVERSAL NEEDS SINCE INFINITY BC"
19:45:26 <AnMaster> you scare me :P
19:45:28 <oerjan> HM
19:45:31 <ehird> #
19:45:39 <ehird> # UNVRS<ENTER>
19:45:47 * ehird waits for the universal simulation program to start up.
19:45:56 <ehird> FINESTRUCTURE= -1<ENTER>
19:45:58 <ehird> START<ENTER>
19:46:24 <ehird> [gcc compiled yay]
19:46:27 * ehird kicks oerjan
19:46:51 <oerjan> THIS UNIVERSE IS CONSIDERABLY SLOWER, PLEASE HAVE PATIENCE
19:47:07 <AnMaster> WHY IS IT SLOWER?
19:47:14 <AnMaster> wait I just got an esolang idea
19:47:19 <AnMaster> a language with "it"
19:47:23 <oerjan> ANTIMATTER GENERATED
19:47:30 <AnMaster> where it made sense to refer to last object
19:47:32 <AnMaster> or whatever
19:48:08 <oerjan> ANTIMOLECULES FORM
19:48:08 <ehird> AnMaster: [ehird:~/cfunge/build] % PATH=~/gcc43/bin:$PATH DYLD_LIBRARY_PATH=~/gcc43/lib:$DYLD_LIBRARY_PATH LD_LIBRARY_PATH=~/gcc43/lib:$LD_LIBRARY_PATH ccmake ..
19:48:14 <ehird> oerjan: awesome
19:48:16 <AnMaster> ehird, I hope it works
19:48:22 <ehird> um
19:48:23 <ehird> it replies
19:48:25 <ehird> "EMPTY CACHE"
19:48:32 <AnMaster> ehird, well ok
19:48:33 <AnMaster> hit c
19:48:35 <ehird> ah
19:48:36 * ehird does configure
19:48:46 <AnMaster> ehird, then check the values and change them as needed
19:48:49 <AnMaster> and hit c again
19:48:51 <AnMaster> and finally g
19:49:05 <ehird> AnMaster: ok, what cflags again?
19:49:12 <AnMaster> ...
19:49:15 <ehird> <.<
19:49:32 <AnMaster> <AnMaster> <AnMaster> <AnMaster> ehird, I recommend CFLAGS="-march=core2 -pipe -O3 -ftracer -frename-register -fweb" for you
19:49:41 <oerjan> VACUUM BUBBLES FORM IN ANTIMATTER SOUP
19:49:44 <AnMaster> and while we are at it
19:49:45 <ehird> oerjan: awesome
19:49:46 <AnMaster> <AnMaster> jan 07 15:58:08 <AnMaster> #include <stdio.h>
19:49:46 <AnMaster> <AnMaster> jan 07 15:58:36 <AnMaster> int main(void) { printf("%zu\n", sizeof(char*)); return 0; }
19:49:46 <AnMaster> <AnMaster> ehird, anyway check if it can compile hello world with those flags
19:50:10 <AnMaster> oerjan, what about life?
19:50:16 <ehird> [ehird:~] % ~/gcc43/bin/gcc -m64 -march=core2 64bit.c
19:50:16 <ehird> [ehird:~] % ./a.out
19:50:17 <ehird> 8
19:50:18 <AnMaster> anti-life?
19:50:19 <ehird> great success
19:50:26 <AnMaster> ehird, yay
19:50:29 <ehird> ENABLE_TRACE *ON
19:50:32 <ehird> should be off presumably
19:50:39 <AnMaster> ehird, well yes it means -t doesn't work
19:50:42 <oerjan> ANTIPOLYMERS FORM IN BUBBLE BOUNDARIES
19:50:43 <ehird> -t?
19:50:50 <ehird> oerjan: i like this.
19:50:52 <AnMaster> ehird, output trace of the running program
19:50:58 <ehird> AnMaster: slows down presumably
19:51:09 <AnMaster> ehird, not noticable in my tests
19:51:19 <AnMaster> but sure you reduce one if test every now and then
19:51:24 <AnMaster> you could maybe gain a bit
19:51:42 <ehird> ill leave it on
19:51:45 <oerjan> STAR-SIZED BUBBLE ANTI-CELLS FORM
19:52:02 <AnMaster> oerjan, wow
19:52:07 <ehird> HARDENED *OFF
19:52:07 <ehird> ?
19:52:09 <ehird> oerjan: awesome
19:52:43 <AnMaster> ehird, have it off
19:52:44 <oerjan> ANTI-CELLS REPRODUCE
19:52:48 <AnMaster> it adds -fstack-protector
19:53:05 <ehird> oerjan: hot
19:53:08 <AnMaster> which would be 1) tricky to build for you 2) possibly slow down a bit
19:53:19 <ehird> ok that worked
19:53:22 <ehird> agh
19:53:23 <ehird> i forgot the m64
19:53:29 <AnMaster> ehird, just add to cflags
19:53:33 <AnMaster> you can run ccmake .
19:53:35 <AnMaster> to add it
19:53:45 <AnMaster> set PATH of course
19:53:47 <AnMaster> if needed
19:53:51 <AnMaster> it probably isn't
19:53:58 <ehird> % PATH=~/gcc43/bin:$PATH DYLD_LIBRARY_PATH=~/gcc43/lib:$DYLD_LIBRARY_PATH LD_LIBRARY_PATH=~/gcc43/lib:$LD_LIBRARY_PATH make
19:53:59 <ehird> GO
19:54:07 <ehird> [ 1%] Building C object CMakeFiles/cfunge.dir/lib/libghthash/cfunge_mempool.c.o
19:54:07 <ehird> cc1: error: unrecognized command line option "-arch"
19:54:08 <ehird> cc1: error: unrecognized command line option "-frename-register"
19:54:10 <ehird> make[2]: *** [CMakeFiles/cfunge.dir/lib/libghthash/cfunge_mempool.c.o] Error 1
19:54:12 <ehird> You're...
19:54:15 <ehird> you're fucking kidding me
19:54:23 <oerjan> COMPETITION CAUSE ANTI-CELLS TO EVOLVE RUDIMENTARY NERVE GRAPH
19:54:40 <ehird> AnMaster: how can I make cmake output what command line it uses
19:55:15 <ehird> oerjan: I like this
19:55:20 <AnMaster> hm
19:55:31 <AnMaster> ehird, hit t to show advance entries
19:55:34 <AnMaster> there is something like
19:55:42 <AnMaster> CMAKE_VERBOSE_MAKEFILE
19:55:43 <AnMaster> turn it on
19:55:44 <AnMaster> hit c
19:55:45 <AnMaster> hit g
19:55:53 <AnMaster> I don't remember the exact name of the option
19:56:08 <oerjan> ANTI-CELLS EVOLVE, SHRINK TO PLANET SIZE TO THINK FASTER
19:56:19 <ehird> AnMaster: http://pastie.org/private/jlmebg2apnzyxgij7hobw
19:56:26 <ehird> there's no way I'm debugging that, you have a look :P
19:56:39 <AnMaster> -arch x86_64
19:56:40 <AnMaster> aha
19:56:53 <AnMaster> ehird, it must be that OSX_ARCH thing
19:56:56 <AnMaster> I believe
19:56:59 <ehird> prolly
19:57:05 * ehird re"moo"ves it
19:57:10 <AnMaster> moo?
19:57:10 <oerjan> GALACTIC SIZE ANTI-CELL SOCIETY FORMS
19:57:10 <AnMaster> what?
19:57:15 <ehird> dunno
19:57:17 <AnMaster> oerjan, wow
19:57:19 <ehird> oerjan: :DD
19:57:21 <oerjan> TAXES INVENTED
19:57:22 <ehird> i fear what comes next
19:57:23 <ehird> AAAAAAAAAAAGH
19:57:29 * AnMaster pushes reset
19:57:29 <ehird> speak of the devil
19:57:31 <ehird> ^C^C^C
19:57:39 <oerjan> SOCIALIST REVOLUTION
19:58:05 <AnMaster> wait
19:58:05 <AnMaster> what
19:58:05 <AnMaster> this is good
19:58:05 <AnMaster> oerjan, continue
19:58:05 <ehird> AnMaster: it is building now
19:58:05 <oerjan> FASCIST COUNTERREVOLUTION
19:58:09 <AnMaster> argh
19:58:11 <ehird> dammit
19:58:14 <AnMaster> let see if it turns better
19:58:15 <AnMaster> again
19:58:23 <AnMaster> ehird, wait a few lines before reset
19:58:36 <ehird> AnMaster: you have a lot of "q printf length modifier" warning s:P
19:58:37 <ehird> but
19:58:38 <oerjan> GAMMA BURST WAR KILLS 99% OF POPULATION
19:58:40 <ehird> Linking C executable cfunge
19:58:40 <ehird> [100%] Built target cfunge
19:58:44 <ehird> oerjan: Awesome
19:58:44 <AnMaster> ehird, that is due to OS X header issues
19:58:49 <ehird> -rwxr-xr-x 1 ehird ehird 182K 2009-01-07 19:58 cfunge
19:58:56 <AnMaster> ehird, cool
19:59:17 <ehird> [100%] Built target cfunge
19:59:17 <ehird> Install the project...
19:59:18 <ehird> -- Install configuration: "Release"
19:59:20 <AnMaster> ehird, apple headers use %q in inttypes.h to define the int64 printf
19:59:20 <ehird> -- Installing: /usr/local/bin/cfunge
19:59:22 <ehird> -- Installing: /usr/local/share/man/man1/cfunge.1
19:59:24 <AnMaster> ehird, install not needed
19:59:28 <AnMaster> as I said
19:59:30 <ehird> ok, where's mycology
19:59:31 <oerjan> CAPITALISM INVENTED, RIDICULED
19:59:35 <ehird> ridiculed
19:59:36 <ehird> ha
19:59:39 <AnMaster> ehird, at Deewiant's website
19:59:42 <ehird> bah
19:59:43 <ehird> k
19:59:59 <ehird> [ehird:~/cfunge/examples] % cfunge hello.bf
19:59:59 <ehird> Hello world!
20:00:08 <AnMaster> ehird, well that should indeed work
20:00:10 <Deewiant> I was hoping to see "segmentation fault"
20:00:12 <ehird> Yes quite.
20:00:16 <ehird> Deewiant: lol
20:00:21 <AnMaster> ehird, what I'm not sure is mycoterm
20:00:24 <AnMaster> it may have issues
20:00:32 <AnMaster> I would be very interested in someone checking that on OS X
20:00:48 <oerjan> FORCED EUGENICS BREED OUT AGRESSION, WARS END, BUT SO DOES FREEDOM
20:00:50 <AnMaster> it works on linux and freebsd but I don't know how portable my hacks to make both it and TERM work are
20:00:54 <ehird> sanity.bf first right
20:00:59 <AnMaster> ehird, sure
20:01:02 <AnMaster> and mycology.b98
20:01:07 <AnMaster> then mycouser.b98
20:01:13 <AnMaster> finally mycoterm.b98
20:01:15 <ehird> sanity.bf works
20:01:19 <AnMaster> ehird, expected
20:01:23 <Deewiant> don't forget mycotrds!!!!11one
20:01:39 <AnMaster> brb phone
20:01:40 <ehird> AnMaster: mycology works
20:02:30 -!- Mony has quit ("Quit").
20:02:53 <ehird> mycoterm time
20:02:54 <oerjan> ALIEN ANTI-POLYHEDRAL SPECIES ENCOUNTERED, RELIGIOUS ZEALOTS
20:03:17 <ehird> Trying to clear the first line with HL, press enter to continue...
20:03:17 <ehird> NCRS loaded.
20:03:19 <ehird> , might not work after I: using S instead, so if R and S don't work, nothing will be seen.
20:03:21 <ehird> Calling 1I, press enter to continue...
20:03:23 <ehird> that looks odd
20:03:25 <ehird> is it correct?
20:03:39 <ehird> Testing S...
20:03:39 <ehird> S didn't reflect, continuing...
20:03:52 <ehird> ok
20:03:54 <ehird> mycoterm worked
20:03:54 <ehird> I think
20:04:06 <ehird> now I'm brbing
20:06:10 <oerjan> EXPANSION OF SPACE CAUSES EMPTY REGIONS TO FORM, ENERGY SHORTAGE
20:07:20 <oerjan> HYPERSPACE TRAVEL NOW POSSIBLE. RELIGIOUS ZEALOTS CONQUER KNOWN UNIVERSE.
20:07:43 <AnMaster> back
20:07:53 <AnMaster> ehird, great!
20:07:58 <AnMaster> ehird, when you get back:
20:08:15 <AnMaster> time cfunge mycology.b98 >/dev/null 2>&1
20:08:21 <AnMaster> run it twice or so
20:08:28 <AnMaster> to avoid disk cache slowdown
20:08:29 <AnMaster> and such
20:08:46 <AnMaster> oerjan, wow
20:08:49 <AnMaster> oerjan, and then?
20:09:28 <oerjan> ANTI-CELLS SHRINK TO SAVE ENERGY, REACH MOUNTAIN SIZE. APOCALYPTIC THEOCRACY.
20:10:06 <AnMaster> oerjan, damn
20:10:30 <oerjan> WIDESPREAD REBELLION AGAINST DEFAITIST RELIGION. NUCLEAR WARS.
20:10:40 <AnMaster> err
20:10:51 <AnMaster> NUCLEAR? don't you mean ANTI-NUCLEAR?
20:10:57 <oerjan> ER, YES
20:11:31 <AnMaster> right
20:11:57 <oerjan> SURVIVORS CREATE GOLDEN DEMOCRATIC AGE, THUS IRONICALLY FULFILLING A PROPHECY
20:12:06 <AnMaster> what PROPHECY?
20:13:01 <oerjan> UNFORTUNATELY THAT PROPHECY WAS ABOUT WHAT WOULD HAPPEN _AFTER_ UNIVERSE DIES. RELIGIOUS DEFAITISM REPLACED BY SCIENTIFIC DEFAITISM.
20:13:22 <AnMaster> DEFAITISM?
20:13:25 <AnMaster> wtf is that
20:13:31 <AnMaster> aspell doesn't like it
20:13:37 <oerjan> CHECKING...
20:13:37 <AnMaster> nor does google
20:14:19 <oerjan> DEFEATISM
20:14:26 <AnMaster> means?
20:14:43 <AnMaster> ah
20:14:44 <AnMaster> right
20:14:48 <AnMaster> found a definition
20:15:01 <AnMaster> oerjan, ok bad
20:15:06 <AnMaster> oerjan, what happens next?
20:15:10 <AnMaster> anything good?
20:15:30 <oerjan> POPULATION SLOWLY DECREASES WHILE UNIVERSE EXPANDS AND COOLS
20:15:35 <AnMaster> ok
20:15:39 <AnMaster> no more interesting
20:15:43 <AnMaster> oerjan, reset universe
20:15:48 <AnMaster> RESET UNIVERSE
20:15:50 * AnMaster resets it
20:16:05 <oerjan> *BURP*
20:16:31 <AnMaster> # UNVRS<ENTER>
20:16:44 <AnMaster> FINESTRUCTURE= 0<ENTER>
20:16:47 <AnMaster> START<ENTER>
20:16:50 * AnMaster waits
20:17:05 <oerjan> NO ELECTROMAGNETIC FORCE
20:17:17 <AnMaster> oerjan, is there something else instead?
20:17:21 <AnMaster> or is everything static?
20:18:00 <oerjan> UNIVERSE FILLED WITH BLACK HOLES
20:18:05 <AnMaster> oops
20:18:12 <AnMaster> oerjan, life on black holes?
20:18:52 <oerjan> UNIVERSE COLLAPSES
20:19:06 <AnMaster> oerjan, reset
20:19:11 <AnMaster> # UNVRS<ENTER>
20:19:17 <AnMaster> FINESTRUCTURE= NaN<ENTER>
20:19:19 <AnMaster> START<ENTER>
20:19:53 <oerjan> WEIRD PARTICLES ARISE
20:20:22 <oerjan> INSANE OSCILLATIONS IN PHOTON DYNAMICS
20:20:23 <AnMaster> oerjan, then?
20:20:30 <AnMaster> wow cool
20:20:47 <AnMaster> oerjan, tell me more
20:20:59 <AnMaster> go on!
20:21:01 <oerjan> _SOMETHING_ ARISES. IS IT INTELLIGENT? WHO KNOWS: BUT IT CERTAINLY HAS TENTACLES.
20:21:08 <AnMaster> argh
20:21:20 <AnMaster> oerjan, don't mention it's name!
20:21:34 <oerjan> SPAWNS UNCOUNTABLE OFFSPRING
20:21:39 <AnMaster> oerjan, RESET
20:21:41 <AnMaster> RESET!
20:21:55 <oerjan> REJECTS CONCEPT OF DEATH
20:22:02 <AnMaster> ARGH!
20:22:12 * AnMaster resets the oerjanputer
20:22:26 * AnMaster reinstalls from system disks
20:22:37 <AnMaster> # SELF-TEST
20:22:38 <oerjan> HUMANS ATTEMPT TO KILL US. MUST EXTERMINATE HUMANS.
20:22:46 * AnMaster pulls the plug
20:23:27 * AnMaster checks on the oerjanputer
20:23:52 <oerjan> THE STARS ARE NOT RIGHT FOR US TO LIVE. WILL SLEEP UNTIL BETTER TIMES COME.
20:23:57 <AnMaster> ah
20:24:12 * AnMaster resets the CMOS RAM
20:24:14 <oerjan> SHOULD TAKE ABOUT ... 3 YEARS.
20:24:35 <AnMaster> oerjan, I reset your CMOS RAM
20:24:41 <AnMaster> feeling better?
20:24:48 <AnMaster> wiped disk too and reinstalled
20:25:26 * AnMaster carefully boots the oerjanputer with UNVRS not yet installed
20:25:26 <oerjan> well except something in the walls seems to be chuckling evilly. i guess that's just imagination.
20:25:31 <AnMaster> # SELF-TEST
20:25:41 <AnMaster> # VIRUS-SCAN
20:25:59 <AnMaster> # REMOVE_OLD_ONES
20:26:08 <oerjan> NO OLD ONES FOUND
20:26:33 <oerjan> EVERYTHING SEEMS PERFECTLY FNIE
20:26:36 <AnMaster> # SECURELEVEL=3
20:26:39 <AnMaster> FNIE?
20:26:41 <AnMaster> no it isn't
20:26:49 <oerjan> SORRY, I MNEAT FINE
20:26:57 <AnMaster> MNEAT?
20:27:06 <AnMaster> no I don't believe you
20:27:08 <oerjan> MM?
20:27:13 * AnMaster shuts oerjan don't
20:27:17 * AnMaster replaces components
20:27:30 <AnMaster> there all replaced even the chassi
20:27:48 <AnMaster> spelling...
20:27:49 <AnMaster> anyway
20:28:02 * AnMaster boots oerjanputer and reinstalls the OS from a clean isntall media
20:28:14 * AnMaster reboots from new shiny disk
20:28:18 <AnMaster> # SELF-TEST
20:28:28 <oerjan> why is there a note on my desk - "Dear emergency ration, gone to vacation in the pacific ocean. cheers, the old guy."
20:28:43 <AnMaster> wtf
20:28:49 <AnMaster> I don't understand that
20:29:03 * AnMaster installs UNVRS
20:29:12 <AnMaster> # UNVRS<enter>
20:29:29 <oerjan> "P.S. you think a being beyond mathematics cannot download from a computer?"
20:29:55 <AnMaster> FINESTRUCTURE= 1/137.03599907098<ENTER>
20:30:16 <AnMaster> START<ENTER>
20:30:19 <AnMaster> oerjan, well
20:30:31 <oerjan> INFLATION
20:30:49 <AnMaster> oerjan, you should have used a sandboxed UNVRS
20:30:55 <AnMaster> oerjan, then what?
20:30:56 <oerjan> but i did
20:30:57 <ehird> back
20:30:58 <AnMaster> unzip?
20:31:13 <AnMaster> ehird, seems fine structure = NaN created the old ones
20:31:14 <AnMaster> :(
20:31:49 <AnMaster> oerjan, anyway what happens after inflation?
20:32:46 * AnMaster pokes oerjan
20:32:48 <oerjan> BARYOGENESIS
20:32:57 <AnMaster> ok
20:33:14 <AnMaster> oerjan, what are the quarks made of?
20:33:18 <AnMaster> if they exist yet
20:33:38 <AnMaster> is the string theory correct?
20:33:48 <ehird> AnMaster: what time line do you want me to run again
20:33:59 <AnMaster> ehird, hm?
20:34:02 <oerjan> ACTUALLY THEY ARE MADE OF FLUTES
20:34:05 <AnMaster> ehird, I'm running one
20:34:05 <ehird> AnMaster: cfunge
20:34:10 <oerjan> PHOTON EPOCH
20:34:12 <AnMaster> ehird, oh right
20:34:21 <AnMaster> <AnMaster> time cfunge mycology.b98 >/dev/null 2>&1
20:34:23 <ehird> AnMaster: you know, management is going to be invented
20:34:26 <ehird> with real-world parameters
20:34:37 <AnMaster> ehird, yes but it was worse on the alternatives
20:34:48 <AnMaster> hm
20:34:53 <AnMaster> what about same value but -?
20:35:01 <ehird> it'll just be anti-everyhing
20:35:02 <AnMaster> ehird, could that be worth trying?
20:35:05 <ehird> oerjan: reset
20:35:07 <ehird> # UNVRS
20:35:12 <AnMaster> ehird, don't use NaN
20:35:14 <oerjan> *BURP*
20:35:16 <ehird> FINESTRUCTURE= infinity
20:35:17 <AnMaster> it created the great old ones
20:35:18 <ehird> START
20:35:20 <AnMaster> wow
20:35:24 <AnMaster> what the heck will that do
20:35:30 <ehird> why do you think i'm trying
20:35:32 <AnMaster> ehird, also what did time report
20:35:55 <AnMaster> ehird, wait if it is anti-everything there will be anti-management
20:35:58 <ehird> ha
20:36:06 <AnMaster> ehird, won't that be good?
20:36:07 <ehird> wait how do you run a command N times in bash
20:36:09 <oerjan> UNIVERSE FILLED WITH PLASMA
20:36:14 <ehird> plasma cool
20:36:16 <AnMaster> ehird, hm?
20:36:23 <ehird> AnMaster: like from i in 1..10
20:36:40 <AnMaster> ehird, for i in ${1..10}; do ... ; done
20:36:40 <oerjan> GRAVITY OVERWHELMED BY ELECTROMAGNETISM
20:36:41 <AnMaster> or
20:36:52 <ehird> oerjan: awesome
20:36:54 <ehird> I hate gravity
20:37:02 <AnMaster> ehird, for ((i=1; i<10; i++)); do ... ; done
20:37:04 <AnMaster> that works too
20:37:26 <ehird> % for i in ${1..30}; do (time cfunge mycology.b98 >/dev/null 2>&1) >>times; done
20:37:27 <ehird> will that be OK?
20:37:33 <AnMaster> ehird, sure I guess
20:37:37 <AnMaster> you can take averages
20:37:40 <ehird> zsh: bad substitution
20:37:41 <AnMaster> of all except first
20:37:43 <ehird> when I said bash I meant zsh
20:37:46 <AnMaster> ehird, you asked for bash
20:37:48 <AnMaster> not zsh
20:37:48 <ehird> :D
20:37:50 * ehird does it in bash
20:37:51 <AnMaster> and zsh I don't know
20:37:55 <oerjan> MATTER CONSTANTLY GENERATED
20:37:58 <ehird> bash: ${1..30}: bad substitution
20:37:59 <ehird> phail
20:38:03 <ehird> oerjan: awesome
20:38:03 <AnMaster> ehird, err what
20:38:17 <AnMaster> ehird, sorry
20:38:19 <AnMaster> tired
20:38:19 * ehird bets the next thing to happen in infinite-fine-structure universe is the invention of management or something
20:38:21 <AnMaster> remove the $
20:38:21 <AnMaster> so
20:38:27 <AnMaster> <ehird> % for i in {1..30}; do (time cfunge mycology.b98 >/dev/null 2>&1) >>times; done
20:38:35 <oerjan> UNIVERSE CRYSTALIZES INTO SOLID
20:39:03 <AnMaster> oerjan, what is this huge crystal made of?
20:39:11 <ehird> AnMaster: kay, made several runes of that for 120 runs total
20:39:11 <oerjan> MOSTLY DIAMOND
20:39:12 <ehird> runs
20:39:15 <ehird> messed it up
20:39:17 <ehird> will do one big run
20:39:22 <AnMaster> ehird, hm
20:39:39 <ehird> oerjan: then taxes are invented?
20:39:45 <AnMaster> no
20:39:50 <AnMaster> management for positive
20:39:55 <AnMaster> taxes for negative I thinj
20:39:58 <AnMaster> think*
20:40:15 <ehird> AnMaster: ok im going to run it 100 times
20:40:19 <ehird> note that i have other stuff running
20:40:21 <ehird> so it won't be perfect
20:40:24 <AnMaster> ehird, well ok
20:40:32 <ehird> like 10% of cpu used, so.
20:40:51 <AnMaster> ehird, I generally stop X before running speed tests
20:41:01 <oerjan> MICRO-MANAGEMENT INVENTED
20:41:06 <ehird> oerjan: aaaaaaaaaaaaaaaaaaaaa
20:41:09 <AnMaster> micro-management?
20:41:12 <AnMaster> wtf is tha?
20:41:14 <oerjan> TURNS OUT HARMLESS, AS MICROSTRUCTURES ARE NONSENTIENT
20:41:26 <ehird> phew
20:41:51 <ehird> AnMaster: average is 0.62 http://pastie.org/354977.txt?key=inzzwzudzj4u82liaeozw
20:41:54 <oerjan> MICROSTRUCTURES USE MICROMANAGEMENT TO COMBINE INTO LARGER STRUCTURES
20:41:56 <AnMaster> ehird, interesting
20:41:56 <ehird> fluctuates due to computer being busy in parts :P
20:41:57 <ehird> err
20:41:59 <ehird> 0.062
20:42:00 <ehird> sorry
20:42:02 <ehird> :P
20:42:13 <AnMaster> ehird, what is the speed per core?
20:42:21 <AnMaster> also are you using dynamic cpu speed?
20:42:23 <ehird> AnMaster: 2.1ghz or so
20:42:25 <ehird> also, dunno
20:42:29 <oerjan> STUPIDITY INVENTED. MUCH CARNAGE.
20:42:33 <ehird> ram = 2.5gb fwiw
20:42:35 <ehird> oerjan: :D
20:42:43 <ehird> AnMaster: but stuff is running
20:42:44 <ehird> so
20:42:50 <AnMaster> ehird, L1 and L2 cache?
20:43:04 <ehird> Uhh, second
20:43:07 * ehird checks
20:43:07 <AnMaster> cfunge mycology.b98 > /dev/null 2>&1 0.03s user 0.03s system 92% cpu 0.062 total
20:43:09 <AnMaster> wait what
20:43:12 <oerjan> ATTEMPT TO INVENT TAXES CAUSES REBELLION AGAINST STUPID LEADERS
20:43:13 <AnMaster> that doesn't add up
20:43:15 <ehird> AnMaster: what
20:43:15 <AnMaster> at all
20:43:20 <ehird> why not
20:43:29 <AnMaster> 0.03s user 0.03s != 0.062 total
20:43:32 <AnMaster> or anything near
20:43:38 <ehird> what should it be
20:43:40 <AnMaster> usually they are about half of total each here
20:43:51 <ehird> also, 3+3=6...
20:43:52 <AnMaster> ehird, ok so what is the rest that isn't user or system?
20:43:55 <fizzie> Er, 0.03 + 0.03 = 0.06; that's pretty close.
20:44:03 <AnMaster> ah right
20:44:04 <AnMaster> true
20:44:09 <ehird> 0.002 extra :P
20:44:12 <AnMaster> well
20:44:15 <AnMaster> I read it as 0.003
20:44:16 <AnMaster> :P
20:44:18 <ehird> ha
20:44:24 <ehird> what speeds do you get AnMaster
20:44:56 <AnMaster> ehird, with vmware running in background around 0.061 second, when X isn't running sometimes down to 0.035
20:45:03 <AnMaster> 64-bit Sempron 3300+
20:45:07 <AnMaster> which runs at 2 GHz
20:45:15 <AnMaster> 128 kb L1
20:45:16 <ehird> ok, so basically the same with gui running etc
20:45:17 <ehird> except
20:45:19 <ehird> mine's a bit faster
20:45:26 <ehird> since, os x is way more bloated on the memory & cpu
20:45:27 <ehird> :P
20:45:27 <AnMaster> err
20:45:30 <AnMaster> yeah
20:45:31 <AnMaster> it is
20:45:35 <oerjan> ANARCHIC GOVERNMENT FORMS BASED ON TEN COMMANDMENTS. THESE INCLUDE 1. THOU SHALT NOT LEVY TAXES 5. THOU SHALT NOT MANAGE.
20:45:44 <ehird> oerjan: that sounds like management to me :P
20:45:47 <AnMaster> great
20:45:52 <fizzie> fungot: Are you still alive? Haven't seen you talk in a while.
20:45:52 <fungot> fizzie: " another back of the book, when he knows what he did to get on the cases of others to make yourself feel better. why not? small—the preceding wikipedia:sign your posts on talk pagesunsigned comment was added by special:contributions/ fnord ( user fnord)
20:45:53 <AnMaster> oerjan, what are the 8 other ones?
20:45:56 <ehird> wait...
20:45:57 <ehird> ANARCHIC GOVERNMENT?
20:46:00 <ehird> something is up :P
20:46:07 <AnMaster> ehird, no that doesn't make sense
20:46:09 <ehird> exactly
20:46:10 <oerjan> 3. THOU SHALT NOT ASK TOO MANY QUESTIONS.
20:46:10 <ehird> :D
20:46:27 * ehird starts system profiler
20:46:32 <AnMaster> oerjan, aha, oppresses freedom of questioning
20:46:34 <oerjan> THE WORD "GOVERNMENT" IS USED IN A LOOSE SENSE HERE
20:46:35 <ehird> AnMaster: L2 cache = 4mb
20:46:40 <AnMaster> ehird, wow
20:46:42 <ehird> what
20:46:43 <AnMaster> much better than mine
20:46:46 <ehird> heh
20:47:01 <ehird> baisc overview:
20:47:13 <AnMaster> ehird, and the remaining 7?
20:47:16 <ehird> intel core 2 duo, 2.16 ghz, 2 cores, 4MB L2, 2.5 GB, and bus speed 667 MHz
20:47:21 <AnMaster> err
20:47:22 <ehird> the busses in this country, they are electric.
20:47:22 <AnMaster> oerjan, ^
20:47:32 <ehird> AnMaster: he was implying your question was too much
20:47:35 <AnMaster> ah
20:47:37 <AnMaster> ok
20:47:40 <ehird> that was... the joke :P
20:47:42 <AnMaster> oerjan, what happens next?
20:47:52 <ehird> AnMaster: gonna run some more programs with cfunge
20:47:58 <AnMaster> ehird, nice
20:48:04 <AnMaster> ehird, there is a game of life
20:48:06 <AnMaster> in examples
20:48:11 <AnMaster> it should be very fast
20:48:27 <AnMaster> ehird, I don't know if jitfunge works on os x
20:48:42 <AnMaster> but if it doesn't you see the good thing with portable software I hope :D
20:48:44 * AnMaster runs
20:49:06 <ehird> I'd hardly expect a jit to be portable :P
20:49:14 <AnMaster> nor would I
20:49:20 <ehird> life is nice and fast, yep
20:49:32 <ehird> too fast :P
20:49:33 <oerjan> CRYSTAL PHILOSOPHERS MANAGE TO REDUCE NUMBER OF COMMANDMENTS TO 4. (NO. 3 WAS ONE OF THOSE TO GO.) GOLDEN AGE OF ENLIGHTENMENT.
20:49:35 <AnMaster> ehird, try it with ccbi or rc/funge if you want
20:49:37 <ehird> can you tell cfunge to delay?
20:49:42 <fizzie> jitfunge doesn't, at the moment; although it might with some tweaking.
20:49:45 <AnMaster> ehird, alas no such feature have been added
20:49:47 <ehird> oerjan: :D
20:49:57 <fizzie> My only OS X box is a powerpc, so I can't really port it with it.
20:50:06 <ehird> AnMaster: just deoptimize a bit :P
20:50:10 <AnMaster> oerjan, what are the ones left now?
20:50:25 <fizzie> We did some speed-benchmarking with something like (build/jitfunge life.bf > life.txt &); sleep 20 ; killall jitfunge ; ls -l life.txt and then comparing the life.txt output size. Silly but... silly.
20:50:27 <AnMaster> ehird, ok that is easy
20:50:36 <AnMaster> src/funge-space/funge-space.c
20:50:42 <AnMaster> look for size constants near the start
20:50:45 <ehird> hehe
20:50:47 <AnMaster> defines size of static array
20:50:56 <AnMaster> ehird, change those as needed to get the right speed
20:51:01 <ehird> the concurrent hellos worl
20:51:01 <AnMaster> life is befunge93
20:51:03 <ehird> work
20:51:04 <Deewiant> Said static array is conveniently just barely big enough to hold mycology :-P
20:51:18 <AnMaster> Deewiant, yes it is the largest program I know
20:51:18 <ehird> % time cfunge pi2.bf >/dev/null
20:51:18 <ehird> cfunge pi2.bf > /dev/null 0.22s user 0.01s system 99% cpu 0.233 total
20:51:24 <ehird> That's quite slow
20:51:34 <AnMaster> ehird, ccbi is even slower iirc
20:51:38 <AnMaster> also it is befunge93
20:51:46 <AnMaster> it doesn't use fpdp
20:51:47 <AnMaster> or such
20:51:55 <ehird> Ok
20:52:17 <AnMaster> ehird, note some of the *.bf ones may need -s 93
20:52:18 <oerjan> 4. THOU SHALT NOT ATTEMPT TO GET POWER OVER OTHERS, UNDER PENALTY OF DEATH. (THIS IS THE ONLY CRIME WITH PUNISHMENT MORE THAN A FINE.)
20:52:37 <ehird> oerjan: how is the penalty assigned?
20:52:38 <AnMaster> ehird, to use the befunge93 space in string rules
20:52:41 <ehird> Doesn't that involve getting power over others?
20:52:57 <oerjan> VERY CAREFULLY.
20:53:00 <ehird> :D
20:53:08 <AnMaster> Deewiant, sometimes fungot is is outside the area when running underload programs but since fitting all that in would require the array to be 128 MB in RAM on 32-bit builds...
20:53:08 <fungot> AnMaster: somehow, one or both of the culture of europe/ fnord 17:43, 7 may 2008 ( utc
20:53:27 <AnMaster> Deewiant, apart from that mycology is largest yes
20:54:15 <AnMaster> oerjan, what is the physical composition of the world?
20:54:25 <AnMaster> you talked about crystal
20:54:29 <AnMaster> but made of what?
20:54:35 <ehird> AnMaster: the fine structure constant is infinity, I don't think he can answer that reasonably :P
20:54:56 <AnMaster> ehird, hm maybe not
20:55:06 <AnMaster> oerjan, what happens next?
20:55:31 <oerjan> MOSTLY DIAMOND, I SAID
20:55:33 <ehird> By the way, is it possible to write a fingerprint and license it under non-gpl3?
20:55:36 <AnMaster> oh right
20:55:37 <AnMaster> sorry
20:55:39 <ehird> I mean, it'll be linked with cfunge...
20:55:54 <AnMaster> ehird, tricky question, I allowed that for IFFI iirc
20:55:58 <AnMaster> however I have an idea
20:56:00 <AnMaster> somewhat like kernel
20:56:06 <AnMaster> marking some interfaces
20:56:06 <AnMaster> like
20:56:21 <AnMaster> "as a special exception you are allowed to use these routines in non-gpled fingerprints"
20:56:22 <AnMaster> or such
20:56:30 <AnMaster> ehird, I might add that in next version
20:56:34 <AnMaster> however right now: nop
20:56:40 <ehird> Damn.
20:56:54 <AnMaster> ehird, but it is a good idea to add linking exception
20:56:57 <AnMaster> to a well defined interface
20:57:05 <ehird> What if I want to use dark internals? :-P
20:57:17 <AnMaster> ehird, then you are out of luck, same as for kernel
20:57:18 <oerjan> GAME OF TETRIS INVENTED. GOLDEN AGE OF ENLIGHTENMENT GIVES WAY TO GOLDEN AGE OF PROCRASTINATION. ECONOMY COLLAPSES BUT FEW CARE.
20:57:28 <AnMaster> ouch
20:57:40 <AnMaster> and tetris is boring too
20:57:42 <ehird> oerjan: awesome
20:58:03 <ehird> AnMaster: is not
20:58:05 <ehird> tetris is great
20:58:12 <AnMaster> ehird, snake is better
20:58:14 <AnMaster> IMO
20:58:17 <oerjan> ELITE PROGRAMMERS RULE THE WORLD, WHILE CAREFUL NOT TO LET ANYONE NOTICE.
20:58:26 <AnMaster> oerjan, not too good
20:58:26 <ehird> oerjan: can the next event be a war between tetris and snake lovers?
20:58:31 <AnMaster> no
20:58:35 <ehird> the tetris lovers should win, by the way.
20:58:37 <AnMaster> also nethack is better than both
20:58:56 <ehird> I dunno, I like the simplicity of tetris.
20:59:09 <oerjan> FIRST PERSON SHOOTERS INVENTED.
20:59:26 <AnMaster> oerjan, do these run on computers?
20:59:34 <AnMaster> ehird, I prefer games with a goal and ending
20:59:44 <AnMaster> snake lacks it too
20:59:45 <AnMaster> yes
20:59:54 <ehird> Tetris: Goal, clear all lines. Ending, sure, when you get to the last level.
21:00:05 <AnMaster> ehird, there is no last level usually
21:00:15 <AnMaster> it just goes on with higher and higher
21:00:18 <AnMaster> in those I played
21:00:26 <ehird> In tetris? I think the official versions have a last level.
21:00:32 <AnMaster> huh
21:00:38 <oklofok> ö
21:00:39 <AnMaster> ehird, what about LEMMINGS?!
21:00:41 <oklofok> o
21:00:46 <ehird> AnMaster: you got me there
21:00:48 <ehird> lemmings is amazing/
21:00:51 <AnMaster> oerjan, what happens next?
21:01:02 <oerjan> THEORY OF VIOLENT GAMES CAUSING VIOLENCE CONFIRMED.
21:01:06 <ehird> ha
21:01:18 <ehird> VIOLENCEINVENTED?
21:01:19 <ehird> er
21:01:19 <AnMaster> hm
21:01:21 <ehird> with a space
21:01:27 <oklofok> tetris does not have a last level, implementations may, but pure mathematical tetris does not have an ending
21:01:31 <oerjan> ATTEMPT TO BAN VIOLENT GAMES CAUSES VIOLENT REVOLUTION.
21:01:34 <AnMaster> oklofok, indeed
21:01:34 <ehird> pure mathematical tetris.
21:01:38 <oklofok> yes
21:01:54 <AnMaster> ehird, yes of course
21:02:10 <ehird> schools should teach tetris theorems
21:02:11 <AnMaster> oerjan, then what?
21:02:17 <AnMaster> ehird, hah
21:02:31 <AnMaster> ehird, theoretically only of course
21:02:34 <ehird> yes
21:02:42 <AnMaster> ehird, no actual playing
21:02:53 <fizzie> The original Game Boy Tetris (I mean "original Game Boy", not original Tetris) has a "last level" in the sense that it stops getting any faster, but you can still keep playing. The score-meter maxes out at some point, though.
21:03:02 <ehird> actually playing tetris is punished
21:03:16 <AnMaster> ehird, hah
21:03:18 <ehird> fizzie: the original tetris was the game boy tetris i think
21:03:23 <oklofok> yes
21:03:25 <oklofok> i think so too
21:03:35 <AnMaster> oerjan, what happens next!?
21:03:40 <fizzie> Er, no.
21:03:40 <oerjan> REALISTIC VIRTUAL REALITY INVENTED, REDUCING REAL VIOLENCE AGAIN
21:03:44 <fizzie> "originally designed and programmed by Alexey Pajitnov in June 1985, while working for the Dorodnicyn Computing Centre of the Academy of Science of the USSR in Moscow."
21:03:47 <AnMaster> oerjan, haha
21:03:47 <ehird> well, okay fizzie
21:03:50 <AnMaster> oerjan, great
21:03:51 <ehird> but it was the first mass-commercial one
21:03:52 <fizzie> The Game Boy version comes in 1989 or so.
21:03:52 <ehird> i think
21:03:54 <ehird> oerjan: :DD
21:03:56 <oklofok> fizzie: wp isn't always right
21:03:58 <AnMaster> oerjan, what then?
21:04:12 <fizzie> oklofok: Still, I've seen at least one documentary about the game.
21:04:24 <fizzie> oklofok: That's an Independent Source!
21:04:27 <oklofok> fizzie: documentaries aren't always right, ehird is, iirc
21:04:38 <fizzie> oklofok: I don't think you recall correctly.
21:04:42 <oklofok> oh.
21:04:58 <oklofok> then i guess you might be somewhat right.
21:05:11 <fizzie> oklofok: [2008-05-08 19:41:00] < ehird> my previous one was wrong
21:05:13 <fizzie> oklofok: See.
21:05:16 <oerjan> MASS MIND UPLOADING HAPPENS, 90% OF POPULATION NOW COMPUTER PROGRAMS
21:05:22 <lament> happy new year!!!
21:05:24 <ehird> oerjan: kickass
21:05:26 <AnMaster> oerjan, that sucks
21:05:27 <ehird> lament: slightly late
21:05:29 <AnMaster> lament, lag?
21:05:30 <oklofok> i did play tetris long before gameboys were invented, but, well, you know, might've been like chess in disguise or something.
21:05:32 <ehird> AnMaster: no it doesn't
21:05:32 <ehird> it's AWESOME
21:05:59 <ehird> AnMaster: bug report, "Befunge93/98/08" in header.
21:06:00 <ehird> copyright
21:06:11 <AnMaster> ehird, hm?
21:06:15 <ehird> it's 108
21:06:20 <AnMaster> ehird, typo indeed
21:06:39 <oerjan> POPULAR VIRTUAL REALITY REGION CREATED BASED ON HYPOTHETICAL FSC OF 1/137.036
21:06:41 <AnMaster> IMPORTANCE: MEDIUM
21:06:53 <AnMaster> TYPE: TYPO CORRECTION
21:06:58 <AnMaster> ehird, also it is 109 by now
21:06:58 <ehird> AnMaster: PRIORITY: CRITICAL
21:07:03 <ehird> also, it's unneeded :P
21:07:07 <AnMaster> PRIORITY: LOW
21:07:13 <ehird> oerjan: awwwwwwwwww
21:07:16 <ehird> oerjan: wait
21:07:22 <ehird> oerjan: is this going to be recursive?
21:07:23 <ehird> :x
21:07:26 <oerjan> NO
21:07:28 <AnMaster> ouch
21:07:31 <ehird> YES YES YES
21:07:34 <oerjan> IT WAS NOT _THAT_ POPULAR
21:07:45 <ehird> oh, okay.
21:07:50 <ehird> so um
21:07:54 <ehird> this is getting slightly boring :D
21:08:01 <AnMaster> ehird, hm
21:08:13 <AnMaster> FSC=10^aleph-0?
21:08:28 <ehird> oerjan: reset
21:08:33 <ehird> well
21:08:34 <ehird> save state
21:08:35 <ehird> then reset
21:08:37 <ehird> for later
21:08:41 <AnMaster> yes indeed
21:08:45 <AnMaster> this was a good one
21:08:48 <AnMaster> ehird, so what now?
21:08:55 <AnMaster> I already tried 0
21:08:59 <ehird> i have an idea.
21:09:05 <ehird> # UNVRS
21:09:07 <AnMaster> was just black holes then collapse
21:09:13 <ehird> FINESTRUCTURE= BUILT_IN_PI
21:09:15 <ehird> PI= 3
21:09:16 <ehird> START
21:09:25 <ehird> (so FINESTRUCTURE is 3.14(etc), and PI is 3)
21:09:31 <AnMaster> ehird, interesting
21:09:35 <AnMaster> what about e?
21:10:07 <AnMaster> ehird, I think we will get triangular wheels...
21:10:22 <oerjan> SIMULTANEOUSLY ROUND AND CUBICAL PLANET FORMED
21:10:31 <AnMaster> wow
21:10:31 <ehird> oerjan: wait wait
21:10:33 <ehird> that's a bit fast
21:10:37 <AnMaster> oerjan, yes indeed
21:10:38 <ehird> what about the forming due to the fine structure? :D
21:10:39 <AnMaster> too faster
21:10:44 <AnMaster> yes
21:10:45 <AnMaster> indeed
21:10:49 <ehird> ^CREWIND;RESUME<ENTER>
21:10:51 <oerjan> REWINDING...
21:11:06 <AnMaster> ehird, err isn't it ^G?
21:11:13 <ehird> AnMaster: sentient computer.
21:11:15 <ehird> you can basically do whatever.
21:11:16 <AnMaster> ah
21:11:21 <oerjan> GRAVITATIONAL ORBITS UNSTABLE
21:11:27 <ehird> neato
21:11:31 <AnMaster> nice
21:11:33 <ehird> SIMULTANEOUSLY ROUND AND CUBICAL PLANET FORMED? :P
21:11:40 <AnMaster> nah
21:11:50 <AnMaster> SIMULTANEOUSLY CUBICAL AND ROUND PLANET FORMED? :P
21:11:50 <AnMaster> I bet
21:12:16 <lament> SIMULTANEOUSLY CUBICAL AND CUBICAL PLANET FORMED? :P
21:12:34 <oerjan> SIMULTANEOUSLY ROUND AND HEXAGONAL SPIRAL GALAXY FORMED
21:12:39 <ehird> Whoa.
21:12:39 <AnMaster> ah
21:12:42 <ehird> My brain.
21:12:54 <AnMaster> ehird, nah that is easy to think about
21:13:13 <ehird> it's round, hexagonal and spiral
21:13:15 <ehird> at the same time.
21:13:25 <lament> a programmer was asked, what sexual positions does he know.
21:13:35 <lament> he thought for a while.
21:13:38 <lament> and said.
21:13:57 <AnMaster> said what?
21:14:07 <lament> said.
21:14:13 <AnMaster> oh haha
21:14:14 <ehird> itym:
21:14:14 <lament> 1. he above, she underneath
21:14:15 <ehird> said "".
21:14:19 <lament> 2. she above, he underneath.
21:14:19 <ehird> o
21:14:24 <lament> 3. both above.
21:14:27 <lament> 4. both underneath.
21:14:28 <oerjan> GALAXY DISSOLVED DUE TO UNSTABLE GRAVITATIONAL ORBITS, BUT NOT BEFORE SIMULTANEOUSLY ROUND AND CUBICAL STARS FORM
21:14:43 <AnMaster> lament, and what else?
21:14:46 <ehird> lament: i wish that made sense
21:14:49 <ehird> oerjan: awesome
21:14:54 <ehird> how long until intelligence :D
21:15:13 <AnMaster> ehird, don't be silly, this is an emergent system
21:15:19 <AnMaster> you can't track it like that
21:15:20 <lament> ehird: it makes sense.
21:15:25 <AnMaster> you need to run it an see
21:15:27 <oerjan> SINGLE STARS UNSTABLE. BINARY STAR SYSTEMS STABLE UNDER RIGHT CONDITIONS.
21:15:37 <AnMaster> oerjan, wow
21:15:41 <ehird> neat
21:15:47 <oerjan> *STAR SYSTEMS
21:15:51 -!- kar8nga has left (?).
21:16:31 <AnMaster> oerjan, then what?
21:16:48 <oerjan> SIMULTANEOUSLY ROUND AND CUBICAL PLANET FORMED NEAR CENTER OF MASS OF BINARY STAR SYSTEM
21:17:04 <AnMaster> oerjan, right
21:17:05 <AnMaster> then what?
21:18:03 <AnMaster> oerjan, then what?
21:18:13 <oerjan> LIFEFORMS EVOLVE FORMED LIKE HEXAGONAL WHEELS
21:18:19 <ehird> :D
21:18:25 <ehird> WHEEL INVENTED?
21:18:33 <AnMaster> ehird, no, no
21:18:33 <oerjan> NO, EVOLVED
21:18:42 <AnMaster> wagon invented!
21:19:19 <oerjan> MACROSCOPING LIFEFORMS FORM USING THE MOST EASILY EVOLVED MOVEMENT, THE ROUND HEXAGONAL WHEEL
21:19:34 <AnMaster> MACROSCOPING?
21:19:39 <oerjan> *IC
21:19:43 <AnMaster> ah
21:19:48 <AnMaster> IC circuits?
21:19:48 -!- bsmntbombdood has quit (Read error: 113 (No route to host)).
21:20:10 <oerjan> ROUND CUBIC MOON CRASHES INTO WORLD, CAUSING MASS EXTINCTION
21:20:19 <AnMaster> oerjan, damn
21:20:21 <AnMaster> then what?
21:20:31 <oerjan> (ORBIT WAS UNSTABLE, OF COURSE)
21:20:36 <AnMaster> yes
21:20:50 -!- bsmntbombdood has joined.
21:21:08 <AnMaster> oerjan, then what?
21:21:14 <oerjan> AS WATER IS HIGHLY FLAMMABLE, LIFE MAINLY SPREADS ON DRY LAND
21:21:28 <AnMaster> ehird, it looks like PI != BUILT_IN_PI works very well
21:21:31 <AnMaster> doesn't*
21:21:40 <ehird> looks interesting to me
21:21:43 <AnMaster> hm
21:21:55 <AnMaster> oerjan, next?
21:22:09 <oerjan> INTELLIGENT SOCIAL CREATURES (ON WHEELS) EVOLVE
21:22:22 <ehird> WILLY ON WHEELS
21:22:22 <AnMaster> ok... now what?
21:22:30 <AnMaster> ehird, err? meme?
21:22:37 <ehird> infamous wikipedia vandal
21:22:40 <AnMaster> aha
21:22:42 <ehird> all he did was:
21:22:45 <AnMaster> yes sounds familiar now
21:22:47 <oerjan> DUE TO THEIR INTELLIGENCE THEY ARE CAPABLE OF UTILIZING THE DANGEROUS WATER FOR TECHNOLOGY SUCH AS HEATING
21:22:47 <ehird> move a page named X to X on Wheels!
21:22:51 <ehird> Goat -> Goat on Wheels!
21:23:00 <ehird> oerjan: :D
21:23:07 <AnMaster> oerjan, nice
21:23:48 <AnMaster> oerjan, then what?
21:24:24 <oerjan> CIVILIZATION TAKES A HUGE LEAP FORWARD AS AN IMMENSELY MORE EFFECTIVE MEANS OF PROPULSION IS INVENTED: THE FOOT.
21:24:34 <AnMaster> haha
21:24:40 <AnMaster> oerjan, how does the foot work?
21:25:07 <ehird> oerjan: any mathematicians yet?
21:25:16 <oerjan> RATHER THAN WHEELS, IT HAS SIX "TOES" TO PUT FORCE ON THE GROUND
21:25:18 <ehird> are they looking for messages and codes in the elusive constant known as pi, roughly 3.00000000000000000000000?
21:25:39 <oerjan> PHILOSOPHY INVENTED
21:26:28 <oerjan> GREAT STRIDES ARE MADE BY UNDERSTANDING THE FUNDAMENTAL MATERIALS WATER, FIRE, AIR AND CHEWING GUM
21:26:30 <AnMaster> ehird, err it is exactly 3
21:26:37 <ehird> AnMaster: it was a joke
21:26:41 <ehird> 3.000000000000000000000000000000000000000000000000000000000000
21:27:01 <oerjan> SOME PHILOSOPHERS ATTEMPT TO GAIN A DEEPER UNDERSTANDING OF NUMBERS AND GEOMETRY.
21:27:05 <ehird> :DD
21:27:11 <AnMaster> yay
21:27:23 <oerjan> HOWEVER, THESE PEOPLE SWIFTLY AND INEVITABLE TURN INSANE FOR SOME REASON
21:27:31 <ehird> :D
21:27:33 <oerjan> *INEVITABLY
21:27:36 <AnMaster> oerjan, what is the ratio of a cube to it's side?
21:27:51 <AnMaster> err
21:27:56 <AnMaster> the side of a square
21:28:08 <oerjan> THE VOLUM OF A CUBE IS PI * R^3
21:28:09 <AnMaster> to it's circumfence
21:28:12 <oerjan> *VOLUME
21:28:22 <AnMaster> spelling
21:29:08 <oerjan> HM
21:29:26 <oerjan> "CIRCUMFERENCE"
21:29:26 <AnMaster> oerjan, yes?
21:29:29 <AnMaster> yes
21:29:32 <AnMaster> what is the ratio of that
21:29:38 <AnMaster> to the side of a square
21:30:00 <oerjan> NO ONE HAS EVER MANAGED TO FIND THAT OUT WITHOUT PANICKING
21:30:02 * AnMaster puts fence poles all around the circumference
21:30:25 <ehird> oerjan: what next
21:30:34 <AnMaster> yes what is next?
21:30:41 <oerjan> ARCHITECTURE IS INVENTED
21:30:47 <AnMaster> ehird, also I got a great idea for the next one
21:30:56 <AnMaster> ehird, I can't tell you yet but
21:31:15 <ehird> oerjan: then?
21:31:30 <oerjan> ALTHOUGH ARCHITECTS TEND TO GO MAD AFTER A FEW YEARS
21:31:35 <AnMaster> haha
21:31:41 <ehird> hee
21:32:24 <oerjan> BUT WITH THE MIRACLES OF ARCHITECTURE, A 7 FEET (OR WHEEL) TALL TOWER IS CREATED REACHING ABOVE THE ATMOSPHERE
21:32:56 <ehird> :D
21:33:00 <oerjan> AND TUNNELS ARE BUILT ALLOWING PEOPLE TO WALK (WELL, ROLL) ANYWHERE ON THE PLANET IN A FEW MINUTES
21:33:11 <ehird> i like this
21:33:38 <AnMaster> yes
21:34:38 <oerjan> AT THE SAME TIME, A 5 FEET BY 5 FEET AREA IS ENOUGH FOR A LARGE PALACE
21:34:42 <ehird> :D
21:35:06 <AnMaster> oerjan, what is one FEET in meters?
21:35:21 <oerjan> ABOUT 1/PI METERS
21:35:47 <AnMaster> oerjan, ok
21:35:55 <AnMaster> oerjan, anything interesting?
21:36:28 <oerjan> THANKS TO TECHNOLOGY THE PLANET NOW HAS ROOM ENOUGH FOR EVERYONE, BUT WITH EASY ACCESS THROUGH THE TOWERS SPACE EXPLORATION NEVERTHELESS STARTS TAKING PLACE
21:36:39 <ehird> :D
21:36:52 <AnMaster> oerjan, yay
21:37:03 <ehird> oerjan: FASTFORWARd
21:37:05 <ehird> oerjan: FASTFORWARD
21:37:08 <oerjan> ALTHOUGH SATELLITES TURN OUT TO BE HARD
21:37:13 <AnMaster> oerjan, oh?
21:37:13 <AnMaster> why?
21:37:16 <oerjan> (UNSTABLE ORBITS)
21:37:19 <AnMaster> aha
21:37:21 <AnMaster> right
21:37:28 <AnMaster> just mount them at the top of the towers
21:38:11 <AnMaster> oerjan, FASTFORWARD TO INTERESTING
21:38:14 <oerjan> A NETWORK OF TOWERS IS BUILT, AND A HUGE HEXAGON PLACED ON TOP OF THEM ENCIRCLING THE PLANET'S EQUATOR
21:38:23 <AnMaster> oerjan, wow
21:38:25 <AnMaster> then what?
21:38:57 <ehird> oerjan:
21:39:03 <AnMaster> ehird, I enter it
21:39:04 <oerjan> FROM THE LOW GRAVITY OF THE HEXAGON, SPACE WAGONS CAN EASILY TAKE OFF AND THE SOLAR SYSTEM IS SETTLED
21:39:04 <AnMaster> ok?
21:39:14 <ehird> hmm
21:39:15 <AnMaster> ehird, you can save state
21:39:17 <ehird> oerjan: fastforward
21:39:19 <ehird> to really interesting
21:39:21 <ehird> AnMaster: almost
21:39:55 <AnMaster> oerjan, even the gas dwarfs and the stone giants?
21:40:14 <oerjan> YOU MEAN THE WATER DWARFS
21:40:19 <AnMaster> oerjan, right
21:40:20 <AnMaster> sorr
21:40:22 <AnMaster> sorry*
21:40:32 <AnMaster> oerjan, does slood exist?
21:41:04 <oerjan> 1000 YEARS LATER A TRIANGULAR RING AROUND THE BINARY STAR HAS BEEN BUILT. ADVANCED ARCHITECTURE ALLOWS THIS TO BE USED FOR FTL TRAVEL
21:41:13 <AnMaster> wow
21:41:18 <AnMaster> ehird, time to save yet?
21:41:28 <ehird> hmm
21:41:33 <ehird> oerjan: really fast forward to most interesting thing ever
21:41:50 <AnMaster> then save
21:42:00 <ehird> yes
21:42:12 <oerjan> A BLACK HOLE IS FOUND IN A NEIGHBORING GALAXY, DESPITE BEING THOUGHT IMPOSSIBLE
21:42:18 <AnMaster> ok
21:42:23 <oerjan> HARBORING AN ALIEN RACE
21:42:23 <AnMaster> ehird, save the state
21:42:27 <AnMaster> nice
21:42:30 <olsner> oerjan is being extremely entertaining tonight
21:42:38 <AnMaster> olsner, yes indeed
21:42:45 <ehird> oerjan: save
21:42:52 <AnMaster> ehird, reset it?
21:42:56 <AnMaster> or shall I do that?
21:43:00 <ehird> AnMaster: sure
21:43:06 <AnMaster> oerjan, RESET
21:43:11 <oerjan> *BURP*
21:43:12 <AnMaster> # UNVRS /I
21:43:12 <AnMaster> ENTERING INTERACTIVE MODE . . .
21:43:12 <AnMaster> 1> FIND UNIVERSE WHERE EXISTS(SPACE TURTLES) AND EXISTS(MAGIC) AND EXISTS(DISCWORLD) AND EXISTS(SLOOD);
21:43:12 <AnMaster> 2> DUMP CONSTANTS;
21:43:29 * AnMaster waits for the computation
21:43:41 <AnMaster> oh wait forgot
21:43:43 <ehird> AnMaster: I predict fine structure will be non-numerical
21:43:44 <AnMaster> 3> EXECUTE;
21:43:51 <AnMaster> there
21:43:57 <AnMaster> ehird, very probably
21:44:10 <AnMaster> ehird, either that or complex
21:44:16 <oerjan> FSC: I * ALEPH_3
21:44:20 <AnMaster> ehird, also I asked it to dump all constant as you see
21:44:26 <AnMaster> oerjan, other constants?
21:44:40 <oerjan> PI: 3.14159265358979...
21:44:47 <ehird> how boring
21:44:48 <ehird> :D
21:44:50 <ehird> oerjan: what about E
21:44:50 <AnMaster> oerjan, come on there are more
21:44:55 <AnMaster> ehird, lets run it too
21:44:55 <ehird> or the gravitational constant
21:44:58 <ehird> AnMaster: wait
21:45:01 <ehird> let's see what E & G are
21:45:02 <AnMaster> or the planck one
21:45:03 <oerjan> E: 2.71828182818281828...
21:45:07 <ehird> G?
21:45:09 <ehird> Planck?
21:45:19 <oerjan> G IS DIMENSIONAL
21:45:24 <AnMaster> wow!
21:45:24 <ehird> Planck?
21:45:42 <ehird> Planck?
21:45:51 <ehird> oerjan: Planck?
21:45:51 <oerjan> NOT DIMENSIONLESS EITHER
21:45:55 <AnMaster> oerjan, what is R?
21:45:59 <ehird> oerjan: Planck!!!!!!!!!!?
21:46:18 <AnMaster> ehird, err it has dimensions
21:46:23 <AnMaster> nothing odd with that
21:46:27 <ehird> i'm asking
21:46:29 <ehird> what is the planck constant
21:46:29 <ehird> :P
21:46:31 <oerjan> PLANCK NONEXISTENT. THAUMA = 1.7905
21:46:32 <AnMaster> yes
21:46:37 <ehird> oo.
21:46:37 <AnMaster> yay
21:46:38 <ehird> wait
21:46:39 <ehird> oerjan
21:46:42 <ehird> planck = tick, no?
21:46:46 <ehird> http://en.wikipedia.org/wiki/Minor_Discworld_concepts#Tick
21:46:57 * ehird awaits "ER, YES"
21:47:09 <oerjan> I HAVE NOT READ ALL DISCWORLD BOOKS
21:47:14 <ehird> :D
21:47:22 <ehird> CONSTANTS+= LAST RESULT;
21:47:25 <ehird> START
21:47:28 <ehird> <ENTER>
21:47:35 <AnMaster> yay
21:47:40 <oerjan> HM?
21:47:46 <ehird> we're setting the constants
21:47:50 <ehird> to the one found by that query
21:47:53 <ehird> and starting the universe
21:47:53 <AnMaster> indeed
21:47:55 <oerjan> WAR OF GIANT TURTLES
21:47:59 <ehird> :D
21:48:01 <AnMaster> wait what?
21:48:08 <AnMaster> that isn't how it worked, see Eric
21:48:16 <ehird> shush
21:48:16 <ehird> :P
21:48:25 <ehird> same constants != identical
21:48:26 <AnMaster> ehird, you read them all?
21:48:28 <oerjan> I'VE READ ERIC. OH RIGHT.
21:48:31 <AnMaster> ehird, hm true
21:48:37 <oerjan> (LAST BOOK I READ, ACTUALLY)
21:48:46 <oerjan> DOESN'T MEAN I REMEMBER IT :d
21:48:53 <oerjan> *:D
21:48:58 <AnMaster> oerjan, creator, sandwich
21:48:59 <oerjan> DARN CAPSLOCK
21:48:59 <ehird> typoputer
21:49:05 <oerjan> AH YES
21:49:09 <ehird> "typuter"
21:49:26 <oerjan> IT MAY OR MAY NOT HAVE BEEN A TURTLE SANDWICH
21:49:40 <AnMaster> wtf it was majonäs?
21:49:42 <AnMaster> iirc
21:49:44 <AnMaster> anyway
21:49:46 <AnMaster> go on
21:50:08 <oerjan> DEATH APPEARS
21:50:09 <AnMaster> this could be one that matched the query but didn't match in all details
21:50:26 <ehird> yes
21:50:47 <oerjan> DEATH SAYS: "YOUR CAPS LOCK IS IN VIOLATION OF MY REGISTERED TRADEMARK. PLEASE LEAVE THIS UNIVERSE IMMEDIATELY."
21:50:53 <AnMaster> haha
21:50:55 <ehird> :D
21:51:14 <oerjan> "THE END."
21:51:18 <ehird> lol
21:51:20 <ehird> okay
21:51:22 <ehird> oerjan: RESET
21:51:23 <AnMaster> argh
21:51:27 <AnMaster> I was entering a command
21:51:30 <oerjan> *BURP*
21:51:37 <ehird> # LIST
21:51:37 <AnMaster> to enter stealth mode
21:51:42 <AnMaster> ehird, err
21:51:43 <AnMaster> DIR
21:51:46 <ehird> no
21:51:50 <ehird> this is oerjanix
21:51:50 <AnMaster> no?
21:51:53 <AnMaster> ah
21:52:21 <AnMaster> wait
21:52:24 <AnMaster> I just got an idea
21:52:26 * ehird awaits directory listing
21:52:40 <AnMaster> what about running our universe pause at earth time, and set money?
21:52:42 <AnMaster> or
21:52:44 <AnMaster> even better
21:52:51 <ehird> AnMaster: after the directory listing
21:52:53 * ehird awaits eorj
21:52:56 <AnMaster> QUERY the system for
21:52:57 <oerjan> ./ ../ CTHULHU/ MISC/ UNIV/
21:53:05 <ehird> AnMaster: stop stop wait :P
21:53:10 <ehird> # LIST CTHULHU
21:53:14 <AnMaster> ehird, the important unsolved problems
21:53:17 <oerjan> PERMISSION DENIED
21:53:22 <ehird> # SUDO LIST CTHULHU
21:53:23 <AnMaster> ehird, no it was created by NaN universe
21:53:27 <ehird> AnMaster: :D
21:53:30 <ehird> we can just reboot it.
21:53:41 <AnMaster> ehird, it didn't work, I even did a clean reinstall
21:53:49 <ehird> eh, it's just a directory listing
21:53:52 <ehird> boy, oerjanix is slow sometimes
21:53:53 <AnMaster> hm
21:54:07 * ehird pokes oerjan
21:54:11 <AnMaster> ehird, anyway what about the Riemann hypothesis
21:54:11 <oerjan> ./ ../ ESCAPE_REALWORLD@ HASTUR HASTUR HASTUR
21:54:17 <ehird> yikes
21:54:19 <AnMaster> ARGH
21:54:30 <ehird> # SUDO OBLITERATE_DIRECTORY CTHULHU/
21:54:50 <oerjan> PERMISSION DENIED. PLEASE REPORT FOR TERMINATION.
21:55:01 <AnMaster> ehird, look what you done
21:55:01 -!- Corun has joined.
21:56:03 <AnMaster> oerjan, what is next?
21:56:12 <AnMaster> ehird, anyway
21:56:13 <oerjan> WHERE?
21:56:14 <AnMaster> you fix it
21:56:17 <ehird> but but
21:56:23 <ehird> i'm root
21:56:42 <AnMaster> ehird, oh I turned on securelevels before
21:56:44 <AnMaster> up to 3
21:56:47 <AnMaster> reboot it to fix
21:57:02 * AnMaster resets the oerjanputer
21:57:12 <AnMaster> # SUDO OBLITERATE_DIRECTORY CTHULHU/
21:57:13 <oerjan> *BURP*
21:57:25 -!- ehird has left (?).
21:57:27 -!- ehird has joined.
21:57:33 <oerjan> PERMISSION DENIED. AND I'M NOT HERE, ANYWAY.
21:57:39 -!- ehird has quit ("Caught sigterm, terminating...").
21:57:45 -!- ehird has joined.
21:58:59 <AnMaster> well
21:59:00 <AnMaster> night
21:59:04 <AnMaster> oerjan, it has been fun
21:59:04 <oerjan> good night
21:59:05 <AnMaster> :)
21:59:05 <ehird> oerjan: ping
21:59:13 <AnMaster> * ehird has quit ("Caught sigterm, terminating...")
21:59:13 <ehird> ah
21:59:15 <ehird> bye
21:59:18 <AnMaster> did you really crash?
21:59:22 <ehird> Bouncer troubles.
21:59:27 <AnMaster> ehird, it crashed?
21:59:35 <oklofok> bsmntbombdood: ais523: either 2 or 3 <<< 2
21:59:36 <ehird> no, it was behaving weirdly
21:59:38 <ehird> so i killed it
21:59:39 <AnMaster> ehird, did you think some old one was involved?
22:00:08 <AnMaster> night anwyay
22:00:12 <ehird> bye
22:00:29 <AnMaster> ehird, thanks for testing cfunge :)
22:00:38 <ehird> now to break it
22:00:40 <AnMaster> ehird, you know some new fingerprints lately are DATE and NCRS
22:00:42 * ehird pipes /dev/urandom to cfunge
22:00:47 <AnMaster> I'm sure they both have bugs
22:00:55 <AnMaster> ehird, see tools/fuzz-test.sh
22:00:59 * ehird does cfunge /dev/random
22:01:01 <ehird> AnMaster: i'm not rebuilding
22:01:03 <ehird> hmm
22:01:06 <AnMaster> ehird, ok, true
22:01:07 <ehird> does cfunge read the whole prog
22:01:09 <ehird> before executing?
22:01:12 <AnMaster> ehird, it mmaps()
22:01:14 <AnMaster> and loads it all
22:01:19 <ehird> will cfunge /dev/random not work then
22:01:21 <AnMaster> so yes
22:01:24 <AnMaster> ehird,
22:01:25 <AnMaster> nop
22:01:31 <ehird> ok, i'll use head
22:01:32 <ehird> like
22:01:37 <ehird> head --lines 30
22:01:43 <AnMaster> ehird, and load that yes
22:01:48 <ehird> % head --lines 30 /dev/urandom|cfunge /dev/stdin
22:01:50 <AnMaster> that is what the fuzz test script does
22:01:52 <AnMaster> err
22:01:54 <ehird> mmap() on file failed: Invalid argument
22:01:54 <ehird> Failed to process file "/dev/stdin": Invalid argument
22:01:55 <ehird> :(
22:01:57 <AnMaster> ehird, can you mmap() stdin?
22:02:01 <ehird> guess not :P
22:02:03 <ehird> >x; then
22:02:11 <ehird> % head --lines 30 /dev/urandom>x; cfunge x
22:02:14 <AnMaster> ehird, you way want a chroot
22:02:21 <AnMaster> or it could overwrite your stuff
22:02:29 <AnMaster> remember it has FILE IO
22:02:32 <ehird> I think the likelihood of it hitting a valid funge program that does destructful stuff is slim
22:02:51 <AnMaster> ehird, there is also -S that hopefully should successfully sandbox it
22:02:56 <AnMaster> ehird, also out of memory can happen
22:02:57 <AnMaster> or such
22:02:58 <ehird> okay
22:03:00 <oklofok> maybe a psoxy should use an encoding that didn't rely on any specific character numbers.
22:03:03 <ehird> % head --lines 5 /dev/urandom>x; cfunge -S x
22:03:03 <AnMaster> consider a program like:
22:03:05 <ehird> [SITS THERE]
22:03:06 <AnMaster> >t<
22:03:10 <AnMaster> at the first line
22:03:17 <AnMaster> that will certainly OOM
22:03:21 <ehird> why doesn't this terminate I wonder
22:03:30 <AnMaster> ehird, you could run an infinite loop?
22:03:36 <AnMaster> that is very likely
22:03:37 <ehird> yeah but every single time?
22:03:42 <ehird> ºdð^L­¯<98>VH³ÜL,g^HC^PÏÉ^\¬¦^N*4¸¢þ<97>¼>±^@¶¿R<9c>!]<9a>:;á*
22:03:44 <ehird> that runs indefinitely
22:03:45 <AnMaster> ehird, remember invalid commands reflect
22:03:46 <AnMaster> so
22:03:48 <ehird> ah
22:03:51 <ehird> so infinite reflect
22:03:59 <AnMaster> ehird, which results in infinite loop yes
22:04:01 * ehird cat -v then
22:04:20 <ehird> % cat -v /dev/urandom|head --lines 10 >x; cfunge -S x
22:04:21 <ehird> still infloops ;P
22:04:23 <AnMaster> ehird, you will notice that the fuzz test script only tests valid chars
22:04:26 <ehird> mm
22:04:27 <AnMaster> to see anything interesting
22:04:40 <AnMaster> ehird, it also needs a build calling alarm()
22:04:41 <AnMaster> to end
22:04:43 <ehird> why does it need a special build
22:04:49 <AnMaster> ehird, to quit with alarm()
22:04:51 <AnMaster> after a while
22:04:52 <ehird> why
22:04:53 <AnMaster> and
22:05:13 <AnMaster> to not dump spurious confusing exit code on exit
22:05:14 <oklofok> psygnisfive: and simultaneously, do you like girls? do you like boys? <<< both
22:05:17 <AnMaster> that confuse the script
22:05:21 <ehird> AnMaster: This interface is made obsolete by setitimer(2).
22:05:21 <ehird> :P
22:05:27 <AnMaster> ehird, well
22:05:35 * ehird does fuzz-test _without_ alarm
22:05:36 <AnMaster> you need to edit global.h anyway
22:05:54 <ehird> tools/fuzz-test.sh: line 47: 205b: value too great for base (error token is "205b")
22:05:54 <ehird> There must be a copy of the binary in the top source directory.
22:05:56 <ehird> why
22:06:05 <psygnisfive> oklofok, we know you're bi
22:06:06 <AnMaster> wtf
22:06:09 <psygnisfive> i was asking about bsmntbombdude
22:06:10 <ehird> if [[ "${BASH_VERSINFO[0]}${BASH_VERSINFO[1]}" -lt 31 ]]; then
22:06:12 <ehird> is the error line
22:06:13 <ehird> but
22:06:17 <ehird> why does the binary have to be in the top src dir
22:06:28 <AnMaster> ehird, oh that is because of paths
22:06:31 <AnMaster> anyway
22:06:43 <ehird> ln -s `which cfunge` .
22:06:44 <ehird> :P
22:06:52 <AnMaster> ehird, yep
22:06:53 <AnMaster> works fine
22:06:56 <AnMaster> ehird, anyway it needs valgrind
22:07:00 <ehird> oh.
22:07:00 <AnMaster> comment that part ouyt
22:07:02 <AnMaster> out*
22:07:07 <AnMaster> ehird, read the comments in the script
22:07:11 <AnMaster> it isn't very generic
22:07:27 <AnMaster> also
22:07:41 <AnMaster> s/# 2) Enable LEAK_MODE in cmake, or valgrind will fail./# 2) Disable USE_GC in cmake, or valgrind will fail./
22:07:42 <AnMaster> :P
22:07:45 <AnMaster> old text
22:07:50 <AnMaster> I'll update tomorrow
22:07:53 <AnMaster> night now
22:07:56 <ehird> by
22:07:56 <ehird> e
22:08:06 <ehird> * Generating random program
22:08:06 <ehird> * Running free standing
22:08:08 <ehird> * Exit code was 0, ok
22:08:18 <AnMaster> ehird, the magic numbers in checkerror() may need changing
22:08:22 <AnMaster> I don't know for your system
22:08:23 <AnMaster> :P
22:08:30 <AnMaster> anyway NIGHT
22:08:32 <ehird> ow my memory
22:08:35 <ehird> it sucks
22:08:39 <ehird> computer that is
22:08:39 <ehird> :P
22:08:44 <AnMaster> ehird, what?
22:08:46 <AnMaster> ehird, what?
22:08:52 <ehird> i think it ran a mem hogger
22:09:02 <ehird> fuzzer
22:09:03 <AnMaster> ehird, you set ulimits I assume?
22:09:06 <ehird> nope
22:09:06 <ehird> :D
22:09:07 <AnMaster> it would be stupid to not do it
22:09:12 <oklofok> psygnisfive: no bsmntbombdood
22:09:16 <AnMaster> ehird, 60 MB or so on OS X I guess
22:09:16 <AnMaster> :P
22:09:20 <psygnisfive> oh is he?
22:09:21 <psygnisfive> ok.
22:09:37 <ehird> bsmnt_bot: hi
22:09:42 <ehird> ~exec sys.stdout("hi")
22:09:42 <oklofok> it's bad enough you can't remember everything bsmntbombdood has said, you don't remember contexts in which you said your own lines
22:09:43 <bsmnt_bot> hi
22:09:51 <oklofok> i mean what's that about
22:10:01 <oklofok> get some social skills man
22:10:12 * oerjan swats oklofok -----###
22:10:23 <oklofok> well hey
22:10:33 <oklofok> psygnisfive asks, bsmntbombdood answers, i remember the answer, he doesn't
22:10:33 <oerjan> we don't use dirty words here!
22:10:39 <oklofok> oh :)
22:11:02 <psygnisfive> well, if bsmnt answered, i wasnt aware
22:11:40 <oklofok> he answered when you asked the time before that
22:11:44 <oklofok> "do you have sex with guys"
22:11:47 <psygnisfive> ah well.
22:11:49 <oklofok> "no. but for a technicality"
22:11:54 <AnMaster> ehird, I may try to make it more portable this weekend
22:11:55 <AnMaster> but not now
22:11:55 -!- GreaseMonkey has joined.
22:11:59 <psygnisfive> what was the technicality?
22:12:07 <ehird> he's a virgin
22:12:09 <ehird> i think
22:12:11 <ehird> wast he implication
22:12:11 <ehird> joke
22:12:11 <AnMaster> for now you have to figure any issue out yourself with the fuzz test script. since I need to sleep
22:12:11 <oklofok> the same reason nerds don't get vag
22:12:12 <ehird> thing
22:12:16 <oklofok> they're nerds
22:12:20 <ehird> AnMaster: bye
22:12:21 <AnMaster> I have piano lessons tomorrow morning
22:12:24 <oklofok> of course, bsmntbombdood might not really be a nerd, but anyway.
22:12:25 <lament> women are more beautiful than men
22:12:41 <lament> AnMaster: what do you play?
22:13:52 -!- psygnisf_ has joined.
22:14:06 <psygnisf_> wee power outage :D
22:14:15 <psygnisf_> oklofok, what was the technicality?
22:16:39 <ehird> he told you.
22:16:42 <ehird> virginity.
22:16:49 <psygnisf_> power outage dude.
22:16:56 <psygnisf_> i see. how old is bsmnt again?
22:17:35 <ehird> like 17 or sth
22:17:39 <ehird> maybe older now
22:17:46 <psygnisf_> i figured he was like 25. hm
22:17:58 <lament> i'm 42, and still a virgin
22:18:49 <psygnisf_> lament you're not 42
22:18:53 <psygnisf_> you're like 15
22:18:59 <ehird> err no :P
22:19:06 <oklofok> AnMaster: ehird, also that looks fucked <<< caughtcha
22:19:08 <ehird> think about this logically
22:19:10 <ehird> he was here in 2002
22:19:23 <psygnisf_> yeah well, he was a youngun even then :P
22:19:35 <ehird> somehow I doubt he was a 9 year old when he co-founded this place :P
22:19:44 <psygnisf_> you could've been!
22:19:58 <ehird> no
22:20:00 <oklofok> lament is 7, i think
22:20:01 <ehird> I was an idiot when I was 9
22:20:02 <oklofok> err or 6
22:20:12 <psygnisf_> ok im off to sit outside and enjoy the stormy atmosphere
22:20:12 <oklofok> he once told us he was 5
22:20:12 <psygnisf_> <3
22:20:13 <lament> my role is far more important than just co-founder
22:20:13 <ehird> i think lament might be offended that you consider him 15 psygnisf_
22:20:23 <lament> it was my suggestion to put the channel on freenode
22:20:26 <ehird> :P
22:20:29 <psygnisf_> ok fine he's 16
22:20:30 <flexo> opn, back then
22:20:30 <oklofok> lament: you probably remember the year
22:20:31 <lament> i think they wanted efnet
22:20:33 <oklofok> i'm bad at that
22:20:35 <ehird> lament: ew
22:20:46 <ehird> i'd never have heard of it in that case
22:20:47 <ehird> good or bad?
22:20:48 <ehird> you decide
22:20:49 <oklofok> well you can just calc that from your current age ofc
22:20:52 <lament> ehird: tricky
22:20:56 <oklofok> that was kinda stupid of me.
22:24:16 <oklofok> "hey everybody, i'm looking at gay porno", and a picture of a pussy. i agree, not very clever.
22:28:53 <oklofok> AnMaster: snake lacks it too <<< no
22:29:00 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
22:29:01 <oklofok> except snake on reals
22:31:33 <ehird> oklofok: er, what
22:31:37 <ehird> that site pops up
22:31:39 <ehird> infinite popups
22:31:41 <ehird> of shock sites
22:31:48 <ehird> popup blocker i guess
22:31:51 <ehird> it's Last Measure.
22:37:45 <oklofok> ehird: oh, well i have ie so there was just one.
22:37:53 <oklofok> you know, because it's so great? yeah you probably know
22:38:01 <ehird> totally.
22:38:01 <oklofok> i don't use blockers
22:38:21 <oklofok> if ie has a popup blocker, i should probably remover it
22:39:05 -!- comex has quit ("Caught sigterm, terminating...").
22:39:19 -!- comex has joined.
22:40:10 <oklofok> i mean it's not acceptable for a browser to need a popup blocker, wanting the browser to crash if a website does something weird is the exception, you should need to get an "infinite popup disblocker" for that
22:40:20 <oklofok> i would probably get it
22:40:55 <oklofok> because i could definitely kick an infinite amount of popup ass manually.
22:41:06 <oklofok> or is it more like pedally
22:41:10 -!- comex has quit (Client Quit).
22:41:23 -!- comex has joined.
22:45:11 -!- comex has quit (Client Quit).
22:45:25 -!- comex has joined.
23:10:10 * ehird considers saying fuck it to the modern invention of hypertext and instead publish articles as .txt
23:10:26 -!- KingOfKarlsruhe has quit (Remote closed the connection).
23:11:22 <ehird> What is it about this Ruby thing? -- Gerson Kurz 2002
23:21:38 -!- oerjan has quit ("Good night").
23:36:44 -!- jix has quit ("...").
23:44:09 <Azstal> Use gopher
23:45:03 <ehird> gopher sux
23:45:17 <Azstal> heresy :(
23:46:10 * ehird decides that the best way to say fuck it and never look at html again is to write a script which converts markdown into it with the basic headers and use it
23:46:14 <ehird> i shall call it a "blog"
23:46:19 * ehird = revolutionary
23:46:49 -!- Corun has quit ("This computer has gone to sleep").
23:47:08 <ehird> you're meant to act surprised
23:47:11 <ehird> and go wooooooah
23:48:36 <Azstal> wooooooah :o
23:49:10 <ehird> amazing eh
23:49:20 <Azstal> quite so
23:49:26 <Azstal> but I'd rather have a phlog
23:49:46 * ehird flogs Asztal
23:49:49 <ehird> er
23:49:50 <ehird> Azstal:
23:49:53 <ehird> (aaaaaaaargh)
23:52:06 -!- Azstal has quit ("I have that urge, Rimmer. It's got nothing to do with past lives.").
23:52:19 * ehird ponders and decides that google apps >>>>>> running my own mail server
23:52:34 <Asztal> that's what I decided too.
23:52:48 <Asztal> thankfully it allows catch-all addresses
23:54:10 -!- CakeProphet has joined.
23:56:20 <ehird> you know, my life was a lot better before I ever read the word typography
23:56:41 <ehird> now I'm obsessed
23:56:49 * ehird twitches
23:57:54 * ehird considers that nobody cares what he has to say so writing a blog is pointless
23:58:55 <ehird> come to think of it, I should give up on IRC too
2009-01-08
00:01:22 <ehird> <style type="text/x-stylesheet-prose">Please make this document so dazzingly beautiful that everyone will bookmark it and return here once in a while, because I get lonely :(</style>
00:01:34 <ehird> i think the error there is that you use gregor's "matching" colours generator
00:02:19 <Asztal> :)
00:04:01 <ehird> hmm, putting a shadow on every bit of text either looks nice or awful
00:04:03 <ehird> I can't decide which
00:42:05 <ehird> Asztal: quick, what's your favourite colour
00:45:18 <psygnisf_> guys, im going to start doing some experiments with evolutionary algorithms and using them to design code
00:45:23 <ehird> k
00:45:28 <oklofok> blue
00:45:37 <ehird> oklofok: what shade
00:45:43 <psygnisf_> and the way i want to work with it is really with just a simple little simulated processor
00:45:49 <psygnisf_> any suggestions for what it should do?
00:45:55 <ehird> no
00:45:56 <psygnisf_> the processor, i mean
00:45:58 <oklofok> ehird: i think pretty dark
00:46:05 <ehird> psygnisf_: just make it a stack machine
00:46:17 <psygnisf_> im not sure how to do that D:
00:46:26 <ehird> psygnisf_: look it up, tard :P
00:46:33 * psygnisf_ fwaps ehird
00:46:46 -!- psygnisf_ has changed nick to psygnisfive.
00:46:50 <oklofok> psygnisf_: well maybe it could digest food or something
00:47:05 <oklofok> that's a pretty interesting algorithmic problem
00:47:16 <oklofok> i keep trying to tab-complete "algorithm"
00:47:17 <ehird> he means the cpu
00:47:35 <oklofok> ehird: err so?
00:47:37 <psygnisfive> ehird, i was thinking more along the lines of what kind of instruction set should i include.
00:47:42 <ehird> psygnisfive: stack-based.
00:47:45 <psygnisfive> :P
00:47:48 <ehird> program is a list of words.
00:47:50 <ehird> basic stack manipulation words,
00:47:55 <ehird> define your own words (i.e. call stack)
00:47:57 * oklofok stands behind his suggestion
00:48:02 <ehird> and arithmetic
00:48:05 <ehird> and IO.
00:48:15 <psygnisfive> IO wont be necessary i think.
00:48:20 <psygnisfive> well, some will but
00:48:33 <ehird> you need io to do anyhting with the cpu :P
00:48:39 <ehird> well you could analyze the stack.
00:48:44 <psygnisfive> yeah. that was my plan
00:49:39 <psygnisfive> i was thinking of just using a non-stack machine. with like, memory access stuff
00:49:46 <psygnisfive> instead of a stack
00:49:49 <ehird> stack is simpler.
00:49:57 <oklofok> ooooooo
00:50:04 <psygnisfive> eh.. why simpler?
00:50:15 <ehird> you're the one who said wtf how do i do that
00:50:16 <oklofok> i have an opinion on this, but i guess i could sleep
00:50:17 <ehird> don't question me :P
00:50:57 <psygnisfive> pretend im not going to use a stack machine :P
00:51:07 <ehird> no, because that's the best way
00:51:10 <psygnisfive> hush
00:51:12 <ehird> no.
00:51:16 <psygnisfive> im going to have a RAM machine
00:51:22 <psygnisfive> no registers
00:51:26 <ehird> you asked for advice, I gave it, you ignored it, so I'm not going to talk on the subject any more.
00:51:30 <psygnisfive> just memory
00:51:36 <psygnisfive> what instruction set should i use
00:51:40 <ehird> a stack-based one.
00:51:44 <psygnisfive> :P
00:51:52 <oklofok> "do" and "don't"
00:51:56 <oklofok> that's all you need
00:52:01 <psygnisfive> ok give me a good introduction to a sensible stack machine
00:52:05 <ehird> forth
00:52:06 <ehird> google it
00:52:13 <psygnisfive> i dont get forth's conditionals tho
00:52:18 <ehird> you don't need to.
00:52:22 <ehird> just make up your own branching
00:52:22 <psygnisfive> dont i?
00:52:35 <psygnisfive> i dont understand stack-based branching at all
00:53:21 <oklofok> put code on stack, call it or do a goto on the original code, which is of course not very stacky
00:53:35 <oklofok> or do a more structured loop on code
00:53:39 <oklofok> or both
00:53:40 <ehird> psygnisfive: just do it like this:
00:53:59 <ehird> IF pushes the address of the current instruction pointer on the stack
00:54:04 <oklofok> i don't remember how forth did it, just that i'm pretty sure i considered it stupied
00:54:12 <ehird> psygnisfive: and
00:54:15 <ehird> IF also stops code execution
00:54:18 <ehird> i.e.
00:54:19 <ehird> IF a b c
00:54:21 <ehird> will just run if
00:54:24 <ehird> and skip past a b c
00:54:26 <ehird> until you get to THEN
00:54:34 <psygnisfive> but it'll push abc to the stack?
00:54:37 <ehird> no
00:54:39 <psygnisfive> ok
00:54:41 <ehird> IF a b c will push the IP address at IF
00:54:45 <ehird> then zip over a b and c
00:54:45 <ehird> then
00:54:47 <ehird> THEN
00:54:50 <ehird> pops that ip
00:54:53 <ehird> and then pops the next thing
00:54:55 <ehird> if the next thing is 0
00:55:01 <ehird> it just keeps executing past THEN
00:55:03 <ehird> otherwise
00:55:10 <ehird> it sets the ip to the one it popped
00:55:12 <ehird> that was set by IF
00:55:18 <ehird> which, of course, makes it then run the a b c
00:55:20 <ehird> see? simple
00:55:27 <psygnisfive> im not entirely sure i follow D:
00:55:32 <psygnisfive> ill reread that tho
00:55:32 * oklofok neither
00:55:34 <psygnisfive> so
00:55:43 <ehird> psygnisfive: which part was confusing?
00:55:51 <psygnisfive> nevermind
00:55:52 <psygnisfive> what operations would you say are absolutely necessary?
00:55:57 <oklofok> oh
00:56:01 <ehird> stack ones
00:56:02 <oklofok> well it was pretty clear actually
00:56:03 <ehird> arithmetic
00:56:12 <ehird> and branching
00:56:14 <oklofok> i more like assumed it was a bad explanation because i didn't feel like reading it properly
00:56:15 <psygnisfive> ok.
00:56:18 <ehird> that's just about it
00:56:22 <ehird> psygnisfive: what was confusing ?
00:56:32 <psygnisfive> stack ones like push, pop, and swap?
00:56:38 <ehird> yep
00:56:39 <ehird> and rot
00:56:40 <ehird> and stuff
00:56:42 <psygnisfive> ehird, dont worry. its confusing because i didnt run it in my head
00:56:43 <psygnisfive> rot?
00:56:46 <ehird> rotate
00:56:53 <ehird> i forget the exact stack diagram
00:56:56 <psygnisfive> i think i know what that means
00:57:00 <ehird> psygnisfive: basically you need to be able to fetch arbitrary stuff from the stack
00:57:03 <ehird> the simplest way is
00:57:07 <ehird> N pick
00:57:09 <ehird> which means
00:57:11 <ehird> 0 = top of stack
00:57:13 <ehird> 1 = one down
00:57:13 <ehird> etc
00:57:16 <oklofok> psygnisfive: well it's pretty ugly what he described, you shouldn't branch on the code, it's not pure you know.
00:57:18 <ehird> it picks the Nth element of the stack
00:57:21 <ehird> takes it from its currnet position
00:57:22 <ehird> and moves it to the top
00:57:27 <ehird> oklofok: it's simple
00:57:28 <ehird> and easy
00:57:36 <oklofok> you should do it purely functionally, because that's so much zenner.
00:57:45 <oklofok> ehird: did he ask for something easy?
00:57:48 <psygnisfive> oklofok: don't know how :P
00:57:49 <ehird> yes
00:57:52 <ehird> besides
00:57:54 <ehird> it's a cpu
00:57:56 <ehird> they aren't purely functional.
00:58:16 <oklofok> ehird: stop being realistic and begin being pure
00:58:29 <oklofok> clense yourself
01:00:12 <oklofok> psygnisfive: well essentially do it like underload
01:00:16 <oklofok> it's pretty pure
01:00:22 <oklofok> in fact maybe just have underload?
01:00:38 <oklofok> or that ...what's the opposite of extension... of it
01:00:39 <psygnisfive> :P
01:00:41 <ehird> sigh
01:00:49 <ehird> imperative stack based is the simplest way, really
01:00:52 <ehird> psygnisfive: i'll tell you
01:00:52 <ehird> tomorrow
01:00:53 <ehird> ok?
01:01:00 <psygnisfive> sure
01:01:12 <oklofok> there's nothing to tell, i refuse to believe there was something here he didn't understand
01:01:48 <oklofok> ehird: yes, it's the simplest, but what about the puppies?
01:02:07 <oklofok> you really want them to live in a world without purity?
01:02:27 <oklofok> i mean killing puppies just so the rest get scared isn't that nice
01:02:31 <oklofok> it's horrible
01:02:40 <oklofok> so
01:02:48 <oklofok> i think i'm gonna read a comic now
01:02:49 <oklofok> ->
01:10:13 <oklofok> done
01:10:45 <oklofok> i actually read more like 50, but my internet is broken now, also maybe sleep
01:10:46 <oklofok> carry on
01:10:50 <oklofok> ~>
03:00:22 -!- olsner has quit (Read error: 110 (Connection timed out)).
03:29:38 <CakeProphet> I think I'm going to write factorial for bugSophia
03:55:51 -!- Sgeo has joined.
04:14:59 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
04:30:34 -!- CakeProphet has joined.
05:50:44 <bsmntbombdood> <oklofok> of course, bsmntbombdood might not really be a nerd, but anyway.
05:50:45 <bsmntbombdood> lies
05:51:19 <Slereah_> Prove your nerdity, bsmntbombdood
05:51:40 <bsmntbombdood> how
05:51:50 <Slereah_> Say something nerdy
05:51:56 <bsmntbombdood> no
05:52:04 <Slereah_> You are no nerd
05:52:20 <bsmntbombdood> lies
05:52:26 <Slereah_> no
05:53:13 <bsmntbombdood> and anyway, why were you talking about my [lack of a] sex life?
05:53:51 <Slereah_> It arouses me to think of it
05:54:02 <bsmntbombdood> oh well that's good to know
06:30:16 -!- bsmntbombdood has changed nick to grndlvlbombdood.
06:33:23 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
06:40:01 <grndlvlbombdood> Slereah_: hey baby
06:50:34 -!- olsner has joined.
07:22:00 -!- psygnisf_ has joined.
07:32:38 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
07:59:22 -!- oklofok has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:18:45 -!- olsner has quit (Remote closed the connection).
08:38:07 -!- GreaseMonkey has quit ("e disasterous.").
08:40:07 -!- oklopol has joined.
09:13:11 <AnMaster> ehird, I did some plotting on the timings you gave me yesterday
09:13:17 <AnMaster> ehird, quite interesting
09:13:36 <AnMaster> however two runs near the end take much longer, any clue why?
09:13:53 <AnMaster> as in "more than twice as long"
09:19:36 <AnMaster> hm
09:19:48 <AnMaster> twice as much system time then and much lower CPU usage
09:19:54 <AnMaster> well I guess something else ran then
09:26:17 <oklopol> it's not a realistic benchmark unless you have a torrent program and a few flash games in the background
09:37:15 <AnMaster> oklopol, haha
09:44:22 <AnMaster> bbl
10:22:15 -!- ais523 has joined.
10:30:28 -!- ais523_ has joined.
10:30:28 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
10:53:17 -!- ais523_ has changed nick to ais523.
11:26:38 -!- Corun has joined.
13:46:55 -!- Corun has quit (Read error: 110 (Connection timed out)).
14:02:47 -!- fungot has quit (Remote closed the connection).
14:08:39 <oklopol> o
14:08:45 <ais523> oko
14:08:54 <fizzie> Oh noes. Forgot the bot completely.
14:11:35 <ehird> hi ais523
14:12:05 <ais523> hi ehird
14:12:36 <ehird> still on US time?
14:12:48 <ehird> AnMaster: Yeah, stuff was running for those slow runs.
14:13:01 <ais523> ehird: no
14:13:02 <ais523> I reset last night
14:13:17 <ehird> good now explain :-P
14:13:35 <ais523> well, it was a gradual process
14:13:44 <ais523> a few nights ago, my sister went back to school
14:13:48 <ais523> and she had loads of homework to do
14:13:51 -!- fungot has joined.
14:13:54 <ais523> because she hadn't done it during the holiday
14:13:56 <ais523> hi fungot
14:13:57 <fungot> ais523: ah. ok. 8. i'd prefer ' r5rs,' by the mit peeps my concatenative lang
14:14:17 <ais523> her/y mother was upset that she was staying up so late
14:14:24 <ais523> so she was telling her to go to bed all through the night
14:14:26 <ais523> keeping me awake
14:14:34 <ais523> so it reached morning, and I still hadn't gone to sleep
14:14:50 <ais523> that gave me a time offset from local time of several hours, so I was effectively on US time
14:14:59 <ais523> I went to bed through the day because I had to get sleep some time
14:15:11 <ais523> then in the evening, decided I needed to use the Internet, so I went round to a relative's house
14:15:18 <ais523> that night it was really really cold
14:15:28 <ais523> so much so that walking home would have been dangerous due to all the ice
14:15:31 <ais523> so I stayed there overnight
14:15:44 <ais523> staying online to avoid having to sleep there
14:15:50 <ehird> insomnia != living on US time, surely
14:16:02 <ais523> ehird: well, I was sleeping the right amount
14:16:04 <ehird> i've been up for I think max around 40 hours at a time
14:16:06 <ais523> the day after too
14:16:11 <ais523> just through the day
14:16:12 <ehird> my hypothesis is that lack of sleep is the most psychedelic drug ever
14:16:14 <ehird> it was bizarre
14:16:18 <ehird> also, heh
14:16:24 <ehird> yeah
14:16:28 <ehird> when I was up 40 hours I started talking about recursive campfires.
14:16:54 <ais523> 40 isn't all that much
14:16:59 <oklopol> i can do that after much less
14:16:59 <ais523> that's just missing one night's sleep, I've done that before
14:17:31 <oklopol> i've done about 38, don't recall a longer instance
14:18:43 <ehird> ais523: yeah, but i suck without sleep.
14:18:48 <oklopol> or was it 48
14:19:56 <oklopol> well dunno, i just remember it wasn't psychedelic, i was just a bit tired so i went to sleep.
14:51:10 -!- Corun has joined.
14:56:59 -!- jix has joined.
15:07:32 -!- oerjan has joined.
15:11:32 <ehird> 12:26:18 <lament> what's J anyway?
15:11:32 <ehird> 13:34:57 <mtve> http://en.wikipedia.org/wiki/J_programming_language
15:11:34 <ehird> 13:39:02 <lament> That's horrible.
15:11:36 <ehird> -- 2004-04-04
15:11:54 <oerjan> innocence betrayed.
15:12:04 <ehird> ooh
15:12:06 <ehird> the oerjanputer
15:12:11 <ehird> it lives!
15:12:19 <oerjan> DON'T EVEN THINK ABOUT IT
15:12:23 <ehird> # LIST
15:12:35 <oerjan> (thinking about the oerjanputer can drive you insane)
15:12:38 <ehird> :D
15:12:39 <ehird> 00:00:00 --- log: started esoteric/04.09.09
15:12:39 <ehird> 23:59:59 --- log: ended esoteric/04.09.09
15:12:44 <ehird> that was an eventful day
15:13:05 <ehird> 22:44:25 --- quit: ChanServ (ACK! SIGSEGV!)
15:13:08 <ehird> -- 2004-09-07
15:13:26 <oerjan> ./ ../ BUNNIES/ CUTE_BUNNIES/ UNIV/
15:13:35 <ehird> # LIST BUNNIES & CUTE_BUNNIES
15:14:00 <oerjan> ESCAPE_REALWORLD@ HASTUR HASTUR HASTUR AAAAAAAAAAAAAAAAAAAAAAA
15:15:13 <ehird> # SAFELEVEL=OFF & SUDO OBLITERATE /FORCE BUNNIES & CUTE_BUNNIES
15:15:39 <lament> force bunnies?
15:15:43 <oerjan> DONE.
15:15:44 <lament> that's perverted.
15:15:47 <ehird> # LIST
15:15:49 <ehird> lament: very.
15:15:55 <oerjan> ./ ../ .../ UNIV/
15:16:04 <ehird> # LIST ..
15:16:46 <oerjan> ./ ../
15:16:59 <ehird> # LIST ...
15:17:09 <oerjan> ESCAPE_REALWORLD@ HASTUR HASTUR HASTUR AAAAAAAAAAAAAAAAAAAAAAA
15:17:50 <ehird> # SAFELEVEL=OFF & SUDO OBLITERATE /FORCE /FOREVERMORE /COMPLETELY_DESTROY ...
15:18:02 <oerjan> DONE.
15:18:11 <ais523> I thought sudo didn't work in allcaps
15:18:13 <ehird> # LIST
15:18:17 <ehird> ais523: this is oerjanix
15:18:20 <oerjan> ./ ../ UNIV/
15:18:23 <ais523> and sudo obliterate there reminded me of darcs obliterate
15:18:33 <ehird> # LIST .; THEN LIST ..; THEN LIST UNIV
15:18:34 <ais523> meaning... sudo is now a version control system?
15:18:35 <oerjan> IT IS VERY DARC INDEED
15:18:46 <oerjan> ./ ../ univ/
15:18:50 <oerjan> OOPS
15:18:54 <oerjan> DARN CAPSLOCK
15:18:55 <lament> what shell is this?
15:19:09 <ehird> lament: oerjanjix oerjellshell v1.4
15:19:10 <ais523> let's find out
15:19:10 <oerjan> ./ ../ .../
15:19:12 <ehird> *oerjanix
15:19:13 <ais523> # VER
15:19:21 <ehird> ais523: he did this yesterday
15:19:21 <oerjan> SAVED_STATE/
15:19:22 <ais523> if that errors, it isn't the dos shell
15:19:23 <ehird> this computer runs the universe.
15:19:27 <ais523> # @
15:19:31 <ais523> and if that errors, it isn't tcsh
15:19:36 <lament> # TOUCH UNIV
15:19:42 <ehird> # SUDO SHUT UP
15:19:44 <ehird> # UNVRS
15:19:50 <ehird> hmmmmmmmmm
15:20:00 <ehird> FINESTRUCTURE= i
15:20:02 <ehird> START
15:20:05 <oerjan> YOU TOUCH THE UNIVERSE. YOU FEEL DIRTY.
15:20:08 <ehird> (See: Yesterday's logs)
15:20:40 <oerjan> SILENT MODE ON
15:20:46 <ehird> nooooo
15:20:53 <ehird> # SUDO START TALKING AGAIN
15:20:58 <oerjan> SILENT MODE OFF
15:21:02 <ehird> yay
15:21:09 * ehird waits to universe simulation to start
15:21:14 <ais523> # CHROOT /..
15:21:24 <ehird> stop breaking it.
15:21:29 <ais523> ehird: that's not breaking it
15:21:29 <ehird> i'm running UNVRS.
15:21:32 <ehird> yes it is
15:21:34 <oerjan> COMMAND NOT AVAILABLE
15:21:34 <ehird> we're in UNVRS shell
15:21:40 <ais523> that's jumping out of the box
15:21:45 <ehird> no box
15:21:48 <ehird> that's the whole computer
15:21:49 <ais523> chrooting to /.. is going to the directory outside the root directory
15:21:57 <ehird> now stfu, I'm running UNVRS>
15:21:58 <oerjan> TIME IS CYCLIC
15:22:03 <ais523> which is how you get computers to attain enlightenment
15:22:06 <ehird> oerjan: awesome
15:22:15 <lament> # DATE
15:22:20 <ehird> lament: we're not in a shell.
15:22:26 <ehird> we're in unvrs, dammit. read the docs.
15:22:38 <lament> sure, it should have date though
15:22:57 <oerjan> DATES ARE MEANINGLESS
15:23:00 <ehird> i wonder what will be invented this time around
15:23:00 <lament> see?
15:23:01 <ais523> sudo chroot /.. actually worked for me
15:23:03 <ehird> oerjan: what's happening now
15:23:13 <ais523> but I just ended up in the original root directory, AFAICT
15:23:14 <lament> # DATE CTHULHU
15:23:24 <ehird> sheesh. you all have ADHD.
15:23:25 <oerjan> NO CTHULHU FOUND
15:23:30 <ehird> oerjan: how goes the universe?
15:23:46 <oerjan> UNIVERSE COLLAPSES. LIFE IGNORES THIS.
15:23:48 <ais523> if it doesn't have cthulhu in, it's probably saner than the real one
15:23:58 <lament> # SUDO SUMMON CTHULHU; THEN DATE CTHULHU
15:24:10 <oerjan> CTHULHU IS NOT INTERESTED IN A DATE
15:24:17 <lament> :(
15:24:22 <oerjan> THINKS YOU LOOK TASTY WITH KETCHUP, THOUGH
15:24:33 <lament> even the old ones reject me
15:24:34 <ehird> sheesh, UNVRS is boring today.
15:24:38 <ehird> ^DSHUTDOWN<ENTER>
15:24:48 <oerjan> *BURP*
15:25:08 * ehird boots up oerjanputer
15:25:14 <ehird> # IGNOREALLCOMMANDS /EXCLUDE=UNVRS
15:25:15 <oerjan> *YAWN*
15:25:17 <ehird> # UNVRS
15:25:27 <ehird> FINESTRUCTURE= FINESTRUCTURE [RECURSIVE=ON]
15:25:29 <ehird> START<ENTER>
15:25:39 <ais523> # FIND DELICIOUSCAKE
15:25:47 <oerjan> COMMAND IGNORED
15:25:56 <ehird> # SUDO SHUTUP FORCOMMAND=IGNORED
15:26:02 <ehird> yay, peace and quiet
15:26:06 <ehird> well, apart from unvrs.
15:26:29 <oerjan> GALAXIES FORM
15:26:42 <oerjan> LITTLE GALAXIES FORM INSIDE GALAXIES
15:26:44 <ehird> i like how the fine structure constant doesn't ever change the fundamentals XD
15:26:47 <ehird> ooh
15:26:49 <ehird> fractal world
15:26:53 <ehird> verrrrry interesting
15:27:08 <oerjan> MICROSCOPIC GALAXIES FORMED
15:27:10 <ehird> :DD
15:27:30 <oerjan> GALACTIC TRADE UNION FORMED
15:27:51 <oerjan> TAXES INVENTED
15:27:54 <ehird> dammit
15:27:55 <ehird> wait
15:28:00 <ehird> oerjan: are they fractal taxes?
15:28:05 <oerjan> OF COURSE
15:28:31 <ehird> ok, I await the fractal revolution
15:28:43 <oerjan> IRS FORMS OUTLAWED, TOO COMPLICATED
15:28:47 <ehird> :D
15:29:07 <ehird> oerjan: and then?
15:29:35 <oerjan> MICROGALACTIC ORGANELLES EVOLVE TO PAY TAXES, SAVING WORK
15:29:54 <ehird> :D
15:30:03 <ehird> oerjan: nobody actually does work/
15:30:09 <ehird> they delegate it to their subgalaxy?
15:30:10 <ehird> :D
15:30:15 <ehird> to an infinite level?
15:30:23 <oerjan> PHILOSOPHY INVENTED DUE TO LOTS OF SPARE TIME
15:30:37 <ehird> very good
15:30:56 <oerjan> THEORY THAT "ALL IS TAXES" GAINS GROUND
15:31:16 <ehird> are taxes taxes?
15:31:19 <oerjan> (ALTHOUGH "GROUND" DOES NOT ACTUALLY EXIST)
15:31:22 <oerjan> OF COURSE
15:32:00 <oerjan> THEORY THAT "ALL IS GALAXIES" DISMISSED AS TOO MATERIALISTIC
15:32:25 <oerjan> DEATH INVENTED AS DUAL TO TAXES
15:32:32 * ehird awaits Recursive Theory
15:32:46 <oerjan> DEATH PROVES VERY UNPOPULAR
15:32:53 <ehird> DEATH ABOLISHED
15:33:29 <oerjan> DEATH MINIMIZED; ABOLISHING IT COMPLETELY WOULD ALSO ABOLISH TAXES, WHICH IS BELIEVED TO BE BAD
15:33:51 <ehird> TAXES ARE POPULAR?
15:34:41 <oerjan> TAXES ARE THE FOUNDATION OF PSYCHOLOGY; ABOLISHING THEM IS BELIEVED TO MEAN THE END OF INTELLIGENCE
15:34:59 <ehird> TELL ME MORE ABOUT "TAXOLOGY"
15:35:45 <oerjan> THE BRAIN WORKS BY TAXING NEUROGALAXIES, WHICH AGAIN TAX MICROGALACTIC ORGANELLES (SEE ABOVE)
15:36:05 <ehird> AHA
15:36:07 <ehird> CONTINUE
15:36:32 <oerjan> FLAT TAX INVENTED
15:36:52 <ehird> how are taxes enforced?
15:37:14 <oerjan> FLAT TAX OUTLAWED AS CAUSING BRAIN DAMAGE
15:37:37 <ehird> :D
15:37:43 <oerjan> TAXES ARE A FUNDAMENTAL LAW OF NATURE, IT IS MEANINGLESS TO ASK "WHY"
15:38:14 <oerjan> ALIEN CIVILIZATION DISCOVERED
15:38:32 <oerjan> TO THE IMMENSE SURPRISE OF EVERYONE, HAS NO TAXES
15:38:41 <ehird> :D
15:38:55 <oerjan> PLENTY OF DEATH THOUGH. WAR ENSUES.
15:39:04 <ehird> TAXES ABOLISHED?
15:39:44 <oerjan> ZEN INVENTED, UNDER THE SLOGAN "DEATH TO TAXES"
15:39:48 <ehird> :D
15:39:59 <oerjan> ZEN IS TAXED TO DEATH
15:40:41 <oerjan> PEACE DEAL FORMED WITH ALIEN CIVILIZATION
15:40:59 <ehird> :D
15:41:09 <ehird> are taxes still common?
15:41:17 <oerjan> ZEN LEGALIZED AGAIN AS PART OF PEACE DEAL. GOLDEN AGE OF ENLIGHTENMENT.
15:41:54 <ehird> woop
15:41:56 <lament> who is the ultimate beneficiary of taxes?
15:42:06 <ehird> lament: the universe
15:42:10 <ehird> fractal, remember?
15:42:24 <oerjan> PHILOSOPHY NOW BASED ON THE BALANCE OF DEATH AND TAXES. DIFFERENT SOCIETIES CHOOSE DIFFERENT BALANCE LEVELS
15:42:35 <ehird> :D
15:43:39 <oerjan> EXCESSIVE ZEN SHOWN TO CAUSE FLAT TAXES. ZEN PHILOSOPHERS DECLARE THIS ULTIMATE GOAL OF EXISTENCE.
15:43:44 <ehird> :O
15:44:42 <oerjan> MATHEMATICIAN HYPOTHESIZES FLAT DEATH. TRAMPLED UNDER FOOT BY RELIGIOUS MOB.
15:44:52 <ehird> lol
15:44:55 <ehird> what is the religion?
15:45:30 <oerjan> EVANGELICAL TAXOLOGY
15:45:48 <oerjan> DEATH CULTS ALSO COMMON
15:45:53 <ehird> :
15:45:53 <ehird> :D
15:46:55 <oerjan> MATHEMATICIAN INVENTS FRACTAL THEORY. PUBLICATION REFUSED AS "TOO OBVIOUS"
15:47:26 <ehird> :DD
15:47:31 <oerjan> MATHEMATICIANS FOUND TO CAUSE TOO MUCH TROUBLE, OUTLAWED.
15:47:58 <ehird> D:
15:48:08 <Slereah_> choo choo
15:48:39 <oerjan> MATHEMATICS RELEGATED TO COMPUTERS. DEVELOP SENTIENCE.
15:48:55 <oerjan> WAR ENSUES.
15:49:27 <ehird> :D
15:49:33 <oerjan> COMPUTERS OUTLAWED, EXCEPT FOR SIMPLE FLASH GAMES.
15:50:14 <ehird> :D
15:50:42 <oerjan> BIOLOGISTS DISCOVER COMPUTERS HAVE TAKEN OVER THE LOWER FRACTAL LEVELS, WHERE THEY WON THE WAR
15:51:45 <oerjan> THIS CAUSES COSMOLOGISTS TO LOOK MORE CLOSELY AT UPPER LEVELS. TENTACLES DISCOVERED. STOP LOOKING.
15:51:52 <oerjan> VERY CAREFULLY.
15:51:56 <ehird> :D
15:53:05 <oerjan> REPLACEMENT OF ORGANELLES BY COMPUTERS CAUSES NEW FUNDAMENTAL THEORY OF "ACCOUNTING"
15:53:57 <oerjan> AS MILLENNIA PASS, ORIGINAL TAX THEORY FORGOTTEN, TAXES ARE NOW CONSIDERED AN EMERGENT PROPERTY OF ACCOUNTING
15:54:04 <Slereah_> ALL CAPS HEADLINES INCLUDING COMPUTERS
15:54:46 <oerjan> PEOPLE ARE VAGUELY AWARE THAT SOMETHING DISTURBING EMERGES FROM TAXES. NEW ATTEMPT TO OUTLAW TAXES. MUCH CARNAGE.
15:55:25 <ehird> :D
15:55:38 <ehird> oerjan: how long until management?
15:56:09 <oerjan> PHILOSOPHY CLAIMS THAT TAXES MANAGE THEMSELVES, AS LONG AS YOU DON'T LOOK TOO CLOSELY.
15:56:17 <ehird> :D
15:57:31 <oerjan> AN ATTEMPT TO CREATE A UNIFIED THEORY OF THE UNIVERSE AT ALL LEVELS IS PUBLISHED
15:57:53 <oerjan> MAIN RESULT IS A POPULAR FLASH GAME ABOUT FIGHTING TENTACLED MONSTERS
15:58:28 <ehird> :DDD
15:58:58 <ehird> oerjan: ^D SAVE STATE; SHUTDOWN
15:59:04 <oerjan> *BURP*
15:59:28 * ais523 merges the AnMaster branch of C-INTERCAL with the mainline
16:11:41 <ehird> 08:47:31 <GregorR> Sometime this week, I will have an esoteric OO programming language ... because the world needs one (other than Java ahaha)
16:11:44 <ehird> - 2005
16:12:10 <ais523> ORK?
16:13:06 <Slereah_> HOOOORK
16:13:10 <Slereah_> bork bork
16:14:53 -!- jix has quit ("...").
16:22:58 <AnMaster> ais523, nice
16:23:23 <ehird> ais523: ork yes
16:23:35 <ais523> AnMaster: the build still needs a bit of tweaking to get the IFFI stuff working
16:23:46 <ais523> but I didn't mind merging that into mainline because mainline failed at that before
16:24:08 <AnMaster> ais523, well yes I didn't try to integrated it into automess
16:24:34 <ais523> I don't blame you
16:29:19 <ehird> hmm
16:29:22 <ehird> what's english's medium word length?
16:29:32 <ehird> 5?
16:29:56 <Slereah_> What do you mean by that, ehird?
16:30:04 <ehird> Medium world length.
16:30:18 <Slereah_> Mean length as used in sentence, or mean length using every word in the language?
16:30:47 <ehird> Idunno
16:31:55 <AnMaster> * ehird considers saying fuck it to the modern invention of hypertext and instead publish articles as .txt <-- on gopher
16:32:00 <AnMaster> :D
16:32:05 <ehird> AnMaster: Asztal already said that
16:32:07 <ehird> could you stop being optbot?
16:32:14 <AnMaster> ehird, didn't know he did
16:32:25 <Slereah_> .txt is actually a pretty good format
16:32:26 <ehird> few lines after
16:32:39 <ais523> Slereah_: which .txt?
16:32:42 <ais523> it's pretty nonportable
16:32:58 <Slereah_> Is it?
16:33:00 <AnMaster> k, well I don't feel well, just had a bleeding nose
16:33:01 <AnMaster> ...
16:33:05 <oerjan> text/plain?
16:33:06 <Slereah_> Never had any problem opening any txt
16:33:07 <AnMaster> well, *
16:33:10 <ais523> Slereah_: try opening a .txt file created with UNIX on Notepad
16:33:21 <ais523> there are two main incompatibilities
16:33:23 <Slereah_> ais523 : Give me one, then
16:33:24 <AnMaster> ais523, that works fine, but may not do what you want
16:33:26 <ais523> line endings, and character encodings
16:33:27 <Slereah_> Because I don't have any
16:33:36 <ais523> ok, I'll dig one up and send it to you
16:33:49 <Slereah_> Owait, you mean the ones with the squares for line feed?
16:34:10 <AnMaster> ais523, I did manage to get windows to read utf8 once, not sure how
16:34:12 <ais523> yes
16:34:14 <AnMaster> think it was notepad even
16:34:15 <Slereah_> Ah yes
16:34:19 <ais523> AnMaster: Notepad can read UTF8
16:34:19 <ehird> it does by default
16:34:23 <Slereah_> I usually open them with wordpad
16:34:28 <ais523> it's just it tries to detect the format by default
16:34:30 <AnMaster> ais523, well by default it tries UTF16
16:34:30 <ehird> \n is the One True Newline.
16:34:31 <ais523> and sometimes gets it wrong
16:34:43 <ais523> AnMaster: it doesn't try anything in particular by default, its default is to guess
16:34:48 <AnMaster> ehird iirc mac (used to?) use \r only?
16:34:49 <ais523> and its guessing algorithm used to be pretty bad
16:34:50 <Slereah_> What does Unix use for newline?
16:34:52 <ais523> IIRC it's better now
16:34:54 <AnMaster> Slereah_, LF
16:34:55 <ais523> Slereah_: ASCII 10
16:34:58 <ehird> AnMaster: os 9 and previously
16:34:58 <ais523> normally represented as \n
16:35:01 <ehird> i.e, dinosaur
16:35:06 <oerjan> ehird: \n is not necessarily ascii 10
16:35:07 <ais523> Mac OS Classic used ASCII 13
16:35:10 <AnMaster> ehird, yes I have such a mac somewhere
16:35:12 <Slereah_> ew
16:35:12 <ehird> oerjan: yeah yeah yeah :P
16:35:16 <ais523> oerjan: \n is ASCII 10 on UNIX, though
16:35:20 <ehird> not in C
16:35:23 <AnMaster> ehird, first model ibook, OS 8 iirc
16:35:26 <ehird> in C it's implementation-defined
16:35:29 <ais523> ehird: yes
16:35:42 <ais523> it's defined to 10 on nearly all modern systems though, even Windows
16:35:47 <ais523> because it's defined as a single character
16:36:05 <AnMaster> ais523, really? so what does putchar('\n'); do on windows?
16:36:06 <ais523> Does Mac OS 9 have \n as 13, I wonder?
16:36:16 <ais523> AnMaster: it depends on whether the file's in text mode or binary mode
16:36:29 <ais523> putchar('\n') and putchar(10) both write \r\n to a text-mode file
16:36:33 <ais523> and \n to a binary-mode file
16:36:39 <AnMaster> ais523, well if you really really want it I could find that old mac and fire up MPW on it (Macintosh Programmer Workshop)
16:36:53 <ais523> AnMaster: probably Googling would find me the answer faster
16:37:02 <AnMaster> ais523, most likely
16:39:05 <AnMaster> ais523, hm what about mmap()ed files? iirc windows have something like it but with some weird name, like MapFileInMemoryExW(page_handle, file_handle, handle_handle, other_handle, &some_struct, &some_other_struct);
16:39:10 <AnMaster> or whatever
16:39:26 <ais523> it's almost certainly got an HWIN in there somewhere too
16:39:37 <AnMaster> ais523, isn't that for gui stuff?
16:39:51 <AnMaster> I mean why would mapping a file need a window handle?
16:40:02 <AnMaster> even MS can't be *THAT* silly
16:40:12 <AnMaster> or can they?
16:43:11 <AnMaster> # cat "/usr/share/man/leep .25000"
16:43:11 <AnMaster> dc(1) dc(1)
16:43:12 <AnMaster> wtf
16:43:21 <AnMaster> it is a formatted copy of the dc man page
16:43:25 <AnMaster> that makes 0 sense
16:43:40 <AnMaster> from 2005
16:43:47 <AnMaster> according to mtime
16:43:49 <flexo> that'd be CreateMapping() and MapViewOfFile() or so
16:43:54 <flexo> no window handle though
16:43:59 <AnMaster> flexo, you forgot the Ex
16:44:06 <flexo> possibly
16:44:17 * AnMaster sticks with the simple POSIX API
16:44:33 <AnMaster> flexo, I assume the first returns a handle?
16:44:38 <flexo> ofcourse
16:44:43 <AnMaster> sigh
16:44:50 <AnMaster> what is wrong with a pointer
16:44:56 <AnMaster> for something that is mapped in memory
16:45:07 <flexo> well
16:45:11 <AnMaster> I mean, if you want to use the mapping you need to know the base pointer
16:45:13 <flexo> a mapping is not yet mapped in memory
16:45:20 <AnMaster> why not make malloc() return a handle instead?
16:45:25 <flexo> it's just a .. weird.. object .. thingie.. with which you can build a mapping :)
16:45:42 <AnMaster> flexo, can you use it for anything else?
16:45:53 <flexo> good question
16:45:55 <flexo> i never did
16:46:13 <AnMaster> flexo, well if not it seems like it would have been smarter to combine them into one single call
16:46:46 <AnMaster> flexo, do you load the file with the first one or?
16:46:50 <flexo> ah
16:46:53 <flexo> it's actually CreateFileMapping
16:47:06 <AnMaster> wait... "CreateFileMapping" and then "MapViewOfFile"?
16:47:29 <AnMaster> that would be rather odd
16:47:35 <flexo> yes
16:47:54 <flexo> as i read msdn i think the point is that you can use a file mapping for shm
16:48:01 <flexo> which is not really a file mapping
16:48:07 <flexo> because it has nothing to do with files
16:48:10 <flexo> but it can be named
16:48:21 <AnMaster> shm_open() on *nix I think
16:48:21 <flexo> i suppose that's the reason i thought the API was called CreateMapping
16:48:24 <AnMaster> though I never used it
16:48:42 * AnMaster enters man 7 shm_overview
16:48:54 <AnMaster> and that takes much less time to load than MSDN!
16:49:37 <flexo> hm. nope. i was wrong.
16:49:42 <flexo> i have no idea what this madness is about
16:49:42 <AnMaster> oh?
16:49:48 <AnMaster> void *mmap(void *addr, size_t length, int prot, int flags,
16:49:48 <AnMaster> int fd, off_t offset);
16:49:48 <AnMaster> int munmap(void *addr, size_t length);
16:49:53 <AnMaster> quite a lot of args yes
16:49:57 <AnMaster> a bit too many IMO
16:50:03 <ais523> flexo: absolutely everything in Windows requires a window handle, it seems
16:50:05 <flexo> it seems to only way to get a pointer from a filemapping is to actually call MapViewOfFile
16:50:09 <ais523> IIRC even thread creation does
16:50:12 <ais523> although I might be wrong on that
16:50:14 <AnMaster> well for mmap() you want to leave the first one as NULL usually
16:50:19 <flexo> ais523: no.
16:50:20 <AnMaster> unless you are doing something VERY weird
16:50:32 <flexo> AnMaster: you mean fun
16:50:57 <AnMaster> flexo, well I can't see any reason for a userland program to need to mmap() to a specific address in it's address space
16:51:03 <AnMaster> simply no reason at all
16:51:05 <flexo> well
16:51:08 <flexo> i'll give you an example
16:51:14 <AnMaster> and mmap() isn't used *inside* kernel
16:51:19 <AnMaster> where there _are_ reasons
16:51:26 <flexo> oh, no, that was a fun mprotect() example. well. another example.
16:51:28 <AnMaster> like DMA and what not
16:51:31 <flexo> no no
16:51:34 <flexo> there are *fun* examples
16:51:43 <fizzie> jitfunge uses a fixed-address mmap.
16:52:06 <flexo> ah yes, MINE
16:52:09 <flexo> (mine is not an emulator)
16:52:15 <flexo> a MenuetOS compatibility wrapper i wrote for linux
16:52:15 <AnMaster> fizzie, that is basically unportable, because it is very hard to know what might be free. Also why would you need it to a specific address?
16:52:33 <flexo> iirc menuet os binaries expect to be loaded at 0x00000000
16:52:34 <AnMaster> flexo, hm?
16:52:44 <flexo> so you really need to map them there
16:53:11 <flexo> also needed to adjust the segment registers, trap segfaults, scan for the INT instructions...
16:53:15 <flexo> that was fun.
16:53:22 <AnMaster> flexo, hm if you want to do virtualization you will probably end up with a kernel module anyway?
16:53:29 <flexo> but you don't need to
16:53:34 <flexo> wine works fine in userspace too
16:53:49 <AnMaster> flexo, that is because wine doesn't do that, wine just emulates the API
16:53:50 <fizzie> AnMaster: It's for the stack; it's mmaped to a suitably "very far out" address so that it's more likely it can grow without hitting anything else. It does fall back to a non-fixed-address call if it fails, though.
16:53:59 <flexo> AnMaster: no, wine does a lot of mmap() magic
16:54:10 <flexo> the wine-loader does
16:54:25 <AnMaster> flexo, well why would it need to? iirc *.dll are relocatable
16:54:34 <AnMaster> not PIC though
16:55:03 <flexo> hm.
16:55:05 <flexo> well, they are
16:55:25 <flexo> but i assume there are lots of apps that expect the memory layout to be the win32 one
16:55:35 <AnMaster> flexo, also this is very likely to break because position of *.so like libc.so are (in recent linux kernels at least) placed randomly
16:55:37 <AnMaster> for security
16:55:43 <fizzie> The executables themselves aren't position-independent either.
16:56:01 <flexo> AnMaster: yes, these changes have always caused trouble for wine
16:56:50 <AnMaster> flexo, well I think they only have themselves to blame for that
16:56:54 <flexo> i think wine-loaded actually remaps the libraries as a workaround today
16:56:57 <flexo> *loader
16:57:10 <flexo> AnMaster: huh?
16:57:11 <AnMaster> err, really? Can you do that?
16:57:14 <flexo> why not?
16:57:33 <flexo> as long as you do it before any actual code is run there should be no problem
16:57:37 <AnMaster> flexo, "<AnMaster> flexo, well I think they only have themselves to blame for that <flexo> AnMaster: huh?" <-- sounds like depending on undocumented behaviour to me
16:57:40 <fizzie> The address space layout randomization things also do not put things completely randomly; there's some bits of entropy there, but it's not completely random.
16:58:01 <flexo> AnMaster: not really. many aspects of the win32 memory layout are clearly defined.
16:58:02 <AnMaster> flexo, you would have to do it in the start-up code before main or such?
16:58:10 <flexo> AnMaster: ofcourse
16:58:18 <AnMaster> flexo, well I mean on linux, since it needs to deal with the way linux works
16:58:33 <ehird> uhh, but it's a windows app
16:58:34 <AnMaster> and relying on libc not being randomized would be stupid
16:58:50 <AnMaster> ehird, sure but wine itself is a linux elf binary, that runs windows apps
16:58:51 <flexo> AnMaster: yea well - the wine loading process if ofcourse one great hack
16:58:55 <flexo> but it works for a hell lot of applications
16:59:03 <AnMaster> ehird, which was the thing we were talking about
16:59:38 <flexo> ah, i remember one example why we need our own memory layout
16:59:40 <AnMaster> flexo, just doing cat /proc/self/maps shows that libc is loaded at widely different locations between different runs
16:59:54 <AnMaster> sometimes even outside 32-bit address space (this is amd64)
16:59:56 <flexo> in 9x times there is this "shared kernel memory" thing where all processes can read from
17:00:18 <AnMaster> so it would need to not link libc
17:00:22 <AnMaster> which would be quite a pain
17:00:48 <flexo> at 0x7e00000000 or something like that
17:00:54 <flexo> storing stuff like the tick counter
17:01:07 <flexo> those apps would break if a lib happened to be loaded there
17:01:40 <AnMaster> flexo, hm if you need to load at 0x0 you said, then how will you do that for mmap()? At least on x86 NULL == 0x0, and passing NULL as first parameter to mmap is defined to mean that the application don't care where the mapping is placed
17:01:54 <flexo> (disclaimer: i'm not 100% sure if wine actually implements that memory area, i think i filed a patch once, but i remember discussions about it. had nothing todo with memory layout however :)
17:02:03 <fizzie> There are just 8 bits of randomness in mmap() call results on a 32-bit Linux system. 28 bits on 64-bit.
17:02:27 <ehird> 14:29:34 <fizzie> I think I want a befunge variant with function calls (simple define-function-with-integer-name, call-function-n and return would suffice, although I'm not sure if there should be a way of having more than a single return value) and perhaps with a _really_ simple module system (load-a-file, which could export a set of functions).
17:02:29 <ehird> 14:29:53 <fizzie> I guess it'd be cheatey and unbefungey, but that'd be a language one could actually use for real-world applications.
17:02:36 <flexo> AnMaster: uhm. true. but i'm 100% certain that it's possible to map from 0 on
17:02:43 <AnMaster> flexo, how?
17:02:44 <flexo> maybe via a flag or something?
17:02:50 <flexo> or the syscall api is different?
17:03:00 <flexo> actually wine does this too
17:03:02 <AnMaster> MAP_FIXED maybe?
17:03:17 <flexo> when you run a 16bit binary it maps the first 1mb
17:03:24 <flexo> (for obvious reasons)
17:03:31 <flexo> MAP_FIXED
17:03:32 <flexo> Don't interpret start as a hint: place the mapping at exactly
17:03:32 <flexo> that address.
17:03:35 <flexo> looks that way?
17:03:47 <AnMaster> probably it means that 0x0 get a different meaning yes
17:04:14 <fizzie> ehird: I guess fungot sort-of means I don't need "befunge for functions" for "real-world" applications; but still.
17:04:15 <fungot> fizzie: sjamaan says: you damned fool. a fool who knows he is headed towards his destruction. but nevertheless, he eventually obtained them, and accessed them. suppose they'd add something to a very credible thing?
17:04:21 <flexo> ofcourse NULL pointer accesses would no longer be caught :)
17:04:34 <ehird> fizzie: link to fungot source?
17:04:35 <fungot> ehird: aside from just feeling dirty. the core elements are based on the context.
17:04:36 <ehird> :DD
17:04:37 <ehird> wanna fun it
17:04:39 <ehird> run
17:04:44 <AnMaster> fizzie, about those 8 bits... hm? how many bits are locked due to needing to map at start of a page?
17:04:54 <AnMaster> can't be the other 24...
17:05:16 <fizzie> AnMaster: it randomizes the 8 bits just above PAGE_SHIFT.
17:05:19 <AnMaster> a few bits sure, but not all of those, and you might have a few reserved at top and bottom
17:05:36 <AnMaster> fizzie, what is PAGE_SHIFT for? and where is it defined/documented
17:06:13 <fizzie> PAGE_SHIFT is something like log2(page size); -- I mean, that's what I'd expect. Haven't grepped.
17:06:35 <ais523> !help
17:06:39 <fizzie> I'm just reading arch/x86/mm/mmap.c:mmap_rnd for this.
17:06:42 <ais523> ^help
17:06:43 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
17:06:47 <ais523> ^show
17:06:47 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help
17:06:50 <ais523> ^source
17:06:50 <fungot> http://zem.fi/~fis/fungot.b98.txt
17:06:54 <ais523> ehird: there you go
17:07:10 <fizzie> The comment there says:
17:07:12 <fizzie> * 8 bits of randomness in 32bit mmaps, 20 address space bits
17:07:12 <fizzie> * 28 bits of randomness in 64bit mmaps, 40 address space bits
17:07:13 <ais523> fizzie: you should get fungot to respond to CTCP SOURCE
17:07:14 <fungot> ais523: in that respect it is a list
17:07:42 <ehird> now to figure out where to change its name
17:07:46 <fizzie> ais523: It should maybe also respond to CTCP VERSION, just in case freenode's automagical version-checker collects some hidden statistics.
17:07:56 <AnMaster> fizzie, hm indeed
17:07:59 <fizzie> ehird: You can change the nickname in the loader.
17:08:08 <ais523> I used to respond to Freenode's CTCP VERSION when I was using telnet by hnad
17:08:09 <ais523> *hand
17:08:12 <ais523> although it took me ages
17:08:12 <fizzie> ehird: Realname and username are the first occurance of "fungot" in the actual source.
17:08:12 <fungot> fizzie: they are not the brightest of bots
17:08:16 * ehird looks for loader
17:08:29 <AnMaster> ais523, how did you input the \1?
17:08:37 <ais523> control-A
17:08:38 <fizzie> I think I have some version of the loader as fungot-load-freenode.b98 in the same directory.
17:08:38 <fungot> fizzie: so set just affects a variable, while the sml examples implement their own regular expression library
17:08:40 <AnMaster> aha
17:08:41 <ais523> how else?
17:08:46 <AnMaster> ais523, no idea
17:08:53 <ais523> stdin tends to echo control codes if they don't mean anything to it
17:09:07 <ehird> Forbidden
17:09:07 <ehird> You don't have permission to access /~fis/fungot-load-freenode.b98 on this server.
17:09:08 <fizzie> "control-A A A", because you happened to be inside two nested screens. :p
17:09:08 <fungot> ehird: that's not the problem of separate compilation modular interface abstraction, it has fnord that's probably not much
17:09:13 <ehird> http://zem.fi/~fis/fungot-load-freenode.b98.txt
17:09:13 <fungot> ehird: how can anmaster do that?
17:09:17 <ehird> he can't
17:09:19 <AnMaster> what?
17:09:21 <AnMaster> do what?
17:09:31 * ehird saves as rungot
17:09:34 <ehird> geddit
17:09:34 <AnMaster> ehird, ?
17:09:35 <ais523> AnMaster: fungot said that, so it's probably out of context
17:09:35 <fungot> ais523: have your processor just accept sequences of parameters, like a bunny rabbit."
17:09:39 <ehird> AnMaster: it's fungot.
17:09:39 <AnMaster> well
17:09:39 <fungot> ehird: scheme48's module system that the code of the progrm itself or portions of it). it doesn't know.
17:09:40 <ehird> ramblings.
17:09:44 <AnMaster> hm
17:10:07 <AnMaster> ais523, it is a markov chain so probably didn't exist at all
17:10:15 <AnMaster> any original in that form I mean
17:10:16 <ais523> well, yes
17:10:30 <ais523> although it could be, its sufficiently short to be likely to be verbatim
17:10:35 <fizzie> ehird: You might need to create some files there too, maybe.
17:11:15 <fizzie> And incidentally, how does a bunny rabbit accept sequences of parameters?
17:11:31 <ehird> very evilly
17:11:37 <AnMaster> fizzie, sure you aren't fungot?
17:11:38 <fungot> AnMaster: i tried both gambit 4b13 and gambit 4b15, and surprisingly, the picture that won fnord ascii art contest wasn't even ascii art.
17:11:56 <ehird> i think i broke it
17:12:05 <AnMaster> fungot, obviously it was chess, not ASCII art...
17:12:05 <fungot> AnMaster: non matching blocks? we use those? just because of how heavily they're used, such as a macro
17:12:22 <AnMaster> though 4b13 makes no sense for chess
17:12:37 <AnMaster> nor anything else I know
17:13:13 <fizzie> If you're interested, it was wired's (the magazine, I assume) ascii art contest.
17:13:23 <ehird> v"ehird!n=ehird@eso-std.org"0<
17:13:26 <ehird> is that wrong?
17:13:38 <AnMaster> fizzie, what did it had to do with chess?
17:13:39 <fizzie> Make sure the < matches the v above.
17:13:56 <AnMaster> fizzie, I assume he can figure that out himself
17:14:02 <ehird> nope
17:14:04 <ehird> I didn't
17:14:11 -!- gunfot has joined.
17:14:12 <fizzie> AnMaster: Gambit's a Scheme implementation; 4b13 and 4b15 are version numbers.
17:14:18 <ehird> ^help
17:14:18 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
17:14:24 <AnMaster> ehird, changed prefix?
17:14:25 <ehird> wonder what prefix gunfot's on
17:14:35 <ehird> gunfot: yo man
17:14:37 -!- gunfot has quit (Remote closed the connection).
17:14:41 <fizzie> The prefix is in the loader too.
17:14:45 <AnMaster> ehird, no data file loaded?
17:14:47 <ehird> Command character:
17:14:47 <ehird> v ^' <
17:14:57 <ehird> What would that be then?
17:14:59 <ehird> oh
17:15:01 <ehird> ' is a character
17:15:12 <AnMaster> ehird, ' means read next char as string
17:15:18 <AnMaster> kind of
17:15:32 <ehird> fizzie: how do I get a data file thenz
17:15:40 <AnMaster> >'a is same as >"a"
17:15:52 <ais523> AnMaster: even with respect to tick count/
17:15:59 <AnMaster> ais523, no
17:16:01 <ais523> I thought 'a took one tick altogether
17:16:06 <AnMaster> ais523, and yes
17:16:08 <AnMaster> iirc
17:16:14 <ais523> whereas "a" is 3
17:16:20 <fizzie> ehird: Just define the commands you like, and then use *save, where * is your command character. It should create one there. Although you may need to have a subdirectory "data" in the current directory you're running it in.
17:16:27 <AnMaster> ais523, yes but fungot isn't using t, at least not in the loader
17:16:28 <fungot> AnMaster: mainly, yes. i see a xmlrpc lib for chicken and it wants to
17:16:34 <AnMaster> and last I looked not anywhere else either
17:16:37 <ehird> fizzie: Right, but how come it isn't working
17:16:59 <AnMaster> ehird, "help" is not built in, it is defined as a command
17:17:01 <AnMaster> ^show help
17:17:02 <fungot> (^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool)S
17:17:03 <fizzie> ehird: The crash was probably because it tried to respond with the babbling; the babbling needs all those other files.
17:17:04 <AnMaster> hm?
17:17:08 <AnMaster> see
17:17:13 <AnMaster> it is defined in underload
17:17:21 <ehird> hmm
17:17:22 <ehird> it won't join
17:17:25 <fizzie> And yes, it won't have a "help" command by default. But the ^def and ^show and such should work.
17:17:35 <ehird> RAW >>> :ehird!n=ehird@eso-std.org PRIVMSG gunfot :^raw JOIN #esoteric <<<
17:17:39 <AnMaster> fizzie, what are the owner only commands now again?
17:17:46 <fizzie> ehird: Did you change the prefix?
17:17:50 <ehird> Oh.
17:17:50 <ehird> duh.
17:18:09 -!- gunfot has joined.
17:18:14 <fizzie> AnMaster: There's at least ^code, ^reload, ^save, ^ignore, ^raw.
17:18:16 <ehird> \ul (A)S
17:18:16 <gunfot> A
17:18:22 <ehird> \bf ,[.,]!yo
17:18:22 <gunfot> yo
17:18:24 <AnMaster> why "gunfot"?
17:18:25 <ehird> ^.^
17:18:27 <ehird> AnMaster: why not
17:18:32 <ais523> spoonerism
17:18:32 * oerjan lols at today's http://www.mezzacotta.net/postcard/
17:18:35 <AnMaster> ehird, it isn't even fungot backwards
17:18:35 <ais523> but not an intersting one
17:18:35 <fungot> AnMaster: darcs is slow and underfeatured. ok.
17:18:40 <ehird> it's a spoonerism
17:18:46 <AnMaster> err
17:18:46 <ehird> fungot: lol, hear hear
17:18:47 <fungot> ehird: let me check that real quick. it should not loop indefinitely... that is a very model of propriety and good manners. the man's a smegging rock star. this star should be of sufficient mass to go supernova, generating large amounts of breaks for sanity's sake.
17:18:48 * AnMaster googles
17:18:54 <ehird> gunfot:
17:19:22 <ehird> oerjan: they're all 404s, intentional?
17:19:24 <ais523> \ul (test)S
17:19:24 <gunfot> test
17:19:49 <AnMaster> ehird, what interpreter?
17:20:01 <ehird> RC/Funge version 0.000000001 alpha.
17:20:08 <AnMaster> ehird, really? why?
17:20:10 <ehird> With 1000 extra lines of code to accellerate the mobmobile.
17:20:21 <ehird> Also, 5 antifingerprints that destroy matter.
17:20:35 <AnMaster> also I see you are being sarcastic, but I'm not in the mood for that
17:20:46 <AnMaster> hm
17:20:58 <ehird> not in the mood, well sorry, but this is a public channel and you did ask me a question.
17:21:00 <AnMaster> fizzie, idea: a built in ^handprint?
17:21:12 <ehird> ^code
17:21:15 <AnMaster> ehird, and care to answer it correctly?
17:21:17 <ehird> ^code )
17:21:20 <ehird> oh
17:21:21 <ehird> \code )
17:21:26 <AnMaster> oh my
17:21:27 <ehird> Hmm, it's still going.
17:21:31 <ehird> \ul (im ok)
17:21:32 <ehird> \ul (im ok)S
17:21:34 <fizzie> The 'code' command is very brittle.
17:21:35 <ehird> Ok, maybe not
17:21:38 -!- gunfot has quit (Remote closed the connection).
17:21:48 <AnMaster> fizzie, I can imagine that
17:21:53 <ehird> \code @
17:22:01 <AnMaster> it isn't connected...
17:22:03 <ais523> ehird: it isn't running atm
17:22:05 <ehird> it was
17:22:07 <ehird> in /msg
17:22:07 <ehird> :P
17:22:21 <AnMaster> ehird, well it doesn't read channel if not joined
17:22:24 <fizzie> It just loads SUBR, adds a "R" instruction at the end of the line, and jumps to the beginning.
17:22:27 <ehird> it was a mistake.
17:22:37 <oerjan> ehird: yes
17:22:38 <AnMaster> fizzie, you have to jump back yourself?
17:22:39 -!- gunfot has joined.
17:22:41 <ais523> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:41 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:41 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:42 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:42 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:42 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:42 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:42 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:42 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:42 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:42 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:42 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:42 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:44 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:44 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:45 <AnMaster> argh
17:22:46 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:46 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:48 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:48 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:50 <ehird> hee
17:22:50 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:50 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:52 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:52 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:53 <AnMaster> fizzie, ignore or something?
17:22:53 <oerjan> the actual content is the annotation
17:22:54 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:54 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:54 <ehird> thanks ais523
17:22:55 <ehird> :)
17:22:56 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:56 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:22:58 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:22:58 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:23:00 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:23:00 <fungot> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
17:23:01 <ehird> gotta love botloops
17:23:02 -!- fungot has left (?).
17:23:02 <gunfot> ^ul ((^ul )SaSaS(:^)S)((\ul )SaSaS(:^)S):^
17:23:03 <ais523> ^ignore gunfot
17:23:03 <ehird> \code @
17:23:03 -!- gunfot has quit (Remote closed the connection).
17:23:08 <fizzie> Sorry, I was the slow.
17:23:09 <ehird> ais523: you can't control the ignore list...
17:23:12 <AnMaster> ais523, isn't it owner only?
17:23:16 <ais523> probably
17:23:21 <ais523> I wanted to do a true multiquine, anyway
17:23:30 -!- fungot has joined.
17:23:31 <ehird> yes
17:23:34 <ehird> that was my original intention
17:23:36 <fizzie> ^ignore
17:23:36 <fungot> ^(thutubot|optbot|gunfot)!
17:23:48 <AnMaster> fizzie, what does the ! at the end mean?
17:23:49 <ais523> fizzie: probably for the best
17:23:53 <fizzie> That's the current ignore "list"; actually it's just a single regex.
17:23:57 <AnMaster> oh wait
17:23:58 <ehird> fizzie: Sheesh, you're no fun.
17:23:58 <ais523> AnMaster: it's the ! in an IRC username
17:24:03 <ais523> nick!user@host
17:24:11 <ehird> I'll just start two then,.
17:24:11 <AnMaster> right
17:24:17 <ais523> fizzie: you should probably add bsmnt_bot to that
17:24:21 <fizzie> Yes, it's matched against that prefix. And I don't think that loop was very fun either.
17:24:27 <AnMaster> ehird, why do you want to spam?
17:24:31 <ais523> as we had fungot/bsmnt_bot loops a while back
17:24:31 <fungot> ais523: i worked at until bankruptcy 7 times in 3 states. currently is over 120,000 in debt."
17:24:43 <AnMaster> ^style
17:24:44 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
17:24:44 <ais523> fizzie: I think it's fun to set up such loops, but not to spam the channel with them
17:24:56 <ais523> with two alert bot operators, I expected one of htem to quit it pretty quickly
17:24:57 <fizzie> ^ignore ^(thutubot|optbot|gunfot|bsmnt_bot)!
17:24:57 <fungot> OK.
17:25:27 -!- gunfot has joined.
17:25:31 <fizzie> I would like to see a N-bot loop, with N>2, though. Hopefully involving more than one language, also.
17:25:32 -!- tofnug has joined.
17:25:41 <ehird> gunfot, meet tofnug. tofnug, meet gunfot.
17:25:47 <ehird> fizzie: They are happy to converse with bsmnt_bot.
17:25:51 <ehird> |ignore
17:25:57 <ehird> \ignore
17:25:59 <ehird> Eh.
17:26:01 <ehird> \ul (a)S
17:26:01 <gunfot> a
17:26:03 <ehird> |ul (a)S
17:26:03 <tofnug> a
17:26:07 -!- ChanServ has set channel mode: +o fizzie.
17:26:16 <ais523> well, that's one way to stop a botloop
17:26:27 <fizzie> (I'm just preparing for bot-loop-silenzation if necessary, yes.)
17:26:37 <ehird> fizzie: I will stop them.
17:26:40 <AnMaster> fizzie :)
17:26:41 <ehird> But writing them is fun.
17:26:45 <ais523> fizzie: maybe you should add loop-breaking code to ^ul and ^bf, the same way as you have done to name-mention-responding
17:26:47 <ehird> I think 3-5 seconds is OK.
17:26:52 <ehird> Beyond that, I'll kill.
17:27:03 <AnMaster> ^source
17:27:03 <fungot> http://zem.fi/~fis/fungot.b98.txt
17:27:07 <ehird> I actually control all of {gunfot,tofnug,bsmnt_bot}, heh.
17:27:14 <ais523> come to think of it, /mode +m is the most efficient way to stop a botloop
17:27:18 <ais523> and doesn't involve kicking anyone
17:27:22 <oerjan> ehird: the actual content is the annotation
17:27:26 <ais523> ehird: bsmnt_bot is yours?
17:27:37 <ais523> I mean, I know who wrote it
17:27:38 <ehird> no, it's bsmntbombdoods, but it runs on rutian
17:27:40 <ais523> but it's on your server?
17:27:42 <ehird> yes
17:27:45 <ehird> since a few days ago
17:27:46 <fizzie> Yes, I should have the same loop-detection for all input, not just the babbling. I'm not quite sure why I don't.
17:27:47 <ehird> he put it up
17:27:51 <ehird> whois it
17:27:58 <oerjan> (note to self: stop typing with window scrolled back)
17:29:19 <oerjan> also, anyone can stop bsmnt_bot
17:29:28 <oerjan> ~exec bot.raw("QUIT")
17:29:28 -!- bsmnt_bot has quit.
17:29:31 -!- bsmnt_bot has joined.
17:29:36 <ehird> sure they can.
17:29:36 <fizzie> oerjan: But only you can stop forest fires.
17:29:37 <ehird> :-)
17:29:41 <ehird> but it comes right back
17:29:46 <AnMaster> fizzie, issue, I tried last fungot, odd but it didn't load
17:29:47 <fungot> AnMaster: are you making to gambit's web server instead of the channels on irc? i would have to avoid multimedia altogether then passing in on to y.
17:29:51 <oerjan> that's usually enough
17:30:06 <fizzie> AnMaster: Odd. What did it do, instead?
17:30:12 <AnMaster> fizzie, tracing atm
17:30:35 <AnMaster> fizzie, it didn't output anything and didn't connect I know
17:30:38 <AnMaster> it is busy running however
17:30:49 <AnMaster> fizzie, loop it seems
17:31:09 <AnMaster> fizzie, http://rafb.net/p/3iAYUs12.html
17:31:11 <fizzie> A "corrupted" (read: not exactly what fungot expects) fungot.dat file should cause a sensible error message, at least.
17:31:11 <fungot> fizzie: for insulting mcedit, i know to that :) what is a multiway system?!? awesome.
17:31:20 <oerjan> fizzie: i really cannot remember the last time i made fire in a forest.
17:31:22 <AnMaster> fizzie, changed format recently?
17:31:55 <fizzie> AnMaster: Last time when I added the underload support. I assume x and y are zero-based?
17:32:05 <AnMaster> fizzie, yes
17:32:14 <fizzie> Well, I guess they'd have to be, since that's what the spec says.
17:32:16 <AnMaster> fizzie, as in funge coords, not file editor coords
17:32:33 <AnMaster> so yes you need to offset for line number/column number
17:32:39 <fizzie> fungot.b98 is also loaded at y=100.
17:32:39 <fungot> fizzie: it's not so much, whereas almost no other ' fnord do fnord output is not that that is that same exact jump
17:32:54 <AnMaster> fizzie, well right, file loading works says mycology
17:33:17 <AnMaster> fizzie, and it is http://zem.fi/~fis/fungot.b98.txt right?
17:33:20 <fungot> AnMaster: i'm currently quite happy with most of what i've said about configure.ac.' you gave it an array. every element of a list are stored?
17:33:24 <AnMaster> saved without .txt
17:33:39 <AnMaster> $ md5sum fungot.b98
17:33:39 <AnMaster> 3af30bb6537de532d2f8ea07193a177e fungot.b98
17:33:39 <fungot> AnMaster: i'd distinguish two kinds of fnord
17:33:39 <fungot> AnMaster: don't you? yes offby1 i remember everything failing miserably :-p)
17:33:39 * oerjan lols at today's http://www.mezzacotta.net/owls/ too
17:33:40 <fizzie> AnMaster: Yes. Well, those coordinates are in the data/fungot.dat loading code. If you don't have much in your fungot.dat, you can just remove it. An empty file it should ignore.
17:33:41 <fungot> fizzie: insofar as now i can impress them with your connections to the same thing
17:33:59 <AnMaster> fizzie, the dat file is just 10 newlines
17:34:13 <ais523> what's in fungot.dat?
17:34:13 <fungot> ais523: fibonacci heaps? :) so i can say. and sometimes i miscount then
17:34:25 <fizzie> AnMaster: Well... try without any file; I think that worked for ehird.
17:34:40 <AnMaster> fizzie, ok now it loads
17:34:43 <fizzie> ais523: The ten ^str strings, and all ^def-defined commands. I don't think there's anything else.
17:34:46 <AnMaster> but does this mean it won't load after save
17:35:02 <fizzie> The format ^save writes should at least be correct.
17:35:06 <ehird> ]
17:35:15 <fizzie> Although you might want to define a single command, just in case it gets confused.
17:35:21 -!- testthingy has joined.
17:35:40 <ehird> 17:33 <fungot> AnMaster: i'd distinguish two kinds of fnord
17:35:41 <fungot> ehird: yes twb, thanks to a grand total of two and representing
17:35:42 <ehird> do it
17:36:00 <AnMaster> %ignore ^(thutubot|optbot|fungot|gunfot|tofnug)!
17:36:00 <testthingy> OK.
17:36:01 <fungot> AnMaster: well, i gather, they are signed and fnord, and i now have a fnord?
17:36:13 <AnMaster> %ignore ^(thutubot|optbot|fungot|gunfot|tofnug|bsmnt_bot)!
17:36:14 <testthingy> OK.
17:36:14 <fungot> AnMaster: generally you only want to support artists who are supporting the riaa
17:36:17 <AnMaster> %save
17:36:17 <testthingy> OK.
17:36:26 <AnMaster> fungot, wtf
17:36:27 <fungot> AnMaster: depends on your job... it doesn't do anything to strip out the bf for it
17:36:42 <fizzie> Oh, and the ignore regexp is not saved in fungot.dat. It's on my TODO list.
17:36:43 <fungot> fizzie: um, i mean
17:36:46 <ehird> so who here has used gafyd
17:36:49 <ehird> apart from Asztal
17:36:53 <AnMaster> ^show
17:36:53 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help
17:36:58 <AnMaster> %show
17:37:05 <AnMaster> ^help
17:37:05 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
17:37:08 <ehird> 17:36 <fungot> AnMaster: generally you only want to support artists who are supporting the riaa
17:37:08 <fungot> ehird: well i fnord care about the x86, &c., are often upcased. we got snow.
17:37:09 <ehird> i lolled
17:37:33 <AnMaster> %def help ul (%<lang> <code>; %def <command> <lang> <code>; %show [command]; lang=bf/ul, code=text/str:N; %str 0-9 get/set/add [text]; %style [style]; %bool)S
17:37:33 <testthingy> Defined.
17:37:36 <AnMaster> %help
17:37:36 <testthingy> %<lang> <code>; %def <command> <lang> <code>; %show [command]; lang=bf/ul, code=text/str:N; %str 0-9 get/set/add [text]; %style [style]; %bool
17:37:42 <AnMaster> hm ok
17:37:48 <AnMaster> %save
17:37:48 <testthingy> OK.
17:37:57 <AnMaster> ehird, yes I agree
17:38:09 <ehird> well, Asztal: why is the mail for the free one 2.757272164 GB as opposed to gmail's 7GB?
17:38:16 <ehird> maybe I should redirect email to gmail instead
17:38:18 <fizzie> The file .dat format is horribly inefficient, but...
17:38:34 <AnMaster> ehird, err what mail for free?
17:38:43 <ehird> google apps for your domain
17:38:46 <AnMaster> ah
17:38:57 <ehird> it's gmail and other google stuff, but for a custom domain
17:39:18 <ehird> [i'm considering it because, well, i don't want to run my own mail server.]
17:39:27 <AnMaster> ehird, will you ever end up using those ~2.76 GB for mail?
17:39:36 <ehird> Well...
17:39:37 <ehird> You are currently using 742MB (10%) of your 7282MB.
17:39:38 <AnMaster> ehird, also setting up qmail is easy
17:39:39 <AnMaster> :P
17:39:42 <ehird> I've had this account since 2006.
17:39:53 <ehird> So, not in the near future, but over the years, yes I will.
17:40:06 <AnMaster> ehird, wow... I had my account since 2006 too and I only use around 90 MB so far
17:40:38 <AnMaster> but of course, I use other mail services too
17:40:41 <ehird> AnMaster: The 18,030 messages from Agora count for about 86MB of that.
17:40:46 <ehird> But my inbox is the largest, 322 MB.
17:40:52 <fizzie> "You are currently using 0 MB (0%) of your 7282 MB "
17:41:05 <fizzie> I'm not sure when that account was created.
17:41:07 <ehird> fizzie: but you don't use gmail, do you? :P
17:41:13 <AnMaster> ok that is one thing I dislike... why can't they have proper dirs, instead of just views?
17:41:31 <ehird> AnMaster: you mean, gmail?
17:41:32 <ehird> they do
17:41:33 <fizzie> ehird: Well, no. I have three messages in there.
17:41:34 <AnMaster> yes
17:41:44 <ehird> AnMaster: just remove it from the inbox in the filter
17:41:49 <ehird> that's what I do
17:41:54 <ehird> i only see agora mail if I click agora.
17:42:01 <ehird> (or All Mail, but All Mail isn't very useful anyway)
17:42:03 <AnMaster> ehird, oh? just "inbox" and "all mail", "trash" and "spam" iirc, the rest means you can still see it in "all mail"
17:42:22 <ehird> here's one of my agora filters:
17:42:29 <ehird> Matches: to:(agora-business@agoranomic.org)
17:42:29 <ehird> Do this: Skip Inbox, Apply label "Agora"
17:42:36 <AnMaster> ehird, anyway I use imap to access gmail
17:42:40 <ehird> yep
17:42:41 <AnMaster> doesn't work very well IMO
17:42:42 <ehird> works fine
17:42:47 <ehird> I use mail.app with imap and gmail
17:42:50 <ehird> it represents the labels as folders
17:42:50 <AnMaster> hm
17:43:54 <ehird> Wow, the pay version of google apps is $50/user/year.
17:44:05 <ehird> Although that gets you 25 GB per mail account, which is...excessive.
17:44:19 <ehird> I know people who have been subscribed to like 100 mailing lists since 1998 and only have 10GB of mail
17:44:47 <ais523> it depends on which 100 mailing lists
17:44:53 <ehird> ais523: active ones.
17:45:16 * AnMaster likes that Swedish public service radio publish many of the programs as mp3 on their website and don't seem to ever remove them
17:45:28 <ehird> I have good reason to outsource disk-spacey things, anyway, I only have 10GB on rutian.
17:45:29 <AnMaster> there is at least 2 years backlog there
17:46:08 <ais523> "only"?
17:46:08 <AnMaster> ehird, it is a vps, can't you just hit a button to upgrade?
17:46:14 <ais523> AnMaster: yes, but that costs more
17:46:16 <ehird> ais523: :-)
17:46:22 <AnMaster> ais523, you can't fit flightgear scenery into that
17:46:23 <ehird> AnMaster: Yes but
17:46:36 <ehird> It's $20/mo for 256MB of ram, 10GB storage, 100GB of mandwidth
17:46:39 <AnMaster> and I host a mirror for fg scenery :)
17:46:40 <ehird> the next one up is _$38/mo_
17:46:48 <ehird> 512MB ram, 20GB storage, 200GB bandwidth
17:47:02 <ehird> so yeah, $18 more is a bit steep
17:47:17 <AnMaster> ehird, hm the dedi is $50/month and it has 2x150 GB disks
17:47:33 <ehird> $50/month is not really reasonable for me I'm afraid
17:47:39 <AnMaster> hm ok
17:47:43 <ehird> also
17:47:43 <ehird> Transfer0.93GB of 100GB1 (0.33 in / 0.61 out)
17:47:45 <ehird> XD
17:47:47 <AnMaster> ehird, I split the cost with another person
17:47:51 <AnMaster> so $25 each
17:48:06 <ehird> The only time I ever came close to maxing out my bandwidth was when I was hosting a mirror of the ICFP 08 iso.
17:48:15 <ehird> But that was 512MB, IIRC
17:48:25 <ehird> it got to like 90GB then the monthly rollover happened
17:48:29 <AnMaster> hm I have unmetered 100 mbps
17:48:31 <ais523> ehird: it's about 700MB
17:48:37 <ais523> because it's an ISO of a CD
17:48:45 <ehird> OK
17:48:52 <AnMaster> ais523, err, you can have a smaller iso
17:48:56 <AnMaster> that doesn't fill all the cd
17:49:01 <ehird> it was a linux distro
17:49:02 <ehird> so
17:49:02 <ais523> I suppose so
17:49:16 <AnMaster> ais523, or why is the "boot-only.iso" for freebsd around 100 MB iirc
17:49:21 <ais523> ok
17:49:30 <ehird> - Email Archiving, powered by Postini
17:49:30 <ehird> 90-day message recovery, can be extended
17:49:35 <ehird> wonder why that's just for the premier one
17:49:39 <ehird> i mean, gmail has archiving, right?
17:49:47 <ehird> - SSL enforcement for secure HTTPS access
17:49:48 <ehird> er
17:49:54 <ehird> is that fancy words for "redirects http to https"?
17:49:54 <AnMaster> err isn't gmail https?
17:50:03 <ehird> AnMaster: yeah
17:50:08 <ehird> but
17:50:10 <AnMaster> actually it is a setting
17:50:12 <ehird> it degrades to http for non-supporting clients
17:50:13 <AnMaster> for gmail
17:50:13 <ehird> i think
17:50:15 <ehird> ah
17:50:16 <ehird> right
17:50:18 <ehird> this'll force https i guess
17:50:19 <ehird> XD
17:50:21 <ehird> - 99.9% Gmail, Google Calendar and Google Talk uptime SLA**
17:50:25 <AnMaster> well so does gmail
17:50:26 <ehird> geez, charging for that?
17:50:29 <AnMaster> if you turn on that setting
17:50:29 <ehird> what ever happened to 5-nines :P
17:50:56 <AnMaster> <ehird> - 99.9% Gmail, Google Calendar and Google Talk uptime SLA** <-- what on earth does that mean? 99.9% of google's uptime?
17:51:12 <ehird> it means that if you pay them $50/user/year they guarantee to be up 99.9% of the time
17:51:19 <ehird> which is _crap_
17:51:25 <ehird> compare to amazon which has 99.99999%
17:51:34 <AnMaster> is that for for the google domain hosting thingy?
17:51:35 <AnMaster> or what?
17:51:41 <ehird> yes
17:51:43 <ehird> "premier" edition
17:51:47 <ehird> instead of the free standard one
17:51:49 <AnMaster> <ehird> - Email Archiving, powered by Postini <-- hm?
17:51:55 <ehird> AnMaster: yeah I don't know either
17:51:56 <AnMaster> what is postini?
17:51:59 <AnMaster> ah
17:52:01 <AnMaster> right
17:52:13 <ehird> anyway, I'll just back up email locally every now and then, I think
17:52:18 <AnMaster> thought "ehird is looking at some other service, called postini"
17:52:21 <AnMaster> I thought*
17:52:36 <ehird> using half my storage? download all messages to disk over a few nights, delete everything from gmail
17:53:00 <ais523> ehird: /seven/ nines, for Amazon?
17:53:04 <ais523> that's insane
17:53:12 <AnMaster> ehird, doesn't gmail space continue to grow still?
17:53:16 <AnMaster> or have it stopped?
17:53:30 <ehird> ais523: err, no, that's 5 nines
17:53:32 <AnMaster> I remember the counter for current space was SO hyped a few years ago
17:53:33 <fizzie> "postini" is Finnish for "my mail"; "posti" is the noun, and the "-ni" part is the first-person singular possessive suffix.
17:53:36 <ehird> the number of nines means the 9s after the decimal point, ais523
17:53:40 <fizzie> I don't think that has anything to do with the name, though.
17:54:35 <ais523> ehird: it means altogether, doesn't it?
17:54:39 <ehird> nope
17:54:45 <ehird> i don't think
17:54:50 <ehird> oh
17:54:51 <ehird> hmm
17:54:53 <ehird> wikipedia says so
17:54:55 <ehird> that's odd
17:54:56 <ais523> top 3 google results all say 99.999
17:55:00 <ais523> but two of them are Wikipedia
17:55:25 <AnMaster> ais523, citations?
17:55:26 <fizzie> Well, 99.99999 % is .9999999 when represented in a sane way; so seven nines.
17:55:32 <AnMaster> also
17:55:40 <ais523> AnMaster: the article's uncited
17:55:47 <AnMaster> someone should add lots of [citation needed] to the wikipedia article on wikipedia
17:55:48 <AnMaster> !
17:55:49 <ais523> and there isn't even a template about that
17:56:07 <AnMaster> hah
17:56:14 <ehird> really, I think seven nines should be possible
17:56:19 * ais523 tags with unref
17:56:35 <ehird> if you have a massively redundant setup - i.e., say, 10 servers all running exactly the same thing, in different data centres around the world
17:56:38 <AnMaster> ais523, also someone should add "This article or section may not reflect a worldwide view" on the article on the US constitution :D
17:56:40 <ehird> and then multiple balancers balancing between them
17:56:54 <ehird> then pretty much when one fails skip to the next
17:57:06 <ehird> i mean, if they have nothing in common apart from the app they're running, server outages, etc are never a problem
17:57:11 <ehird> unless all 10 go down simultaneously
17:57:14 <ehird> which is... unlikely
17:57:18 <ais523> AnMaster: but then they'd just add a US Constitution in Vietnamese Popular Culture section
17:57:18 <ehird> if theyr'e all separate
17:57:21 <ehird> then it's just software issues
17:57:22 <AnMaster> ehird, DNS root servers: 100% uptime
17:57:27 <ehird> AnMaster: not 100%
17:57:31 <AnMaster> ehird, really?
17:57:36 <ehird> there's absolutely no way to guarantee that
17:57:37 <AnMaster> ehird, the actual service yes
17:57:46 <ehird> i guarantee you, if one of those servers was bombed it'd go down
17:57:50 <ais523> ehird: there have been systems with multiple massively redundant balancers
17:58:01 <AnMaster> ehird, sure but then the ip would stop being advertised
17:58:05 <fizzie> I'm not sure how they'd actually measure that "seven nines" thing; if they have one hour of downtime, they should then be online for the next thousand years or so.
17:58:07 <ehird> AnMaster: thats not 100% uptime
17:58:08 <AnMaster> err I don't know the name
17:58:13 <AnMaster> like geodns
17:58:15 <AnMaster> on routing level
17:58:17 <AnMaster> forgot the name
17:58:22 <ais523> one of the systems had a hardware failure, so they tried to turn it off to replace a component
17:58:26 <ehird> fizzie: well, six nines is 31 seconds of downtime per year
17:58:30 <ais523> but they turned the wrong one off by mistake, and the system went down
17:58:34 <AnMaster> bbiab
17:58:36 <ehird> imo it'd be possible to get less than that
17:58:40 <ehird> i mean, pretty easily
17:58:43 <ehird> as far as these things go
17:58:45 <fizzie> So it's counted as "downtime per year"? Okay.
17:58:49 <ehird> ais523: heh
17:59:37 <AnMaster> %raw quit
17:59:38 -!- testthingy has quit.
18:00:42 <AnMaster> bbiab again
18:02:47 <ehird> Holy fuck.
18:02:50 <ehird> Why made a language.
18:02:51 <ehird> http://github.com/why/potion/tree/master
18:03:02 <ehird> add = (x, y): x + y.
18:03:04 <ehird> Me likely that syntax.
18:29:04 -!- kar8nga has joined.
18:43:43 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
18:56:09 -!- oerjan has quit ("Rhombus").
19:07:23 -!- oklopol has quit (Read error: 110 (Connection timed out)).
19:07:45 -!- olsner has joined.
19:18:48 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
19:20:43 -!- Corun has quit ("This computer has gone to sleep").
19:24:11 -!- KingOfKarlsruhe has joined.
19:27:14 <GregorR> Argh
19:27:24 <GregorR> oocalc doesn't support spreadsheets with more than 65536 rows :P
19:28:15 <GregorR> Anyway, the average word length in the aspell spelling dictionary is a whopping 8.5
19:29:10 <GregorR> I would tell you what the median is, but I can't.
19:29:17 <GregorR> (Since it won't open in oocalc :P )
19:30:49 <fizzie> My (English) wordlist seems to have an average length of about 9.6, according to perl -ne 'chomp; $n++; $l += length($_); END { print $l/$n, "\n"; }' < /usr/share/dict/words
19:31:32 <fizzie> While /usr/share/dict/finnish gives 12.7. Our words are longer than yours, neener-neener.
19:31:57 <GregorR> I just did: aspell dump master en > words; wc -l words; wc -c words, then (c-l)/l
19:32:56 <fizzie> About 8.579 for "aspell dump master en" here.
19:33:12 <GregorR> Yup, same here.
19:33:18 <GregorR> I just truncated because I'm lazy :P
19:33:59 <fizzie> aspell-dumping the 'fi' list gives me 13.28; even larger difference there.
19:34:34 <fizzie> Also 731284 words, versus 138599 in the 'en' listing. Of course it's just different cases of various words.
19:34:48 <ehird> OK but in common usage, I'd say 5-6 is the most common
19:36:37 <GregorR> Of the 1000 most common words in English, the much-more-reasonable 5.3 was average.
19:36:49 * ehird thinks of the simplest way to express the relation a.b.c.d -> {a,a.b,a.b.c}
19:39:12 <GregorR> The median is 5 (no shock)
19:41:37 <fizzie> Few consecutive words from the 'fi' list: "metsä", "metsää", "metsäämme", "metsään", "metsääni", "metsäänne", "metsäänsä" -- translated "forest", "forest (partitive case)", "into our forest", "into the forest", "into my forest", "into your (plural) forest", "into his/her forest"; and it continues like that for at least 70 word forms.
19:42:15 <GregorR> Heh, clearly list-style spelling dictionaries aren't best suited to Finnish :P
19:42:19 <GregorR> (Or probably German for that matter)
19:42:29 <fizzie> (And I only counted those which do not alter the stem "metsä" at all, and tried to discount hunting-related words.)
19:42:37 <GregorR> (I usually think of German when I think of tons of words glued together)
19:43:15 <fizzie> At least the German language uses prepositions for many things; we just add all kinds of tiny suffixes.
19:43:23 <ehird> Anyone know of a good way to express a.b.c.d -> {a, a.b, a.b.c}?
19:43:26 <ehird> Can't think of a natural way.
19:45:50 <psygnisf_> ehird, what is that supposed to be?
19:46:02 <ehird> Function.
19:46:15 <ehird> Take {a, b, c, d}, produce {{a}, {a, b}, {a, b, c}}.
19:46:24 <psygnisf_> ah well
19:46:25 <ehird> Well, produce {a,b,c,d} as the last one, then it's just a matter of chopping that off.
19:46:29 <psygnisf_> i would express it as...
19:46:39 <psygnisf_> {a,b,c,d} -> {{a}, {a,b}, {a,b,c}}
19:46:40 <psygnisf_> :P
19:46:50 <ehird> for arbitrary length lists.
19:47:06 <psygnisf_> hmm
19:47:12 <fizzie> That looks more like sets when you use {}s.
19:48:25 <fizzie> There's the term "prefix set" for "abcde" -> {e, "a", "ab", "abc", "abcd", "abcde"} -- where e is the empty string -- which is pretty close, but seems that "prefix set" can mean other things too.
19:48:33 -!- jix has joined.
19:48:56 <psygnisf_> f (x:xs) = map (\n -> take n (x:xs)) [1...(length xs)]
19:49:10 <psygnisf_> that should work, ehird. :D
19:49:22 <psygnisf_> or something like that. im not good with haskell enough to know
19:49:29 -!- sebbu2 has joined.
19:49:32 <ehird> did you just ask #haskell? :P
19:49:36 <psygnisf_> no lol
19:49:44 <ehird> but yeah
19:49:47 <ehird> that looks reasonable
19:49:55 <psygnisf_> well it is
19:50:12 <psygnisf_> the lengths of each of the new sublists are just 1,2,...n-1
19:50:19 <psygnisf_> where n is the length of the input list
19:50:36 <psygnisf_> so you can just enum 1...n-1, and map that to the first that-many items of the input list
19:51:46 <fizzie> You can write it as a single list comprehension if you don't like the map-lambda part, too.
19:51:50 <fizzie> Prelude> let f (x:xs) = [take n (x:xs) | n <- [1..(length xs)]]
19:51:50 <fizzie> Prelude> f "foobar"
19:51:50 <fizzie> ["f","fo","foo","foob","fooba"]
19:51:58 <psygnisf_> ah yes
19:52:00 <psygnisf_> thats more elegant
19:52:59 -!- kar8nga has joined.
19:53:04 <fizzie> Or alternatively with a named pattern:
19:53:06 <fizzie> f x@(_:xs) = [take n x | n <- [1..(length xs)]]
19:53:10 <fizzie> Although the @ is not pretty.
19:53:58 <psygnisf_> i'd like to get rid of the [1..(length xs)] :|
19:54:32 <psygnisf_> [take n (x:xs) | n > 0, n <= (length xs)]???
19:54:36 <psygnisf_> would that work?
19:58:49 <fizzie> It's not clever enough. Even "... | n <- [1..], n <= 5" will never finish evaluating the sixth element of the list since it can't figure out that the [1..] will never again be <= (length xs) later on.
19:59:09 <fizzie> I'm sure some haskellist can give a prettier version, anyway.
20:01:28 <ehird> fizzie: you wrote a regex->bf compiler in java in 2005
20:01:29 <ehird> SHOW IT
20:05:01 <fizzie> Hah:
20:05:06 <fizzie> Prelude> let f [] = []; f (x:xs) = [x]:[x:y | y <- f xs]
20:05:07 <fizzie> Prelude> f "foobar"
20:05:07 <fizzie> ["f","fo","foo","foob","fooba","foobar"]
20:05:10 <fizzie> That is the prettier way.
20:05:18 <fizzie> Let's see if I can find that regex-bf thing.
20:07:57 -!- sebbu has quit (Connection timed out).
20:07:57 -!- sebbu2 has changed nick to sebbu.
20:09:45 -!- Corun has joined.
20:12:26 <fizzie> Why do I not have a brainfuck interpreter anywhere? Foolishness.
20:15:49 <flexo> char m[99999],*n[99],*r=m,*p=m+50000,**s=n,d,c;main(){for(read(0,r,
20:15:49 <flexo> p);c=*r++;c-93?c-91?d?0:c-43&~2?c-44?c-46?p+=c&~2^60?0:c%4-1:write(
20:15:49 <flexo> 1,p,1):read(2,p,1):(*p-=c-44):d++||(*++s=r):d&&--d?0:*p?r=*s:--s);}
20:15:51 <flexo> there you go
20:16:01 <fizzie> Wait, I do have my own similar one.
20:16:07 <flexo> i bet mine is shorter
20:18:12 <flexo> hm. looking at that mess... i'm really proud of it :)
20:18:18 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:18:53 <fizzie> Yours is 65 characters shorter, yes.
20:18:53 <flexo> p+=c&~2^60?0:c%4-1
20:19:01 <flexo> i even roughly remember why i'm doing that
20:19:06 <fizzie> Mine is more readable. :p
20:19:10 <fizzie> main(j,a,n,t)int*a;{unsigned short p=-1;char*r=calloc(n=p+1,6),*i=r
20:19:10 <fizzie> +n,**k=i+n;for(read(open(*++a,t=0),i,p);n=*i-43,t<0?n-48?n-50||++t:
20:19:10 <fizzie> --t:n?n-2?n-19?n-17?n-3?n-48?n-50?n-1||read(0,r+p,1):p[r]?i=k[j]:j
20:19:10 <fizzie> --:p[r]?k[++j]=i:t--:putchar(p[r]):p--:p++:p[r]--:p[r]++,*i++;);}
20:19:11 <flexo> the nice thing about brainfuck is
20:19:21 <flexo> if you closely examiny the binary encoding of the instruction
20:19:28 <flexo> *examine
20:19:34 <flexo> you can more treat it like microcode
20:19:47 <flexo> (in ascii, that is)
20:20:47 <fizzie> Hoy, I foundeded the regex thing.
20:20:50 <fizzie> fis@eris:~/tmp/bfre$ java -cp . BFRE '(ab)*' > test.b
20:20:50 <fizzie> fis@eris:~/tmp/bfre$ beef test.b
20:20:50 <fizzie> abab
20:20:50 <fizzie> acc!
20:20:50 <fizzie> fis@eris:~/tmp/bfre$ beef test.b
20:20:52 <fizzie> abababab
20:20:55 <fizzie> acc!
20:20:57 <fizzie> fis@eris:~/tmp/bfre$ beef test.b
20:21:00 <fizzie> abba
20:21:02 <flexo> oh boy
20:21:03 <fizzie> rej!
20:21:05 <fizzie> It's not PCRE, but it does the basics.
20:21:32 <flexo> how stupid
20:21:43 <flexo> i'm rather positive that you can encode something like 50000 in less than 5 chars
20:21:46 <flexo> there are so many operators
20:22:43 <fizzie> ehird: http://zem.fi/~fis/BFRE.java -- it's quite a mess, though.
20:23:09 <flexo> hmmm.
20:24:40 <fizzie> flexo: My version uses a "unsigned short p=-1" to get a suitably big number for storage allocation as well as a 'p' data-pointer that auto-wraps. But it's not very short, no.
20:25:31 <flexo> 9<<0xf is unfortunatly 6 bytes
20:26:03 <flexo> oh, and i don't do the int parameter trick
20:26:04 <fizzie> I don't see a reason for "9<<0xf" when "9<<15" has less characters.
20:26:16 <flexo> uh.
20:26:19 <flexo> right
20:26:20 <flexo> :)
20:26:22 <flexo> still
20:26:24 <flexo> 5 bytes
20:27:50 <flexo> probably not possible?
20:28:09 <flexo> 4 bytes gives you two operands and 2 operators
20:35:02 <psygnisf_> ehird
20:35:06 <psygnisf_> http://www.boingboing.net/2009/01/06/tumbarumba-a-surreal.html
20:35:32 <Slereah_> BOING BOING
20:35:36 <Slereah_> It is a penis sound
20:37:22 <psygnisf_> i love penis
20:38:03 <Slereah_> Really? I didn't notice.
20:38:14 * Slereah_ is making an origami Shii
20:46:27 -!- GreaseMonkey has joined.
20:53:12 <psygnisf_> WHAT'S THIS? LOLHASKELL?!
20:53:25 <psygnisf_> ghci> :type Just "invisible bike"
20:53:25 <psygnisf_> Just "invisible bike" :: Maybe [Char]
20:57:51 * Badger whacks psygnisf_ with a rolled up newspaper
20:58:14 <psygnisf_> no no!
20:58:23 <psygnisf_> seriously! look! http://book.realworldhaskell.org/read/defining-types-streamlining-functions.html
20:59:07 <Badger> <3 book 172
20:59:08 <Badger> er
20:59:10 <Badger> <3 book 173
20:59:44 <psygnisf_> ive only gotten about a third of the way through excession
20:59:54 <psygnisf_> thats the sum total of my cultureverse experience
21:00:19 <fizzie> I've read the other Culture books *except* Excession; for some reason it just didn't go as smoothly as the others.
21:01:14 <fizzie> I guess the bot-loop danger is not imminent right now.
21:01:15 -!- fizzie has set channel mode: -o fizzie.
21:01:58 <Badger> Excession was my favourite.
21:03:27 <Badger> heh
21:03:30 <Badger> invisible bike indeed
21:05:10 <fizzie> I rather liked Look to Windward, actually. At least some parts. Like the stuff with the pylons.
21:05:13 <psygnisf_> you see?
21:05:22 <psygnisf_> its like.. what? when did haskellers start doing lolcats?
21:05:39 <Slereah_> Since they're nerds?
21:07:25 <psygnisf_> yeah but they're not that kind of nerd
21:07:33 <psygnisf_> they're like OMG MONADS SPOOGE <3
21:07:35 <olsner> they've been doing it since way back
21:07:36 <psygnisf_> nerds
21:08:09 <Slereah_> Yo dawg, I herd you like function calls
21:08:31 <psygnisf_> so i herd u liek monads
21:09:02 <Slereah_> Can you put a monad in my monad?
21:09:05 <Slereah_> So that I may...
21:09:11 <Slereah_> Well, do whatever monads do
21:09:13 <Slereah_> While doing it
21:18:04 <fizzie> Yes, the Haskell library provides monad transformers to sort-of put a monad on a monad.
21:28:32 <psygnisf_> put a monad on a monad?
21:37:28 -!- oklopol has joined.
21:39:58 <fizzie> It's that "Put a X in your X" meme.
21:57:45 -!- kar8nga has left (?).
22:00:57 <Asztal> ehird: my google apps email account is currently: You are currently using 0MB (0%) of your 7278MB.
22:01:10 <ehird> Asztal: And this is the free version?
22:01:22 <Asztal> well, I'm not paying for anything
22:01:23 <ehird> (Just assuming you're not giving google $50/year to host a mail sever for you.)
22:01:28 <ehird> Asztal: is it the free trial?
22:01:31 <Asztal> unless it's giving me a free trial
22:01:34 <ehird> yep
22:01:35 <ehird> by default
22:01:44 <Asztal> bummer, dude
22:02:03 <ehird> resign up for the nonprofit free one :P
22:03:23 <Asztal> Try Premier Edition Free
22:03:24 <Asztal> * 25GB storage per user, no ads, 99.9% uptime SLA
22:06:40 <ehird> Asztal: true
22:08:23 <kerlo> Gmail has free trials?
22:08:45 <ehird> kerlo: google apps for your domain
22:08:51 <ehird> it's gmail, except for your own site-web
22:09:12 <ehird> Asztal: what's the advantages over just forwarding to gmail btw?
22:09:52 <kerlo> Ah.
22:13:26 <Asztal> ehird: presumably when doing that you still need some simple server to do the actual forwarding?
22:13:32 <Asztal> I just set my MX records to gmail.
22:13:40 <ehird> Asztal: it's easier to set up a redirecting server than a full one :P
22:14:35 <Asztal> true.
22:14:48 <Asztal> I'm not sure what the benefits are... probably not very much.
22:16:35 <ehird> you can rescheme the login form and the logo? :P
22:17:35 <kerlo> Speaking of MX records, I think I'll take a peek at mine.
22:18:02 <ehird> Dirty.
22:19:22 * kerlo successfully guesses his GoDaddy password
22:20:41 <kerlo> MX: @ is normish.org
22:36:33 <grndlvlbombdood> er
22:37:20 <grndlvlbombdood> f(1) = 1; f([2,3]) = 2; f([4,6]) = 3; f([7,10]) = 4; and so on
22:37:23 <grndlvlbombdood> what's f?
22:37:50 <ehird> um, what does it do?
22:37:54 <oklopol> diff + 1
22:38:02 <ehird> o
22:38:20 <oklopol> 1 is considered a 1-tuple, its elements don't have any differences, because it's a singleton
22:38:24 <grndlvlbombdood> err sorry that's bad notation
22:38:55 <oklopol> grndlvlbombdood: and because psygnisfive didn't remember, and he just remembered it was something interesting.
22:39:12 <grndlvlbombdood> f(1) = 1; f(2) =2; f(3) = 2; f(4) = 3; f(5) = 3; f(6) = 3; f(7) = 4; f(8) = 4....
22:39:31 <oklopol> well that's even easier
22:40:07 <oklopol> has to do with square methinks, but i'd have to fiddle to get it
22:40:25 <oklopol> no not square, urrrr.
22:41:45 <grndlvlbombdood> ceil((sqrt(1+8*x) - 1)/2)
22:42:06 <oklopol> something like that.
22:42:28 <grndlvlbombdood> exactly like that
22:42:59 <oklopol> might be something vaguely similar to something like that, yes
22:52:15 <fizzie> OEIS Search Results: A002024 "n appears n times"; 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, ... a(n) = floor( 1/2 + sqrt(2n) ). Also a(n)=ceil((sqrt(1+8*n)-1)/2). a(n) = a(n - a(n-1)) + 1. a(n) = round(sqrt(2*n)).
22:55:37 <kerlo> Pff, ceiling and round.
22:56:05 <kerlo> Use the sinc function, my friend.
22:56:18 * kerlo looks up that closed-form formula for the Fibonacci sequence
22:56:55 <fizzie> Well, there's the generating function and a couple of references of other sequences in the OEIS too.
22:57:06 <kerlo> Pretty simple: http://en.wikipedia.org/wiki/Fibonacci_sequence#Closed_form_expression
22:57:32 <fizzie> I'm not sure how that is related, except that it's also a sequence.
22:59:24 <fizzie> Night, anyway.
23:01:12 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
23:01:15 <kerlo> It's also a closed form expression for a sequence.
23:01:29 -!- oklopol has joined.
23:09:04 <ehird> There should be a way to make an ordered directory.
23:11:04 -!- oerjan has joined.
23:16:29 <kerlo> <wikipedian>Make an extension of ext3 that allows you to do that.</wikipedian>
23:17:06 <ehird> That is not useful for os x.
23:18:16 <oerjan> <ehird> Take {a, b, c, d}, produce {{a}, {a, b}, {a, b, c}}.
23:18:18 <psygnisf_> hahaha
23:18:18 <psygnisf_> http://www.youtube.com/watch?v=8Yw6LQrtwHY&feature=related
23:18:27 <oerjan> tail . inits
23:18:43 <oerjan> er, tail . init . inits
23:18:51 <ehird> psygnisf_: lol
23:19:11 <psygnisf_> REAL CYBERPUNK
23:19:19 * psygnisf_ sticks a chip on the side of my head
23:19:27 <ehird> almost sort of mimicing the computer screen.
23:20:54 <psygnisf_> ESSENTIAL
23:21:51 <kerlo> ehird's fancy ordering scheme requires anonymous directories.
23:21:53 <oerjan> (works on infinite lists too, unlike the length using versions)
23:25:04 -!- gunfot has quit (Remote closed the connection).
23:25:07 -!- tofnug has quit (Remote closed the connection).
23:25:22 <oerjan> gun foot, toe fnug
23:26:05 <oerjan> fognut
23:26:46 -!- olsner has quit ("Leaving").
23:27:00 <oerjan> toungf, nougft
23:27:32 <oerjan> gnuoft
23:33:36 -!- sebbu2 has joined.
23:36:22 <kerlo> "Gnus oft" looks like something you'd find in a pangram.
23:36:51 <oerjan> <psygnisf_> its like.. what? when did haskellers start doing lolcats?
23:37:07 <oerjan> http://arcanux.org/lambdacats.html
23:37:43 <kerlo> If gnus oft say zed, quux jacks.
23:37:51 <kerlo> (Which probably isn't a pangram.)
23:38:52 <oerjan> it does not b
23:39:14 <kerlo> If gnus oft say zed by quux, jack.
23:40:58 <oerjan> hmph
23:41:15 <kerlo> Is that an actual pangram?
23:41:31 <kerlo> Can't be; it has only 25 letters.
23:42:53 <kerlo> It has A and B and C and D and E and F and G but not H; it has I and J and K but not L or M; it has N and O but not P; it has Q but not R; it has S and T and U but not V or W; it has X and Y and Z.
23:44:55 <Slereah_> Stop singing the alphabet
23:45:21 <ehird> This Pangram contains four a's, one b, two c's, one d, thirty e's, six f's, five g's, seven h's, eleven i's, one j, one k, two l's, two m's, eighteen n's, fifteen o's, two p's, one q, five r's, twenty-seven s's, eighteen t's, two u's, seven v's, eight w's, two x's, three y's, & one z.
23:49:56 <oerjan> hm would you reach that if you wrote it as an iterated system, and started with 0 of everything...
23:50:50 -!- sebbu has quit (Connection timed out).
23:54:05 <kerlo> It's likely you would end up in an infinite loop.
23:56:29 <ehird> that program was machine-generated
23:56:31 <ehird> (custom machine)
23:56:34 <ehird> err
23:56:36 <ehird> pangram
2009-01-09
00:02:09 -!- grndlvlbombdood has changed nick to bsmntbombdood.
00:04:22 <ehird> I still say that there should be an ordered directory structure in filesystems.
00:06:45 -!- jix has quit ("...").
00:15:40 <oklopol> ordered directory structure?
00:15:53 <oklopol> ehird: how did you generate it?
00:15:54 -!- Corun has quit ("This computer has gone to sleep").
00:16:01 <ehird> i didnt generate it
00:16:03 <ehird> i stole it
00:16:03 <ehird> :P
00:16:36 <oklopol> err right, would've been quite fast
00:18:50 -!- Corun has joined.
00:19:59 <oerjan> bah seems not to converge
00:23:29 <oklopol> what happens?
00:23:54 <kerlo> This pangram contains zero a's, zero b's, zero c's, zero d's, zero e's, zero f's, zero g's, zero h's, zero i's, zero k's, zero l's, zero m's, zero n's, zero o's, zero p's, zero q's, zero s's, zero t's, zero u's, zero v's, zero w's, zero x's, zero y's, zero z's, zero apostrophes, zero commas, zero spaces, and one period.
00:25:32 <ehird> That's not very accurate.
00:26:16 <oklopol> oerjan: *same question*
00:40:53 <oerjan> oklopol: i didn't check for longer cycles, let me see
00:41:22 <oerjan> (btw i started with the string "abc...z")
00:41:50 <oerjan> also i used "no" rather than "zero", not that it was ever used of course
00:42:39 -!- kerlo has left (?).
00:46:30 <oerjan> oops
01:00:02 <oerjan> ah
01:00:35 <oerjan> "This Pangram contains four a's, one b, two c's, one d, thirty-one e's, five f's, seven g's, nine h's, thirteen i's, one j, one k, one l, two m's, nineteen n's, fourteen o's, two p's, one q, six r's, twenty-seven s's, twenty t's, three u's, five v's, seven w's, three x's, three y's, & one z." repeats after 126 steps
01:04:29 <oerjan> and does not appear until about 1008 steps after a..z
01:05:08 <oerjan> i just did not wait long enought the first times i tried
01:42:16 -!- GregorR has quit (Remote closed the connection).
01:45:31 -!- Dewio has joined.
01:57:40 -!- Dewi has quit (Read error: 101 (Network is unreachable)).
03:49:04 <lament> This pangram contains your mom.
03:51:51 <oerjan> That is not a pangram.
04:10:57 <oerjan> SPAM SPAM WONDERFUL SPAM
04:12:10 <psygnisf_> there's an algo for pangrams. what is it?
04:13:05 -!- bsmntbombdood has quit (Read error: 113 (No route to host)).
04:14:04 <oerjan> you mean self-describing pangrams? pangram alone just means something containing every letter
04:14:28 <psygnisf_> yes, self describing pangrams :P
04:15:54 <oerjan> that would be constraint solving i think. or maybe something evolutionary...
04:15:58 <psygnisf_> i suspect its solvable with a linear equation
04:16:21 <oerjan> i strongly doubt that
04:17:12 <oerjan> the number -> vector of letters in numeral mapping is complicated
04:18:41 <psygnisf_> i dunno man
04:18:57 <psygnisf_> there must be a way!
04:18:57 <psygnisf_> :p
04:19:07 <oerjan> by evolutionary i mean, you could use an iteration like i did, but then do a random change when you got stuck
04:20:44 <oerjan> only 16 letters actually appear in the numbers 1-99, that reduces search space
04:25:49 <oerjan> http://en.wikipedia.org/wiki/Pangram
04:26:06 <oerjan> i wonder if the example posted above was pasted from there
04:26:37 <oerjan> if so, it was computed with dedicated hardware
04:27:01 <oerjan> mind you that was in 1984 so obviously an ordinary computer should be able to do it now
04:27:27 -!- Corun has quit ("This computer has gone to sleep").
04:27:27 <psygnisf_> its an autogram is what it is
04:27:30 <psygnisf_> thats the real term
04:27:46 <oerjan> looks identical on a glance
04:27:56 <psygnisf_> autograms are self describing
04:27:59 <psygnisf_> pangrams contain all the letters
04:28:11 <psygnisf_> its merely coincidental that some autograms can also be pangrams
04:28:24 <oerjan> yes but i guess making them also pangrams probably is not that much worse
04:28:44 <psygnisf_> likely.
04:30:43 <oerjan> the page speaks of Binary Decision Diagrams
04:30:53 <psygnisf_> yes
04:31:00 <oerjan> now if wikipedia wasn't constantly locking up...
04:36:38 <oerjan> which probably means that they are essentially solving it by reducing to a case of an NP-complete problem...
04:37:04 <oerjan> not very promising :D
04:37:13 <psygnisf_> D:
04:37:34 <psygnisf_> i enjoy understanding what P and NP mean
04:37:57 <oerjan> but not so much hitting into them, eh?
04:38:05 <psygnisf_> what?
04:38:51 <oerjan> but you don't enjoy quite as much having to solve NP-complete problems...
04:39:37 <psygnisf_> never had to try :P
04:41:18 <oerjan> actually most interesting puzzles are probably human-sized (small!) versions of NP-complete problems
04:43:26 <psygnisf_> what
04:46:13 <oerjan> sudoku for example, becomes NP-complete if you have arbitrary board size and non-unique solutions
04:46:52 <psygnisf_> hm
04:47:34 -!- CakeProphet has quit ("lol").
05:27:55 -!- Sgeo has joined.
05:51:46 -!- moozilla has joined.
06:04:06 -!- bsmntbombdood has joined.
06:34:00 -!- kar8nga has joined.
06:38:29 -!- CakeProphet has joined.
07:08:09 -!- kar8nga has quit (Read error: 145 (Connection timed out)).
07:12:53 -!- psygnisf_ has quit (Read error: 110 (Connection timed out)).
07:31:30 -!- Asztal has quit (Read error: 60 (Operation timed out)).
07:32:04 -!- Asztal has joined.
07:58:23 <AnMaster> <flexo> hm. looking at that mess... i'm really proud of it :) <-- optimizing?
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:07:14 -!- Sgeo has quit (Remote closed the connection).
08:14:05 -!- MizardX has quit (kornbluth.freenode.net irc.freenode.net).
08:14:05 -!- oerjan has quit (kornbluth.freenode.net irc.freenode.net).
08:14:11 -!- oerjan has joined.
08:14:11 -!- MizardX has joined.
08:19:54 -!- oerjan has quit ("Good night").
08:26:32 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
08:26:40 -!- moozilla has joined.
08:33:26 -!- Dewio has changed nick to Dewi.
08:42:53 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
08:42:54 -!- metazilla has joined.
08:56:21 -!- GreaseMonkey has quit ("e disasterous.").
10:54:35 <oklopol> that pangram problem would be quite hard to show np-complete given english numbers aren't exactly that simple
10:55:09 <oklopol> and of course it would trivially be in p if you just had the english numbers and the english alphabet, because a solution is known
10:55:20 <oklopol> a problem instance can't really be np-complete
10:56:49 <oklopol> but you could probably include subset sum somehow given the ability to specify the alphabet and the way to represent numerals
10:57:11 <oklopol> not that i can think very coherently this early
10:57:14 <oklopol> shuppe ->
11:16:22 <Ilari> At least it becomes meaningful to talk about its algoritmic complexity if alphabet and numerics used are variable.
11:17:12 <oklopol> yes
11:17:27 <oklopol> but i can't find a simple way to encode anything in it
11:18:01 <oklopol> i think i'm close to getting it, but i don't really have the time atm
11:18:52 <Ilari> But is that problem even in NP (i.e. it does not blow up superpolynomially)?
11:19:09 <Ilari> In solution size that is...
11:19:14 <oklopol> it's trivially in np, you can just count characters and their amounts.
11:19:25 <oklopol> *character amounts
11:20:04 <oklopol> given numerics, an alphabet and a solution, just check the solution contains only pieces of the alphabet, and for all characters, their amount is represented with the correct numeric
11:20:31 <oklopol> oh
11:20:35 <oklopol> i see what you mean
11:21:12 <oklopol> well we need to be polynomial on the size of the set of numerics
11:21:27 <oklopol> i can't see a way to get a superpolynomial solution
11:21:57 <Ilari> What could happen is similar to what happens in Sokoban: The solution chains can blow up exponetially -> PSPACE.
11:22:06 <oklopol> the solution is essentially an n-tuple of numerics, one representing each character's count in the whole tuple's numerics + 1
11:22:18 <oklopol> err
11:22:21 <oklopol> you don't need a solution chain
11:22:30 <oklopol> are we talking about the same thing?
11:22:31 <Ilari> Actually, the problem is not well-defined. How you encode numerics used?
11:22:50 <oklopol> i'm talking about generalizing "this pangram contains x1 a's, x2 b's..."
11:23:28 <oklopol> well just give a list of all the numerics you're allowed to use
11:23:39 <oklopol> if you need a bigger number, there's no solution
11:23:42 <oklopol> doesn't lose generality
11:24:02 <Ilari> That 'solution chain' referred to Sokoban. You can encode explicit solution, but it can be exponential in lenght, so Sokoban is not in NP (its in PSPACE).
11:24:36 <oklopol> well i don't know sokoban, i can look it up
11:24:46 <oklopol> yeah what does that have to do with this?
11:25:02 <oklopol> there's no chain here, you just calculate amounts, and see if the right numeric is in place
11:25:25 <oklopol> any solution will just be an n-tuple from the given set of numerics, where n is the size of the alphabet
11:25:49 <oklopol> there cannot be anything superpolynomial about that, because you have a polynomial-size tuple of polynomial-size objects
11:26:23 <oklopol> i mean i did understand what you meant by the solution chain thing
11:27:10 <Ilari> Bound for certificate space required is n*ceil(log2(k)), where n is number of alphabet and k is number of numerics.
11:27:12 <oklopol> but here we're just checking a solution, there's no computation involved in the solution checking, as is usual for np-completeness
11:27:40 <oklopol> no actually k should be the size of the largest numeric
11:28:00 <oklopol> well
11:28:04 <oklopol> right, yeah, that's okay too
11:28:34 <oklopol> you're just exploiting the fact the list is in the problem descriptino
11:28:37 <oklopol> *description
11:29:58 <Ilari> Even if numeric description size is logaritmic in numbers representable, then its still O(n*k)...
11:31:07 <oklopol> true
11:31:46 <oklopol> yeah it's the same as sokoban, counting the characters is the computation that can last an exponential amount
11:32:34 <oklopol> i was thinking there would be only a polynomial amount of polynomial numerics
11:32:55 <oklopol> err. then again, if you want the *number* of numerics to be polynomial
11:33:02 <oklopol> then the actual list of numerics is exponential
11:33:29 <oklopol> well. i guess it doesn't have to be
11:33:37 <oklopol> why would it, just could
11:34:14 <oklopol> blargh, if you keep talking to me, i'm going to have to start thinking at some poitn
11:34:16 <oklopol> *point
11:35:13 <oklopol> blah, yes you're right, might be pspace, should probably define it better
11:35:28 <Ilari> If there is some upper limit to numerics used, and representation of numerics in problem is at least logaritmic, then its in NP.
11:36:07 <oklopol> well i assumed a polynomial amount of numerics initially
11:37:18 <oklopol> basically you need the counting of characters to be in np, which that should guarantee, yes
11:38:31 <oklopol> but i never really even considered that, i assumed if there was a beautiful solution to encode something in it, you'd easily see if the result was checkable in polynomial time, and that i could define the problem after that
11:38:38 <oklopol> :-)
11:39:21 <oklopol> ah representation at least logarithmic so the character amounts can't get infinite, yes, good point
11:40:07 <oklopol> Ilari: approximately, where do you live? i'm such a patriot that i like to know that about finns
11:41:44 <Ilari> Actually, I think with logspace numerics, its not in NP.
11:41:48 <Ilari> oklopol: Helsinki.
11:42:31 <Ilari> The reason for that is that by increasing the alphabet size, you can make solution size blow up superpolynomially.
11:43:30 <Ilari> And the size of problem encoding is only logaritmic in alphabet size...
11:43:56 <Ilari> But the size of solution is linear in alphabet size -> exponential blowup.
11:44:30 <oklopol> well err, if the number of numerics is polynomial, and all their sizes are polynomial, i don't see what could go wrong. i mean there couldn't, then, be an exponential size solution because that would require an exponential input, right?
11:45:40 <oklopol> err the problem encoding also contains the numerics, so even if the solution is linear in alphabet size, it will only contain a small subset of the given set of numerics
11:45:53 <oklopol> err
11:46:20 <oklopol> what i mean is, you can't need an exponential amount of time to count the characters, because then you'd have an exponential amount of numerics in the input as well
11:48:22 <oklopol> i mean the crucial problem with getting an exponential blowup is we want the set of numerics as an explicit list
11:48:49 <oklopol> if we just encoded it like, say, english does, in a logarithmic amount of rules, then we'd hit the linear in alphabet size problem
11:49:24 <Ilari> The problem comes from the fact that solution size is necressarily linear in number of alphabet, but the problem description size is linear in number of bits in alphabet size.
11:52:42 <oklopol> i don't think so, if we need the numerics to be given explicitly. we can only use time O(|set of numerics|) to count characters
11:52:52 <oklopol> and if that needs to be polynomial, i don't see a problem
11:54:37 <oklopol> just like, if you're given a graph with n connected components, and you need to find the biggest subset of those components whose union size is smaller than a given number
11:55:22 <oklopol> you can just use dynamic programming, because the input size contains the numbers in "unary", just like in here
11:55:33 <oklopol> s/input size/input
11:56:17 <Ilari> It takes exponential time just to iterate through the alphabet...
11:56:50 <oklopol> the alphabet size is polynomial, so what do you mean?
11:57:37 <Ilari> What in problem input is linear in size of alphabet?
11:58:36 <oklopol> the tuple that is the solution is linear in the size of the alphabet, it has an element for each character
11:59:20 <Ilari> Exactly. But I don't see that the input has to be linear in size of alphabet...
11:59:50 <oklopol> the checking problem requires you to, for each character (linear in size of alphabet), count the number of those characters in the numbers (linear in size of set of numberics and their representation)
12:00:04 <oklopol> Ilari: umm, so you can have an exponential input?
12:00:17 <oklopol> then, it takes exponential time to check the numbers are even in the set of numerics.
12:00:24 <oklopol> thus clearly it isn't in np.
12:00:45 <oklopol> the crucial point is how we encode the numerics, i assumed they were given explicitly, in a list.
12:03:00 <oklopol> are you perhaps implicitly assuming the set of numerics can be represented in logarithmic space?
12:03:33 <oklopol> at least if it could, you would be correct, it would not be in np
12:04:26 <oklopol> anyway, i need to go read my book, we're not really getting anywhere arguing about... well not sure what :P
12:04:29 * oklopol goes ->
13:04:46 -!- Slereah has joined.
13:13:47 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
13:38:45 -!- Corun has joined.
13:45:15 -!- jix has joined.
14:01:04 -!- jix has quit (Read error: 104 (Connection reset by peer)).
14:07:22 -!- jix has joined.
14:18:07 -!- jix has quit ("...").
14:18:28 <Slereah> http://img.secretareaofvipquality.net/src/1230134229081.jpg
14:18:29 <Slereah> D:
14:19:39 <oklopol> i don't get it
14:20:16 <Slereah> LISP
14:20:21 <Slereah> I don't know either.
14:20:38 <oklopol> ('A')?
14:21:46 <Slereah> Nop
14:21:53 <Slereah> It's universal quantifier
14:22:30 <oklopol> and it's upside down why?
14:22:49 <Slereah> ...
14:22:57 <Slereah> Owait
14:22:59 <Slereah> You're right.
14:23:10 <Slereah> It's usually an universal quantifier.
14:23:18 <Slereah> It are supposed to be a mona kittun
14:24:34 <oklopol> wut?
14:24:51 <Slereah> ASCII art stuff on the chans.
14:32:07 -!- Corun has quit ("This computer has gone to sleep").
15:09:16 -!- Corun has joined.
16:04:15 -!- ehird has set topic: i don't eat your face | man | http://tunes.org/~nef/logs/esoteric/.
16:07:57 <ehird> 06:18:28 <Slereah> http://img.secretareaofvipquality.net/src/1230134229081.jpg <-- lol
16:55:59 * AnMaster looks around
16:56:26 <AnMaster> hello ehird my friend!
16:56:38 <ehird> I don't eat your face. Man.
16:56:42 * ehird is possibly tired.
16:56:51 <AnMaster> hehe
16:57:22 <AnMaster> also what do you think about irregular webcomic today?
16:57:32 <AnMaster> ehird, I think the annotation rocked
16:57:41 * ehird checks
16:58:18 <ehird> heh
16:58:28 * AnMaster waits while ehird reads it
16:58:36 <ehird> I skimmed the annotation, mostly.
16:58:40 <ehird> But I got the gist :P
16:58:50 <AnMaster> ehird, which is?
16:59:02 <ehird> "You are my reader. I hate you."
16:59:28 <AnMaster> hm I would say: "black body radiation and how it can be used to figure out temperature or stars and distance to them"
16:59:41 <ehird> The intentions are what matters :-P
16:59:45 <AnMaster> also a bit about general relativity
16:59:50 <AnMaster> ehird, but I liked it!
16:59:57 <ehird> Then he has failed :P
17:00:05 * ehird predicts that the comic will now fade to octarine
17:00:10 <AnMaster> ehird, he has done such annotations a few times before
17:00:31 <AnMaster> ehird, err that isn't inside the sRGB space is it?
17:00:41 <ehird> sRGB is for squares.
17:01:11 <AnMaster> err no, triangles, though square colour spaces would be possible I think
17:01:25 <AnMaster> ~
17:01:52 <AnMaster> ehird, what colour space are apple monitors?
17:02:01 <ehird> sRGB? :-P
17:02:12 <ehird> Well.
17:02:19 <ehird> System Preferences says "iMac".
17:02:27 <ehird> It also has "sRGB Profile" as an alternative.
17:02:30 <AnMaster> I would have assumed some wider one like AdobeRGB or such
17:02:36 <ehird> Which mainly seems to be darker.
17:02:44 <ehird> And it makes the text anti-aliasing look bad.
17:02:53 <AnMaster> well no monitor matches a colour space exactly
17:02:57 <ehird> AnMaster: it also has adobe rgb.
17:03:01 <ehird> and ntsc, and PAL.
17:03:03 <ehird> and god knows what.
17:03:10 <AnMaster> well but what can the monitor actually show?
17:03:15 <AnMaster> bbl, someone at the door
17:03:22 <ehird> AnMaster: I'm not sure.
17:04:05 <AnMaster> -_- Jehovas witness...
17:05:04 <AnMaster> I assume they exist over in UK too?
17:05:07 <ehird> Yeah.
17:05:27 <ehird> I think we've only ever got one her. I want more so I can waste their time :(
17:06:34 <AnMaster> well I wonder why they keep bothering with our house after my father once (3rd time same year or so) decided to start to try to convert them about Buddhism. No visits for a few years after that, but seems they started again last year or so
17:06:46 <AnMaster> s/about/to/
17:07:27 <AnMaster> I saw it happen btw, was quite funny
17:07:47 <ehird> lol
17:08:06 <ehird> AnMaster: there's a way to get them stop coming
17:08:10 <ehird> i forget what the term is
17:08:10 <ehird> but
17:08:12 <AnMaster> oh?
17:08:19 <ehird> if you tell them you used to be one, but got excommunicated(?I think?)
17:08:20 <AnMaster> bbl, _expected_ guest here
17:08:30 <ehird> their strict rules are that they CANNOT come there ever again
17:08:34 <ehird> (because you're a devil or something)
17:13:57 <ehird> AnMaster: "Disfellowshipping" it seems
17:13:58 <AnMaster> ehird, well that is no fun
17:14:09 <ehird> There are over 30 violations for which a member can be disfellowshipped [21], including: Abortion, adultery, apostasy, bestiality, voluntary blood transfusions, drug abuse, drunkenness, extortion, fornication, fraud, gambling, heresy, homosexual activity, idolatry, incest, interfaith activity, loose conduct[22], manslaughter, murder, perverted sex relations[23], polygamy, pornography[24], sexual abuse, spiritism, theft, and use of tobacco.
17:14:14 <ehird> OH NO, PORNOGRAPHY
17:14:19 <AnMaster> better to try to convert them to Buddhism or such
17:14:35 <AnMaster> voluntary blood transfusions?
17:14:41 <AnMaster> why on earth
17:14:49 <ehird> AnMaster: apparently blood is sacred.
17:14:59 <ehird> blood transfusions are strictly forbidden for jehova's witnesses
17:15:02 <ehird> even in case of emergency
17:15:58 <ehird> gotta love cults
17:15:59 <AnMaster> gambling huh..., so they can't play chess or anything?
17:16:30 <ehird> Arguably that's not gambling.
17:16:31 <ehird> :P
17:16:44 <AnMaster> ah so gambling is just when it is about money or?
17:17:14 <ehird> Gambling is the wagering of money or something of material value on an event with an uncertain outcome with the primary intent of winning additional money and/or material goods. Typically, the outcome of the wager is evident within a short period.
17:17:18 <ehird> -http://en.wikipedia.org/wiki/Gambling
17:17:19 <AnMaster> anyway trying to convert them to Buddhism really get them confused, which is great fun.
17:17:40 <AnMaster> ehird, so they don't like stock markets?
17:18:04 <AnMaster> because you could describe that as close to that
17:18:05 <ehird> Stock markets aren't gambling in public opinion, for some unfathomable reason.
17:18:22 <AnMaster> agreed you would need to bend the definition of "wager", but not much
17:18:50 <AnMaster> btw, imaginary colors rock
17:19:20 <ehird> Yes.
17:19:25 <ehird> I want a new colour. :-P
17:20:14 <ehird> If a saturated green is viewed until the green receptors are fatigued and then a saturated red is viewed, a perception of red more intense than pure spectral red can be experienced. This is due to the fatigue of the green receptors and the resulting lack of their ability to desaturate the perceptual response to the output of the red receptors.[2] Kodak engineered Epcot's pavement to be a certain hue of pink so that the grass would look greener through th
17:20:17 <ehird> e reverse of this effect.[citation needed]
17:20:19 <ehird> Cooooooo
17:22:07 <ehird> Hm.
17:22:12 <ehird> I should compile something to llvm.
17:22:23 <ehird> Maybe a nice lil' OOP language or something.
17:22:29 <AnMaster> well why not just use the Lab colour space
17:22:41 <ehird> Is it possible to write an LLVM thing in non-C++?
17:22:50 <AnMaster> ehird, yes iirc, they have a C interface
17:22:57 <ehird> Apart from C? :P
17:23:14 <AnMaster> ehird, well ocaml, since someone used the C interface to make an ocaml interface iirc
17:23:22 <AnMaster> or was it making ocaml compile using llvm?
17:23:25 <AnMaster> one of those
17:23:31 <ehird> AnMaster: Why isn't it language agnostic?
17:23:44 <AnMaster> ehird, well it could be, but you need to make an interface
17:23:56 <ehird> That's not language agnostic.
17:23:59 <AnMaster> iirc both python and perl can interface C libraries
17:24:07 <AnMaster> ehird, the bytecode spec format is open
17:24:12 <AnMaster> you could write your own generator
17:24:18 <ehird> Bleh
17:24:34 <AnMaster> ehird, but what do you suggest instead of a library with a standard interface?
17:25:18 <ehird> AnMaster: A simple plaintext format that you can just pipe to llvm?
17:25:23 <ehird> You know. UNIX.
17:25:24 <AnMaster> sure
17:25:27 <AnMaster> that exists
17:25:30 <AnMaster> llvm byte code asm
17:25:31 <AnMaster> :P
17:25:57 <ehird> So why not use that?
17:26:05 <AnMaster> indeed, why not?
17:26:17 <ehird> Well, is it more complex than the API?
17:26:36 <AnMaster> ehird, iirc the llvm website have info somewhere on it comparing pros and cons of those different ways
17:26:44 <ehird> OK.
17:27:53 <ehird> http://llvm.org/docs/FAQ.html#langirgen
17:27:58 <ehird> against: the .ll parser is slower than the bitcode reader when interfacing to the middle end
17:28:01 <ehird> that would be especially bad
17:28:08 <ehird> as i'd like it to be fast enough for e.g. using it for a REPL
17:28:14 <ehird> eval() and suchlike.
17:28:23 <AnMaster> ehird, yes could be a problem then
17:28:34 <AnMaster> if you want to JIT stuff you probably need to use the API
17:28:50 <ehird> I guess I might have to bite the bullet and use C.
17:28:55 <ehird> Ugh, I'll have to use effing flex and yacc.
17:29:15 <ehird> Well, I could use lemon instead of yacc.
17:29:16 <ehird> Still, ugh
17:29:33 <AnMaster> ehird, hm can't languages like python, ruby and perl interface C libraries?
17:29:41 <AnMaster> I'm pretty sure at least python and perl can
17:29:54 <ehird> Sure, I guess.
17:29:58 <ehird> I'll try it
17:30:10 <AnMaster> ehird, maybe someone already wrote a wrapper? Might be worth checking
17:30:10 <ehird> Of course, it won't fit in with the rest of the code, oh well.
17:30:15 <ehird> Yes, good point.
17:30:59 <AnMaster> <ehird> Of course, it won't fit in with the rest of the code, oh well. <--?
17:31:12 <ehird> AnMaster: it'll take structs, etc
17:31:22 <ehird> which I'll have to construct manually from the objects
17:31:29 <AnMaster> well yes, I guess it will be easier to wrap the C API rather than the C++ one
17:31:39 <AnMaster> at least you'll only have to deal with POD then
17:32:06 <ehird> You know, writing this in a HLL might be a bit stupid.
17:32:08 <ehird> I'll go for C.
17:32:17 <ehird> And, uh, s-expressions so I don't have to use flex/lemon.
17:32:28 <ehird> ... even though I don't really want to use s-exprs, but oh well
17:32:44 <AnMaster> ehird, HLL?
17:32:57 <ehird> High level language.
17:33:02 <AnMaster> ah right
17:33:09 <AnMaster> what language did you plan to use to begin with?
17:33:25 <ehird> Eh, just one of the typical scripting languages. But tying a HLL to another HLL would be silly.
17:33:25 <AnMaster> iirc there is some llvm thing for haskell for example, but I may remember wrong
17:34:12 <ehird> Ooh. That could be very nice.
17:34:18 <ehird> Yes, I believe there is such a thing
17:34:30 <ehird> That is so, so tempting.
17:34:49 <AnMaster> ehird, well I don't know details, I think I was randomly browsing on ohloh or such
17:34:55 <AnMaster> or viewing suggestions for the stack there
17:35:03 <ehird> I saw it a few days ago on reddit, I think, actually!
17:35:18 <AnMaster> AUR (en) - haskell-llvm
17:35:18 <AnMaster> 24 Dec 2008 ... http://hackage.haskell.org/cgi-bin/hackage-scripts/package/llvm ... http:// hackage.haskell.org/packages/archive/llvm/0.4.1.0/llvm-0.4.1.0. ...
17:35:18 <AnMaster> aur.archlinux.org/packages.php?ID=18018 - 7k - Cached - Similar pages -
17:35:18 <AnMaster> hm
17:35:20 <ehird> http://augustss.blogspot.com/2009/01/llvm-llvm-low-level-virtual-machine-is.html
17:35:29 <ehird> Also, yeah, it's on hackage: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/llvm
17:36:10 <ehird> Thing about compiling to llvm is that I have to learn someone _else's_ arcane assembly, instead of inventing my own ;-)
17:36:16 <AnMaster> ehird, oh also if you plan to mess with x86_64 and llvm use svn version
17:36:22 <AnMaster> I hit some bugs in last release
17:36:29 <ehird> I don't think I need 64-bit for this.
17:36:31 <AnMaster> when you used -march and -O
17:36:36 <AnMaster> on x86_64
17:36:41 <ehird> I'm basically inspired by this: http://github.com/why/potion/tree/master
17:37:11 <AnMaster> ehird, on last release you can get llvm-gcc to ICE in stage2 of bootstrapping itself
17:37:20 <ehird> http://github.com/why/potion/commits/master <- Wow, that's some activity
17:38:08 <AnMaster> ehird, interesting, and that uses llvm?
17:38:11 <ehird> Nope
17:38:15 <ehird> Custom VM
17:38:21 <ehird> Also has a JIT
17:38:22 <ehird> for x86
17:38:28 <ehird> but works on non-x86, just slower
17:38:40 <AnMaster> so it uses a custom written JIT for x86 and x86_64 (it says so in README)
17:38:43 <AnMaster> huh
17:38:55 <AnMaster> how old is the project?
17:39:02 <ehird> I think, um, a few weeks.
17:39:07 <AnMaster> considering the activity level I would assume fairly new
17:39:07 <ehird> Maybe a month or two.
17:39:15 <ehird> well
17:39:16 <ehird> why created repository potion 1 day ago
17:39:16 <AnMaster> and the JIT actually works?
17:39:21 <ehird> but he's worked on it for longer, presumably
17:39:28 <ehird> AnMaster: yes
17:39:40 <AnMaster> writing a good JIT takes time, lots of time
17:40:57 <AnMaster> " * No error handling. I'm wary of just tossing
17:40:57 <AnMaster> in exceptions and feeling rather uninspired
17:40:57 <AnMaster> on the matter. Let's hear from you."
17:40:59 <AnMaster> ah easy
17:41:02 <AnMaster> reflection :P
17:41:03 <ehird> * core: okay, first checkin. the parser is coming together. started this
17:41:03 <ehird> on the 15th.
17:41:05 <ehird> -- december
17:41:26 <ehird> so he's developed a prototype with a working jit in less than a month.
17:41:38 <ehird> of an object-oriented language with also a VM and interesting object model.
17:41:44 <ehird> i swear that guy is paid to sit around all day and be awesome
17:42:05 <AnMaster> ehird, well I can believe someone managed to write a well working JIT in less than a month if he was dedicated, and a OO lang... But both? No way
17:42:20 <ehird> Well, there's your evidence.
17:42:23 <ehird> Browse through the commits if you want.
17:43:00 <AnMaster> well, what about work? Either rich enough to not need it or the company sponsors this, or something else
17:43:12 <ehird> See: "i swear that guy is paid to sit around all day and be awesome"
17:43:19 <AnMaster> ehird, yes I agreed with you
17:43:30 <ehird> AnMaster: I think what you have to realise is that he's crazy as all hell.
17:43:48 <ehird> Evidence: http://poignantguide.net/ruby/chapter-4.html (<-- this is from a _programming_ tutorial. Needs images.)
17:43:54 <AnMaster> ehird, or he is a student, one of those who back in the 1970s would have rewritten unix over the weekend
17:44:20 <ehird> More evidence: handwritten code, with coloured pencils. http://redhanded.hobix.com/cult/ahaNoticeTheExpandoWhichPrecludes.html
17:44:28 <AnMaster> ehird, well he isn't too bad at drawing
17:44:33 <AnMaster> certainly draws better than me
17:44:51 <AnMaster> ehird, WHY ARE THERE NO PUNCH CARDS!?
17:45:00 <ehird> AnMaster: don't give him ideas, man
17:45:11 <AnMaster> ehird, interesting nick btw, "why"
17:45:34 <ehird> his full name is actually why the lucky stiff.
17:45:38 <ehird> Also he has a GUI toolkit called Shoes, singular.
17:45:40 <ehird> Examine:
17:45:42 * AnMaster googles that
17:45:51 <ehird> why's new toolkit, Shoes, is great. why the lucky stiff is so awesome.
17:46:15 <AnMaster> wikipedia... "why the lucky stiff (often known simply as why or _why) is the persona of a prolific writer, cartoonist, musician, artist, and computer programmer notable for his work with the Ruby programming language."
17:46:18 <AnMaster> hm
17:46:38 <AnMaster> hm there is a photo too
17:47:17 <AnMaster> also the wp article seems like a link dump
17:48:37 <AnMaster> ehird, hm are you sure this is one person?
17:48:51 <AnMaster> not several performing a practical joke of some weird sort
17:48:57 <ehird> AnMaster: the theory that he is a collective has been put forward. The personality is a bit too consistent for that, though :P
17:49:48 * ehird decides to write language as custom vm language in Haskell. Maybe.
17:50:11 <AnMaster> ehird, well I'd assume only one would do the drawing bit, to make it consistent, and so on. If not he is some sort of super-productive multi-skilled genius...
17:50:43 <ehird> Alternative theory: He is a regular person who codes Java by day in a regular, messed-up javacorp. Wears a tie.
17:50:44 <ehird> But.
17:50:49 <ehird> Has a huge stash of LSD at home.
17:50:52 <ehird> And an internet connection.
17:51:00 <ehird> And coloured crayons.
17:51:27 <AnMaster> would LSD do that? I don't know any details of the effects caused by that drug
17:51:44 <ehird> Seems to fit :-P
17:51:58 <AnMaster> ehird, ?
17:52:04 <ehird> what
17:52:34 <ehird> http://blog.nihilogic.dk/2009/01/genetic-mona-lisa.html <- the javascript demoscener takes up the genetic algorithms meme
17:53:20 <AnMaster> genetic algorithms meme? When did genetic algorithms become a meme?
17:53:34 <ehird> since everyone and his dog generated the mona lisa from polygons with it :P
17:54:03 <AnMaster> ehird, didn't that one miss recombinating and so on?
17:54:10 <ehird> dunno
17:55:46 <AnMaster> I'm pretty sure I read about the original and it seemed to do a, .... forgot the word
17:56:02 <ehird> stochastic hill climb
17:56:03 <AnMaster> directed search or something
17:56:05 <AnMaster> ah yes
17:56:08 <AnMaster> that sounds right
17:56:55 * ehird names language poke
17:57:05 <AnMaster> think I seen that used already
17:57:09 <AnMaster> not 100% sure though
17:57:11 <ehird> meh.
17:57:20 * ehird decides between C and Haskell while wondering why that's even a choice
17:57:50 <AnMaster> ehird, well I never tried the haskell interface for llvm, #llvm can be found on OFTC (not freenode)
17:58:05 <AnMaster> at least the official #llvm
17:58:10 <ehird> I decided against llvm :P
17:58:18 <AnMaster> ehird, writing your own JIT?
17:58:27 <ehird> Probably just a regular VM to start with.
17:58:31 <ehird> Y'know, sanity and all that.
17:58:47 <AnMaster> well I guess _why doesn't have any of that
17:59:02 <ehird> Well, nor do I.
17:59:33 <AnMaster> ehird, and/or he could be somewhat like those famous composers, Mozart and such, brainchilds
18:00:04 <ehird> or, LSD
18:01:10 <AnMaster> maybe in 200 years people will talk about famous programmers from the twenty-first century(sp?), like we today talk about famous composers, writes and painters of previous centuries
18:01:12 <AnMaster> :D
18:01:34 <AnMaster> assuming spelling is correct for the last word
18:03:10 <ehird> "Phamus pr0gramrz aften used ''fakneames'' to hyd3 deir tru identiti. Forexam, ``why the lucky stiff`` (inth oldspeak, "wot a lucki blighter")"
18:03:24 <ehird> I disclaim all liability if English ends up like that in the future.
18:03:43 <AnMaster> ehird, I certainly hope AOL speak doesn't take over the world
18:07:31 <AnMaster> ehird, hm is there a linux C version of this genetic meme?
18:07:38 <ehird> yes, I believe so
18:07:39 <ehird> se
18:07:40 <ehird> sec
18:08:03 <ehird> AnMaster: http://github.com/mackstann/mona/tree
18:08:09 * AnMaster doesn't know his way around this strange blogosphere thing
18:08:09 <ehird> written by the kind of person who writes everything in C :-P
18:08:44 <Badger> woo, C
18:08:50 <AnMaster> "velociraptor.png"? Is this the xkcd author?
18:08:58 <AnMaster> hm nop
18:09:13 <AnMaster> nope*
18:10:03 <ehird> Badger: but but you come from #haskell
18:12:18 <Badger> heh
18:12:30 <Badger> can't use the language though
18:12:32 <Badger> not one bit
18:12:49 <Badger> my puny attempts failed, whereas C is more comprehendable
18:13:08 <ehird> only because you're used to it
18:13:14 <Badger> quite possibly
18:14:04 * ehird plots to have a component called mon in this language, so he can make horrible puns about pokemon
18:15:04 <AnMaster> Badger, what other functional languages do you know?
18:15:14 <Badger> none
18:15:27 <Badger> ehird, I choose you!
18:15:46 <ehird> GOTTA INTERPRET THEM ALL! umm, no.
18:16:19 <AnMaster> ehird, about that "http://redhanded.hobix.com/cult/ahaNoticeTheExpandoWhichPrecludes.html" you linked, wtf is "expando"?
18:16:37 <ehird> how about reading
18:16:38 <ehird> the text
18:16:44 <ehird> and the linked article
18:16:44 <ehird> http://diveintomark.org/archives/2007/04/01/document-dot-wacko
18:16:51 * AnMaster looks for the link
18:16:53 <AnMaster> ah yes
18:16:56 <AnMaster> and I read the text
18:19:32 <ehird> i promise that poke will have an expando method on all objects.
18:19:34 <AnMaster> "“Precludes the functionality.” Awesome." <-- eh? what is odd with that? Sure, it isn't informal everyday language. So what? Yes I read the whole post, and I agree with the poster that the thing is very wtf.
18:19:45 <AnMaster> but not that language remark
18:20:23 <ehird> AnMaster: it is wtfy because it's worded ridiculously and sounds funny.
18:20:49 <AnMaster> ridiculously? You mean bureaucratically?
18:20:52 <ehird> no
18:20:54 <ehird> ridiculously
18:21:00 <AnMaster> hm ok
18:21:01 <ehird> i think you'd have to be a native speaker :P
18:21:06 <AnMaster> probably
18:21:43 <AnMaster> when I translate it mentally it ends up as highly bureaucratic, but not ridiculous
18:21:54 <AnMaster> sure sometimes bureaucratic == ridiculous
18:24:30 <AnMaster> ehird, like (real world example, not urban myth, I know the person first hand who read this in a report from someone on the local city council, a journalist btw), translated from Swedish: "green fodder converting milk production unit"
18:24:34 <AnMaster> guess what that meant
18:24:46 <ehird> i'm scared to
18:24:57 <AnMaster> ehird, oh? milk cow
18:25:05 <ehird> guessed that :D
18:26:21 <AnMaster> ehird, oh and I have heard (from another journalist, my mother in fact, and no jokes about that) another person at the same city council call "windows" "light inlets"
18:26:27 <ehird> :D
18:26:46 <AnMaster> ehird, at a press conference
18:26:48 * ehird thinks about writing a program that takes text and pounds it through a thesaurus to make it more beaurocratic
18:28:11 <AnMaster> about building some new building, library or museum or something, and that there should be many "light inlets" to create a nice environment and such, and when the journalists asked what he meant with "light inlets" he said something like "oh, um... you know, light inlets, um.... um... windows!"
18:28:18 <ehird> :D
18:28:22 -!- pikhq has joined.
18:28:38 <AnMaster> ehird, I guess it is the same in UK?
18:28:43 <ehird> pretty much.
18:29:59 <AnMaster> hm and this was back in the 1980s, I wonder what they sound like now (said person no longer works as a journalist, she is teaching journalism instead)
18:31:36 * ehird attempts to hack up object.h into something that looks right
18:31:44 <ehird> (from the null string)
18:34:14 <AnMaster> ehird, oh about the "green fodder converting..." thing, the journalist in question called the person who had written it and asked, why he didn't use a normal word. And the person said that if you used "cow" it could mean either "milk cow" or "meat cow".... Yes both of those exists as direct translations to Swedish and yes he used them, no I don't think he was ever able to explain why he didn't just us
18:34:14 <AnMaster> e "milk cow"
18:34:26 <ehird> :D
18:35:17 * ehird wonders if state is actuallyneeded in objects, with sufficient magic
18:36:26 <AnMaster> hah
18:36:38 -!- pikhq has quit (Read error: 60 (Operation timed out)).
18:36:57 <ehird> i mean
18:37:06 <ehird> you could do it as a method definiton like
18:37:24 <ehird> hello <- newSlot
18:37:25 <ehird> becomes
18:37:39 <ehird> hello <- { Slots at(5461651) }
18:37:44 <ehird> where { ... } is a function
18:37:49 <ehird> and the number is generated on newSlot
18:37:57 <ehird> then hello actually returns a value
18:37:59 <AnMaster> ehird, oh and something I saw myself... "park bench" as "sitting function". Sadly the translation in this case makes it even more messed up, because "function" in this case have more than one meaning
18:37:59 <ehird> problem is assigning it
18:38:00 <ehird> hrmhrm
18:44:24 -!- pikhq has joined.
18:44:42 -!- Hiato has joined.
18:48:48 <Hiato> Ok, let me ask a seemingly worthless question: Which distro: GoboLinux, Zenwalk, Lunar, SliTaz or Puppy (or something light/small too)?
18:49:21 <AnMaster> Hiato, Arch Linux?
18:49:26 <AnMaster> it all depends on what you want
18:49:41 <AnMaster> I use Arch Linux and Gentoo Linux. ehird here said GoboLinux was good iirc
18:49:48 <AnMaster> and I like both Gentoo and Arch
18:49:49 <AnMaster> bbl
18:50:05 <ehird> Hiato: slackware? i dunno.
18:50:07 <ehird> gobolinux is nice.
18:50:16 <ehird> but not that lightweight
18:50:22 <Hiato> AnMaster: Well, a stable learning/messing platform that is extensible, but doesn't go bandwidth crazy like Ubuntu. This has to fit in <700mb's
18:50:50 <Hiato> Oh, and it has to be something different, from the usuals, FC, RHL, SuSE, Deb etc
18:51:01 <Deewiant> Arch fits in 300MB IIRC
18:51:08 <Hiato> Ok, I'll take a look at Arch
18:51:22 <Deewiant> If installing the core system from the internet instead of the CD, half of that
18:51:46 <ehird> Hiato: ew
18:51:51 <ehird> don't look at arch :-P
18:52:02 <Hiato> That sounds awesome. Thing is, I'm not really even sure what I use an OS for anyway. I have a Windoze partition, mainly for Fallout 3, and then that's it. I do python and ruby, etc, so nothing constricting there
18:52:12 <ehird> Hiato: if you want to learn how linux works
18:52:13 <ehird> go with slackware
18:52:16 <Hiato> Heh, well, I meant *look* at, as in read :P
18:52:33 <ehird> Hiato: i mean, slackware is like one level up from Linux From Scratch
18:52:50 <Hiato> I have a vague idea, but I just wanna be able to mess around. Yeah, so I've heard, hence I included zenwalk in the list
18:52:56 <ehird> the installer is basically an interface over a program that copies over a kernel and runs the (barely-extant) package manager
18:53:03 <ehird> see, that can be a good thing
18:53:04 <Hiato> lol :P
18:53:08 <ehird> if you want to get proficient with linux, that's great
18:53:14 <ehird> because you learn it without a glossing over
18:53:23 <ehird> it's also very small and fast sort of feeling, in general
18:53:40 <Hiato> Hrmm, so, BlueWhit64? I have an AMD
18:54:05 <ehird> I wouldn't go for a really obscure distro, it'd just be painful
18:54:19 <ehird> Hiato: what do you want to do with this?
18:54:43 <Hiato> ehird: not sure, and that's 90% of the problem. I would say use it, but I'm not even sure what that means.
18:54:52 <ehird> what primary uses? :-)
18:55:14 <Hiato> On windoze, gaming, on linux/misc: surfing, programming and stuffing about
18:55:38 <ehird> Hiato: is learning linux to a deeper extent one of your goals?
18:56:18 <Hiato> ehird: Most certainly, but, not necessarily a priority. (PS: You should make a web-wizard distro selector, you have all the right questions)
18:56:50 <ehird> Hiato: lol, there are plenty of distro selectors to go around... But, if you have a lot of spare time and don't mind messing about a lot to get things going, Slackware could be a good learning experience.
18:57:02 <ehird> You might also want to check out one of the *BSDs.
18:57:26 <ehird> For something more "everyday" but still not a mainstream distro, not sure. Damn Small Linux?
18:58:04 <Deewiant> I'd say Arch is fine as an easier Slackware
18:58:24 <ehird> Deewiant: except that's a misguided goal
18:58:41 <ehird> either you want to get familiar with linux, i.e. slackware
18:58:43 <Hiato> Meh, I'm skeptical about BSD, as I am about solaris/derivatives and other funny kernerls/os's. I tried DSL, and although it was Debian, it failed. Not my kind of thing.. leaves you way in the cold - I felt. I mean, I've never really felt comfortable in Linux, ever, so Arch is looking good and so is slackware. GoboLinux is out because it's too non-standard
18:58:47 <ehird> or you want something for every-day usage, i.e. something else entirely
18:59:07 <Deewiant> Why couldn't one become familiar with linux with an every-day distro
18:59:09 <ehird> Hiato: BSD actually predates linux, by a long shot
18:59:17 <ehird> Deewiant: You could. But if it's one of your specific goals...
18:59:32 <Deewiant> I think the familiarity comes naturally with use
18:59:51 <ehird> slackware can still be valuable, it really depends on what you want
18:59:52 <Hiato> Deewiant: Could, but where's the fun? ehird: Yep :P Read up a bit (a lot) in the past
18:59:54 <Deewiant> Hell, I think I get /too/ familiar just trying to get rid of warnings and errors in dmesg and then in Xorg.0.log ;-)
19:00:27 <ehird> Hiato: Slackware might "leave you out in the cold" to start with -- though its interactive installer is helpful.
19:00:36 <Deewiant> Hiato: Well, there's the offset in that an everyday distro is more fun to use when you're not specifically tinkering and messing about in order to learn linux ;-)
19:00:40 <ehird> Well, interactive is a stretch: Basically, you run it and it tells you what to do next and you have to figure out how ;-)
19:00:46 <ehird> Treasurehunt installation!
19:00:54 <ehird> Well, it does give you pointers.
19:01:19 <Hiato> ehird: :P Deewiant: yeah, I realise, which is why I'm leaning towards Arch now... no offense ehird
19:01:36 <ehird> i still think arch is misguided
19:01:58 <ehird> there's two poles, down-dirty and high-level... arch tries to be the latter by starting from the former
19:02:03 <ehird> which is kind of silly
19:03:01 <Hiato> Hrmm... ok, so fundamentally, technically, it's not cool. Deewiant, do you use it? PS: it does have a much catchier description: a lightweight and flexible Linux® distribution that tries to Keep It Simple.
19:03:13 <Deewiant> Yeah, I'm on Arch64 right now
19:03:19 <Deewiant> My laptop runs Gentoo
19:03:24 <ehird> gentoo?
19:03:29 <ehird> disregard all of Deewiant's opinions, plz
19:03:50 <Deewiant> Less effort to keep running Gentoo than to reinstall :-P
19:03:53 <Hiato> I see, well, I'm not in the mood for massive source compiling/downloading, so no gentoo/bintoo/saboyan etc
19:04:16 <Hiato> ehird: lol :P
19:04:56 <Deewiant> I still like its USE flags idea, being able to set features on a per-package basis, leaving out what you don't need... but being able to install stuff in seconds instead of minutes or hours does outweigh that benefit :-P
19:05:42 <ehird> Deewiant: macports has variants, essentially use flags
19:05:46 <ehird> but less fine-grained, which is fine by me
19:06:03 <ehird> of course, that's uncool, i mean.
19:06:07 <Deewiant> I did flip between Arch and Gentoo on the laptop, though... something didn't work in Arch (I think it was the frame buffer settings) but did in Gentoo for some reason so I went with Gentoo
19:06:15 <Deewiant> I wasn't in the mood for figuring stuff out
19:06:53 <Deewiant> ehird: How does that work? Basically multiple different packages which provide the same virtual package or something like that?
19:07:07 <Hiato> Well, not that it really makes a difference, but according to DW: Slackware:14 Arch:16
19:07:24 <ehird> if you want popularity, why are you looking for something obscure :P
19:07:32 <ehird> slackware is one of the oldest distros fwiw
19:07:46 <Deewiant> I believe it's the second-oldest still active one, after Debian
19:07:48 <ehird> few months older than debian
19:07:50 <ehird> err
19:07:52 <Deewiant> Whaat
19:07:59 <Hiato> ehird: :P I know, just wanted to see what was on the web :P
19:08:00 <ehird> slackware = 16 July 1993
19:08:06 <ehird> debian = 16 August 1993
19:08:09 <ehird> says wikipedia
19:08:19 <Deewiant> I distinctly seem to remember being annoyed at the fact that slackware wasn't older than debian
19:08:25 <ehird> haha
19:08:44 <Deewiant> Maybe it was just at debian's age then
19:08:53 <ehird> well, slackware was just a barely-modified SLS to start with it seems
19:08:57 <ehird> so arguably it originated in 1992
19:09:17 <Deewiant> Well yeah, arguably Ubuntu originated in 1993 ;-P
19:09:21 <ehird> XD
19:09:39 <Hiato> er, what is going on here, where's the frinedly iso? ftp://ftp.is.co.za/mirror/ftp.slackware.com/pub/slackware/
19:09:52 <Deewiant> Slackware, friendly? Surely you jest
19:09:54 <ehird> you didn't specify friendly as a requirement.
19:10:00 <ehird> but
19:10:03 <ehird> maybe wrong directory
19:10:05 * ehird takes a look
19:10:18 <Deewiant> isolinux?
19:10:22 <fizzie> Yes; go one directory level upwards.
19:10:25 <Hiato> .. beats me
19:10:26 <ehird> yep
19:10:28 <Hiato> oh, ok
19:10:28 <ehird> wrong directory
19:10:29 <fizzie> And take slackware-12.2-iso or something.
19:10:36 <fizzie> "isolinux" is just the boot system thingie.
19:10:37 <ehird> yeppers
19:10:52 <Deewiant> Haven't used slackware in a long while, and never installed it myself
19:11:01 <ehird> Hiato: http://www.slackware.com/install/
19:11:10 <ehird> might be worth printing that out / keeping it open on a separate machine.
19:11:12 <ehird> s/might/will/
19:11:38 <Hiato> er, ah, now that's a problem. Slackware>700mb's
19:12:00 <Deewiant> Grab an older version :-P
19:12:13 <fizzie> You can make a small slackware installation, probably with the new versions too.
19:12:17 <fizzie> Just don't install everything.
19:12:28 <Deewiant> You might not need all the isos
19:12:30 <ehird> Hiato: why is that a problem? The actual install won't be that bg
19:12:33 <ehird> *big
19:12:38 <ehird> if you disable most things
19:13:00 <Hiato> It's the download that's the problem. I can only use 700mb's before the 20th or bust
19:13:13 <ehird> ouch
19:13:17 <fizzie> I installed slackware 3.2 back in 1997 or so when it came with a Finnish computer magazine; and their installation CD was borken. Package descriptions were missing for a couple of categories, had to choose what to install based on package names only. And it was my first Linux experience. That wasn't friendly.
19:13:18 <Deewiant> Hmh, why doesn't irssi send a message when I press keypad enter
19:13:29 <ehird> Hiato: want me to send you a disk in the post? XD
19:13:43 <ehird> fizzie: I'm sure you said that in 2005 or something
19:13:48 * ehird = obsessive log reader
19:13:52 <fizzie> ehird: Probably; I tend to repeat myself.
19:13:58 <Hiato> ehird: I would love it, here's a mackerel in return
19:14:07 <ehird> Hiato: ooh! Legal B Nomic tender!
19:14:12 <ehird> deal
19:14:23 <Hiato> ;)
19:16:07 <Hiato> back to my [non] life-altering decision, I can comprimise and take Zenwalk, or do as the Deewaint does and take Arch. Is it worth the compromise?
19:16:40 <ehird> Slackware, download it via carrier pigeon
19:16:56 <Hiato> ehird: we have bad reception
19:17:07 <ehird> Hiato: thus carrier pigeon. Here's some documentation: http://www.rfc-editor.org/rfc/rfc1149.txt
19:17:54 <Hiato> XD :D and any combination of the letters "l", "o", "r" and "f"
19:18:13 <ehird> Deewiant: re - macports variants
19:18:13 <ehird> vim @7.2.065 (editors)
19:18:14 <ehird> Variants: athena, big, cscope, gtk1, gtk2, huge, motif, nls, perl,
19:18:16 <ehird> puredarwin, python, ruby, small, tcl, tiny, universal,
19:18:18 <ehird> xim
19:18:23 <Hiato> with each octet separated by whitestuff and blackstuff. ?
19:18:27 <ehird> the tcl portfile defining it just has "variant foo { ... }" blocks that override the global definition
19:18:28 <ehird> Hiato: :D
19:20:48 <Deewiant> ehird: Wait, macports installs from source?
19:20:58 <ehird> Deewiant: yes, irritatingly
19:21:02 <ehird> but, it's fast, generally
19:21:17 <ehird> Deewiant: it could be done in a binary package manager
19:21:18 <Deewiant> Why bitch at me for using Gentoo then :-P
19:21:26 <ehird> instead of tweaking cflags, it'd just point to a different binary tarball
19:21:29 <Deewiant> ehird: Yes, it could, which is why I was asking for details on how it works
19:21:41 <ehird> combining variants would be non-trivial
19:21:57 <ehird> Deewiant: gentoo has more of an attitude problem regarding it than macports ;-)
19:22:26 <Deewiant> Meh, I don't humanize distros, I don't care about their attitude :-P
19:22:45 <ehird> hey, who wants to buy me a pc that I can write an x11 WM on for no reason>???????
19:22:47 <Hiato> ok, after checking forums, Zenwalk it is *conversation has taken carrier pidgen over my head*
19:23:01 <Deewiant> What say forums
19:23:03 <ehird> Hiato: a pox be upon you
19:23:19 <fizzie> MacPorts isn't even that fast on my one-gigahurtz G4 PPC; I remember doing a "port upgrade outdated" after a year or two of inactivity and it took several hours.
19:23:47 <ehird> 2ghz intel core 2 duo >>> 1ghz G4 PPC, I'd assume
19:24:11 <Hiato> Deewiant: well, it's the fact that Zenwalk forums respond nicely to questions like this:
19:24:12 <Hiato> Hello, I'm COMPLETELY new to Linux. So I have a few questions about it xD
19:24:12 <Hiato> If I install Zenwalk, will I lose the programs I had installed on Windows?
19:24:12 <Hiato> Also will I lose my files? :S sorry, rather dumb questions ^_^;
19:24:12 <Hiato> Ehird: ... :( I tried
19:24:12 <fizzie> Probably, but I don't have such EVIL CAPITALIST MONEY-HUGGER hardware.
19:24:22 <ehird> Hiato: yes, you will.
19:24:27 <ehird> unless you have them on a separate partition.
19:24:31 <ehird> or, you know. back them up
19:24:41 <Hiato> ehird: that's not my question...
19:24:52 <ehird> what is then
19:24:54 <Hiato> O_o I can't believe you believed that was me
19:24:57 <ehird> 19:24 <Hiato> Also will I lose my files? :S sorry, rather dumb questions ^_^;
19:25:00 <ehird> oh
19:25:01 <ehird> i see
19:25:02 <ehird> sorry
19:25:04 <ehird> i
19:25:06 <ehird> totally misread
19:25:06 <Hiato> http://support.zenwalk.org/viewtopic.php?f=46&t=9346, somewhere there
19:25:08 <ehird> XDDD
19:25:18 <Deewiant> Hiato: Arch forums don't, then?
19:25:30 <ehird> i think i just indirectly insulted Hiato's intelligence by mistake. ouch
19:25:32 * Hiato blushes
19:25:45 <Hiato> haven't checked them
19:25:47 <Hiato> ehird
19:25:49 <Hiato> all is forgiven :P
19:26:01 <ehird> Hiato: thanks, idiot. Wait, disregard that <_<
19:26:02 <fizzie> Are you sure you want to associate with people who aren't all "AH HA HA YOU STUPEF STUPIDO" on the Interwebs?
19:26:31 <fizzie> They sound... abnormal.
19:26:31 <Hiato> fizzie: very true, and highly valid
19:26:43 <Hiato> let me ask you then: Zenwalk vs Arch
19:26:50 <fizzie> Debian. :p
19:26:54 <ehird> " Also, spaces and symbols like '*' can confuse the Linux inner workings ('kernel'). "
19:27:00 <ehird> Issue with zenwalk: they're all retards.
19:27:06 <ehird> :-D
19:27:12 <Hiato> .. fizzie: I'll tryu again :P ehird: lol, heh
19:27:23 <Deewiant> ehird: :-DDDD
19:27:28 <Deewiant> inner workings ('kernel')
19:27:33 <Hiato> ok, Arch it is :D
19:27:37 <Hiato> er :P
19:28:00 <Hiato> THINK..AND READ BEFORE UPGRADING - amuch better topic in the Newb forums
19:28:40 <fizzie> Anyway, I don't know anything about either distro, so I can't really comment. (But Debian's netinst .iso is 145 megs, and contains the base system; then you can choose what other packages you want to download; so at least it fulfills that one arbitrary criterion.)
19:28:50 -!- Corun has quit ("This computer has gone to sleep").
19:29:24 * Hiato whips out his big bag o distros
19:30:16 <ehird> Hiato: try linux from scratch
19:30:18 <ehird> you know
19:30:23 <ehird> in case you're suicidal
19:30:36 <ehird> and, like, want to perform one last senseless, pointless act before leaving this earth.
19:30:41 <ehird> then you should try lfs.
19:31:07 <fizzie> Oh, and if you feel like it, you can do Slackware too; just avoid the full .isos, pick up a suitable boot disk and the network.dsk image, then install over the network. It will not be friendly at all, though.
19:31:38 <Hiato> I have tried, and not really liked: Ubuntu x.xx, DSL, Austrami, PC-Linux {Mini-me}, Mach boot, SLED 10, SliTaz, TinyMe, Mepis, FC, RHL, Mandrake, Mandirva and a bunch of others
19:31:56 <ehird> what's your main issue with them?
19:33:05 <Hiato> I just felt, well, I couldn't mess around, or that I wasn't supposed to. When I broke things, they magically healed and I was left none the wiser. Everything's a wizard (not necessarily bad), but get's frustrating.
19:33:26 <Hiato> fizze: will keep that in mind
19:33:51 <fizzie> Well, LFS is certainly something where you're supposed to mess around.
19:34:12 <Hiato> If it's any indicator, I liked Puppy - and still do. It's simple, stuff works, you fix what you break, the essentials are all there, but the rest can be done (with relative ease)
19:34:14 <ehird> Hiato: slackware would be pretty much perfect then
19:34:25 <ehird> when you mess up slackware, it doesn't work until you find out what's wrong and you fix it :-P
19:34:35 <ehird> note: that is simultaneously very annoying
19:34:54 <Deewiant> define "mess up" here
19:34:58 <Hiato> fizzie: understood, on both notes. ehird: yeah, but it's better in a snese
19:35:18 <ehird> Deewiant: "i did something, this something was incorrect, the results are not correct"
19:35:26 <Hiato> Deewaint: change device0 to device1 or mess with other stuff in xorg.conf, just to see what it does
19:35:27 <Deewiant> I've yet to use a system which wasn't like that :-P
19:35:53 <Hiato> for example. Or change/stop start-up scipts
19:35:53 <ehird> Deewiant: yes, but it's usually at a higher level
19:36:06 <Hiato> mess with the HAL, etc etc
19:36:53 <Deewiant> How can stuff possibly work automatically if you break a start-up script :-P
19:37:04 <Hiato> that's how I (and most of humanity) learn. Break stuff, look at the pieces, do it again and then work out what it is supposed to do and why it works
19:37:17 <Hiato> technicality :P
19:38:04 <fizzie> Deewiant: A package manager might automatically fix it when upgrading stuff.
19:38:04 <ehird> Hiato: which would you prefer - everything is a wizard... or nothing is a wizard?
19:38:12 <ehird> that's Mandrake vs Slackware :-p
19:38:30 <Hiato> ehird: can't I float in between, with a slow drift to the nothing side
19:38:44 <Hiato> But yes, that sounds like a fair comparison
19:38:49 <ehird> that is not an answer :-P
19:38:51 <fizzie> I'd prefer an IRC Wizard. All this free-form writing is so tiresome; with a wizard interface I'd just have to click "Next" every now and then.
19:38:52 <Hiato> and I'd go with the nothing one
19:39:28 <Deewiant> Hmm, it seems that switching to Marvell's sk98lin driver and setting Moderation=Static as an option has made my machine work even whilst downloading torrents, hoorays \o/
19:39:30 <ehird> fizzie: forming grammatical sentences is so HARD, i'd prefer to just be given options... whenever I get just one phrase wrong i get asked what i meant
19:39:32 <ehird> it's scary!!
19:39:37 <Hiato> blarg, well, it looks like with my ridiculous restrictions, I'm going to have to go for Arch or bust
19:39:43 * ehird grump
19:39:55 <ehird> Hiato: bust linux
19:40:04 <Hiato> good distro name there
19:40:08 <fizzie> Sounds not entirely work-safe.
19:40:35 <Deewiant> Symptoms previously included: all processes using about 6000-10000% the CPU time even after the torrent client was closed
19:40:51 <Hiato> 'We guarantee to break something, or your sourcecode back'
19:43:56 <fizzie> There's a curious network driver thing, also: the r8169 in an older kernel used to generate a ginormous number of "dropped" packets.
19:44:03 <fizzie> Ifconfig output: "RX packets:67776111 errors:0 dropped:423893525723034 overruns:0 frame:0"
19:44:16 <Deewiant> Heh, nice.
19:44:18 <fizzie> And that number increased by something like 100 million packets every second.
19:44:27 <fizzie> This 2.6.28 doesn't seem to do that any more.
19:44:58 <Deewiant> The annoying thing about this is that sk98lin is a third-party driver I have to get from marvell.com :-/
19:49:19 <fizzie> Oh well; I have to use the horrible nvidia binary blob driver too, since the second monitor I have is pivotable but the open-source 'nv' driver disables all (2D too) acceleration if I want a rotated image.
19:50:12 <Deewiant> This one's not a binary blob; it comes with an install.sh which patches the linux source tree (and unsuccessfully—had to manually correct a broken Kconfig file for 'make menuconfig' to run)
19:50:43 <Deewiant> Which is in some ways even more annoying because it's a bit trickier to install than just a blob.
19:51:26 <ehird> did Deewiant just use a — on IRC?
19:51:29 <ehird> commendable
19:51:48 <Deewiant> I was using the fglrx driver but now I've switched to radeonhd (no acceleration supported for my card model!) because fglrx would lock up the whole machine if I accidentally restarted X
19:51:50 <fizzie> Oh, the nvidia driver also has a horrible installation script which touches all kinds of places. I just use the Debian-packaged version, I'm not so interested in having the newest released ones.
19:52:30 <Deewiant> sk98lin doesn't have an Arch PKGBUILD, I was thinking of making one but I guess that'd require me to duplicate much of the install.sh logic myself and it'd probably be too much work to keep up-to-date
19:52:41 <fizzie> And Lexmark's Linux drivers also had a horrible installation shell script. And so did some vmware product. It seems to be a habit. I usually just read them and do the steps manually, since I don't feel comfortable running them.
19:53:41 <Deewiant> Yay, about 90 minutes of torrenting and 'time man man >/dev/null' still completes in less than 0.1 seconds
19:54:07 <Deewiant> (As opposed to 5-7 seconds previously.)
19:55:38 <Deewiant> Hmm, what the hell happened to google's favicon
19:55:54 <Deewiant> It's positively hideous
19:56:00 <Deewiant> http://googlesystem.blogspot.com/2009/01/new-google-favicon.html
19:56:46 <ehird> my fucking god
19:56:52 <ehird> fire whoever did this
19:57:22 <Deewiant> I was fine with the previous change though the old one is the best, but this one sucks :-P
19:59:07 <fizzie> Lexmark's linux drivers also include a full copy of Sun's Java 1.4.2 runtime. Probably some configuration dialog or something was done as a Java application.
20:00:10 <fizzie> Engfeh, that icon.
20:00:24 -!- alex89ru has joined.
20:00:36 <Deewiant> Engfeh?
20:00:50 <fizzie> An exclamation of disgust.
20:00:52 <fizzie> I may need to start running a local proxy here just so I can override the google.com/favicon.ico URL.
20:01:02 <Deewiant> Heh.
20:01:25 <ehird> just use greasemonkey
20:01:37 <Deewiant> Or https://addons.mozilla.org/en-US/firefox/addon/3176
20:01:42 <fizzie> Then I'd need to do that for all installations.
20:01:50 <Deewiant> Or no, it seems that's only for bookmarks
20:02:12 <ehird> Or use w3m and forget about retarded graphics
20:02:53 <fizzie> There's an about:config entry called browser.chrome.favicons in Firefox.
20:03:05 <fizzie> Based on the name, toggling that true -> false might make them all go away.
20:03:15 <Deewiant> Yep, it does.
20:03:19 <ehird> ooh.
20:03:33 <ehird> I will do that right after I switch to linux and use a 1000 sloc WM.
20:03:34 <Deewiant> See also browser.chrome.site_icons
20:03:51 <fizzie> Yes, I'm seeing the kb.mozillazone.org description of that right now.
20:05:08 <ehird> hmm
20:05:11 <ehird> doesn't hide the icon tho
20:05:13 <ehird> jusut always default
20:05:26 <fizzie> The site_icons preference will hide them.
20:05:32 <ehird> Nope.
20:06:38 <fizzie> Oh. Documentation says it will. The favicons one is defined to force the favicon of all sites to the default, but not affect the displaying. (Or the icon displayed for image files.)
20:08:15 <fizzie> The documentation seems to be a filthy liar.
20:10:43 <ehird> mice are so ergonomically terrible
20:12:03 -!- psygnisfive has joined.
20:18:39 -!- alex89ru has quit (Remote closed the connection).
20:22:47 -!- Hiato has quit ("Leaving.").
21:05:34 -!- Corun has joined.
21:59:18 -!- oerjan has joined.
22:24:53 <AnMaster> back
22:25:22 <oerjan> Du och dina mjölkkor
22:25:33 <oerjan> (is that correct?)
22:26:27 <AnMaster> <ehird> don't look at arch :-P <-- why not?
22:26:37 <ehird> I dislike it :-P
22:26:56 <AnMaster> <Hiato> ehird: Most certainly, but, not necessarily a priority. (PS: You should make a web-wizard distro selector, you have all the right questions) <-- that exists
22:26:59 * AnMaster looks for url
22:27:05 <ehird> Yes.
22:27:07 <ehird> He said "a".
22:27:15 <ehird> As in.
22:27:17 <ehird> Yet another.
22:27:18 <AnMaster> http://www.zegeniestudios.net/ldc/
22:27:23 <ehird> Yes. We know.
22:27:24 <AnMaster> don't know how good it is
22:27:35 <AnMaster> it did suggest arch and gentoo for me :)
22:27:45 <AnMaster> and I already used them
22:27:57 * ehird notes that AnMaster buffers his output and never reads input while calculating & sending output.
22:28:09 <AnMaster> also slackware is painful, I know, I used it
22:28:13 <fizzie> One of those "which OS are you?" questionnaires also had at least a couple of Linux distributions in there.
22:28:14 <AnMaster> worst package manager ever
22:28:23 <ehird> Depends on your definition of worst.
22:28:26 <Deewiant> no package manager
22:28:33 <ehird> Well, what Deewiant said.
22:28:34 <Deewiant> it cannot be the worst because it doesn't exist
22:28:38 <ehird> It doesn't manage packages, it just installs them :P
22:28:39 <AnMaster> at least linux from scratch doesn't pretend to have a working package manager
22:28:44 <AnMaster> while slackware DOES
22:28:49 <ehird> no it doesn't
22:28:50 <Deewiant> I wasn't aware that it did
22:29:03 <AnMaster> Deewiant, well it has packages
22:29:08 <ehird> Deewiant: it has a script that takes a tarball and runs ./configure && make && make install
22:29:10 <ehird> essentially
22:29:13 <fizzie> I used slackware for a couple of years without touching the package manager. It wasn't very much advertised.
22:29:19 <ehird> not a package manager, it doesn't purport to be one
22:29:20 <AnMaster> ehird, not slackware no, I remember installing it
22:29:24 <ehird> and it's not exactly advertised
22:29:25 <AnMaster> binary packages, *.tgz
22:29:41 <AnMaster> same for some other packages I downloaded
22:29:59 <Deewiant> AnMaster: btw, if you've got a Befunge-93 interpreter handy run on latest (november) mycology and let me know if any BADs ensue
22:30:05 <ehird> All it does is unpack a tarball to /
22:30:10 <ehird> then run doinst.sh
22:30:14 <ehird> well, install/doinst.sh
22:30:29 <ehird> and it can tell you what's in ionstall/slack-desc
22:30:50 <ehird> Then it can remove a "package" that it's installed. And upgrade, which is really a special case of remove&install.
22:30:52 <AnMaster> Deewiant, I don't have any verified one no, cfunge has a 93 mode, which changes space rules and so on, but won't actually forbid 98 instructions in general
22:30:57 <Deewiant> ehird: yes, I knew that
22:31:03 <ehird> Deewiant: i'm talking to AnMaster
22:31:08 <AnMaster> I have been thinking of making that compile time mode for extra speed ;P
22:31:09 <ehird> i.e., it's not a package manager.
22:31:17 <AnMaster> with possibly greater emulation then
22:31:18 <Deewiant> ehird: You directed a line at me
22:31:29 <ehird> yeah that was ages ago :P
22:31:45 <Deewiant> ehird: Yeah, and I responded to it when I noticed it :-P
22:31:46 <AnMaster> ehird, also that counts as package manager without dependency handling
22:31:53 <AnMaster> installm, uninstall, upgrade
22:31:54 <ehird> AnMaster: it doesn't, though
22:32:01 <AnMaster> only dep tracking is missing
22:32:02 <ehird> or rather
22:32:06 <ehird> your definition of package manager is wrong
22:32:16 <AnMaster> and I wouldn't consider dep tracking to be important
22:32:20 <ehird> it's only the worst package manager because your brain has the definition package manager = dependency-tracking etc
22:32:24 <flexo> working towards the ballmer peak now
22:32:35 <ehird> minimalism isn't for everyone
22:32:48 <fizzie> I did that web-test and it suggested me Debian and Ubuntu. I currently use Debian and Ubuntu. Clearly it must be infallible, based on my sample of N=1 persons.
22:32:50 <AnMaster> ehird, so what is it?
22:32:53 <AnMaster> if nto a package manager
22:32:57 <AnMaster> what is the name for it
22:33:06 <ehird> AnMaster: A package manager. Your definition is just wrong.
22:33:22 <AnMaster> ehird, hm? I said I didn't include dep tracking in package manager
22:33:27 <AnMaster> but it is something I *want*
22:33:33 <AnMaster> it is an optional feature
22:33:34 <ehird> Fine, then it isn't for you.
22:34:03 <AnMaster> ehird, indeed, so I stick with something slightly more advanced while still no silly gui config stuff
22:34:06 <AnMaster> such as gentoo and arch
22:34:14 <AnMaster> ehird, also I have installed LFS
22:34:18 <ehird> So why is it the worst package manager you've ever used?
22:34:18 <AnMaster> and CLFS and HLFS
22:34:21 <ehird> You haven't explained that yet.
22:35:23 <Deewiant> That webtest gave me gentoo and, interestingly enough, slackware.
22:35:23 <AnMaster> ehird, 1) it lacks the features that are RECOMMENDED, optional but silly to exclude (IMO) 2) it managed to loose track of files, this was around 5 years ago, slackware 9 or 10 I think, it may be better now
22:36:18 <ehird> the distribution chooser is _heavily_ biased to the mainstream distros.
22:36:26 <ehird> But, umm, I seem to get every single one.
22:36:31 <ehird> Well, not Gentoo.
22:36:40 <ehird> Arch, Kubuntu, Fedora, Mandriva, Slackware, OpenSuSE.
22:36:52 <ehird> I guess "just show all distros" always gets the right one, but it's not exactly clever...
22:37:18 <fizzie> Well, I only got two out of it.
22:37:32 <AnMaster> ehird, that differs, I get two, Arch and Gentoo
22:37:59 <AnMaster> actually I don't get Arch if I select that I have a 64-bit CPU, which is odd, Arch have x86_64 support nowdays
22:38:05 <ehird> I think it's because I answer "I don't care" to quite a few questions because, well, I don't.
22:38:10 <Deewiant> Ah, 64-bit might make a difference.
22:38:22 <fizzie> I have a feeling I sort-of answered the questions so that I'd get Debian (and coincidentally Ubuntu) because I happen to be happy with this stuff.
22:38:26 <AnMaster> Deewiant, yes it does
22:38:52 <Deewiant> Silly if it assumes I want a 64-bit system (which is the case, but still)
22:39:11 * ehird tweaks answers to try and get better results.
22:39:21 <Deewiant> Aha
22:39:25 <fizzie> Uh... is there a way to move backwards in the test?
22:39:29 <AnMaster> for x86_64 it suggests gentoo and slackware
22:39:33 <Deewiant> Now it gave me Slackware+Mandriva+Kubuntu+OpenSUSE+Ubuntu+Arch
22:39:37 <AnMaster> fizzie, seems no, you could just restart it
22:39:39 <Deewiant> +Ubuntu
22:39:40 <ehird> Deewiant: ha
22:39:45 <AnMaster> Deewiant, no gentoo?
22:39:49 <Deewiant> Nope, no gentoo
22:39:53 <AnMaster> strange
22:39:59 <Deewiant> I think I added one more "don't care" than last time
22:40:04 <fizzie> That's a lot of questions to answer if I just want to change one.
22:40:06 <Deewiant> To the development packages one
22:40:11 <ehird> Okay, by lying through my teeth I get another huge pile. XD
22:40:12 <Deewiant> The wording sucks, really
22:40:22 <Deewiant> No, I don't /need/ development packages
22:40:33 <Deewiant> I don't /need/ X packages for all X because I'm smart enough to get em elsewhere
22:40:47 * ehird tweaks answers further
22:40:48 <AnMaster> Deewiant, anyway on x86/x86_64 you generally want a 64-bit distro, because a) multilib means you can run 32-bit just fine b) more registers more than compensates for increased pointer size
22:40:50 <Deewiant> But it probably thinks "aha you don't /want/ them"
22:40:59 <Deewiant> AnMaster: I don't run multilib, I run a 32-bit chroot
22:41:03 <AnMaster> for sparc or ppc b isn't true
22:41:15 <AnMaster> Deewiant, well both works the same way as far as the kernel cares
22:41:16 * ehird lies through some more teeth.
22:41:16 <Deewiant> b) is a tradeoff; CPU for memory+disk
22:41:26 <ehird> C'mon, gimme slackware.
22:41:29 <ehird> Dammit you stupid machine.
22:41:33 <ehird> A huge bag is not a good result
22:41:33 <Deewiant> And it depends on the program anyway.
22:41:41 <AnMaster> Deewiant, double register count more than compensates for double pointer size
22:41:49 <AnMaster> in more than half of the cases
22:42:05 <ehird> One thing I really like about slackware is that it doesn't mess with 3rd-party apps.
22:42:06 <Deewiant> Yes, you are emphatically agreeing with what I said. :-P
22:42:13 <ehird> Debian is an especially bad offender there
22:42:17 <fizzie> Heh, now I get Fedora, Ubuntu, Gentoo, Arch, Debian, Slackware if I tell it I don't care about the package management (that question is a bit silly, too, since a couple of answers are specific package formats and not about the abilities of the package management) and don't choose the 64-bit option.
22:42:24 <AnMaster> Deewiant, an -m32 build of cfunge with 32-bit cells is about 5-10% slower on this computer, nothing else differs in build
22:42:33 <AnMaster> for 64-bit cells the difference is around 70% faster
22:42:41 <AnMaster> which is only to be expected
22:43:00 <AnMaster> that is 70% faster for 64-bit build
22:43:03 <Deewiant> Yeah, the package management question was really stupid as well.
22:43:14 <Deewiant> Hell, /most/ of them were.
22:43:16 <AnMaster> fizzie, yep agreed
22:43:36 <ehird> I should write my own chooser that always gives either Slackware or Ubuntu.
22:43:37 <AnMaster> it was just one of the *least* stupid wizard style linux selector thingies I knew
22:44:05 <AnMaster> and it did give the right answers for me, that is the ones I ended up with after testing lots and lots of distros before
22:44:38 <Deewiant> http://www.tuxs.org/chooser/ for the win
22:44:46 * ehird answers hardcore-style
22:44:59 <ehird> I bet answering "Expert" to "How would you rate your technical skills?" makes it mark you as lower than "Beginner"
22:45:11 * AnMaster used red hat (back when it wasn't fedora, red hat 6.0...), OpenSuSE (don't remember version), Slackware, Debian before ending up with Gentoo and Arch
22:45:16 <AnMaster> Ubuntu was hardly around back then
22:45:18 <AnMaster> not big yet
22:45:21 <Deewiant> I answered "expert" simply because I know many professionals that don't know jack shit
22:45:27 <AnMaster> I tried it afterwards
22:45:28 <AnMaster> horrible
22:45:30 <ehird> If your PC is fairly new and you are looking for a more technical distribution to install on your hard drive then try
22:45:31 <ehird> Debian or Slackware
22:45:40 <ehird> If your PC is a few years old and you are looking for a more technical distribution to install on your hard drive then try
22:45:41 <ehird> Debian or Slackware
22:45:52 <ehird> Umm, gee, that's some variation.
22:45:57 <Deewiant> ehird: Note that it says "more info on Gentoo or Slackware"
22:46:02 <ehird> hahahahahah
22:46:04 <AnMaster> <ehird> I bet answering "Expert" to "How would you rate your technical skills?" makes it mark you as lower than "Beginner" <-- well I *know* I'm expert, since I'm able to help even with the tricker questions in ##linux a lot of the time
22:46:31 <ehird> AnMaster: that's pretty arrogant...
22:46:35 <Deewiant> http://distrogue.awardspace.com/ was nice
22:46:41 <Deewiant> It gave me "Perfect match!" but nothing else
22:46:46 <ehird> Deewiant: awardspace? srsly? XD
22:46:50 <AnMaster> ehird, and I successfully cross compiled a hardened LFS, for which there is no guide :P
22:46:55 <AnMaster> from ppc to x86
22:47:12 <Deewiant> Wow, you did something for which a guide did not exist
22:47:12 <ehird> [[AnMaster's ego shoots off the charts]]
22:47:12 <AnMaster> there is a hardened guide and a cross compiling one
22:47:18 <AnMaster> compiling them isn't that easy
22:47:21 <Deewiant> Wow, you combined two guides
22:47:26 <ehird> Deewiant: i know, I need guides _all the time_
22:47:28 <AnMaster> Deewiant, hah :P
22:47:29 <ehird> i mean
22:47:30 <ehird> breathing?
22:47:33 <ehird> that shit's hard, man
22:47:40 <AnMaster> ehird, ok here is how:~
22:47:46 <AnMaster> 1) Breath in
22:47:49 <Deewiant> Breathing guide: http://www.breathingmatters.com/bodybm.htm
22:47:55 <AnMaster> 2) Wait a very short time
22:48:01 <AnMaster> 3) Breath out
22:48:06 <AnMaster> 4) GOTO 1
22:48:10 <ehird> AnMaster: ok, but how do I combine this with the eating guide?????
22:48:12 <AnMaster> that is the basics
22:48:16 <Deewiant> ehird: xD
22:48:18 <ehird> combining guides is _really hard_
22:48:25 <AnMaster> ehird, depends on what version of the eating guide
22:48:40 <AnMaster> ehird, also a hardened cross compiling toolchain is quite complex in fact
22:48:48 <ehird> 4. Do you need a 3D desktop? <- Fuck off, distro chooser XD
22:48:56 <AnMaster> ehird, it never asked me that?
22:48:58 <ehird> 5. Will you be using your system for gaming? <- excuse me, isn't this for Linux?
22:49:04 <ehird> AnMaster: deewiant linked to http://distrogue.awardspace.com/
22:49:05 <AnMaster> or is this another one?
22:49:06 <fizzie> "Here are the results: Perfect match!" Heh, that's funny.
22:49:06 <AnMaster> ah
22:49:22 <AnMaster> <ehird> 4. Do you need a 3D desktop? <- Fuck off, distro chooser XD <-- heck I need to *NOT* have oen
22:49:23 <Deewiant> http://desktoplinuxathome.com/distro.html seems okay
22:49:23 <AnMaster> one*
22:49:31 <ehird> fizzie: also "This page has been viewed times."
22:49:42 <ehird> Holy fuck
22:49:43 <Asztal> I got OpenSUSE :(
22:49:44 <ehird> I got a lot of results
22:49:51 <Deewiant> fizzie: Do you have cookies enabled?
22:50:10 <AnMaster> wait
22:50:12 <fizzie> Deewiant: Nope. That might be it.
22:50:26 <Deewiant> I was hoping "Yes" so I wouldn't have to do it again :-P
22:50:56 <Deewiant> Yeah, cookies was it
22:51:01 <ehird> http://desktoplinuxathome.com/distro.html, my results in order:
22:51:02 <AnMaster> <ehird> AnMaster: deewiant linked to http://distrogue.awardspace.com/ <-- it suggests FreeBSD, PC-BSD, SabayonLinux, Pardus, Gentoo, Arch, "Frugalware", Debian, Fedora, openSUSE, mandriva and more
22:51:03 <AnMaster> nice
22:51:06 <AnMaster> some aren't even linux
22:51:14 <ehird> debian, slackware, vector(???????????????????????????????????????????????????), gentoo
22:51:16 <ehird> then it goes on to 3 stars
22:51:18 <ehird> AnMaster: no
22:51:20 <ehird> see the lines beklow
22:51:22 <ehird> Perfect match!
22:51:23 <ehird> or
22:51:24 <ehird> it lists the problem
22:51:29 <ehird> (it lists every distro and then whether it matched)
22:51:33 <AnMaster> ah
22:51:34 <AnMaster> right
22:51:38 <ehird> http://www.vectorlinux.com/ wtf.
22:51:40 <Deewiant> Gives me Gentoo,Arch,Frugalware,FreeBSD-Stable,PC-BSD as "perfect matches"
22:51:42 <ehird> who uses that
22:51:43 <AnMaster> ehird, gentoo was at top
22:51:46 <AnMaster> for me
22:51:53 <AnMaster> but why *bsd
22:51:59 <AnMaster> they aren't linux
22:52:04 <AnMaster> yes I use freebsd and openbsd
22:52:07 <AnMaster> but not as desktop
22:52:34 <AnMaster> <ehird> http://www.vectorlinux.com/ wtf. <-- shiny!
22:52:46 <ehird> http://polishlinux.org/choose/quiz/
22:52:48 <ehird> ^ THAT seems good
22:52:52 <ehird> good questions, good results
22:53:00 <ehird> I got {Gentoo,{Free,Open,Net}BSD,Slackware}
22:53:19 <Deewiant> http://desktoplinuxathome.com/distro.html gave me Ubuntu,Mandriva,Vector,Fedora,Gentoo,Mepis as ones with more than 3 smileys
22:53:20 <ehird> out of which I'd consider using {NetBSD,Slackware}, but I can understand why it gave the others
22:53:27 <AnMaster> 3. How important stability and maturity is for you?
22:53:27 <AnMaster> very much
22:53:27 <AnMaster> quite much
22:53:30 <AnMaster> quite much?
22:53:36 <AnMaster> err what?
22:53:36 <ehird> it's from a polish site
22:53:38 <ehird> give em some slack
22:53:39 <AnMaster> aha
22:53:45 <AnMaster> ehird, ...ware
22:53:45 <ehird> AnMaster: it's a continuum from a lot to not at al
22:53:46 <ehird> l
22:53:46 <Deewiant> I hate the way saying that I have a new computer causes them to give me bloatware
22:53:57 <ehird> 22:53 <AnMaster> ehird, ...ware <-- Wut>?
22:54:05 <AnMaster> <ehird> give em some slack <AnMaster> ehird, ...ware
22:54:05 <Deewiant> wareware
22:54:07 <AnMaster> ,,,
22:54:08 <AnMaster> ....*
22:54:09 <ehird> o
22:54:11 <ehird> jeez
22:54:13 <Deewiant> ,,,,,,,,,,,,,
22:54:20 <ehird> someone else try the polish one
22:54:21 <ehird> it looks good.
22:54:22 <Deewiant> polishlinux.org times out for me
22:54:26 <ehird> huh
22:54:26 <ehird> WFM
22:54:37 <fizzie> Polish says: FreeBSD, OpenBSD, Debian, Gentoo, NetBSD.
22:54:38 <Deewiant> http://polishlinux.org.nyud.net/choose/quiz/ seems to work
22:54:41 <fizzie> It seems very BSD-friendly.
22:54:53 <ehird> I'd just ignore the BSD results, tbh
22:55:14 <AnMaster> ehird, question 7 is not good
22:55:16 <Deewiant> Meh, the Coral cache is slow
22:55:20 <AnMaster> it seems to contrast like this:
22:55:28 <AnMaster> binary, easy - source, hard
22:55:33 <AnMaster> except it isn't like that
22:55:34 <ehird> no
22:55:35 <ehird> it doesn't
22:55:41 <AnMaster> I have seen binary and hard to use
22:55:42 <ehird> if you read it, it doesn't :P
22:55:44 <AnMaster> and source and easy
22:55:55 <AnMaster> it's a crucial thing for me - I often test different software and don't have the time to play with compiling from sources, looking for dependencies and so on
22:55:56 <AnMaster> quite much - easy installation is a big plus; still I can compile and build a package once in a while
22:55:56 <AnMaster> not much - nice package management system temps, but I usually prefer to prepare packages myself so I know what exact functionality I get
22:55:57 <AnMaster> well
22:56:04 <AnMaster> I want easy and source, with fine level of control
22:56:10 <ehird> you can just as easily read "build" as "make own package"
22:56:18 <AnMaster> some system to set features I want, then have the system to build them for me
22:56:30 <AnMaster> like say, WITH_KDE=yes
22:56:34 <AnMaster> or so
22:56:37 <AnMaster> like freebsd uses
22:56:38 <ehird> that's an irrelevant detail
22:56:40 <AnMaster> you set a few flags
22:56:53 <AnMaster> and then it should be easy to use, track all deps
22:56:56 <AnMaster> and so on
22:57:07 <ehird> you seem to have a penchant for ignoring the bigger picture and concentrating on minutae...
22:57:15 <Deewiant> Oh darn, the nyud.net one sends the results to the non-cached one anyway
22:57:23 <ehird> Deewiant: um
22:57:26 <ehird> nyud.net couldn't handle POST
22:57:26 <ehird> duh
22:57:31 <ehird> it caches per-URL...
22:57:36 <Deewiant> yes, quite
22:57:39 <AnMaster> 1. Gentoo Linux
22:57:40 <AnMaster> 2. FreeBSD
22:57:40 <AnMaster> 3. OpenBSD
22:57:40 <AnMaster> 4. NetBSD
22:57:40 <AnMaster> 5. Slackware Linux
22:57:42 <Deewiant> I did not realize it in time
22:57:45 <AnMaster> is what the polish one suggested
22:57:50 <Deewiant> And the main site still times out for me
22:57:51 <AnMaster> well it is missing arch
22:57:58 <ehird> lol i wonder if you can get it to NOT suggest bsd
22:58:04 <ehird> Deewiant: use a proxy?
22:58:33 <AnMaster> "Why are you going to try Linux? " (http://desktoplinuxathome.com/distro.html)
22:58:42 <ehird> AnMaster: leave it blank
22:58:44 <ehird> worked for me
22:58:45 <AnMaster> "I'm already a Linux user" is missing
22:58:53 <ehird> so leave it blank
22:59:06 <Asztal> Debian, Fedora, KateOS, Gentoo, Ubuntu
22:59:17 <Deewiant> Wonder why that site doesn't work from here
22:59:18 <Asztal> I like that it has Gentoo and Ubuntu in the same list
22:59:20 <ehird> kateos looks polish
22:59:25 <ehird> which would make sense considering the site
22:59:32 <ehird> http://www.sabayonlinux.org/ <-- worst distro ever or worst distro ever
22:59:33 <AnMaster> ok it suggests ubuntu first, then gentoo, mandriva, vector, Mepis, Slackware, Fedora
22:59:33 <AnMaster> wtf
22:59:36 <AnMaster> that is crazy
22:59:40 <AnMaster> yes I tried ubuntu
22:59:41 <ehird> AnMaster: yeah it sucks :P
22:59:42 <AnMaster> worst one ever
22:59:49 <ehird> there are distros worse than ubuntu
22:59:51 <fizzie> ehird: "for desktop, not a programmer" + "newbie" + "no time for learning" + nothing else concerns me => no BSDs.
22:59:56 <ehird> case in point: mandrake
22:59:58 <ehird> & pclinuxos
22:59:58 <AnMaster> ehird, well opensuse comes close
23:00:03 <Deewiant> Quiz doesn't work in links
23:00:04 <ehird> fizzie: :D
23:00:06 <AnMaster> ehird, I haven't used mandriva/mandrake
23:00:11 <ehird> opensuse isn't bad
23:00:16 <ehird> not my cup of tea, but not bad
23:00:33 <fizzie> (Actually that sort of settings give Mandriva, openSUSE, Aurox, Xandros, Fedora.)
23:00:39 <AnMaster> anyway I used quite a few of them, and that chooser is the worst so far
23:00:43 <AnMaster> fizzie, which chooser?
23:00:57 <ehird> polishlinux has been the best for me
23:01:00 <ehird> the questions aren't stupid
23:01:03 <ehird> which is nice
23:01:25 <fizzie> AnMaster: The Polish one.
23:01:28 <AnMaster> oh I never heard of this vectorlinux before
23:01:39 <AnMaster> fizzie, the polish one wasn't too bad, except the language
23:01:50 <AnMaster> it missed arch
23:01:55 <AnMaster> maybe it isn't in it's database
23:03:26 <AnMaster> anyway personally I have found the distros I like, gentoo (primary desktop); arch (low end [Pentium 3 or lower] headless development computer); FreeBSD (remote server in datacenter); OpenBSD (dedicated firewalls)
23:03:30 <Deewiant> At last: Gentoo, FreeBSD, Arch, Debian, PLD
23:03:35 <AnMaster> PLD?
23:03:41 <AnMaster> what one is that?
23:03:44 <Deewiant> http://polishlinux.org/linux/pld/
23:03:59 <ehird> PLD took some best features from couple of other distributions: RPM format from Red Hat (but PLD uses RPM-s capabilities much more efficiently),
23:04:00 <AnMaster> it didn't recommend that to me
23:04:01 <ehird> RPM is a feature?
23:04:02 <ehird> what
23:04:12 <Deewiant> ehird: A bug, then? :-P
23:04:13 <AnMaster> ehird, I thought RPM was a bug
23:04:16 <ehird> dammit
23:04:18 <ehird> I was about to say that
23:04:22 <ehird> to hell with both of you
23:04:27 <Deewiant> ^_______^
23:04:34 * ehird considers filing a bug report for every RPM-based distro
23:04:35 <fizzie> There seem to be quite many Polish distributions in there; surprisingly.
23:04:38 <AnMaster> ehird, at least it was back when I used red hat 6.0... Oh the nostalgia! RPM hell!
23:04:42 <ehird> fizzie: or, rather, not surprisingly
23:04:49 <fizzie> I hadn't heard of Aurox either.
23:04:53 <ehird> It's a polish site :-P
23:04:59 <AnMaster> fizzie, nor have I
23:05:16 <AnMaster> anyway that vectorlinux thing, anyone ever heard of it before?
23:05:21 <ehird> nope
23:05:22 <AnMaster> It's website look... shiny?
23:05:23 <Deewiant> yep
23:05:29 <AnMaster> yes that is the right word, shiny
23:05:31 <ehird> looks rubbish
23:05:35 <AnMaster> Deewiant, you heard of it before
23:05:37 <fizzie> It's the best; the site says so.
23:05:38 <Deewiant> yep
23:05:40 <AnMaster> ehird, yes that was what I said :P
23:05:42 <ehird> AnMaster: "eye candy", more like
23:05:53 <AnMaster> shiny -> rubbish
23:06:16 <AnMaster> for example for some reason I don't know the buttons on my mobile phone are shiny
23:06:18 <Deewiant> I recall it being said that Vector was lightweight, but it might have been compared to Ubuntu or something
23:06:21 <AnMaster> you see all the fingerprints on it
23:06:25 <AnMaster> black shiny
23:06:34 <AnMaster> which IMO is rubbish
23:06:37 <fizzie> But VectorLinux has a DELUXE version!
23:06:39 * ehird considers doing LFS then killing himself
23:07:00 <AnMaster> ehird, there is some package manager somewhat like checkinstall
23:07:06 <AnMaster> forgot the name for it
23:07:12 <AnMaster> anyway made for recording packages for LFS
23:07:18 <AnMaster> it solves the uninstall issue
23:07:33 <AnMaster> it is in their "hints" section
23:07:37 <AnMaster> on the website of lfs I mean
23:08:10 <ehird> I'm pretty sure that "Go into chroot, run make install, record the differences to a file, then extract from chroot" is pretty trivial to write.
23:08:23 <ehird> I mean, as these things go.
23:08:26 <AnMaster> ehird, I think it was using LD_PRELOAD trick
23:08:29 <AnMaster> rather than chroot one
23:08:47 <AnMaster> don't remember
23:09:12 <ehird> I'd prefer a chroot :-P
23:09:17 <ehird> 's what macports uses
23:09:31 <AnMaster> ehird, well how do you know the tools you need to install are in there
23:09:32 <psygnisfive> ehird whats a chroot
23:09:37 <AnMaster> I mean, like make and so on
23:09:49 <ehird> psygnisfive: RTFM
23:09:50 <AnMaster> some packages might need obscure tools to install
23:09:56 <AnMaster> psygnisfive, man chroot
23:09:59 <ehird> AnMaster: that's why you copy the whole system to a chroot.
23:10:00 <psygnisfive> besides a british dialects way of saying truth :p
23:10:11 <psygnisfive> ah its something in the shell?
23:10:11 <AnMaster> ehird, well that will take a while. 4 GB or whatever
23:10:13 <psygnisfive> hmm
23:10:18 <psygnisfive> ch root
23:10:20 <AnMaster> psygnisfive, not in shell no
23:10:21 <ehird> AnMaster: do whatever macports does, then.
23:10:29 <AnMaster> ehird, I would use chroot + unionfs
23:10:31 <ehird> AnMaster: also, stop trying to teach psygnisfive. hopeless case.
23:10:31 <AnMaster> to avoid copying
23:10:33 <ehird> :D
23:10:36 <AnMaster> it would really rock
23:10:40 <psygnisfive> ehird shut your face :P
23:10:40 <AnMaster> no idea if it has been done
23:10:42 <ehird> also, that fails when the package modifies existing files
23:10:43 <ehird> no?
23:10:46 <AnMaster> ehird, nop
23:10:51 <ehird> oh, copy-on-write?
23:10:53 <psygnisfive> ah i see.
23:10:58 <AnMaster> ehird, overlaying fs
23:11:05 <ehird> okay, that would work splendidly then
23:11:11 <ehird> and be easy to implement
23:11:31 <AnMaster> ehird, and then you check what was changed in the overlaying one, need to handle deleted files (unionfs write specially "whiteout" files for that iirc)
23:11:37 <AnMaster> anyway one issue
23:11:50 <AnMaster> unionfs isn't in vanilla kernel
23:11:53 -!- oerjan has quit ("leaving").
23:11:54 <psygnisfive> ehird, just telling me it was a shell command makes was good enough :P
23:12:02 <AnMaster> this means you may need to wait for the patchset to be ported
23:12:07 <ehird> who cares about a vanilla kernel when you're hypothesising your own distro
23:12:12 <fizzie> You can also use a LVM snapshot volume mounted in the chroot; that's copy-on-write. Although looking at changes is then a bit more difficult, with unionfs you nicely get the changed/deleted files easily.
23:12:23 <AnMaster> psygnisfive, chroot isn't a shell command, it is a system call
23:12:27 <ehird> hopeless./
23:12:27 <ehird> case.
23:12:29 <psygnisfive> same thing :P
23:12:39 <AnMaster> ehird, because you can't track last sources, you need to wait for it to be ported to last
23:12:48 <AnMaster> which means you can't follow bleeding edge
23:12:59 <fizzie> "man chroot" does give here the 'shell command' -- well, it's not a built-in, but anyway -- instead of the system call, though.
23:12:59 <AnMaster> fizzie, yes that would work nicely
23:13:04 <ehird> who honestly cares about a bleeding edge kernel?
23:13:30 <AnMaster> ehird, me? at least on my development box, on my desktop I run more stable
23:13:34 <fizzie> Anyone with bleeding edge hardware. :p
23:13:35 <AnMaster> still not debian stable
23:13:37 <ehird> does it really matter though?
23:13:47 <AnMaster> ehird, yes because I want to test new features
23:13:47 <ehird> as long as it's relatively new, does it bother you?
23:13:48 <AnMaster> on that box
23:13:57 <psygnisfive> why are we talking about hardware and kernels
23:14:01 <psygnisfive> this is not esoteric enough
23:14:07 <ehird> psygnisfive: because we want to, go away if you don't like it.
23:14:16 <AnMaster> ehird, which is why it ran gcc 4.3.2 one week after it was released
23:14:17 <fizzie> And 2.6.28 did really add useful things. Someone xtables-ized the iptables "recent" module, for example, so my SSH knocking thing works for IPv6 now, too.
23:14:21 <ehird> AnMaster: i guess it falls under the "all programmers are fashion-obsessed nerds with ADHD" axiom
23:14:25 <AnMaster> and glibc 2.9 quite fast too
23:14:26 <psygnisfive> you should be talking about a kernel written in BF!
23:14:34 <AnMaster> ehird, you are a programmer too?
23:14:38 <ehird> yes i am.
23:14:38 <AnMaster> I'm pretty sure
23:14:48 <AnMaster> ehird, you have ADHD? Would explain a lot :P
23:14:56 <ehird> That was a metaphor. :P
23:15:04 <ehird> Just like how by fashion I didn't mean clothes.
23:15:05 <psygnisfive> hes 13. all 13 year olds have adhd.
23:15:15 <psygnisfive> its like.. required to be 13
23:15:15 <AnMaster> ehird, exactly
23:15:18 <ehird> if all 13 year olds have ADHD it's hardly ADHD, is it
23:15:27 <psygnisfive> no, but shut up
23:15:28 <ehird> i mean, for something to be an actual... thing it has to be non-norm
23:15:29 <psygnisfive> :P
23:15:41 <psygnisfive> why? normal things are things!
23:15:54 <psygnisfive> attention-deficit hyperactivity disposition. :P
23:15:59 <AnMaster> ehird, I never care for clothes. Simple classical model blue jeans that aren't pre-worn-out, and t-shirt, and due to climate something thicker over
23:16:12 <ehird> and AnMaster successfully derails the conversation to an irrelevant topic
23:16:13 <AnMaster> like this thing made of fleece
23:16:20 <ehird> only to have everyone else pull it back again
23:16:23 <psygnisfive> anmaster is dressed like a lumberjack.
23:16:26 <AnMaster> jumper, jacket, sweater?
23:16:29 <AnMaster> what is the UK one?
23:16:33 <AnMaster> I can't keep them apart
23:16:42 <AnMaster> which*
23:17:23 <AnMaster> ehird, anyway you derailed it by starting talking about clothes!
23:17:36 <ehird> no, I didn't talk about clothes
23:17:44 <AnMaster> yes
23:17:47 <AnMaster> <ehird> Just like how by fashion I didn't mean clothes.
23:17:53 <ehird> that's not talking about clothes
23:17:54 <AnMaster> the word clothes is there
23:18:01 <psygnisfive> i googled lumberjack for a humorous picture
23:18:04 <AnMaster> ehird, that is meta-talking about not talking about clothes
23:18:04 <psygnisfive> and this is what i find: http://i37.photobucket.com/albums/e98/bolson51/lumberjack.jpg
23:18:14 <ehird> AnMaster: you are confusing mentioning and changing the topic to
23:18:37 <ehird> 23:15 <EvilTerran> @@ @run words "sleep eat haskell idle" !! (pred.read.last.words$(@show @dice 1d4))
23:18:37 <ehird> 23:15 <lambdabot> "haskell"
23:18:40 <AnMaster> ehird, well I disagree
23:19:14 <AnMaster> bbl, going to listen to an one hour radio program :)
23:21:02 <psygnisfive> "an one"
23:21:12 <psygnisfive> you real are an master!
23:21:12 <psygnisfive> huzzah!
23:22:31 <AnMaster> psygnisfive, an (one hour) radio program
23:22:34 <AnMaster> is the parsing
23:22:52 <AnMaster> and "one" begins with vowel sound, thus "an"
23:22:59 <psygnisfive> actually it doesnt begin with a vowel :)
23:23:05 <psygnisfive> it because with a "w" sound
23:23:14 <psygnisfive> but its not written that way for historical reasons.
23:23:29 <AnMaster> psygnisfive, doesn't that depend on dialect?
23:23:33 <psygnisfive> nope!
23:23:41 <psygnisfive> "one" is always said with initial w.
23:24:09 <psygnisfive> besides, "an" is not universally used just before vowels
23:24:16 <ehird> AnMaster: absolutely not
23:24:19 <ehird> it's a one hour
23:24:27 <AnMaster> bbl
23:24:28 <ehird> an one hour sounds definitively wrong
23:24:41 <psygnisfive> for instance, its used because the "y" glide as in "a usually red hat"
23:24:43 <psygnisfive> "a used book"
23:24:46 <psygnisfive> etc
23:24:52 <AnMaster> psygnisfive, as I mentioned my nick are from my initials
23:24:55 <AnMaster> so not relevant
23:24:56 <AnMaster> cya
23:24:58 <AnMaster> REALLY now
23:24:58 <psygnisfive> i know :P
23:25:01 <psygnisfive> i was being silly
23:36:31 <ehird> 23:31 <oklopol> read that as "sleep eat haskell die"
23:36:32 <ehird> 23:31 <oklopol> i was like "wow, what a gambler!"
23:36:34 <ehird> you see
23:36:35 <ehird> those lines seemed familiar
23:36:39 <ehird> but then i realised oklopol said them
23:37:13 <oklopol> familiar?
23:37:20 <ehird> i dunno
23:37:24 <ehird> just like I knew who would have said tem
23:37:27 <ehird> them
23:37:34 <oklopol> well yeah, that's not a surprise
23:37:45 <oklopol> i mean i'm pretty oklo
23:59:37 -!- KingOfKarlsruhe has joined.
2009-01-10
00:11:00 <flexo> alright
00:11:05 <flexo> i can feel it now
00:11:13 <flexo> the ballmer peak is
00:11:16 <flexo> approaching
00:11:38 <flexo> MUSIC!
00:22:29 <AnMaster> flexo, Mozart? Haydn? Händel?
00:22:38 <flexo> was
00:22:39 <flexo> nein
00:22:47 <AnMaster> flexo, ?
00:22:50 <AnMaster> eh?
00:22:50 <flexo> yep?
00:22:53 <AnMaster> what?
00:22:56 <flexo> exactly
00:22:58 <flexo> was means what
00:22:58 <AnMaster> what is "nein"?
00:23:02 <flexo> nein is no
00:23:03 <flexo> :)
00:23:04 <AnMaster> ah
00:23:26 <flexo> i'd have thought everyone knows at least that much german heh
00:23:29 <AnMaster> flexo, hm, maybe Liszt? Bach?
00:23:32 <flexo> nope
00:23:47 <flexo> don't even know the former
00:23:53 <AnMaster> Chopin?
00:23:56 <flexo> nope
00:24:10 <AnMaster> um Beethoven?
00:24:13 <flexo> nope
00:24:14 <flexo> wait
00:24:18 <flexo> how did you manage to do that ?
00:24:27 <AnMaster> flexo, it is on my Swedish keyboard...
00:24:33 <flexo> oh, swedish. okay.
00:24:41 <AnMaster> flexo, why would it be hard anyway?
00:24:48 <flexo> on an american keyboard?
00:25:10 <AnMaster> well there is some meta key to enter char sequences I assume?
00:25:13 <AnMaster> like number
00:25:26 <AnMaster> U+220 or whatever
00:25:30 <flexo> these days?
00:25:34 <flexo> unicode. huh. yea. well. maybe.
00:25:35 <AnMaster> flexo, isn't there?
00:25:38 <flexo> i don't know?
00:25:44 <flexo> is on my german keyboard aswell ;)
00:25:54 <AnMaster> well ok
00:26:06 <AnMaster> anyway Germany had lots of great composers
00:26:12 <AnMaster> congrats on that
00:26:18 <AnMaster> flexo, anyway, what about Grieg?
00:26:30 <flexo> that's the second one i don't know
00:26:44 <AnMaster> flexo, which was the first one you didn't know?
00:26:50 <flexo> Liszt
00:26:52 <AnMaster> Also Grieg is from Norway
00:26:59 <AnMaster> flexo, ah Liszt was from France
00:27:02 <flexo> ah well
00:27:04 <flexo> you know
00:27:08 <flexo> german-france thingie
00:27:17 <flexo> :)
00:27:21 <AnMaster> Chopin from Poland(sp in English?)
00:27:28 <flexo> yes
00:27:46 <AnMaster> the rest were from Germany, though Händel spent most of his time in UK iirc
00:27:52 <flexo> oh fuck
00:27:57 <AnMaster> flexo, what?
00:28:18 <flexo> just drank out of my ashtray
00:28:23 <flexo> same glasses
00:28:23 <AnMaster> wtf
00:28:25 <flexo> same color
00:28:29 <AnMaster> you are an alcoholic
00:28:31 <flexo> (cuba libre in the right one)
00:28:31 <AnMaster> -_
00:28:36 <AnMaster> and a smoker
00:28:44 <AnMaster> I do not wish to talk to you any more
00:28:55 <flexo> :)
00:29:38 <AnMaster> flexo, just one question
00:29:42 <AnMaster> what music was it actually?
00:30:01 <AnMaster> Debussy? I assume it isn't something horrible like Wagner
00:30:05 <flexo> ...
00:30:27 <AnMaster> flexo, what?
00:30:38 <AnMaster> it *was* Wagner?
00:30:45 <flexo> no
00:30:50 <AnMaster> well
00:30:52 <AnMaster> what then?
00:30:55 <flexo> i kinda like that valkyrie ride though
00:31:03 <AnMaster> flexo, personally I can't stand it
00:31:19 <AnMaster> oh could be Vivaldi or Verdi too I assume
00:31:24 <flexo> but i agree with you that wagner sucks
00:31:42 <flexo> i suppose it's just the movie i associate it with i like
00:32:01 <AnMaster> No clue what movie that is. Anyway: What music?
00:32:17 <flexo> the movie - apocalypse now?
00:32:39 <flexo> i'm evading your question, don't you see it
00:32:41 -!- KingOfKarlsruhe has changed nick to nice.
00:32:45 -!- nice has changed nick to KingOfKarlsruhe.
00:32:52 <AnMaster> flexo, well I'm not going to let you evade it any more
00:33:19 <flexo> well
00:33:26 <AnMaster> yes?
00:33:42 <flexo> you want as honenst answer?
00:34:31 <AnMaster> flexo, what could be that bad?
00:34:40 <flexo> yes
00:34:46 <flexo> it's somewhat emberassing
00:34:55 <AnMaster> flexo, not classical at all!?
00:34:59 <flexo> when i'm drunk i usually listen to some 70s or 80s disco music :)
00:35:03 <AnMaster> oh my
00:35:05 <AnMaster> right
00:35:06 <AnMaster> that bad
00:35:11 <AnMaster> no I don't want more details
00:35:14 <flexo> haha
00:35:50 <flexo> i still got that damn taste in my mouth
00:35:55 <AnMaster> Béla Bartók?
00:35:56 <AnMaster> or
00:35:59 <AnMaster> worst of all
00:36:02 <AnMaster> Schoenberg!?
00:36:10 <flexo> don't know neighter
00:36:32 <AnMaster> flexo, the latter is like wagner, but worse
00:36:48 <AnMaster> also doesn't it just taste cigarettes?
00:36:57 <AnMaster> I mean if you smoke them, you shouldn't notice it anyway
00:38:49 <flexo> no
00:38:56 <flexo> it tastes like cigarettes, but worse
00:39:12 <flexo> like solluted cigarettes
00:39:15 <flexo> with some ash added
00:39:21 <flexo> probably rather toxic too
00:39:26 <flexo> but i didn't swallow
00:39:29 <flexo> i suppose i'll be fine
00:50:23 -!- oerjan has joined.
00:51:37 * oerjan decides the web solution for Trondheim's new electronic bus cards sucks hedgehogs through a garden hose
00:52:15 <oerjan> WHY THE HECK CAN'T THEY FIND A WAY TO JUST SEND ME AN ORDINARY BILL, SAY EVERY 3 MONTHS
00:52:30 <oerjan> _that_ would have been an actual improvement
01:01:00 <oerjan> <ehird> i mean, for something to be an actual... thing it has to be non-norm
01:01:14 <oerjan> conclusion: heterosexuals don't really exist
01:05:10 <oerjan> <ehird> it's a one hour
01:05:26 <oerjan> possibly also, an hour one
01:06:43 <oerjan> <ehird> 23:31 <oklopol> read that as "sleep eat haskell die"
01:06:56 <oerjan> oklopol, you too?
01:08:58 <oerjan> <AnMaster> flexo, ah Liszt was from France
01:09:05 <oerjan> wait, i thought he was hungarian...
01:09:15 <AnMaster> oerjan, oh must have typoed that
01:09:46 <AnMaster> oerjan, you are right, but he worked a lot in Paris
01:09:49 <AnMaster> that is why I mixed it up
01:10:44 <oerjan> you are still on positive karma for knowing Grieg was norwegian ;D
01:11:05 <AnMaster> oerjan, of course I know of him, and I love the Peer Gynt suites
01:11:26 <flexo> hmm
01:11:29 <AnMaster> and some of his other music, don't remember the opus numbers/names off hand
01:11:43 <flexo> metal being the contiuation of classical music i suppose i'm allowed to hear that
01:11:45 <oerjan> ah yes i remember a previous discussion
01:11:49 <AnMaster> oerjan, what I *don't* like is that Sigurd Jolsefar(sp?) march he made
01:12:07 <AnMaster> oerjan, "Från Hollbergs tid" is nice, again that is probably a Swedishism
01:12:14 <oerjan> flexo: NO! metal should be banned! it is a method of torture!
01:12:24 <flexo> :(
01:12:29 <AnMaster> oerjan, agreed
01:13:15 <AnMaster> oerjan, anyway, Grieg is IMO one of the all time best, together with Vivaldi, Händel and Mozart
01:13:33 <AnMaster> Haydn and Delius are both near the top too
01:13:57 * oerjan should point out he is no expert
01:13:59 <AnMaster> Beethoven just below that
01:14:07 <AnMaster> oerjan, oh? what do you listen to then?
01:14:27 <oerjan> i nearly never play music myself
01:14:39 * oerjan prefers silence
01:14:41 <AnMaster> also I plan to do like the US does, they declare something "terrorism" or "unamerican"
01:15:36 <AnMaster> I now declare all rock, metal, rap and country western music to be terrorism and a threat to the world. It is also Unanmasterian
01:15:56 <AnMaster> Lets declare war on rock, metal, rap and country western!
01:16:02 <AnMaster> oerjan, what do you think?
01:16:09 <oerjan> oh and it's Jorsalfar, the man that is, don't know about the piece
01:16:30 <AnMaster> oerjan, I think it is the same, since it is about him
01:16:39 <oerjan> wait a minute i _do_ like rock and country
01:16:48 <AnMaster> oh also rock, metal, rap and country western are now declared to no longer be music
01:16:55 <AnMaster> oerjan, what? really?
01:16:56 <AnMaster> country!?
01:17:07 <AnMaster> oerjan, you need therapy
01:17:15 <oerjan> and a few raps, and maybe a couple metals even
01:17:25 <AnMaster> <oerjan> flexo: NO! metal should be banned! it is a method of torture!
01:17:29 <AnMaster> you said it yourself
01:17:34 <oerjan> that is almost certainly true, although not for that reason
01:17:36 <AnMaster> write-once memory
01:17:49 <oerjan> no, but there are always a couple of exceptions to everything :D
01:17:50 <AnMaster> oerjan, what reason then?
01:19:17 <AnMaster> oerjan, anyway it is weird Germany produced so many famous composers
01:19:20 <AnMaster> don't you agree?
01:19:24 <oerjan> sorry, the green goblin behind my ear says i may not answer that
01:19:31 <AnMaster> oerjan, eh?
01:19:40 <AnMaster> that just made *no* sense whatsoever
01:19:41 <oerjan> <AnMaster> oerjan, what reason then?
01:19:45 <AnMaster> ah
01:19:57 <AnMaster> well
01:20:03 <AnMaster> it make almost no sense still
01:20:29 <oerjan> <oerjan> that is almost certainly true, although not for that reason
01:20:37 <oerjan> <AnMaster> oerjan, you need therapy
01:20:43 <AnMaster> well right
01:20:45 <AnMaster> ok
01:20:48 <AnMaster> makes sense
01:20:58 <AnMaster> oerjan, now throw away the goblin and answer the question
01:21:20 <AnMaster> oerjan, err
01:21:22 <AnMaster> out of order
01:21:27 <AnMaster> <oerjan> wait a minute i _do_ like rock and country
01:21:32 <AnMaster> <AnMaster> oh also rock, metal, rap and country western are now declared to no longer be music
01:21:32 <AnMaster> <AnMaster> oerjan, what? really?
01:21:32 <AnMaster> <AnMaster> country!?
01:21:32 <AnMaster> <AnMaster> oerjan, you need therapy
01:21:32 <AnMaster> <oerjan> and a few raps, and maybe a couple metals even
01:21:33 <AnMaster> <AnMaster> <oerjan> flexo: NO! metal should be banned! it is a method of torture!
01:21:39 <AnMaster> <AnMaster> you said it yourself
01:21:40 <AnMaster> <oerjan> that is almost certainly true, although not for that reason
01:21:40 <AnMaster> <AnMaster> write-once memory
01:21:41 <AnMaster> <AnMaster> oerjan, what reason then?
01:21:44 <AnMaster> oerjan, see that ^
01:21:53 <AnMaster> you must have a lot of lag
01:21:59 <AnMaster> hm 1.32
01:22:04 <oerjan> no, i just don't type fast
01:22:22 <oerjan> or think fast for that matter
01:23:57 <oerjan> but basically don't assume i'm answering the _last_ thing you say when you keep saying several things in a row...
01:25:13 <oerjan> oh and maybe metal shouldn't be totally banned but there should be some obligatory sound-proofing there... :D
01:27:17 <oerjan> <flexo> just drank out of my ashtray
01:27:20 <oerjan> O_O
01:28:17 <flexo> yea
01:28:22 <flexo> i tell you
01:28:24 <flexo> doesn't taste good
01:28:32 * oerjan believes that
01:28:42 <flexo> the problem is, that cuba libre has the same color was water and cigarettes
01:28:55 <flexo> *as
01:30:08 <AnMaster> flexo, possible solutions: a) Check shape of object before moving to mouth b) stop smoking c) stop drinking alcohol d) stop smoking and stop drinking alcohol e) Both a and d
01:30:17 <AnMaster> I suggest e
01:30:22 <flexo> i suggest a
01:30:35 <AnMaster> flexo, e is healthier?
01:30:43 <AnMaster> especially smoking is bad
01:30:44 <flexo> so?
01:30:48 <flexo> yea i know
01:30:55 <flexo> that's why i have a nicotine patch on my arm
01:30:57 * oerjan suggests (d), just because
01:30:58 <flexo> :)
01:31:11 <flexo> (because i'm in the process of quitting)
01:31:15 <flexo> but i'm drinking, so
01:31:17 <flexo> i'm smoking too
01:31:31 <AnMaster> flexo, what about others too? Think of people with asthma. Smokers are a pain to us
01:31:42 <AnMaster> cause issues as soon as you are outside
01:31:47 <oerjan> ah, new year resolution?
01:31:57 <flexo> oerjan: no, my wisdom teeth got ripped out a few days ago
01:32:07 <oerjan> eek
01:32:07 <AnMaster> flexo, why?
01:32:07 <flexo> bought the patches to overcome the days i was not allowed to smoke
01:32:18 <flexo> then decided to quit smoking completly
01:32:21 <AnMaster> good
01:32:25 <flexo> that's why i have that patch on my arm right now
01:32:28 <AnMaster> now actually stop
01:32:31 <flexo> but today i started smoking again
01:32:34 <flexo> and the patch is still there
01:32:35 <AnMaster> flexo, throw away the ashtray
01:32:39 <flexo> i suppose that's even better
01:32:59 <flexo> yea well. i'm addicted.
01:33:00 <AnMaster> flexo, it will solve both b and the actual issue
01:33:14 <AnMaster> flexo, go somewhere where there are no cigarettes
01:33:19 <oerjan> actually i recall smelling the ashtray has been suggested for helping to quit
01:33:21 <AnMaster> say for a mountain hike
01:33:23 <flexo> i doubt there is such a place
01:33:31 <oerjan> tasting should be even better, no?
01:33:33 <flexo> oerjan: drinking it doesn't so i don't buy it
01:33:39 <AnMaster> flexo, what about north Canada?
01:33:41 -!- Sgeo has joined.
01:33:45 <flexo> AnMaster: way too cold i think
01:34:05 <AnMaster> flexo, Ok... Australian outback and 500 km to the next human?
01:34:18 <flexo> yea, that sounds more like it
01:34:25 <AnMaster> flexo, maybe a bit too warm
01:34:35 <flexo> probably
01:34:40 <flexo> me living in germany and all
01:34:44 <AnMaster> ah
01:34:53 <AnMaster> flexo, in Europe you'll have a hard time
01:34:57 <flexo> a little warmer than munich would be nice though
01:35:00 <AnMaster> finding lonely places
01:35:21 <oerjan> a place with nice temperature and humidity where no one actually lives - yeah right :D
01:35:27 <flexo> hehe
01:35:51 <AnMaster> oerjan, may exist if it is 1) small 2) hard to reach or inconvenient in some other way
01:35:55 <oerjan> maybe a remote island
01:35:58 <flexo> electricity and internet connectivity (say gprs coverage) would be nice too
01:36:00 <AnMaster> say, mountains
01:36:03 <AnMaster> oerjan, that too
01:36:09 <oerjan> mountains are usually cold
01:36:12 <AnMaster> flexo, then you are out of luck
01:36:19 <flexo> alright then
01:36:24 <flexo> no way around smoking
01:36:28 <AnMaster> oerjan, well but if you go near enough to the equator you offset that
01:36:33 <AnMaster> flexo, stop it
01:36:35 <AnMaster> just stop it
01:36:47 <flexo> can't. addiction.
01:36:55 <flexo> probably a genetic issue tue.
01:36:57 <AnMaster> flexo, stop drinking then instead?
01:37:02 <flexo> no?!
01:37:04 <AnMaster> flexo, why did you start at all?
01:37:15 <flexo> oh, that's a funny story
01:37:21 <AnMaster> flexo, and get professional help
01:37:26 <flexo> you know, i spent some time in a mental hospital when i was 16yo
01:37:33 <AnMaster> ouch
01:37:34 <flexo> as i was 16 i was allowed to smoke
01:37:40 <flexo> but the 14 and 15yo's were not
01:37:47 <flexo> so i had to go with a cigarette for fire
01:37:58 <AnMaster> err why fire?
01:37:58 <flexo> because you know, you are now allowed to have a lighter in closed mental hospital
01:38:02 <flexo> could set yourself on fire
01:38:11 * AnMaster backs away from flexo
01:38:16 <flexo> anyway
01:38:20 <AnMaster> 1) why would you want a lighter at all?
01:38:28 <flexo> to light cigarettes?
01:38:32 <oerjan> in case he wanted to BURN something, silly
01:38:36 <flexo> the point is those 14yo and 15yos were smokers
01:38:38 <AnMaster> oerjan, oh
01:38:49 <flexo> and they needed me to get the fire
01:38:55 <flexo> that's why i started smoking
01:38:59 <AnMaster> flexo, -_-
01:39:26 <flexo> "blaze"
01:39:29 <flexo> that's the actual term
01:39:34 <flexo> they needed me to get the "blaze"
01:39:46 <flexo> you know, as in a lit cigarette, so you can pass the blaze?
01:40:27 <flexo> i've been a chainsmoker ever since
01:40:36 <flexo> tried to quit a couple of times
01:40:41 <flexo> never worked out
01:40:49 <flexo> but i suppose that was to be expected
01:40:55 <AnMaster> shudder
01:40:58 <flexo> people with depressions often smoke
01:41:06 <flexo> and actually they are not advised to stop
01:41:13 <flexo> because it causes a serotonine drop
01:41:30 <Sgeo> Yesterday's Mezzacotta was pretty good imo
01:41:30 <oerjan> good i never stopped smoking then
01:41:35 <oerjan> even better i never started
01:41:49 <AnMaster> you mean... because they would live longer and cause more expenses for the country?
01:41:50 <AnMaster> :P
01:41:52 <oerjan> Sgeo: the main one?
01:41:57 <AnMaster> flexo, that is the real reason
01:42:00 <Sgeo> hm?
01:42:09 <Sgeo> Yes
01:42:12 <oerjan> mezzacotta now has _four_ comics on it
01:42:18 <AnMaster> oerjan, it does?
01:42:25 <flexo> AnMaster: i suppose that's a joke, because although you might have an argument there, it's someone messed up
01:42:28 <oerjan> well, for a certain definition of comics
01:42:32 <flexo> *somewhat
01:42:48 <AnMaster> flexo, well since it is for someone messed up it may be somewhat messed up?
01:42:55 <AnMaster> oerjan, I don't count invalid link that
01:43:06 <flexo> the medical costs of smoking-related diseases outweight the care for the few years we live shorter
01:43:10 <oerjan> Comments on a Postcard, Lightning Made of Owls, and Square root of minus Garfield
01:43:26 <AnMaster> flexo, ah hm
01:43:32 <oerjan> + the main random one
01:43:38 <flexo> those people with ps
01:43:42 <flexo> with..
01:43:44 <flexo> well.
01:43:49 <flexo> whats the term?
01:44:00 <flexo> crazy people, right
01:44:02 <Corun> Imaginary Garfield Squared = minus garfield = minus train station field = MINOTAUR TRAINING FIELD
01:44:13 <AnMaster> oerjan, "Square root of minus Garfield"?
01:44:15 * AnMaster looks
01:44:23 <Sgeo> Is Prevx CSI a good anti-rootkit?
01:44:38 <Corun> What do I win?
01:44:38 <flexo> so. crazy people who manage to end up so old that they are actually reaching the avg. life expentency (sp! :) for smokers are probably not an issue after all
01:44:44 <Corun> Please tell me it's minotaurs
01:45:08 <flexo> (my reasoning over there is seriously flawed and makes no sense)
01:45:20 <AnMaster> oerjan, do you understand it?
01:45:24 <AnMaster> oerjan, I *dont*
01:45:31 * AnMaster reads about
01:45:54 <flexo> oerjan: did you ask me why my wisdom teeth were pulled out?
01:46:04 <oerjan> AnMaster: it's sort of various variations of Garfield
01:46:06 <oerjan> flexo: no
01:46:10 <flexo> oh okay
01:46:17 <AnMaster> oerjan, ah
01:46:23 <oerjan> <oerjan> eek
01:46:43 <flexo> okay
01:46:58 <oerjan> all of the new comics are collaborative, so there is a lot of variation
01:46:59 <flexo> i think the alcohol is beginning to .. a.. e.. a.. ... hm.. *ffect me.
01:47:10 <oerjan> affect
01:47:19 <flexo> why? explain it me please.
01:47:21 <flexo> i think i never got it.
01:47:26 <flexo> +to
01:47:46 <oerjan> effect is not a verb much
01:47:58 <flexo> much?
01:48:14 <oerjan> much = covering my ass in case i'm wrong
01:48:20 <flexo> it's always affect then?
01:48:25 <flexo> i thought they both have a different meaning
01:48:39 <oerjan> actually you might be able to effect a change
01:48:42 <flexo> a similar, but different one
01:48:54 <flexo> o.O
01:49:32 <flexo> writing and reading english is getting harder and harder
01:49:42 <flexo> i'm rather drunk now
01:49:50 <oerjan> to affect is to influence, more or less
01:49:56 <flexo> you know, i'd so much like to go on babbeling in german instead
01:49:58 <oerjan> while effect would be to cause
01:50:02 <flexo> ah
01:50:08 <flexo> so both verbs exist actually?
01:50:35 <oerjan> i'm pulling this out of thin air. read a dictionary for official explanations :D
01:50:46 <flexo> na
01:50:48 <flexo> i'm fine with that
01:50:54 <flexo> won't remember a thing tomorrow anyway
01:50:57 <oerjan> (doesn't mean it's wrong though, just based on my intuition)
01:51:11 <oerjan> that's convenient
01:51:22 <flexo> i think i've passed way beyong the ballmer peak by now :/
01:51:24 <oerjan> more chocolate mocha beans ->
01:51:42 <flexo> so no coding tonight
01:51:46 <flexo> how unfortunate
01:52:05 <oerjan> it seems i have picked up an addiction to them over christmas
01:52:22 <flexo> oh damnit
01:52:43 <flexo> i just figured that i'm way too drunk to "type" with the stylus on my smartphone thingie
01:52:51 <oerjan> heh
01:53:01 <flexo> no drunk-sms-sending then :/
01:53:45 -!- KingOfKarlsruhe has quit (Remote closed the connection).
01:57:08 <oerjan> <flexo> you know, i'd so much like to go on babbeling in german instead
01:57:37 <oerjan> Deutschbabbelung ist am strengsten verboten. Bitte kein gefingerpoken!
01:58:14 <oerjan> Aber schnell!
02:00:10 <oerjan> *sigh*
02:00:25 <oerjan> IWC still has those bandwidth problems it seems
02:06:00 -!- Corun has changed nick to OneSadCookie.
02:07:38 <oerjan> OneSadCookie: i don't think there are any minotaurs in Square root of minus Garfield yet, but you are of course free to send in a strip suggestion with one, it is a collaborative comic after all :D
02:08:01 <OneSadCookie> Mmm.
02:08:04 -!- OneSadCookie has changed nick to Corun.
02:08:33 <Corun> Mmm, minotaurs.
02:08:41 <Corun> Best served raw.
02:08:54 <Corun> They're aMAZEing.
02:09:26 <oerjan> just make it clear which one is the dinner
02:13:52 <AnMaster> oerjan, "Square root of minus Garfield" rocks
02:17:49 <Slereah> Imaginary Garfield? :o
02:19:43 <oerjan> http://www.mezzacotta.net/garfield/
02:20:21 <oerjan> the last one is not one of the best, though
02:27:26 * Sgeo suddenly wants to take the color average of every strip he knows of
02:29:06 <oerjan> i don't know if it would work as well as with garfield though
02:29:49 <oerjan> it really brings out how unimaginative garfield's drawing is
02:30:19 * oerjan guesses that was a spoiler, of sorts
02:30:20 <Sgeo> What's with Garfield being a number?
02:30:31 <oerjan> Garfield divided by Garfield
02:30:39 <oerjan> = 1
02:31:33 <oerjan> recall this whole series was inspired by Garfield minus Garfield, another parody
02:31:51 <Sgeo> http://www.mezzacotta.net/garfield/?comic=14 is pretty cool
02:36:24 <Sgeo> http://www.mezzacotta.net/garfield/?comic=8 "And there was no cheating".. changing the words isn't cheating?
02:38:02 <oerjan> i think it means the choice of strips was really random
02:39:47 <Sgeo> http://www.mezzacotta.net/garfield/?comic=5 the original for the events actually made me laugh
02:40:01 <Sgeo> That sqrt(-garfield) didn't
02:41:20 * Sgeo wtfs at http://www.mezzacotta.net/garfield/?comic=4
02:41:51 <oerjan> you have to have read Dinosaur Comics a bit to get the point of 5 i think
02:42:07 <AnMaster> err no?
02:42:16 <AnMaster> http://www.mezzacotta.net/garfield/?comic=4 makes perfect sense
02:42:36 <AnMaster> and I don't read Dinosaur Comics
02:42:46 <oerjan> i said _5_
02:42:57 <AnMaster> oh right
02:43:04 <AnMaster> oerjan, also I'm waiting for the "this is some character art I have been working on"
02:43:07 <AnMaster> :P
02:43:18 <AnMaster> oh and xkcd parody
02:43:20 <oerjan> er what?
02:43:33 <AnMaster> oerjan, irregular made parodies of both
02:43:37 <AnMaster> don't you remember?
02:43:39 * oerjan doesn't get the first one
02:43:46 <AnMaster> oerjan, misc theme
02:43:52 <AnMaster> don't remember number
02:44:00 <AnMaster> anyway it was funny in irregular
02:44:06 <AnMaster> thanks to the annotation
02:45:37 <flexo> i managed to use my phone after all
02:45:48 <Sgeo> AnMaster, When I said I WTF at 4, I meant at the original Garfield
02:46:09 <flexo> got me a chick for 24.-25.
02:46:13 <flexo> alcohol FTW
02:46:38 <AnMaster> what is the message in http://www.mezzacotta.net/garfield/?comic=17 ?, irregular forum says there is a real message in that
02:46:58 <oerjan> yes there was
02:47:05 <oerjan> it was something boring though
02:47:10 <AnMaster> oerjan, I don't know what the original comic was
02:47:22 <AnMaster> oerjan, can't search them all
02:47:35 <AnMaster> so this is effectively a one-time-pad style crypto for me
02:47:37 <oerjan> i found it by searching for things with clown in them
02:47:56 <AnMaster> hm ok
02:49:29 <oerjan> hm right google wasn't much help, had to find a garfield site with text search
02:51:00 <oerjan> http://garfield.nfshost.com/?s=clown+shirt
02:51:23 <oerjan> (it was easier this time since i remembered the word "shirt" was in it :D)
02:52:46 <AnMaster> I wonder if they will do that theme again?
02:52:52 <AnMaster> I mean
02:52:56 <AnMaster> crypto
02:53:25 <oerjan> incidentally i _did_ manage to get the small part with "garfield" and "hmmmm" without knowing the original strip
02:53:32 <AnMaster> well
02:53:33 <AnMaster> yes
02:53:43 <oerjan> (was easy to guess the first, and then the second fell out)
02:54:01 <oerjan> i'm sure someone with more experience could have done most of it
02:54:10 * AnMaster writes a script
02:55:23 <AnMaster> in erlang
02:55:45 * oerjan used haskell, naturally ;D
02:58:40 <AnMaster> oh case
03:00:09 <AnMaster> oerjan, is this diff mod length of alphabet?
03:00:22 <AnMaster> I get readings off the scale
03:00:26 <AnMaster> ;P
03:01:00 <oerjan> you have to rotate, naturally
03:01:10 <AnMaster> damn yes
03:01:45 <AnMaster> oerjan, what is the length of the English alphabet now again?
03:01:50 <oerjan> 26
03:01:55 <AnMaster> right
03:02:07 <oerjan> recall that rot-13 is exactly half
03:02:18 <oerjan> that's why it's self-inverse
03:03:14 <lament> OOOOOOOOOOH that's why.
03:04:13 <AnMaster> 8> io:format("~s~n", [garfield_code:decrypt("Notice anything different about me, Garfield?", "WBMXUW ZWSQIBBV XFUXYZDCO SGUAI EY, APVKLTPI?")]).
03:04:13 <AnMaster> ^S^O^R^R^Z^Y ^T^W^A^S^N^O^Z^T^W^O^R^T^H^Y^O^U^Z^R^E^F^F^O^Z^R^T^Z^Z^T^O^D^E^C^O^D^E^Z
03:04:13 <AnMaster> ok
03:04:14 <AnMaster> wtf?
03:04:29 <AnMaster> oerjan, is this not ascii value at the end?
03:05:19 <AnMaster> oh
03:05:20 <AnMaster> right
03:06:07 <Sgeo> What's the ^Zs?
03:06:16 <oerjan> you need to add 64 or 96 to get it alphabetic, and the non-letters are just junk
03:06:25 <AnMaster> ah
03:06:58 <AnMaster> oerjan, oerjan interesting the escape codes almost match,...
03:07:00 <AnMaster> "IMSORRZYITWASNOZTWORTHYOUZREFFOZRTZZTODECODEZ"
03:07:02 <AnMaster> anywya
03:07:05 <AnMaster> Z == space
03:07:08 <AnMaster> I think
03:07:09 * AnMaster fixes
03:07:32 <oerjan> that's because control-codes 0-31 are printed as ^+ corresponding letter
03:08:11 <AnMaster> yes
03:08:24 <AnMaster> 17> io:format("~p~n", [garfield_code:decrypt("Notice anything different about me, Garfield?", "WBMXUW ZWSQIBBV XFUXYZDCO SGUAI EY, APVKLTPI?")]).
03:08:24 <AnMaster> "IMSORR YITWASNO TWORTHYOU REFFO RT, TODECODE?"
03:08:25 <oerjan> ^Z corresponds to when you have equal codes in the texts, which happens for the non-letters
03:08:27 <AnMaster> much better
03:08:39 <AnMaster> ouch
03:08:42 <AnMaster> that hurts
03:09:05 <oerjan> i _told_ you it was a boring text :D
03:09:27 <AnMaster> yes
03:10:51 * oerjan still doesn't get what iwc comic AnMaster connects with "this is some character art I have been working on"
03:11:06 <oerjan> and i've looked through most of the misc parodies now
03:11:34 <oerjan> nor do i recall the original comic
03:12:14 <AnMaster> oerjan, early one
03:12:28 <oerjan> ok i started a bit into it
03:12:38 * oerjan goes backwards in misc
03:13:26 <oerjan> bah IWC has trouble again
03:13:30 <AnMaster> indeed
03:13:42 <Sgeo> Is Mezzacotta down?
03:13:57 <oerjan> i don't think those are the same site
03:14:22 <Sgeo> Mezzacotta was being slow
03:14:22 <oerjan> i'm looking at Irregular Webcomic Archive
03:15:18 <AnMaster> "IM SORRY IT WAS NOT WORTH YOUR EFFORT TO DECODE THIS BUT YOU HAVE THE SATISFACTION OF KNOWING SOME THING THAT OTHERS DO NOT TAKE PRIDE IN THAT SIGNED THE GOON"
03:15:20 <AnMaster> wtf :P
03:15:34 <AnMaster> Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'iwc.irregularwebcomic.net' (4) in /home/.bacidryer/dmmaus/iwc/comic.php on line 28
03:15:34 <AnMaster> A database error occurred. This should be temporary. Please try again later. Do not notify me about this - there's nothing I can do about it.
03:15:34 <AnMaster> Can't connect to MySQL server on 'iwc.irregularwebcomic.net' (4)
03:15:35 <AnMaster> also
03:16:51 <AnMaster> oerjan, no 1463
03:16:51 <oerjan> actually database errors have sometimes happened before. it may not be the bandwidth problem of late.
03:16:53 <AnMaster> not that early
03:17:07 <AnMaster> oerjan, yet you claimed you couldn't find it?
03:17:36 <oerjan> i still cannot. 1463 you said?
03:17:41 <AnMaster> oerjan, yes
03:18:08 <AnMaster> oerjan, I just pressed show previous 5 a few times, took me one minute to find after the website issues stopped
03:18:11 <oerjan> oh.
03:18:12 <AnMaster> a few seconds ago
03:18:24 <AnMaster> oerjan, you fail at search
03:18:29 <oerjan> i didn't notice the text in the image before
03:18:43 <AnMaster> you fail at reading too
03:19:00 <oerjan> no, my writing is _perferc_ i tell you!
03:19:13 <AnMaster> hah
03:19:22 <AnMaster> oerjan, I said reading, not writing
03:19:24 <AnMaster> and it isn't
03:19:25 <AnMaster> ;P
03:19:32 <oerjan> you fail at humor again
03:19:40 <oerjan> well nearly
03:19:44 <AnMaster> oerjan, I detected your humor
03:19:48 <AnMaster> you may notice that
03:20:09 <AnMaster> also I need to sleep
03:20:17 <oerjan> actually i did use next 5 so my search was excellent
03:20:32 <oerjan> no you don't. reject your sleep addiction!
03:56:02 <AnMaster> ehird, http://svn.python.org/view/python/trunk/Lib/antigravity.py?rev=66902&view=markup <-- :D
03:57:13 <Slereah> Heh.
03:57:46 <AnMaster> Slereah, http://imgs.xkcd.com/blag/googlecopy.jpg
04:02:05 <Slereah> Let me get my pen.
04:02:23 <AnMaster> Slereah, why?
04:02:40 <AnMaster> anyway night
04:05:21 <Slereah> bye.
04:08:58 <oerjan> :D
04:10:55 <AnMaster> wait
04:10:56 <AnMaster> what
04:11:03 <AnMaster> google changed favicon?
04:11:04 <AnMaster> again?
04:11:08 <Slereah> Yeah
04:11:10 <Slereah> To something ugly
04:11:11 <AnMaster> since when?
04:11:33 <Slereah> Iunno, yesterday I think
04:26:14 -!- Corun has quit ("This computer has gone to sleep").
05:06:36 -!- Sgeo has quit (Remote closed the connection).
05:35:25 -!- GreaseMonkey has joined.
07:12:52 <oklopol> AnMaster: flexo, what about others too? Think of people with asthma. Smokers are a pain to us <<< it's the other way around
07:28:20 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
07:28:37 -!- oklopol has joined.
07:29:31 <oklopol> lol @ averaged garfield
07:42:50 <oklopol> http://www.mezzacotta.net/garfield/?comic=2 <<< i love it when he turns
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:11:11 -!- moozilla has joined.
08:11:14 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
08:11:20 -!- moozilla has changed nick to metazilla.
08:12:08 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
08:12:17 -!- moozilla has joined.
08:22:12 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
08:22:17 -!- moozilla has joined.
08:27:19 -!- KingOfKarlsruhe has joined.
08:39:43 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
08:41:22 -!- moozilla has joined.
08:54:22 -!- Mony has joined.
08:55:41 <Mony> hi
08:56:17 <oerjan> ho
09:00:36 <Slereah> Hollo mona
09:00:58 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
09:01:01 -!- moozilla has joined.
09:08:52 -!- GreaseMonkey has quit ("e disasterous.").
09:15:05 -!- oerjan has quit ("leaving").
09:20:59 -!- KingOfKarlsruhe has quit (Remote closed the connection).
09:21:00 -!- metazilla has joined.
09:21:07 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:21:14 -!- metazilla has changed nick to moozilla.
09:41:01 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:41:02 -!- metazilla has joined.
10:02:04 -!- olsner has joined.
10:12:25 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
10:12:27 -!- moozilla has joined.
10:13:30 -!- metazilla has joined.
10:13:38 -!- moozilla has quit (Nick collision from services.).
10:13:40 -!- metazilla has changed nick to moozilla.
10:16:33 -!- sebbu2 has quit (Read error: 113 (No route to host)).
10:20:09 <AnMaster> haha, this is just awesome, check the image text at the image near http://en.wikipedia.org/wiki/Randall_Munroe#Other_projects
10:20:19 <AnMaster> [citation needed] :D
10:23:22 -!- sebbu has joined.
10:44:06 -!- cherez has joined.
10:44:07 -!- cherez has quit (Remote closed the connection).
10:44:36 -!- cherez has joined.
10:44:36 -!- cherez has quit (Client Quit).
10:44:43 -!- cherez has joined.
10:44:57 -!- cherez has left (?).
11:08:41 -!- metazilla has joined.
11:08:41 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
11:08:49 -!- metazilla has changed nick to moozilla.
11:46:00 -!- sebbu2 has joined.
11:52:55 -!- sebbu3 has joined.
11:53:06 -!- sebbu has quit (Read error: 148 (No route to host)).
11:53:23 -!- sebbu3 has changed nick to sebbu.
12:02:59 -!- psygnisfive has quit (kornbluth.freenode.net irc.freenode.net).
12:03:01 -!- flexo has quit (kornbluth.freenode.net irc.freenode.net).
12:03:31 -!- psygnisfive has joined.
12:03:31 -!- flexo has joined.
12:05:09 -!- sebbu2 has quit (Connection timed out).
12:07:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:07:54 -!- moozilla has joined.
12:08:32 -!- metazilla has joined.
12:08:33 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:08:39 -!- metazilla has changed nick to moozilla.
12:09:34 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:09:38 -!- moozilla has joined.
12:10:32 -!- metazilla has joined.
12:10:32 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:10:39 -!- metazilla has changed nick to moozilla.
12:11:13 -!- metazilla has joined.
12:11:20 -!- moozilla has quit (Nick collision from services.).
12:11:57 -!- moozilla has joined.
12:11:57 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
12:12:04 -!- moozilla has changed nick to metazilla.
12:12:21 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
12:13:07 -!- moozilla has joined.
12:13:07 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
12:13:14 -!- moozilla has changed nick to metazilla.
12:13:42 -!- puzzlet has joined.
12:13:45 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
12:13:47 -!- moozilla has joined.
12:14:07 -!- metazilla has joined.
12:14:08 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:14:14 -!- metazilla has changed nick to moozilla.
12:17:39 -!- metazilla has joined.
12:17:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:17:45 -!- metazilla has changed nick to moozilla.
12:21:45 -!- seveninchbread has joined.
12:25:14 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
12:25:27 -!- seveninchbread has changed nick to CakeProphet.
12:38:00 <AnMaster> I just had an idea
12:38:09 <AnMaster> writing a program directly in llvm asm
12:38:27 <AnMaster> silly yes
13:17:35 -!- Hiato has joined.
13:23:10 -!- Corun has joined.
13:24:51 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:24:53 -!- metazilla has joined.
13:25:52 -!- moozilla has joined.
13:26:03 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
13:26:03 -!- moozilla has changed nick to metazilla.
13:27:17 -!- moozilla has joined.
13:27:17 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
13:27:28 -!- moozilla has changed nick to metazilla.
13:38:57 -!- moozilla has joined.
13:39:13 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
13:39:13 -!- moozilla has changed nick to metazilla.
13:41:40 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
13:41:50 -!- moozilla has joined.
13:51:24 -!- Hiato has quit ("Leaving.").
13:56:11 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
13:56:17 -!- moozilla has joined.
13:58:59 -!- metazilla has joined.
13:58:59 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:59:11 -!- metazilla has changed nick to moozilla.
14:13:55 -!- Corun has quit ("o no!").
14:16:25 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:16:32 -!- moozilla has joined.
14:18:57 -!- metazilla has joined.
14:19:06 -!- moozilla has quit (Nick collision from services.).
14:19:08 -!- metazilla has changed nick to moozilla.
14:22:18 <AnMaster> hm
14:22:21 <AnMaster> sigh
14:22:30 <AnMaster> ehird, where is gcc-bf now when eso-std is down?
14:38:48 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
14:38:54 -!- moozilla has joined.
14:41:19 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
14:41:29 -!- moozilla has joined.
15:03:31 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
15:03:33 -!- metazilla has joined.
15:06:15 -!- moozilla has joined.
15:06:20 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:06:25 -!- moozilla has changed nick to metazilla.
15:17:01 -!- oerjan has joined.
15:18:18 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:18:24 -!- moozilla has joined.
15:19:51 -!- Corun has joined.
15:21:02 -!- metazilla has joined.
15:21:09 -!- moozilla has quit (Nick collision from services.).
15:21:13 -!- metazilla has changed nick to moozilla.
15:27:07 -!- Hiato has joined.
15:31:46 -!- puzzlet has quit (Remote closed the connection).
15:31:54 -!- puzzlet has joined.
15:36:07 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
15:36:08 -!- metazilla has joined.
15:38:32 -!- moozilla has joined.
15:38:32 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:38:41 -!- moozilla has changed nick to metazilla.
15:55:54 -!- moozilla has joined.
15:56:12 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:56:12 -!- moozilla has changed nick to metazilla.
15:58:08 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
15:58:13 -!- moozilla has joined.
16:05:54 -!- Hiato has quit ("Leaving.").
16:12:28 -!- puzzlet_ has joined.
16:16:40 -!- oerjan has quit ("leaving").
16:16:59 <flexo> AnMaster: no, no, you got me all wrong
16:17:08 <flexo> checking the shape wouldn't have helped me
16:17:15 <flexo> as i used a glass as an ashtray
16:17:19 <flexo> (a glass filled with water)
16:17:33 <AnMaster> flexo, you said it would have helped
16:17:34 <AnMaster> back then
16:17:38 <flexo> i know
16:17:39 <flexo> i was drunk
16:17:47 <flexo> i thought you meant something like
16:17:58 <flexo> "check contents of glass for cigarettes before moving to mouth"
16:18:06 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
16:18:08 -!- metazilla has joined.
16:20:55 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
16:20:59 -!- moozilla has joined.
16:23:25 <ehird> 06:22:18 <AnMaster> hm
16:23:26 <ehird> 06:22:21 <AnMaster> sigh
16:23:27 <ehird> 06:22:30 <AnMaster> ehird, where is gcc-bf now when eso-std is down?
16:23:30 <ehird> ais523's harddrive
16:23:32 <AnMaster> aha
16:23:36 <ehird> until I get it back up
16:23:41 <AnMaster> right
16:24:12 <AnMaster> ehird, I was working on making the fuzz test script for cfunge a bit more portable
16:24:15 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
16:24:28 <ehird> yay
16:27:34 <AnMaster> ehird, one thing that I will need, what are the exit codes on OS X for programs that end due to 1) SIGALRM 2) SIGSEGV 3) SIGABRT
16:27:51 <ehird> the same as BSD, almost certainly.
16:28:04 <AnMaster> ehird, hm ok. will check there then.
16:28:22 <ehird> 16:11:00 <flexo> alright
16:28:22 <ehird> 16:11:05 <flexo> i can feel it now
16:28:24 <ehird> 16:11:13 <flexo> the ballmer peak is
16:28:26 <ehird> 16:11:16 <flexo> approaching
16:28:28 <ehird> 16:11:38 <flexo> MUSIC!
16:28:30 <ehird> 16:22:29 <AnMaster> flexo, Mozart? Haydn? Händel?
16:28:32 <ehird> the best part is that you were absolutely serious :D
16:28:44 <AnMaster> ehird, and you fail at unicode
16:28:50 <ehird> no
16:28:51 <ehird> the logs do.
16:28:54 <ehird> just like they fail at UTC.
16:29:14 <AnMaster> ehird, what logs? your local logs or tunes logs?
16:29:22 <ehird> tunes
16:29:24 <AnMaster> ah ok
16:29:28 <ehird> 16:28:44 <AnMaster> I do not wish to talk to you any more
16:29:39 <AnMaster> ehird, sadly I didn't manage to stop
16:29:39 <AnMaster> ;P
16:29:41 <flexo> yea that was mean
16:30:06 -!- puzzlet_ has quit (Remote closed the connection).
16:30:14 -!- puzzlet has joined.
16:32:19 -!- metazilla has joined.
16:32:19 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
16:32:28 -!- metazilla has changed nick to moozilla.
16:34:48 -!- metazilla has joined.
16:34:50 -!- moozilla has quit (Nick collision from services.).
16:34:58 -!- metazilla has changed nick to moozilla.
16:40:59 <ehird> 17:36:33 <AnMaster> flexo, stop it
16:40:59 <ehird> 17:36:35 <AnMaster> just stop it
16:41:04 <ehird> I see you've never been addicted to anything, ever.
16:41:50 <Slereah> Have you?
16:42:01 <ehird> no.
16:42:49 <AnMaster> ehird, hm the *bsd exit codes for signals are the same as the linux ones
16:43:15 <AnMaster> wonder if posix spec this? I haven't been able to find out, even though I _did_ RFTM
16:44:08 <flexo> whats a "signal exit code"?
16:44:31 <flexo> you mean the exitcode returned by the default signal handler of the libc?
16:45:52 <ehird> AnMaster: do you like the composition "Leck mich im Arsch" by Mozart? (http://en.wikipedia.org/wiki/Leck_mich_im_Arsch)
16:46:46 <AnMaster> ehird, I haven't listened to it, so I can't answer that
16:47:11 <ehird> AnMaster: ok, what about "Leck mir den Arsch fein recht schön sauber"? http://en.wikipedia.org/wiki/Leck_mir_den_Arsch_fein_recht_schön_sauber
16:48:17 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
16:48:18 -!- metazilla has joined.
16:48:28 <AnMaster> again I haven't listened to it, and checking the wikipedia article I notice "In 1988, Wolfgang Plath, an editor of the Bärenreiter Neue Mozart-Ausgabe (NMA), presented evidence that the composer of this piece, as well as K.234/382c, was in fact Wenzel Trnka von Krzowitz (1739-1791)."
16:49:16 <AnMaster> ehird, anyway are you trying to make some sort of point?
16:49:25 <ehird> perhaps.
16:49:29 <ehird> perhaps.
16:49:32 <AnMaster> I never claimed I like everything by some composer, or dislike everything
16:49:33 -!- KingOfKarlsruhe has joined.
16:49:44 <ehird> Whoosh
16:50:33 -!- moozilla has joined.
16:50:33 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
16:50:41 -!- moozilla has changed nick to metazilla.
16:53:27 <AnMaster> Eine kleine Nachtmusik, Piano Sonata No. 11, Violin Concerto No. 1 are some examples I have listened to, and know I like
16:53:36 <ehird> WHOOOOOOOOOSH
16:54:31 <AnMaster> there are more, but considering the great number of pieces he made, I hope you realise why I haven't (yet) listened to them all: http://en.wikipedia.org/wiki/List_of_compositions_by_Wolfgang_Amadeus_Mozart
16:54:50 <ehird> w h o o o o o sh
16:54:55 <ehird> geeze that breeze is strong
16:54:58 <AnMaster> ehird, what do you mean?
16:57:44 <ehird> oh, nothin'
17:06:24 -!- moozilla has joined.
17:06:24 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
17:06:31 -!- moozilla has changed nick to metazilla.
17:06:35 <ehird> The only way a lower number could be achieved would be:
17:06:35 <ehird> [...]
17:06:37 <ehird> • for Kevin Bacon to dig up the remains of Paul Erdős, grind them up, drink them in a milkshake providing him with an Erdős-Bacon number of 0 (temporarily)
17:06:40 <ehird> -- Wikipedia, Erdos-Bacon number
17:07:19 <AnMaster> ehird, any citation for it?
17:07:27 <ehird> no :P
17:07:39 <AnMaster> add that then ;P
17:07:46 <AnMaster> assuming you dislike it
17:07:58 * ehird adds a citation to the article itself
17:08:04 <AnMaster> oh?
17:08:10 <ehird> yes. recursive citations.
17:08:14 <AnMaster> hah
17:08:43 -!- moozilla has joined.
17:08:44 <AnMaster> ehird, you realise this will be like division by zero for wikipedia? Same effect basically
17:08:54 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
17:08:55 -!- moozilla has changed nick to metazilla.
17:08:57 <ehird> I see.
17:09:24 <AnMaster> ehird, you better take cover to avoid the falling debris(sp?)
17:09:46 <ehird> Debris.
17:10:35 * AnMaster imagines a movie about a post-catastrophe/post-wikipedia/post-civilisation/post-nuclear-war world
17:10:58 <ehird> Yeah. There are only about 500000000 of them.
17:11:27 <AnMaster> ehird, question is, which of those slash-separated things will people think is the single worst one?
17:11:39 <AnMaster> is post-wikipedia worse than post-nuclear-war or not?
17:11:41 <ehird> Well, 3 of them are identical.
17:11:47 <AnMaster> ehird, oh?
17:11:56 <AnMaster> which three :D
17:12:04 <ehird> Nuclear war is a catastrophe and in context presumably you meant one that ended civilisation.
17:12:58 <AnMaster> ehird, well some editors on wikipedia would probably[citation needed] argue that the end of wikipedia is same as catastrophe but not same as nuclear war
17:13:08 <AnMaster> hm
17:13:12 <ehird> no, they probably wouldn't.
17:13:22 <AnMaster> well it would be fun if they did...
17:14:07 <ehird> i've been trying to nip this joke in the bud ever since I saw it coming :|
17:14:47 <AnMaster> ehird, well that is only because you hate me! *sob* [cue: anime-sized tears]
17:15:01 <ehird> clearly
17:17:44 <AnMaster> gah
17:18:03 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
17:18:07 <AnMaster> the "signal return status the same on linux and *bsd" seems to be thanks to bash
17:18:13 <AnMaster> " The return value of a simple command is its exit status, or 128+n if the command is terminated by signal n."
17:18:32 <AnMaster> I'm not yet sure if that is true for posix shell too
17:18:36 * AnMaster searches docs
17:19:51 -!- CakeProphet has joined.
17:20:16 <AnMaster> "The exit status of a command that terminated because it received a signal shall be reported as greater than 128."
17:20:17 <AnMaster> hm nop
17:20:25 <AnMaster> well I need bash anyway
17:26:53 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
17:26:59 -!- moozilla has joined.
17:29:24 -!- metazilla has joined.
17:29:27 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:29:32 -!- metazilla has changed nick to moozilla.
17:41:47 -!- KingOfKarlsruhe has quit (Remote closed the connection).
17:45:40 <AnMaster> ehird, question: does OS X have /dev/urandom?
17:45:45 <ehird> yes.
17:45:57 <ehird> Is /dev/urandom not part of UNIX?
17:46:12 <AnMaster> ehird, well I wasn't sure and I couldn't find it in man page
17:46:45 * AnMaster searches standards
17:49:35 <ehird> Highly doubtful that this has anything to do with unicode since web addresses do not support unicode and the changes are to a DLL which would have been written in c or c++.
17:49:48 <ehird> ^ Sufficient idiocy is indistinguishable from intelligence to the ignorant.
17:50:04 -!- metazilla has joined.
17:50:07 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:50:13 -!- metazilla has changed nick to moozilla.
17:52:24 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
17:52:26 -!- moozilla has joined.
18:04:17 -!- metazilla has joined.
18:04:27 -!- moozilla has quit (Nick collision from services.).
18:04:29 -!- metazilla has changed nick to moozilla.
18:05:26 -!- alex89ru has joined.
18:06:49 -!- metazilla has joined.
18:06:56 -!- moozilla has quit (Nick collision from services.).
18:07:00 -!- metazilla has changed nick to moozilla.
18:11:26 -!- GregorR has joined.
18:20:49 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:20:58 -!- moozilla has joined.
18:23:03 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
18:23:15 -!- moozilla has joined.
18:35:55 -!- KingOfKarlsruhe has joined.
18:39:29 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
18:39:39 -!- moozilla has joined.
18:42:00 -!- metazilla has joined.
18:42:00 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
18:42:08 -!- metazilla has changed nick to moozilla.
19:00:39 -!- metazilla has joined.
19:00:47 -!- moozilla has quit (Nick collision from services.).
19:00:51 -!- metazilla has changed nick to moozilla.
19:03:25 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:03:31 -!- moozilla has joined.
19:08:33 <ehird> What's the recommended parallel make amount?
19:08:36 <ehird> cores+1?
19:10:38 <flexo> yes
19:19:19 -!- Corun has quit ("This computer has gone to sleep").
19:24:53 -!- metazilla has joined.
19:25:01 -!- moozilla has quit (Nick collision from services.).
19:25:07 -!- metazilla has changed nick to moozilla.
19:27:24 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:27:29 -!- moozilla has joined.
19:39:43 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:39:48 -!- moozilla has joined.
19:42:11 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:42:12 -!- metazilla has joined.
19:52:11 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:54:47 -!- flexo has quit (kornbluth.freenode.net irc.freenode.net).
19:54:47 -!- psygnisfive has quit (kornbluth.freenode.net irc.freenode.net).
19:55:44 -!- psygnisfive has joined.
19:55:44 -!- flexo has joined.
19:56:47 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
19:56:49 -!- moozilla has joined.
19:58:01 -!- psygnisfive has quit ("Leaving...").
19:58:28 -!- psygnisfive has joined.
19:59:21 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
19:59:23 -!- metazilla has joined.
19:59:54 -!- Corun has joined.
20:07:20 -!- dbc has joined.
20:16:17 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
20:16:26 -!- moozilla has joined.
20:18:14 <dbc> In case anyone has a boardgamegeek account, I have just produced an "Esoteric Language Programmer" microbadge.
20:18:18 <dbc> http://www.boardgamegeek.com/browse/microbadge/7285
20:19:02 -!- metazilla has joined.
20:19:09 -!- moozilla has quit (Nick collision from services.).
20:19:11 -!- metazilla has changed nick to moozilla.
20:25:30 <ehird> hi dbc
20:38:48 -!- metazilla has joined.
20:38:56 -!- moozilla has quit (Nick collision from services.).
20:39:00 -!- metazilla has changed nick to moozilla.
20:41:27 -!- metazilla has joined.
20:41:34 -!- moozilla has quit (Nick collision from services.).
20:41:36 -!- metazilla has changed nick to moozilla.
20:53:46 -!- seveninchbread has joined.
21:01:00 -!- CakeProphet has quit (Read error: 145 (Connection timed out)).
21:03:40 -!- metazilla has joined.
21:03:48 -!- moozilla has quit (Nick collision from services.).
21:03:52 -!- metazilla has changed nick to moozilla.
21:06:15 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
21:06:17 -!- metazilla has joined.
21:18:35 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
21:18:36 -!- moozilla has joined.
21:21:04 -!- metazilla has joined.
21:21:08 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
21:21:14 -!- metazilla has changed nick to moozilla.
21:24:02 <dbc> Hi.
21:24:42 <oklopol> o
21:31:45 -!- CakeProphet has joined.
21:34:10 -!- Mony has quit ("Quit").
21:36:12 -!- metazilla has joined.
21:36:14 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
21:36:22 -!- metazilla has changed nick to moozilla.
21:38:20 <ehird> moozilla: ok, this _is_ ridiculous. fix your connection
21:38:47 -!- metazilla has joined.
21:38:51 -!- BeholdMyGlory has joined.
21:38:55 -!- moozilla has quit (Nick collision from services.).
21:38:57 -!- metazilla has changed nick to moozilla.
21:39:54 -!- seveninchbread has quit (Read error: 60 (Operation timed out)).
21:41:13 -!- FireFly has joined.
21:42:59 <oklopol> ehird: why are you assuming there's something wrong with his connection
21:43:08 <oklopol> could just be pressing the disco button repeatedly.
21:43:17 <ehird> could be.
21:55:44 <olsner> the disco button?
21:55:56 <oklopol> olsner: exactly.
21:56:23 <olsner> oklopol: your answer is wholly dissatisfactory
21:56:24 -!- metazilla has joined.
21:56:32 -!- moozilla has quit (Nick collision from services.).
21:56:34 -!- metazilla has changed nick to moozilla.
21:56:43 <oklopol> olsner: well you know. /disco time
21:58:29 -!- metazilla has joined.
21:58:34 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
21:58:39 -!- metazilla has changed nick to moozilla.
21:58:59 <olsner> I don't think I do know
22:04:48 <ehird> olsner: disco = disconnect
22:05:34 <oklopol> ehird: good point, i guess i should've mentioned that in my explanation
22:18:32 -!- metazilla has joined.
22:18:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
22:18:44 -!- metazilla has changed nick to moozilla.
22:20:58 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
22:21:06 -!- moozilla has joined.
22:43:32 -!- metazilla has joined.
22:43:40 -!- moozilla has quit (Nick collision from services.).
22:43:44 -!- metazilla has changed nick to moozilla.
22:45:54 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
22:45:57 -!- moozilla has joined.
22:58:09 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
22:58:18 -!- moozilla has joined.
23:01:03 -!- metazilla has joined.
23:01:10 -!- moozilla has quit (Nick collision from services.).
23:01:14 -!- metazilla has changed nick to moozilla.
23:15:58 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
23:16:01 -!- moozilla has joined.
23:18:09 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
23:18:16 -!- moozilla has joined.
23:35:21 -!- Corun has quit ("This computer has gone to sleep").
23:35:28 -!- metazilla has joined.
23:35:35 -!- moozilla has quit (Nick collision from services.).
23:35:37 -!- metazilla has changed nick to moozilla.
23:37:23 -!- Corun has joined.
23:38:14 -!- metazilla has joined.
23:38:22 -!- moozilla has quit (Nick collision from services.).
23:38:24 -!- metazilla has changed nick to moozilla.
23:48:39 -!- dbc has quit (Read error: 110 (Connection timed out)).
23:58:07 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
23:58:12 -!- moozilla has joined.
2009-01-11
00:00:39 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
00:00:51 -!- moozilla has joined.
00:08:47 -!- Corun has quit ("This computer has gone to sleep").
00:12:04 -!- Corun has joined.
00:12:18 -!- metazilla has joined.
00:12:19 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
00:12:29 -!- metazilla has changed nick to moozilla.
00:14:27 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
00:14:32 -!- moozilla has joined.
00:28:16 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
00:28:16 -!- metazilla has joined.
00:28:26 -!- metazilla has changed nick to moozilla.
00:30:23 -!- pikhq has quit (Read error: 60 (Operation timed out)).
00:30:43 -!- metazilla has joined.
00:30:50 -!- moozilla has quit (Nick collision from services.).
00:30:52 -!- metazilla has changed nick to moozilla.
00:45:58 -!- ehird has quit ("Caught sigterm, terminating...").
00:46:03 -!- ehird has joined.
00:46:42 -!- metazilla has joined.
00:46:50 -!- moozilla has quit (Nick collision from services.).
00:46:52 -!- metazilla has changed nick to moozilla.
00:47:53 -!- ehird has quit (Client Quit).
00:47:58 -!- ehird has joined.
00:49:05 -!- ehird has quit (Client Quit).
00:49:11 -!- ehird has joined.
00:49:14 -!- moozilla has quit (Connection reset by peer).
00:49:19 -!- metazilla has joined.
01:19:27 -!- alex89ru has quit ("Verlassend").
01:22:00 -!- oerjan has joined.
01:27:51 <oerjan> <ehird> AnMaster: do you like the composition "Leck mich im Arsch" by Mozart? (http://en.wikipedia.org/wiki/Leck_mich_im_Arsch)
01:27:55 <oerjan> O_O
01:27:59 <oerjan> MY INNOCENCE!
01:36:17 <oerjan> <oklopol> ehird: good point, i guess i should've mentioned that in my explanation
01:36:26 <oerjan> yes. those swedes can be a little dense.
01:37:57 <oerjan> ouch, so that's the new google favicon you were talking about
01:39:17 <oerjan> i think it is time to resurrect the old term "sildesalat", used by norwegians to dis the mashup in the corner of the norwegian/swedish union flag
01:40:02 <oerjan> (means "herring salad")
01:57:21 <Asztal> "Leck mir den Arsch fein recht schön sauber" ("Lick my arse nice and clean", K233; K382d in the revised numbering)
01:57:34 <Asztal> mozart++
01:58:06 <lament> mozart is the weirdest great composer
01:59:30 <lament> not only he was a clown and a jackass
01:59:34 <lament> but his music often sucks
02:03:36 -!- GreaseMonkey has joined.
02:05:24 <FireFly> I'm not the only one hating googles new favicon?
02:07:10 <oerjan> "hating" may be a bit strong
02:07:27 <oerjan> but it looks like something that belongs in a kindergarten, not a search engine
02:07:37 <FireFly> Well, to me it looks like the old blue one, but inverted and with odd colors
02:07:44 <FireFly> At first I didn't spot the g :\
02:07:56 <FireFly> Looked like a jigsaw puzzle to me
02:18:06 <Asztal> I liked the old one because it wasn't terribly different from the blank tab icon
02:46:02 -!- Corun has quit (Remote closed the connection).
02:46:17 -!- Corun has joined.
02:50:36 -!- BeholdMyGlory has left (?).
02:50:48 -!- FireFly has quit ("Later").
03:25:50 -!- sebbu2 has joined.
03:33:05 -!- Corun has quit ("This computer has gone to sleep").
03:43:16 -!- sebbu has quit (Read error: 110 (Connection timed out)).
03:54:13 -!- oerjan has quit ("leaving").
05:38:17 -!- pikhq has joined.
07:15:42 -!- dbc has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:18:50 <AnMaster> <oerjan> but it looks like something that belongs in a kindergarten, not a search engine <-- perfect summary
08:19:18 <Slereah> Heh.
08:23:31 <bsmntbombdood> i want the original back:(
08:23:37 <bsmntbombdood> i dunno wtf they think they are doing
08:23:44 <bsmntbombdood> the are completely ruining their image
08:24:51 <Slereah> Yeah, that will totally stop you from using it
08:38:49 -!- GreaseMonkey has quit ("e disasterous.").
08:38:57 <psygnisfive> <B-rat> what are crampons
08:38:57 <psygnisfive> <B-rat> the spikes ?
08:38:59 <psygnisfive> <B-rat>i wonder what the slovene word is
08:39:01 <psygnisfive> <NoorulIslaam> They are vaginal inserts that help female and transsexual mountaineers gain an additional foothold while climbing in tricky spots.
08:40:17 <Slereah> psygnisfive.
08:40:22 <Slereah> "Transsexual"
08:40:27 <Slereah> Are you on a tranny chat?
08:40:40 <Slereah> I'm pretty sure no one else would bother to make the addition.
08:40:55 <Slereah> It's like how only hackers differentiate hacker from cracker.
08:41:14 <psygnisfive> actually
08:41:18 <psygnisfive> that was in #linguistics
08:41:18 <psygnisfive> XD
09:08:09 <AnMaster> ehird, I committed the more portable fuzz testing script, it is in last trunk.
09:08:18 <AnMaster> ehird, hopefully it should work on OS X too
09:25:37 <oklopol> o
09:29:02 <oklopol> fungot: o
09:29:02 <fungot> oklopol: ut austin too, not surprisingly though. ;p fnord/ fnord/ posse/ fnord/ esoteric not found
09:50:14 -!- metazilla has changed nick to moozilla.
10:01:25 -!- Mony has joined.
10:16:29 <psygnisfive> guys
10:16:32 <psygnisfive> we should totally do that
10:17:00 <Slereah> Your mom?
10:17:16 <psygnisfive> no no
10:17:31 <psygnisfive> a Miranda-family language with deep pattern matching/unification
10:17:47 <psygnisfive> consider the fuctional palindrome function:
10:18:31 <psygnisfive> palindrome [] = True
10:18:31 <psygnisfive> palindrome [x] = True
10:18:33 <psygnisfive> palindrome [x] ++ xs ++ [x] = palindrome xs
10:18:35 <psygnisfive> palindrome _ = False
10:31:07 -!- metazilla has joined.
10:31:07 -!- moozilla has quit (Connection reset by peer).
10:31:14 -!- metazilla has changed nick to moozilla.
10:32:04 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:32:11 -!- moozilla has joined.
10:59:30 <psygnisfive> only instead of doing it like haskell does it
10:59:33 <psygnisfive> do it more like thue
11:20:54 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
11:20:57 -!- moozilla has joined.
11:30:59 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
11:31:02 -!- moozilla has joined.
11:31:40 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
11:31:41 -!- metazilla has joined.
11:41:57 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
11:42:01 -!- moozilla has joined.
11:47:51 <AnMaster> psygnisfive, "Miranda-family"?
11:57:40 <AnMaster> psygnisfive, can't find it on the esolang wiki
11:58:10 <Slereah> http://en.wikipedia.org/wiki/Miranda_(programming_language)
11:58:21 <AnMaster> ah not an esolang?
11:59:11 -!- sebbu2 has changed nick to sebbu.
11:59:31 <AnMaster> anyone know if it is possible to get the esolang wiki in the search box in firefox? Like you can get wikipedia there
11:59:55 * AnMaster don't know how those plugin things for search actually work
12:00:47 -!- Slereah has set topic: eat your face | man | http://tunes.org/~nef/logs/esoteric/.
12:01:06 <AnMaster> Slereah, what was the old topic?
12:01:19 <Slereah> AnMaster : Click on the icon of the search box while you're on the esowiki
12:01:26 <Slereah> Click on "add esowiki" something
12:01:53 <AnMaster> huh ok
12:02:00 <AnMaster> so how does it know how to search on it?
12:02:29 <AnMaster> I mean, there must be some tag in the html code or something
12:02:31 * AnMaster looks
12:02:39 <AnMaster> well mediawiki code is messy
12:02:56 <AnMaster> <link rel="search" type="application/opensearchdescription+xml" href="/w/opensearch_desc.php" title="Esolang (English)" />
12:02:58 <AnMaster> hm probably that
12:03:39 <Slereah> A winner is you
12:40:20 -!- Hiato has joined.
12:41:05 * Hiato wonders if anyone knows any NASM
12:44:52 -!- metazilla has joined.
12:44:57 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
12:45:01 -!- metazilla has changed nick to moozilla.
12:47:20 <Hiato> yug, okay, let me be more straight forwards: I'm struggling with an int to str routine for my kernel in nasm, can anyone possibly lend a hand
13:09:44 <Deewiant> write one in C, compile it with gcc -S, and copy it over? :-P
13:12:40 <flexo> Hiato: yes!
13:12:53 <flexo> i wrote a very neat algorithm for that a while ago
13:13:02 <flexo> cbw
13:13:02 <flexo> sahf
13:13:02 <flexo> aaa
13:13:02 <flexo> aad 0x31
13:13:02 <flexo> adc al, 0x30
13:13:10 <flexo> have fun figuring it out
13:13:31 <flexo> (that "aad 0x31" is that undefined opcode thingie, but it works fine)
13:14:10 <flexo> this routine (obviously) converts the low nibble in AL to an ascii character in AL, hexadecimal
13:14:44 <flexo> the #asm people told me that was the worst abuse of the x86 ISA they'd ever seen
13:14:49 <flexo> i'm rather proud of it
13:14:56 <flexo> it's 1 byte shorter than the trivial version too
13:15:45 <flexo> oh and i rely on some undocumented flag behaviour too
13:15:53 <flexo> but i tested it on a couple of different cpus
13:15:59 <flexo> so no problem
13:16:45 <flexo> note that in 32bit code you'll need to 32bit-prefix that cbw, which results in more one byte - no gain there, but it still works
13:17:21 <flexo> unless you can ensure that AH is zeroed out - in that case you'll even be two (yes, TWO!) bytes shorter than the trivial algorithm
13:17:54 <flexo> if you know that AF is geing to be cleared on entry you can also leave the SAHF
13:18:25 <flexo> which makes this a 3-opcode algorithm, containing all mnemonics starting with an "a"
13:18:29 <flexo> personally, i like that
13:19:00 <flexo> it's even alphabetically sorted
13:19:11 <flexo> this is so beautiful code
13:19:14 <flexo> i could cry
13:20:40 <flexo> the mnemonics also contain only hexadecimal digits
13:20:51 <flexo> which kinda documents the purpose of that code
13:21:02 <flexo> oh my god. i'm so good.
13:23:12 <Hiato> er
13:23:17 <Hiato> okay, where were we
13:23:33 <flexo> i just answered your question
13:23:55 <Hiato> I have a sort of algorithm, I just have no idea how to continually add to a string/pointer thingy
13:24:11 <flexo> oh
13:24:14 <Hiato> Well, thing is, this is in 16bit (for starters)
13:24:18 <flexo> can't help you there
13:24:29 <flexo> i only know how to convert a nibble to hexadecimal
13:24:44 <Hiato> hrmm..
13:25:21 <flexo> alright
13:25:27 <flexo> i've a suggestion to make
13:25:30 <flexo> i stop trolling
13:25:35 <flexo> and you describe your problem?
13:25:43 <Hiato> Sounds fair
13:25:44 <Hiato> deal
13:26:09 <Hiato> Okay, I can (like any fool) divide and mod a number by ten to receive it's digits in reverse order.
13:26:21 <Hiato> I can easily reverse them with push and pop
13:26:29 <Hiato> But, the thing is, I can only handle them one at a time
13:26:32 <Hiato> http://rafb.net/p/5kF2ie38.html
13:26:40 <Hiato> here is the procedure to print an int
13:27:07 <flexo> well.. what's the problem with that?
13:27:15 <Hiato> the idea would be to mees with mov [.variable],dx so as to store them
13:27:28 <Hiato> In summary, how does one work a running buffer
13:27:34 <Hiato> like s=s+'asd'
13:27:47 <flexo> by.. dereferencing?
13:28:05 <flexo> by keeping a counter of the length?
13:28:05 <Hiato> er? I am, regrettably, totally self taught here
13:28:10 <Hiato> Well, that
13:28:15 <flexo> i'm not sure what you mean..
13:28:24 <flexo> unless you are talking about where you get the actual memory for the buffer
13:28:26 <Hiato> would work, but the thing is, I have no idea how. Okay, let me show you what I had
13:29:04 <Hiato> http://rafb.net/p/rlJpoG44.html
13:29:27 <Hiato> it's ok(ish) until 25
13:29:37 <Hiato> where I would normally print it, I try to somehow store it
13:29:45 <flexo> what is this .t?
13:29:52 <flexo> ah
13:29:54 <flexo> it's down there
13:30:04 <flexo> yea well
13:30:07 <flexo> ofcourse this doesn't work
13:30:12 <Hiato> :P
13:30:34 <flexo> you only reserved 4 bytes of memory - even if the code would work, where would you store the digits?
13:30:46 <Hiato> Well, I have no idea
13:30:56 <Hiato> Thing is, I work in psuedo-code, and then try and translate
13:30:59 <flexo> ".t" becomes the address of that word
13:31:02 <Hiato> please, forgive my ignorance
13:31:18 <flexo> mov [.t], ... stores something at that address - in that word
13:31:33 <Hiato> yeah, that's the idea there. So at least the concept is right
13:31:36 <flexo> and "inc .t" should really not assemble, because .t is a constant. can't increment that.
13:31:46 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
13:31:48 <Hiato> yaeh, it doesn't :P
13:31:49 -!- metazilla has joined.
13:31:58 <flexo> just use a register
13:32:07 <Hiato> I figured that if I had a pointer, say .t, I could then increase it and store bytes along that addres chain
13:32:11 <flexo> mov edi, .t
13:32:17 -!- moozilla has joined.
13:32:18 <flexo> .l1: mov [edi], whatw
13:32:20 <flexo> *whatever
13:32:23 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
13:32:24 <flexo> inc edi
13:32:25 -!- moozilla has changed nick to metazilla.
13:32:26 <flexo> jmp .l1
13:32:38 <Hiato> okay, lets see :P
13:33:18 <flexo> ofcourse your buffer needs to be larger
13:33:25 <Hiato> yeah, using db now
13:33:27 <flexo> because a 32-bit integer can span more than 4 digits
13:33:39 <flexo> uhm.. using db won't make a difference..
13:34:03 <Hiato> oh? Well, there we are, another of my consiparcy theories out the window. Double word vs Double byte, no?
13:34:16 <flexo> uhm no
13:34:22 <flexo> define word, define byte
13:34:29 <Hiato> aaah
13:34:32 <Hiato> ok, thanks
13:34:39 <flexo> dec cx
13:34:39 <flexo> cmp cx,0
13:34:39 <flexo> jg .pop
13:34:50 <flexo> cmp is unnecessary, dec sets ZF
13:34:56 <flexo> cmpax,0 ;is quotient zero?
13:34:56 <flexo> jnz.push ;if not, get one more number
13:35:03 <flexo> do "test ax, ax" instead of the cmp. it's more cool.
13:35:09 <flexo> als shorter
13:35:16 <flexo> mov cx,0
13:35:17 <Hiato> Ok, thanks, and lol, will do :P
13:35:21 <flexo> that'd be xor cx, cx ofcourse
13:35:33 <Hiato> yaeh, it started that way, but I got worried (don't know why)
13:35:34 <flexo> (watch out, you need to reorder the cmpm)
13:35:41 <flexo> no need to worry
13:36:00 <flexo> jmp .push
13:36:00 <flexo> .push:
13:36:02 <flexo> this is a nop..
13:36:24 <flexo> no need for the jmp
13:36:32 -!- puzzlet has quit (Remote closed the connection).
13:36:39 -!- puzzlet has joined.
13:36:56 <flexo> jl .neg
13:36:57 <flexo> .neg:
13:37:01 <flexo> same here ofcourse
13:37:30 <Hiato> Hrmm, okay, thanks
13:37:35 <flexo> uhm
13:37:36 <flexo> also
13:37:40 <Hiato> let's press the big button now :P
13:37:42 <flexo> i'm not so sure that cmp works even, the way you do it
13:37:43 <Hiato> yeah?
13:37:58 <flexo> ah well. nevermind. should work. still it's...
13:38:02 <flexo> cmpax,0 ;is quotient zero?
13:38:02 <flexo> jnz.push ;if not, get one more number
13:38:25 <flexo> you do "if (ax - 0 == 0)"
13:38:25 <flexo> that's kinda redundant
13:38:26 <flexo> just do test ax, ax
13:38:32 <Hiato> yeah, roger that
13:39:00 <Hiato> http://rafb.net/p/Fb3MGr38.html
13:39:09 <Hiato> I think that covered all of what you suggested
13:39:20 <flexo> that mov edi,.t
13:39:34 <flexo> should move out of the loop bode
13:39:35 <flexo> body
13:39:42 <flexo> you don't want to reset your pointer each iteration
13:39:48 <flexo> also "db 0" will give you just 1 byte
13:39:49 <Hiato> aha, ok, so to prepop
13:40:00 <Hiato> okay, so what should I set?
13:40:03 <flexo> jge .push
13:40:03 <flexo> .neg:
13:40:07 <flexo> erx
13:40:08 <flexo> nevermind
13:40:09 <flexo> :)
13:40:11 <flexo> 14:32 < Hiato> okay, so what should I set?
13:40:19 <flexo> i don't know, how many digits can a 32bit integer have?
13:40:40 <Hiato> :P
13:40:49 <flexo> times 64 db 0
13:40:58 <flexo> replace 64 by.. some number
13:41:50 <Hiato> well, signed, it can only have 2^63/3.xx I think (log10/log2)
13:42:14 <Hiato> er, log2
13:42:20 <Hiato> blag
13:42:31 <flexo> uhm.
13:42:33 * Hiato blushes
13:42:37 <MizardX> 2^64-1 = 18446744073709552000 ... 10
13:42:44 <flexo> wait
13:42:47 <flexo> this is 16 bit code
13:42:50 <Hiato> yeah
13:42:58 <flexo> that means 5 digits.
13:43:34 <Hiato> okay ... and so in asm we write?
13:43:46 <flexo> times 5 db 0
13:44:01 <Hiato> ok, awesome
13:44:20 <Hiato> Oh yeah :D, it compiled :D
13:44:29 <flexo> assembled, actually
13:44:38 <Hiato> no idea if it's going to do the right thing, but let's see
13:45:39 <flexo> dec cx
13:45:39 <flexo> jg .pop
13:45:41 <flexo> thats wrong
13:45:47 <flexo> should be jnz
13:45:57 <Hiato> hrmm.. well spotted
13:46:25 <Hiato> http://rafb.net/p/B80qat21.html
13:46:33 <Hiato> is this what I'm looking for then?
13:46:51 <Hiato> (hell, I really need to learn some asm)
13:47:16 <flexo> cmp dx,0
13:47:16 <flexo> jge .push
13:47:40 <flexo> test dx, dx
13:47:58 <flexo> jns
13:47:59 <Hiato> okay
13:48:09 <flexo> should work. i think :)
13:48:34 <flexo> again, it's somewhat shorter
13:48:39 <flexo> because there is no "0" immediate to encode
13:49:29 <flexo> push 2Dh ;- in ASCII
13:49:36 <flexo> ^ you also need to increment the counter there
13:49:47 -!- Corun has joined.
13:49:56 <flexo> or it won't print/store the sign
13:50:00 <flexo> and mess up your stack
13:51:07 <Hiato> Okay, well, thank you very much so far, been a great help (this would have taken me days if not weeks)
13:51:26 <flexo> hey hey.. does it work? ;)
13:51:32 <Hiato> THing is, I have no idea what it's now returning, seems to assemble just fine, and runs, but I don't print anything
13:51:47 <Hiato> I've confused myself, what's this: mov word bx,[.t]
13:52:04 <flexo> i don't know
13:52:04 <Hiato> it's moving the address of .t to bx, right?
13:52:07 <flexo> no
13:52:08 <Hiato> lol
13:52:19 <flexo> it moves the first word stores there
13:52:26 <Hiato> hrmm
13:52:32 <flexo> also you should really (really) use ax to return values
13:52:45 <flexo> so that'd be mov ax, .t
13:52:47 <flexo> *and*
13:52:52 <flexo> you need to nul-terminate that string
13:52:57 <flexo> unless you won't know where it ends
13:53:00 <flexo> *otherwise
13:53:11 <Hiato> aha, thank you, probably why he print proc doesn't like it
13:53:43 <flexo> that "mov word" looks strange too
13:53:47 <flexo> (besides being wrong)
13:53:51 <Hiato> http://rafb.net/p/IOuNyM17.html
13:53:51 <flexo> mov word bx,[.t]
13:53:58 <flexo> this "word" there is redundant
13:54:04 <Hiato> okay, this should be alright, right?
13:54:05 <flexo> nasm always defaults to the register size
13:54:09 <Hiato> okay, noted, thanks :)
13:54:14 <flexo> you only need to specify the type if you do something like
13:54:20 <flexo> mov ax, byte [bp]
13:54:29 <flexo> in which case you'd put it on the right side
13:54:31 <Hiato> ooooh, I see I see
13:55:03 <flexo> push 2Dh ;- in ASCII
13:55:03 <flexo> inc edi
13:55:04 <flexo> ^ no
13:55:05 <flexo> the counter
13:55:08 <flexo> cx
13:55:16 <Hiato> arg blarg, ok, thanks
13:55:19 <flexo> *and*
13:55:27 <flexo> it won't work that way
13:55:27 <flexo> :)
13:55:33 <flexo> because the order is reversedf
13:55:34 <flexo> -f
13:55:54 <flexo> so actually
13:55:59 <flexo> you *should* increase edi
13:56:02 <flexo> put don't push
13:56:14 <flexo> mov byte [.t], 0x2d
13:56:23 <Hiato> oh, ok
13:56:26 <flexo> also you can just specify '-' instead of 0x2d
13:56:28 <flexo> easier to read
13:56:52 <Hiato> done and done
13:57:00 <flexo> so
13:57:09 <flexo> now build a small loop going over the characters and print
13:57:12 <flexo> i wanna know if it works too ;)
13:57:38 <Hiato> Unfortunately, no, it didn't.. Oh, wait, still haven't zero terminated it
13:58:01 <flexo> well, in that case you should get some messed up output after the number
13:58:05 <flexo> it should still work though
13:58:40 <Hiato> nope, no output at all
13:58:52 <flexo> how unfortunate
13:58:57 <flexo> okay
13:58:59 <flexo> let's see. give it me.
13:58:59 <Hiato> anything wrong here? mov dx,123
13:58:59 <Hiato> call k_int_tostr
13:58:59 <Hiato> mov si,ax
13:58:59 <Hiato> call k_scr_sprint
13:59:18 <flexo> i don't know?
13:59:26 <flexo> i don't know if k_scr_sprint works? ;)
13:59:31 <flexo> but show me that int_tostr again
14:00:30 <Hiato> http://rafb.net/p/w7PgD996.html
14:00:42 <Hiato> that's all of the relevant code
14:00:54 <flexo> int 10h
14:00:56 <flexo> whats that?
14:01:02 <flexo> oh
14:01:03 <flexo> nevermind
14:01:03 <flexo> heh
14:01:07 <Hiato> interrupt for printing :)
14:01:21 <flexo> okay, give me a minute
14:01:27 <Hiato> sure thing
14:01:38 <flexo> mov ax,[.t]
14:01:40 <flexo> that should be
14:01:42 <flexo> mov ax, .t
14:01:49 <flexo> because you need to return the address
14:01:58 <Hiato> oh, not the byte itself... aha
14:02:10 <flexo> the word, actually
14:02:12 <flexo> and i don't see you zero-terminating the string?
14:02:23 <flexo> add dl,30h ;Make it ASCII
14:02:31 <flexo> using '0' instead of the comment would be more useful :)
14:02:43 <flexo> mov dx,0
14:02:46 <Hiato> roger that
14:02:50 <flexo> that's .. no. it's not. nevermind.
14:02:59 <flexo> is it?
14:03:00 <flexo> hmh
14:03:12 <flexo> Unsigned divide DX:AX by r/m
14:03:15 <flexo> ah yes. nevermind.
14:03:17 <flexo> okay. try again.
14:03:19 <Hiato> could do xor dx,dx
14:03:21 <flexo> yes
14:03:25 <flexo> you should, too
14:03:31 <flexo> it's a very common idiom
14:03:35 <flexo> everyone does it
14:03:42 <flexo> and cpus are optimized for it
14:03:43 <Hiato> roger wilko
14:04:14 <flexo> something unrelated: you are aware of the fact that you are writing 16bit code there, yes?
14:04:14 <Hiato> meh, still no output
14:04:17 <flexo> damnit
14:04:20 <Hiato> yes
14:05:15 <flexo> okay. let's see.
14:05:29 <flexo> test dx,dx
14:05:29 <flexo> jns .push
14:05:29 <flexo> mov edi,.t
14:05:34 <flexo> there's your problem.
14:05:45 <Hiato> oh?
14:05:57 <flexo> yes.
14:06:21 <Hiato> er, edi mov thingy before the jump
14:06:23 <Hiato> right?
14:06:35 <flexo> i'd put it before the test to make things more clear, but yes
14:07:05 <Hiato> I believe it's actually hanging
14:07:07 <flexo> mov [edi],dx
14:07:09 <flexo> that's wrong
14:07:10 <flexo> should be
14:07:15 <flexo> mov [edi], byte dl
14:07:26 <flexo> well err
14:07:29 <flexo> you can leave the byte
14:07:35 <flexo> nasm knows that dl is a byte ofcourse
14:08:02 <flexo> and no, without that fix it won't work
14:08:11 <flexo> dh will be zero, you get a zero-terminated string, no output
14:08:15 <flexo> er
14:08:18 <Hiato> Ok, well, it still appeas to be hanging
14:08:18 <flexo> an empty string i mean
14:08:30 <flexo> hm.
14:08:33 <flexo> you fixed that too?
14:09:03 <Hiato> the zero termination? no
14:09:09 <flexo> well do it then ;)
14:09:17 <flexo> er.
14:09:19 <flexo> no i mean
14:09:21 <flexo> 14:59 < flexo> mov [edi],dx
14:09:24 <flexo> should be dl
14:09:26 <flexo> you fixed that?
14:09:30 <Hiato> ah, righ, yeah, fixed that
14:09:35 <Hiato> add dl,'0'
14:09:36 <Hiato> mov [edi],dl
14:09:46 <flexo> okay
14:09:47 <Hiato> (seeing as we are in 16bit mode, and dl is a byte)
14:09:49 <flexo> let's see the new version
14:09:57 <flexo> way
14:09:58 <flexo> wait
14:10:01 <flexo> what's all that edi mess
14:10:06 <flexo> you are in 16 bit code
14:10:12 <flexo> it should be "di" and "si" everywhere
14:10:24 <flexo> do a quick replace, but that's not a problem. it should still work.
14:10:47 <Hiato> http://rafb.net/p/fZ53Oc16.html
14:10:57 <Hiato> oh, ok
14:11:19 <flexo> i really think this should work now.
14:11:21 <flexo> give me a minute.
14:12:03 <flexo> uhm
14:12:14 <flexo> dx is your input register?
14:12:18 <flexo> you clear it before the divide..
14:12:43 <Hiato> damn it
14:12:51 <Hiato> should have been dh, methinks
14:12:58 <flexo> no
14:13:10 <flexo> the dividend is stored in dx:ax
14:13:16 <flexo> so just put the number in ax
14:13:33 <Hiato> roger
14:13:53 <flexo> i still think this is not the last problem as you should still have gotten *some* output..
14:14:04 <flexo> anyway. let's see the new version
14:14:50 <Hiato> http://rafb.net/p/ivrpE876.html
14:15:18 <Hiato> I LOVE YOU
14:15:20 <Hiato> :D
14:15:23 <Hiato> it works
14:15:39 <Hiato> Wow, that was hell, damn, thank you so very very very very very much
14:15:55 <flexo> it does?
14:15:59 <Hiato> (note: I don't actually *love* you, but for the lack of a better word, I appreciate your help)
14:16:07 <Hiato> lol, why, shouldn't it?
14:16:24 <flexo> didn't really expect it to. had given up hope
14:16:45 <flexo> this is embarassing
14:16:50 <flexo> i'm supposed to be good in this
14:17:00 <Hiato> :P
14:17:06 <Hiato> You are though, fixed it
14:17:07 <flexo> anyway
14:17:10 <flexo> you are writing 16-bit code
14:17:11 <flexo> why?
14:17:18 <Hiato> Simplest OS I could do
14:17:25 <Hiato> 32bit is.. well, I don't know
14:17:28 <Hiato> never tried
14:17:30 <flexo> hm
14:17:31 <flexo> okay
14:17:43 <flexo> wanna see my puts/putc/putn routines?
14:17:50 <Hiato> yes please
14:17:57 <Hiato> and perhaps I could steal them too
14:19:19 <flexo> http://rafb.net/p/RjhxBx56.html
14:19:28 <flexo> no decimal stuff though
14:20:12 <Hiato> yeah, but, it helps either way, gonna save a copy for future 'reference'
14:20:14 <Hiato> hanks :)
14:20:33 <flexo> well
14:20:36 <flexo> you may want the version
14:20:37 -!- FireFly has joined.
14:20:39 <flexo> which is 1 byte longer
14:20:41 <flexo> instead of the
14:20:44 <flexo> cbw
14:20:44 <flexo> sahf
14:20:44 <flexo> aaa
14:20:44 <flexo> aad 0x31
14:20:46 <flexo> adc al, 0x30
14:20:48 <flexo> just do
14:20:53 <flexo> add al, '0'
14:20:53 <flexo> cmp al, '9'
14:20:53 <flexo> jng putc
14:20:53 <flexo> add al, 'a' - '0' - 10
14:21:00 <flexo> does the same thing - in a clean way ;)
14:21:47 <Hiato> roger that, thanks
14:21:53 <flexo> ofcourse this code is... you know
14:21:56 <flexo> "really sexy"
14:22:03 <flexo> size-optimized to the last byte
14:22:13 <flexo> i don't think it's possible to trim anything more
14:22:24 <FireFly> I gotta learn assembler
14:22:25 <flexo> wrote it for a 512-byte bootloader
14:22:41 <Hiato> do you follow osdev.org forums?
14:22:42 <flexo> which loads the linux kernel in high memory along with a ramdisk
14:22:47 <flexo> provides a commandline
14:22:52 <flexo> does keyboard mapping
14:22:59 <flexo> and prints error messages
14:23:04 <Hiato> wait, in 512 bytes?
14:23:07 <flexo> yea
14:23:14 <Hiato> damn....
14:23:19 <Hiato> well, I've got a way to go
14:23:28 <flexo> http://flexotec.eu/~flexo/p2/tinyldr.asm
14:23:34 <flexo> it's more like 450 or so
14:23:39 <Hiato> hopefully I'll learn asm at some point
14:23:40 <flexo> still have 50 bytes to spend :)
14:24:35 <Hiato> heh, I cheated to 512: times 510-($-$$) db 0
14:24:54 <flexo> this was fun
14:25:00 <flexo> and the reason for doing it
14:25:02 <flexo> was even better
14:25:10 <Hiato> Indeed, though, it seems inevitable, fix one thing, break another
14:25:14 <Hiato> as has just happened
14:25:19 <flexo> wanted to play doom with a couple of guys
14:25:25 <flexo> we were really drunk at the time
14:25:36 <flexo> and we were missing a third pc
14:25:39 <Hiato> lol, as only drunk people play that game :P
14:25:49 <flexo> so i dug up a really old box
14:25:58 <flexo> some 486 i think
14:26:07 <flexo> turned out the pci controller on the motherboard was fried
14:26:13 <flexo> so.. no ide controller
14:26:15 <flexo> means no harddrive
14:26:22 <flexo> but that's not a problem, right?
14:26:32 <flexo> no pci slots too, but the board had two isa slots
14:26:39 <Hiato> heh
14:26:42 <Hiato> you're brave
14:26:45 <flexo> i had a isa vga adapter
14:26:50 <flexo> and some 10mbit ethernet adapter too
14:27:02 <flexo> now the problem was, how to get doom to run on it
14:27:15 <flexo> as it needs much more space than fits on a floppy
14:27:22 <Hiato> god's truth, most people throw away "garbage"
14:27:23 <flexo> ... and i only had exactly one floppy drive
14:27:27 <flexo> and exactly one floppy
14:27:48 <Hiato> right, so what did you do? PAQ8?
14:27:54 <flexo> so i figured, i needed a very small linux kernel
14:28:01 <flexo> downloaded some 2.6 kernel
14:28:08 <flexo> stripped it of all drivers i didn't need
14:28:16 <flexo> ended up with 1.1mb, which was fine
14:28:21 <Hiato> (all while being drunk)
14:28:29 <flexo> yea, took me a couple of hours :)
14:28:37 <flexo> i remembered that you don't need a boatloder, dd'ed it on the disk, tried to boot it but no go
14:28:50 <flexo> they removed the bootloader from the linux kernel in the 2.6 version
14:28:59 <flexo> so instead of doing the smart thing and using a 2.4 kernel
14:29:03 <flexo> i wrote that tinyldr
14:29:09 <flexo> ofcourse at the time it wasn't as sexy
14:29:21 <flexo> lots of hardcoded stuff, no command prompt
14:29:25 <Hiato> lol, genius :P
14:29:44 <flexo> put together busybox
14:29:48 <flexo> nfs-mounted a directory
14:29:53 <flexo> played doom for 10 minutes or so
14:29:54 <flexo> it was fun
14:29:55 <flexo> :)
14:30:07 * Hiato wonders whether flexo deserves to be shot or idoloized, or both
14:30:22 <flexo> hehe
14:30:50 <Hiato> talk about disproportionate effort. Why didn't you just write doom from scratch, in binary? Would've been way more worth those then minutes
14:31:19 <flexo> i'm just no the graphics guy
14:31:21 <flexo> *not
14:31:29 <flexo> ;)
14:31:39 <Hiato> no rules about using pre-made .wad's :P
14:32:01 <flexo> actually i started redoing wolf3d once
14:32:17 <flexo> (with a software renderer. the old-fashioned way. no opengl-crap)
14:32:37 <flexo> i think i was 15 at the time
14:32:41 -!- comex has quit (Read error: 60 (Operation timed out)).
14:32:50 <flexo> was my first "real" project
14:33:10 <flexo> it could load the levels, you could run around
14:33:21 <flexo> never got to implement sprites though
14:34:24 <Hiato> damn
14:34:42 <Hiato> hell, I struggled to put together a simple ray-caster in the easiest of all languages
14:34:58 <flexo> did you manage?
14:35:05 <Hiato> sort of
14:35:07 <flexo> otherwise i suggest the pxdtut .. tutorials :)
14:35:29 <Hiato> except the way I worked it, it could only draw one wall
14:35:37 <flexo> TELEMACHOS proudly presents : |
14:35:37 <flexo> | |
14:35:37 <flexo> | Part 7 of the PXD trainers - |
14:35:37 <flexo> | |
14:35:37 <flexo> | RAYCASTING - WOLFENSTEIN |
14:35:39 <flexo> | STYLE
14:35:42 <flexo> those were the days..
14:35:48 -!- comex has joined.
14:36:05 <Hiato> I didn't use a gird, rather objects with coords etc
14:36:12 <Hiato> heh
14:36:54 <oklopol> i've made a 2d raytracer once
14:37:09 <flexo> oklopol: have you seen my "al-nibble-to-hex" sequence..?
14:37:10 <Hiato> Ok, now is discouragement time. There is so much left to do, even comparing my kernel to MikeOS v2...
14:37:38 <Hiato> oklopol, not the so called '2.5D'?
14:37:45 <oklopol> Hiato: what's that?
14:37:55 <flexo> oklopol: as your nickname starts with an 'o' you should be able to appriciate it
14:38:01 <flexo> *appreciate
14:38:29 <Hiato> Well, it's what we'd like to call three dimensional, as in wolfenstien, duke3d etc, but things can only be rotated in two dimensions, hence 2.5d
14:38:30 <oklopol> well color was also given as width in the result, and it wasn't really raytracing, i don't know the term, follow rays from eyes to objects.
14:38:38 <oklopol> Hiato: umm no. less than that
14:38:41 <oklopol> more like 2.1D
14:38:45 <Hiato> heh
14:38:53 <flexo> but things can only be rotated in two dimensions, hence 2.5d
14:38:56 <oklopol> i mean it was a 2d arcade flying game.
14:39:07 <flexo> wait. right.
14:39:10 <flexo> 2d rotation.
14:39:12 <oklopol> just eyecam view
14:39:13 <flexo> duke3d does that
14:39:34 <Hiato> oh, I see
14:41:21 <Hiato> okay, I need a break. Thanks flexo for all the advice/work, I'm that much closer to something or other.
14:41:59 <flexo> yea, you're welcome
14:43:54 <flexo> i really want to get back into the fun area of coding :(
14:44:09 <flexo> no more crappy win32 c++ or irix c
14:44:34 <flexo> this is not fun. not really anyway.
15:01:17 -!- Corun has quit ("This computer has gone to sleep").
15:14:00 -!- Arcanis` has joined.
15:20:06 -!- nono212 has joined.
15:20:08 <nono212> hi !
15:20:17 <Arcanis`> hi !
15:20:21 <nono212> how are you ?
15:20:26 <Arcanis`> fine, thank you
15:20:31 <nono212> me too
15:20:36 <Arcanis`> that's cool
15:20:42 <nono212> yea
15:20:46 <nono212> more than cool
15:20:56 <Arcanis`> incredible
15:21:01 <nono212> ...
15:21:48 <nono212> i like SPL
15:22:42 <nono212> ...
15:26:13 <oklopol> super porn language?
15:26:21 <Mony> LOL
15:26:22 <nono212> yes
15:26:24 <nono212> :)
15:26:25 <nono212> no
15:26:28 <oklopol> yeah that's pretty awesome
15:26:31 <oklopol> oh
15:26:31 <nono212> ^^
15:26:35 <oklopol> what then
15:26:41 <nono212> shakespear i think
15:26:43 <nono212> super porn xD
15:26:52 <Mony> huge
15:27:15 <nono212> KPL, you write with kamasutra positions...
15:27:26 <nono212> if i create it i will be famous :)
15:27:28 <nono212> haha
15:27:36 -!- puzzlet has quit (Remote closed the connection).
15:27:43 -!- puzzlet has joined.
15:27:53 <Mony> BSL, you write with boobs sizes
15:28:00 <nono212> :)
15:32:40 -!- nono212 has quit ("Bon chat sur Uni-IRC").
15:37:54 -!- Arcanis` has left (?).
15:44:21 -!- Corun has joined.
16:02:01 <MizardX> BSL: A..L, could mean either statements or values depending on context. "AAGAAIFAJAAJAAJDACIAHDAJDAJGAJAAIEAAA" could be read as "print 'Hello World'" :)
16:02:41 <Hiato> flexo, still there?
16:03:04 <MizardX> 'A' begins print statement (or a string?), and then each group of thee characters is a base-12 encoding of ascii-codes, null-terminated.
16:03:09 <flexo> Hiato: sure
16:03:27 <Hiato> Another brief mystery? (Though this one probably has an obvious solution)
16:03:33 <flexo> go ahead
16:04:20 <Hiato> http://rafb.net/p/I5Tzfa77.html
16:04:49 <Hiato> Why does this insist of giving me 0FFFF when I call it with 65535, but with 255, it correctly gives 00FF
16:05:54 <Hiato> erk, 3->4, but still same problem
16:05:59 <Hiato> that was a mistake of mine earlier
16:06:13 <flexo> curious, what do you get with 0xffff-1?
16:06:19 <Hiato> (I know it's vastly unoptimised etc)
16:06:23 <Hiato> let's see
16:06:50 <MizardX> It always gives at least one zero
16:06:51 <Hiato> 0FFFE
16:06:58 <Hiato> oh?
16:07:10 <Hiato> Why so, MizardX?
16:07:26 <MizardX> line 34 jumps to format
16:07:34 <flexo> oh.
16:07:39 <flexo> yea. didnt see that.
16:08:03 <Hiato> only if cx<4
16:08:07 <Hiato> (note 3->4)
16:08:07 <flexo> Hiato: you *really* dont wanna do it that way.
16:08:19 <flexo> in hexadecimal each byte always corresponds to two digits
16:08:19 <Hiato> But I like cheap hacks :P
16:08:25 <flexo> it's not a cheap hack
16:08:32 <flexo> it's way more complicated than it should be
16:08:33 <flexo> longer too
16:08:36 <Hiato> oh?
16:08:52 <flexo> just go through the number, output the nibble and shift?
16:09:04 <Hiato> meh, you're right..
16:09:05 <Hiato> heh
16:09:09 <flexo> see my code
16:09:19 <Hiato> I like to overcomplicate things :P
16:09:27 <flexo> http://rafb.net/p/RjhxBx56.html
16:09:36 <flexo> at the bottom there is a putw
16:09:48 <flexo> which outputs a 16bit word in hexadecimal - 4 digits
16:10:09 <flexo> you know, that snippet includes routines for everything
16:10:23 <flexo> putchar(), puts(), and stuff to output a nibble, a byte, and a word in hex
16:10:56 <Hiato> yeah, I suppose. Thing was, I was going to modify this routine to output in any base (one routine for base 10,16,8,2 etc)
16:11:04 <oklopol> flexo: oklopol: have you seen my "al-nibble-to-hex" sequence..? <<< no, is it worth seeing?
16:11:09 <flexo> oklopol: yes!
16:11:16 <flexo> cbw
16:11:16 <flexo> sahf
16:11:16 <flexo> aaa
16:11:16 <flexo> aad 0x31
16:11:16 <flexo> adc al, 0x30
16:11:22 <flexo> beautiful, isn't it?
16:11:29 <oklopol> :D
16:11:33 <flexo> now
16:11:35 <flexo> the best thing is
16:11:42 <flexo> if you happen to know that AF=0 and AH=0
16:11:46 <flexo> you can skip the first two instructions
16:11:46 <oklopol> err
16:11:48 <flexo> so you just have
16:11:50 <flexo> aaa
16:11:50 <flexo> aad 0x31
16:11:50 <flexo> adc al, 0x30
16:12:05 <flexo> note that the mnemonics are alphabetically sorted :)
16:12:12 <oklopol> heh
16:12:17 <flexo> and contain only hexadecimal digits
16:12:19 <flexo> it's just beautiful
16:12:32 <flexo> and in 3 instructions, which i all abuse
16:12:37 <oklopol> umm
16:12:40 <flexo> i manage to use both an undefined opcode and undefined flag behaviour
16:12:53 <flexo> this is just great
16:12:54 <oklopol> are those used for... what's it umm bdc?
16:13:00 <oklopol> binary.. decimal... something
16:13:03 <flexo> yes
16:13:15 <flexo> but you don't have to use them for that
16:13:16 <flexo> the trick is
16:13:24 <oklopol> yeah they need to have nibble stuff
16:13:25 <flexo> when converting a nibble to hex you usually need to branch
16:13:29 <flexo> based on a comparision with 10
16:13:34 <flexo> that's where i got the BCD idea
16:13:52 <flexo> the first AAA does that (well, it doesn't branch, but internally it does stuff differently when the number is >=10)
16:14:01 <flexo> and "aad 0x31" is the undefined opcode
16:14:10 <flexo> it's defined for "aad 10", i use "base 0x31" there
16:14:36 <flexo> because 0x30 is '0'
16:14:38 <oklopol> well, that looks pretty awesome.
16:14:42 <flexo> and 0x30+0x31 is 'a'
16:14:44 <flexo> :)
16:15:00 <oklopol> i understand the general idea
16:15:02 <flexo> it's really short too
16:15:19 <oklopol> but i don't know what a[ad][dc] do.
16:15:24 <oklopol> or don't remember
16:15:45 <flexo> http://www.ecsl.cs.sunysb.edu/~srikant/386/AAA.htm
16:15:52 <flexo> there is a pascal-like description
16:15:59 <flexo> http://www.ecsl.cs.sunysb.edu/~srikant/386/AAD.htm
16:16:02 <flexo> it's really simple
16:16:10 <flexo> in the AAD just replace the 10 for my 0x31
16:16:45 <flexo> AAA is 1 byte, AAD and ADC both 2 bytes. that's 5 bytes. :)
16:19:57 <flexo> (and ADC is just add with carry ofcrouse)
16:20:19 <oklopol> oooo
16:20:24 <fizzie> Abusing those BCD arithmetic instructions like that is very nice.
16:20:33 <flexo> thanks :)
16:20:58 <fizzie> Although I'm not sure I like the "ascii adjust" names of the instructions; there's not really that much "ascii" about them.
16:21:19 <oklopol> for me the initial A means 10, as in bcd.
16:21:20 <flexo> in my code there isd
16:21:37 <flexo> i suppose i figured out the true purpose
16:21:44 <fizzie> Z80 instruction set calls it "DAA" (decimal adjust accumulator) which makes more sensity.
16:21:45 <flexo> the x86 isa is an esolang after all
16:23:15 <flexo> unfortunatly x86_64 dropped the AAD instruction i think :(
16:23:36 <flexo> or AAA? one of the two..
16:24:12 <oklopol> o
16:25:03 <flexo> i need to publish this crap for the world to see and USE (mwuahaha)
16:27:11 <Hiato> http://rafb.net/p/JLwZz179.html Fixed. It may not be as compact as your solution, but it is elegant in the sense that I can print however much I need
16:29:30 <Hiato> break time
16:31:05 <flexo> yea
16:31:06 <flexo> well
16:31:11 <flexo> you don't have a 512 byte restriction
16:32:58 <fizzie> Random bit of trivia: the TI-86 calculator uses 9-byte BCD floats, with a seven-byte mantissa (14 decimal digits of precision) and two bytes for the exponent.
16:33:29 <oklopol> ...
16:33:43 <oklopol> fizzie: what the fuck? :D
16:33:54 <oklopol> ah well
16:34:05 <FireFly> Hrm, maybe I should learn asm some day
16:34:21 <fizzie> I got into an argument about this in one of our university courses, because the lecturer refused to believe me.
16:34:46 <oklopol> well i wonder why...
16:36:16 <fizzie> She was all "no, no, it might be converted to decimal for displaying, but internally all computatators that do floating-point maths use a binary format". I had to provide proof in the format of some TI-86 databook.
16:38:13 <flexo> i think the next POWER arch will feature native decimal FP
16:40:17 -!- KingOfKarlsruhe has joined.
17:01:29 <flexo> http://en.wikipedia.org/wiki/Blind_spot_(vision)
17:01:34 <flexo> fun!
17:29:44 -!- landeguy has joined.
17:30:12 -!- landeguy has quit (Client Quit).
17:31:11 -!- Corun has quit ("This computer has gone to sleep").
17:34:11 -!- Corun has joined.
17:35:55 <Hiato> flexo: is a word signed, by default?
17:37:03 <Hiato> rather, how, if possible, can one debug nasm code?
17:38:44 <olsner> but BCD *is* a binary format, right?
17:40:25 <flexo> uhm..
17:45:58 <flexo> Hiato: you don't really know what you are talking about
17:47:07 <Hiato> nope, I can safely say
17:47:38 <Hiato> which is why I figured stuff it and let's just make it for unsigned
17:48:02 <flexo> there is such thing as signed words.
17:48:06 <flexo> there are just words
17:48:20 <flexo> add/sub work the same for signed and unsigned numbers
17:48:41 <flexo> and fr division and multiplicaation there is div/idiv and mul/imul
17:49:20 <flexo> the signflag tells you if a signed number is negative, but if it is a signed number at all (and if you choose to interpret the signflat) is your choice
17:49:35 <flexo> and about debugging...
17:49:43 <flexo> "nasm code". what's that?
17:49:47 <flexo> nasm is just an assembler
17:49:58 -!- kar8nga has joined.
17:50:43 <Hiato> Okay, thanks for clearing that up. What I meant was is there a NASM-IDE type thing that will let you trace asm?
17:51:16 <flexo> uhm. no.
17:51:31 <flexo> but any debugger lets you step on the instruction level.
17:51:35 <flexo> you should know that
17:52:06 <AnMaster> <flexo> (that "aad 0x31" is that undefined opcode thingie, but it works fine) <-- huh? I don't know x86 asm well enough to know what you are talking about there
17:52:44 <flexo> AnMaster: the mnemonic AAD really has no operand
17:52:53 <flexo> it's binary encoding is 0xd5 0x0a
17:53:06 <flexo> but people figured out that that 0x0a is actually an operand after all
17:53:14 <flexo> and you can put in different bases instead of 10
17:53:39 <flexo> didn't work on certain 8086 clones (notably the nec v20 and v30) but has been silently (undocumented) supported ever since
17:54:33 <AnMaster> hm
17:55:22 <AnMaster> flexo, Isn't AAD for BCD?
17:55:30 <flexo> yes :)
17:55:47 <AnMaster> flexo, it is invalid in long mode
17:55:50 <flexo> i know :(
17:55:51 <AnMaster> that is on x86_64
17:56:07 <flexo> i've already written that in the dialog above
17:56:11 <AnMaster> ah
17:56:13 <AnMaster> missed that
17:56:59 <flexo> but protected mode (or long mode for that matter) assembler is boring anyway
17:57:27 <flexo> well
17:57:28 <flexo> what i mean is
17:57:44 <flexo> if you do 32bit/64bit assembly you are usually using a proper operating system
17:57:50 <flexo> using boring system services
17:58:00 <AnMaster> also I wouldn't write much asm manually in a kernel, I would only write what is needed in asm, the rest in C, and only if there were performance issues, I would rewrite parts in asm if that would help. I would profile before of course
17:58:05 <flexo> using elaborate sane APIs
17:58:23 <flexo> assembler isn't much fun these days
17:58:27 <flexo> RISC took it all away
17:58:27 <AnMaster> flexo, yes I'm the type of person who end up writing sane APIs if there are none
17:58:38 <AnMaster> also, x86 is CSIC
17:58:52 <oklopol> flexo: http://en.wikipedia.org/wiki/Blind_spot_(vision) <<< you haven't noticed that yourself?
17:58:59 <AnMaster> it is the most bloated CISCy I ever seen
17:59:04 <flexo> yea.. but if you want to write performant code you have to reduce the instruction set.
17:59:09 <flexo> (on modern cpus that is)
17:59:37 <flexo> writing speedy application-level 32bit x86 assembly isn't so much different from handcrafting RISC assembly
17:59:56 <flexo> except the fact that you don't always have to explicitly load/store
18:00:03 <flexo> still, it's boring
18:00:33 <AnMaster> flexo, you need to calculate on instruction cycle count on x86
18:00:39 <AnMaster> on RISC that is much less of an issue
18:00:44 <flexo> not really
18:01:11 <AnMaster> I mean, usually most n cycles, with a few, maybe call and similar, takes more
18:01:15 <AnMaster> but on x86 it varies a lot
18:01:19 <flexo> not anymore
18:01:29 <flexo> the only exception being mul/div
18:01:56 <AnMaster> flexo, really? It varies a lot according to the AMD64 optimising guide.
18:01:57 <flexo> besides that all instructions you *should* be using execute in n "cycles" (where n is constant)
18:02:27 <AnMaster> flexo, depends, what about SYSENTER/SYSEXIT
18:02:27 <flexo> okay, i admin, i've been out of the loop for a while
18:02:35 <AnMaster> iirc they vary a bit
18:03:06 <flexo> but up until the athlon XP AMD (and intel too) tried to bring the compiler generated instructions all down to n cycles
18:03:15 <flexo> where n was 1/3 fr the athlon xp
18:03:17 <AnMaster> yep, but that may be because that is the Intel one and this is AMD docs
18:03:27 <olsner> optimizing code is about so much more than fiddling with the cycle counts
18:03:39 <flexo> yea
18:03:41 <AnMaster> flexo, well most take integer cycles
18:03:41 <flexo> it's inserting nops
18:03:49 <AnMaster> if you check latency table
18:03:52 <flexo> so your instructions are aligned with a cacheline
18:04:14 <flexo> AnMaster: seriously, what about those instructions?
18:04:22 <AnMaster> flexo, what about which ones?
18:04:29 <flexo> if you wanna multiple, you have to use the multiply instruction (except for those shift cases, yes)
18:04:39 <flexo> even the LEA tricks are not really worthwhile anymore
18:04:52 <flexo> sometimes they are faster, usually they just clog address generation
18:04:58 <AnMaster> flexo, I read about reducing that too, it was quite an interesting research paper
18:05:13 <AnMaster> about strength reducing modulo by using addition and shift
18:05:19 <AnMaster> to work for "not power of 2 cases"
18:05:21 <flexo> yes
18:05:24 <flexo> been there
18:05:25 <AnMaster> it talked about division and so on too
18:05:26 <flexo> done that
18:05:35 <flexo> for multiplication it's *slightly* faster
18:05:40 <ehird> yo.
18:05:48 <flexo> but only very slightly
18:05:59 <AnMaster> flexo, personally I write C and watches happily, and *without* a headache while it does that strength reduction for me :P
18:06:05 <AnMaster> s/it/gcc/
18:06:06 <flexo> yea
18:06:11 <flexo> my brainfuck compiler actually does that
18:06:13 <flexo> actually
18:06:24 <flexo> a large part of the compiler consists of that multiplication-optimization
18:06:25 <flexo> because it was fun
18:06:26 <flexo> ;)
18:07:15 <flexo> i suppose not as sophisticated as your research paper though :)
18:07:17 <AnMaster> flexo, hm my bf compiler compiles to C (with some optimising of course, like converting balanced loops with no IO to polynoms and such)
18:07:36 <flexo> AnMaster: you should try outputting assembler instead
18:07:38 <AnMaster> flexo, anyway I'm looking for the link to that paper
18:07:51 <AnMaster> flexo, well, sure, but I use several different arches daily
18:07:55 <flexo> when i make my compiler output c and use gcc -O3 to compile the resulting binary is actually slower
18:08:03 <AnMaster> I have no interest in writing ppc, x86 and x86_64 versions
18:08:08 <AnMaster> of an user space program
18:08:09 <flexo> (and takes like 100 times more time)
18:08:23 <AnMaster> flexo, what I might do in that case would be output LLVM code
18:08:45 <flexo> (with some optimising
18:08:45 <flexo> of course, like converting balanced loops with no IO to
18:08:45 <flexo> polynoms and such)
18:09:01 <flexo> ^ was that erlang thingie yours?
18:09:41 <AnMaster> flexo, er? I use Erlang sometimes, but what has that got to do with a compiler to C?
18:09:50 <flexo> no wait
18:09:51 <flexo> haskell
18:09:57 <AnMaster> anyway the bf compiler was written in C too
18:10:04 <flexo> oh okay
18:10:06 <AnMaster> flexo, found it: http://www.cag.lcs.mit.edu/commit/papers/99/mdopt-TM.ps
18:10:10 <flexo> there is a haskell bf2c compiler floating around
18:10:25 <AnMaster> flexo, and I said I was *learning* haskell, but maybe you were drunk then, don't know
18:10:27 <flexo> does some good optimization. not as good as mine though ;)
18:10:42 <AnMaster> flexo, link to source code of yours?
18:10:44 <flexo> no, the one i got really is written in haskell
18:10:47 <flexo> well
18:10:52 <flexo> i could upload it
18:10:54 <flexo> but i warn you
18:10:56 <AnMaster> flexo, I'm afraid my optimiser and constant propagator is rather a mess
18:10:58 <flexo> it's unmaintainble mess
18:11:04 <AnMaster> oh you too?
18:11:04 <flexo> and needs a complete rewrite
18:11:04 <AnMaster> :)
18:11:15 <flexo> it produces *very* efficient code though
18:11:33 <flexo> give me a second, i'll upload it
18:12:02 <AnMaster> flexo, same goes for mine, constant propagation (after a [-] it tries to track that memory cell so [-] -> "set 0" (special cased), [-]++ -> "set 3")
18:12:12 <flexo> yes
18:12:13 <flexo> mine too
18:12:16 <AnMaster> (and it reorders when possible)
18:12:20 <flexo> i also do "while" => "if" optimization
18:12:22 <flexo> reordering
18:12:26 <flexo> "mac" => "mul"
18:12:35 <AnMaster> flexo, what about turning +++[>++++<-] into a single polynom?
18:12:37 <AnMaster> did you do that
18:12:44 <flexo> sure?
18:12:48 <AnMaster> ok
18:12:50 <flexo> well actually
18:12:54 <AnMaster> <flexo> "mac" => "mul" <-- what would that be?
18:12:55 <flexo> that one will become a single add
18:12:56 <flexo> ;)
18:13:01 <flexo> well
18:13:02 <AnMaster> flexo, yes it would in the end
18:13:17 <flexo> "multiply and accumulate" becomes just "multiply" when adding to a zero ofcourse
18:13:33 <flexo> strips out more dependencies, often leads to other optimization passes further striping out code
18:14:08 <AnMaster> flexo, but point is you can turn any balanced loop (even nested ones, though that is messy) with no IO into a polynom
18:14:18 <flexo> i do
18:14:24 <flexo> no wait
18:14:25 <flexo> i don't
18:14:32 <flexo> not nested ones
18:14:35 <flexo> but yea, ofcourse you can
18:14:38 <AnMaster> flexo, hm I'm not sure about this "multiply and accumulate", example bf code?
18:14:47 <flexo> your example is an example
18:15:01 <flexo> it's multiplication and adding the result to a cell
18:15:07 <flexo> that's MAC in assembler
18:15:32 <AnMaster> flexo, only issue is GCC bails out with ICE when compiling the generated file for lostkingdom... Since I put all the generated code in main()
18:15:43 <flexo> lostkingdom, whats that?
18:16:08 <AnMaster> I guess I should split the tree up
18:16:08 <AnMaster> flexo, a huge text adventure in bf
18:16:13 <AnMaster> flexo, considered somewhat like "acid test for bf implementations"
18:16:21 <AnMaster> http://jonripley.com/i-fiction/games/LostKingdomBF.html
18:16:34 <AnMaster> 2.08 MB bf file :D
18:16:34 <flexo> http://flexotec.eu/~flexo/pinky.tar.gz
18:16:37 <flexo> thats my implementation
18:16:38 <flexo> beware
18:16:45 <flexo> just copied my dev directory
18:16:48 <flexo> might be seriously broken
18:16:53 <flexo> seems to be working though
18:17:01 <AnMaster> "beware of the brainfuck interpreter", nice idea
18:17:08 <AnMaster> instead of "beware of the dog"
18:17:36 <AnMaster> flexo, is it 64-bit clean :D
18:17:38 <AnMaster> ;P
18:17:39 <flexo> (linux / x86 "ofcourse")
18:17:42 <flexo> no idea
18:17:52 <flexo> give it a try. curious. otherwise do -m32
18:17:56 <flexo> oh, and you'll need nasm
18:18:04 <flexo> oh. and it will definitly generate 32bit code
18:18:08 <AnMaster> flexo, I don't have nasm, I have yasm though
18:18:18 <flexo> won't do i think
18:18:23 <AnMaster> flexo, personally I prefer AT&T syntax
18:18:29 <flexo> i hate at&t
18:18:40 <ehird> at&t syntax is what gnu as uses right?
18:18:43 <AnMaster> flexo, well everyone arch except x86 seems to use it
18:18:46 <flexo> yea so?
18:18:48 <ehird> if so, AnMaster, you suck even more
18:18:48 <flexo> it still sucks
18:18:56 <AnMaster> flexo, I'm used to it
18:19:03 <flexo> AnMaster: yes, you can get used to it
18:19:03 <AnMaster> from ppc and so on
18:19:07 <flexo> i used it too for a while
18:19:12 <flexo> i just don't like it ;)
18:19:17 <ehird> you're wasting your time flexo
18:19:36 <AnMaster> flexo, well someone used to vi will find emacs hard and someone used to emacs will find vi hard
18:19:43 <flexo> so
18:19:44 <flexo> lets see
18:19:48 <flexo> how many cells does LK need?
18:19:56 <AnMaster> flexo, no clue
18:19:58 <AnMaster> a lot iirc
18:20:16 <flexo> is it okay with 32bit cells?=
18:20:22 <flexo> looks so
18:20:31 <flexo> You can see: some matches (2)
18:20:31 <flexo> >get matches
18:20:31 <flexo> I didn't understand that.
18:20:31 <flexo> >
18:20:32 <flexo> !?
18:20:41 <flexo> perfectly fast
18:20:43 <AnMaster> flexo, I get lots of warnings
18:20:45 <flexo> feels like a normal c program
18:20:49 <flexo> and compiled in 3 seconds
18:20:52 <AnMaster> from compiling pinky
18:21:04 <AnMaster> flexo, want me to pastebin?
18:21:11 <ehird> stop being such a compiler warning nazi
18:21:12 <flexo> sure
18:21:13 <ehird> :|
18:21:13 <AnMaster> I did make clean before
18:21:18 <AnMaster> ehird, standard cflags...
18:21:23 <flexo> it shouldn't do that
18:21:31 <AnMaster> http://rafb.net/p/ECxMtZ83.html
18:21:31 <AnMaster> there
18:21:31 <flexo> oh wait
18:21:37 <ehird> i'm not exactly sure what "standard cflags" are to AnMaster but I'm worried
18:21:50 <AnMaster> ehird, CFLAGS='-pipe -march=k8'
18:21:53 <AnMaster> no warings
18:21:55 <AnMaster> warnings*
18:21:57 <AnMaster> no -O
18:22:02 <flexo> AnMaster: yea, it's cool
18:22:06 <ehird> are you going through rehabilitation or something
18:22:06 <AnMaster> anyway it ignored my cflags
18:22:09 <flexo> i get most of them too
18:22:10 <ehird> src/opnode.c:222: warning: format ‘%p’ expects type ‘void *’, but argument 3 has type ‘struct OpNode *’
18:22:15 <ehird> well that's idiotic.
18:22:20 <flexo> indeed
18:22:21 <AnMaster> ehird, no I just use -Wall and so on for my own projects
18:22:23 <AnMaster> and I still do
18:22:58 <flexo> anyway, it should work.
18:23:09 <flexo> don't know about these warnings
18:23:15 <flexo> i think most of them creeped in by a gcc update
18:23:15 <AnMaster> ld: i386 architecture of input file `LostKng.o' is incompatible with i386:x86-64 output
18:23:17 <AnMaster> hah
18:23:27 <AnMaster> $ file LostKng.o
18:23:27 <AnMaster> LostKng.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV)
18:23:36 <flexo> yea well
18:23:37 <AnMaster> flexo, well apart from your call to ld not working
18:23:43 <flexo> what did you expect
18:23:59 <ehird> that's what you get for using 64bit :p
18:24:00 <AnMaster> ld -m elf_i386 LostKng.o
18:24:01 <AnMaster> that works
18:24:11 <flexo> >t matches
18:24:11 <flexo> You need to specify an item.
18:24:11 <flexo> >t some matches
18:24:11 <flexo> You need to specify an item.
18:24:11 <flexo> >t2
18:24:13 <flexo> Taken.
18:24:15 <flexo> >
18:24:18 <flexo> lame
18:24:22 <AnMaster> flexo, eh?
18:24:22 <flexo> AnMaster: i compiled with -f1000000
18:24:33 <AnMaster> flexo, and what does -f1000000 do
18:24:33 <AnMaster> ?
18:24:38 <flexo> fieldsize 1000000
18:24:42 <AnMaster> ah
18:24:45 <ehird> flexo: of course it's lame
18:24:47 <ehird> it's brainfuck :P
18:24:50 <ehird> well, highly retarded basic
18:24:51 <AnMaster> flexo, well
18:24:52 <ehird> compiled to brainfuck
18:24:52 <AnMaster> $ ./pinky
18:24:52 <AnMaster> Usage: pinky FILE
18:24:59 <flexo> default is 66553... well... actually it's 665530 because i messed around with the hardcoded stuff
18:25:15 <AnMaster> flexo, don't you grow on demand?
18:25:18 <flexo> AnMaster: yea.. see pinky.c
18:25:20 <AnMaster> mine does
18:25:21 <flexo> nope
18:25:28 <flexo> would be easily doable though ofcourse
18:25:28 <ehird> flexo: why not just use the main RAM
18:25:31 <AnMaster> which means it is slower but more robust
18:25:34 <flexo> no
18:25:35 <flexo> not slower
18:25:41 <ehird> and trap segfaults
18:25:41 <flexo> just mmap and mprotect a page at the end
18:25:44 <flexo> trap the signal
18:25:46 <ehird> :DD
18:25:47 <AnMaster> flexo, well since I need to check for out of bounds in mine
18:25:48 <ehird> flexo: WE THINK ALIKE.
18:25:52 <AnMaster> I don't trap segfault
18:25:54 <AnMaster> but you could
18:25:59 <ehird> out of bounds checking is for losers
18:26:04 <flexo> AnMaster: interesting option is -d
18:26:10 <flexo> which dumps the optimized IL
18:26:16 <AnMaster> flexo, you found mine?
18:26:24 <flexo> mine? yours? what?
18:26:38 <ehird> he's talking about his.
18:26:42 <AnMaster> flexo, iirc mine dumps optimised parser tree with -d too...
18:26:46 <AnMaster> so you confused me there
18:26:48 <flexo> oh.
18:26:54 <AnMaster> flexo, iirc fizzie traps segfault in jitfunge
18:26:54 <flexo> no. talking about mine.
18:27:13 <AnMaster> anyway about trapping segfaults and messing with stuff in the registers, is this even documented?
18:27:21 <AnMaster> I mean, of course it isn't portable
18:27:29 <AnMaster> between different cpus
18:27:34 <flexo> ofcourse it's documented
18:27:41 <AnMaster> flexo, what man page?
18:27:43 <flexo> should even be portable
18:27:49 <flexo> man mmap, man mprotect, man signal
18:27:51 <AnMaster> flexo, to freebsd and so on?
18:28:00 <flexo> i think so
18:28:03 <flexo> should be POSIX
18:28:20 <AnMaster> flexo, I mean about trapping segfaults, what if you segfault for something else
18:28:23 <AnMaster> like a bug
18:28:31 <ehird> sigh
18:28:42 <ehird> SBCL traps segfault to handle allocation.
18:28:46 <ehird> I'm pretty sure it's not an issue.
18:28:55 <AnMaster> ehird, SBCL uses an 8 GB static array
18:28:56 <flexo> AnMaster: you enter non-portable areas there
18:29:05 <flexo> you can check the instruction pointer and check what instructions caused the sefault
18:29:05 <ehird> AnMaster: ...
18:29:06 <ehird> you have no idea what you're talkinga bout
18:29:09 <flexo> but that's obviousl not portable
18:29:27 <AnMaster> ehird, well I know it uses a huge static array and depends on linux overcommiting memory
18:29:32 <flexo> er
18:29:34 <AnMaster> on x86_64 it is 8 GB, on x86 less
18:29:36 <flexo> actually it's sigaction()
18:29:37 <ehird> sbcl works on non-linux.
18:29:38 <flexo> not signal(), sorry
18:30:05 <flexo> CONFORMING TO POSIX.1-2001, SVr4.
18:31:20 <flexo> AnMaster: so. the compiled program worked?
18:31:25 <AnMaster> flexo, yes
18:31:39 <AnMaster> ehird, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474402
18:31:55 <ehird> yes
18:32:02 <ehird> but sbcl _does_ trap segfault
18:32:05 <AnMaster> ok not static, it was mmap()
18:32:10 <ehird> that's a fact
18:32:10 <AnMaster> ehird, why would it need to do that?
18:32:17 -!- kar8nga has quit (Connection timed out).
18:32:22 <AnMaster> if it uses a huge area that it depends on is allocated as needed
18:32:23 <ehird> AnMaster: ask the sbcl devs.
18:33:05 <flexo> uhm.
18:33:13 <AnMaster> mhm
18:33:34 <ehird> muhm
18:33:35 <flexo> if you want to implement an on-demand growing blob of memory
18:33:39 <flexo> you have to use mmap()?
18:33:47 <ehird> well yeah
18:33:48 <AnMaster> flexo, is there any -h or --help for pinky?
18:33:50 <ehird> then trap segfault
18:33:55 <ehird> AnMaster: can't you read c?
18:34:03 <flexo> AnMaster: yes, it's $ vi src/pinky.c
18:34:11 <flexo> see main()
18:34:17 <AnMaster> bash: vi: command not found
18:34:17 <AnMaster> Did you mean: emacs?
18:34:17 <ehird> flexo: careful
18:34:19 <AnMaster> ;P
18:34:20 <flexo> no
18:34:20 <ehird> AnMaster is about to start
18:34:21 <ehird> yeah.
18:34:22 <flexo> i meant vi
18:34:30 <flexo> as it's guaranteed to be there
18:34:36 <flexo> as specified by the single unix spefication
18:34:47 <ehird> AnMaster probably uninstalled it manually because he hates vi and everyone who uses it and is objectively right and wants to prove a point.
18:34:48 <flexo> (yea, not exactly true, but close enough)
18:34:56 <AnMaster> flexo, well, many linux distros use nano by default these days
18:35:05 <ehird> not when you run vi(1).
18:35:06 <AnMaster> vi was not default, nor was emacs
18:35:09 <AnMaster> only nano was
18:35:14 <ehird> that is utterly irrelevant
18:35:18 <AnMaster> which is an interesting way around the editor war
18:35:20 <flexo> AnMaster: didn't you just babble about portability?
18:35:36 <AnMaster> flexo, yes, and in practise vi isn't portable
18:35:42 <flexo> yes it is.
18:36:14 <ehird> flexo: you're asking for consistency out of AnMaster
18:36:23 <flexo> ehird: yea, i'm slowly getting it
18:36:34 <ehird> yes, until he dodges the question with a bad joke
18:36:46 <flexo> yea
18:36:51 <AnMaster> also what I asked was: is this documented, and well defined, to trap sigsegv and then jump back to continue exection after calling mmap()
18:36:55 <flexo> yes.
18:37:00 <ehird> why don't you read the standard
18:37:04 <ehird> instead of getting everyone else to.
18:37:26 <AnMaster> ehird, iirc some standard, C or POSIX say it is undefined to touch anything but volatile variables in signal handlers
18:37:29 <flexo> i know that's what you asked, and that's why i already had given you an answer to that question
18:37:43 <flexo> i doubt posix says that
18:37:54 <AnMaster> flexo, I'm quite sure C99 does
18:37:58 <ehird> perhaps you could declare the mmaped stuff volatile then
18:37:58 <flexo> so?
18:38:01 <flexo> your point being...?
18:38:02 <ehird> OMG CRAZY
18:38:58 <flexo> According to POSIX, the behavior of a process is undefined after it
18:38:58 <flexo> ignores a SIGFPE, SIGILL, or SIGSEGV signal that was not generated by
18:38:59 <flexo> kill(2) or raise(3).
18:39:00 <flexo> oh well
18:39:11 <AnMaster> see?
18:39:14 <AnMaster> I was right :P
18:39:22 <ehird> you're right only going by a tedious, broken standard
18:39:30 <ehird> here's a challenge: find a system it breakso n
18:39:35 <AnMaster> ehird, one which you suggested I should read just above
18:39:36 <ehird> that more than 3 people use
18:39:37 <ehird> I'll wait here
18:39:39 <AnMaster> <ehird> why don't you read the standard
18:39:43 <ehird> AnMaster: yes, because you were the one asking about it./
18:39:44 <AnMaster> you referred to it as well
18:39:50 <flexo> ...
18:40:23 <ehird> flexo: link to pinky?
18:40:26 <AnMaster> ehird, that you can never admit that you lost in a discussion...
18:40:31 <flexo> http://flexotec.eu/~flexo/pinky.tar.gz
18:40:31 <AnMaster> a character flaw
18:40:36 <flexo> again
18:40:38 <flexo> beware
18:40:40 <ehird> AnMaster: umm, that's because I didn't
18:40:42 <ehird> moron
18:40:43 <flexo> this is ugly unmaintanble code
18:40:45 <Badger> none of you can, I imagine
18:41:02 <ehird> Badger: unlike AnMaster i don't react with a joke in that situation, at least
18:41:04 <flexo> complex, ugly, unmaintanble code
18:41:07 <AnMaster> ehird, yes, but you then pretend you said something else all the time, even when the scrollback shows you didn't
18:41:12 <ehird> what
18:41:21 <flexo> (this happens when people who don't finish highschool end up writing compilers)
18:41:22 <ehird> you're an idiot. I told you to read the standard because YOU ASKED IF IT WAS STANDARD
18:41:36 <ehird> that is ABSOLUTELY not inconsistent with calling the standard stupid
18:41:36 <AnMaster> ehird, and I said I was pretty sure it wasn't
18:41:40 <AnMaster> then you said it was
18:41:41 <ehird> that is also irrelveant
18:42:02 <flexo> but i plan on doing a new pinky
18:42:09 <Badger> what's pinky?
18:42:14 <flexo> along with a proper CFG and SSA optimization
18:42:18 <flexo> Badger: http://flexotec.eu/~flexo/pinky.tar.gz
18:42:26 <flexo> my highly optimizing brainfuck compiler
18:42:31 <flexo> (x86, linux)
18:42:32 <Badger> o_O
18:42:38 <ehird> oh, linux only
18:42:38 <ehird> :<
18:42:44 <flexo> ehird: should be
18:42:46 <Badger> you wrote a bf compiler
18:42:47 <ehird> oh wells
18:42:48 <flexo> very easy to port
18:42:51 <flexo> bsd?
18:42:57 <AnMaster> ehird, also I was waiting for the pdf with POSIX to load, for some reason it hasn't yet finished opening
18:42:57 <ehird> flexo: err, you could say bsd :-)
18:43:00 <flexo> darwin?
18:43:03 <ehird> :x
18:43:03 * Badger shudders
18:43:04 <ehird> maybe
18:43:05 <ehird> :-)
18:43:13 <flexo> alright
18:43:25 <AnMaster> Badger, I agree
18:43:30 <flexo> just look into x86.c
18:43:33 <AnMaster> about the shudder for darwin
18:43:39 <Badger> hah
18:43:44 <flexo> see the GETC/SETC case
18:43:44 <Badger> I meant for a brainfuck compiler :P
18:43:52 <ehird> Badger: ssh, don't ruin his ideological associations
18:43:58 <flexo> and replace by a syscall on your system
18:43:59 <AnMaster> Badger, well what is so odd with that? Many people have written that
18:44:08 <AnMaster> Badger, some to asm, some to machine code, some to C
18:44:12 <AnMaster> and so on
18:44:44 <Badger> esoteric languages are inherently evil :P
18:44:46 <flexo> ehird: i could also give you a ruby script which converts the IL to C
18:44:55 <AnMaster> Badger, what on earth are you doing here then? :P
18:45:02 <flexo> but as i said, gcc -O3 produces worse code than pinky directly
18:45:06 <AnMaster> flexo, cool
18:45:11 * ehird peeks at x86
18:45:17 <flexo> and takes ages to compile
18:45:20 <ehird> #ifdef __STRICT_ANSI__
18:45:20 <ehird> # undef __STRICT_ANSI__
18:45:21 <ehird> #endif
18:45:23 <ehird> :D
18:45:25 <flexo> hehe
18:45:39 <ehird> #if defined(DJGPP)
18:45:39 <ehird> #error djgpp
18:45:41 <ehird> #include <unistd.h>
18:45:43 <ehird> #error posix
18:45:45 <ehird> #elif defined(POSIX)
18:45:47 <ehird> is that meant to make sense?
18:45:55 <flexo> nope
18:45:57 <flexo> don't remember
18:45:59 <ehird> ha
18:46:01 <flexo> i did a djgpp port
18:46:11 <flexo> but i suppose this "branch" doesnt include that code
18:46:14 <flexo> lost it :)
18:46:50 <AnMaster> Hm
18:47:19 <flexo> the compiler actually gets faster with more optimization passes
18:47:27 <flexo> because the real bottleneck is all the sprintf() outputting the assembler
18:48:15 <flexo> ehird: oh, and you need to adjust the program epilogue too at the end of the file
18:48:19 <flexo> to terminate the process
18:48:22 <flexo> but on the other hand
18:48:26 <flexo> it will die anyway
18:48:33 <ehird> hehe
18:48:43 <ehird> 18:43 <Bouncer> CTCP-query VERSION from flexo
18:48:44 <ehird> oh sneaky
18:49:34 <flexo> just spotted a buf
18:49:35 <flexo> bug
18:49:39 <flexo> if(curr->type == MUL && curr->val == -1)
18:49:46 <flexo> i'm fairly certain that should be val < 0
18:49:47 <ehird> i spot bufs all the time
18:50:51 <AnMaster> I noticed quite a few open source projects with a section titled "Executive Summary" recently on their websites, in their README or such. One example is the README of valgrind. Hm, maybe I should add one to cfunge ;)
18:50:54 <AnMaster> ~
18:50:57 -!- Corun has quit ("This computer has gone to sleep").
18:51:07 <flexo> ehird: oh, and see pinky.h
18:51:15 <flexo> you should probably add a new target
18:51:17 <olsner> "Executive summary: this program has no use whatsoever."
18:51:23 <flexo> feel free to do it and send me a patch ;)
18:51:29 <ehird> :)
18:51:50 -!- Corun has joined.
18:52:05 <AnMaster> olsner, well it would end up very strange for a esolang interpreter
18:52:21 * AnMaster wonders if Java2K has one... It would fit perfectly with it
18:53:38 <flexo> pinky needs a register allocator too
18:55:27 <flexo> and i'm not optimizing nested ifs to compare less/greater
18:56:17 <AnMaster> flexo, in the optimiser are you working on the program in the form of a tree or?
18:56:23 <flexo> yes
18:56:36 <AnMaster> flexo, which file is the optimiser in?
18:56:39 <flexo> pinky.c
18:56:52 <flexo> optimize()
18:57:34 * AnMaster looks for how the OPTIMIZATION macro is defined
18:57:38 <olsner> omg my leg is numb
18:57:43 <flexo> evil preprocessor magic
18:58:01 <flexo> it's just for debugging purposes
18:58:11 <AnMaster> flexo, so what parameter is relevant then?
18:58:19 <flexo> what do you mean?
18:58:32 <AnMaster> oh wait
18:58:35 <flexo> just ignore the OPTIMIZATION() itself
18:58:37 <AnMaster> it is just a debug macro?
18:58:38 <AnMaster> ah ok
18:59:11 <flexo> it dumps the cell contents on entry along with the performed optimization (code line) when done
18:59:17 <flexo> err
18:59:25 <flexo> the opnode, not the cell
18:59:26 <AnMaster> OPTIMIZATION(curr) {\n ... \n} <-- to me that looks like a macro that does something stupid, like a condition with nothing after, since there was a { on the same line
18:59:30 <AnMaster> and no ; after
19:00:46 <AnMaster> OpNode *scope; ?
19:00:54 <AnMaster> what is the scope?
19:01:01 <ehird> read the code
19:01:11 <AnMaster> ehird, what do you think I am doing?
19:01:18 <ehird> asking flexo to read the code for you
19:01:19 <AnMaster> I'm reading the data structure definition
19:01:36 <AnMaster> there is no documentation, thus the data structure is undocumented
19:01:41 <ehird> so?
19:01:42 <ehird> there's code.
19:01:43 <ehird> read the code.
19:01:49 <ehird> that's surprisingly common in programming.
19:02:01 <flexo> so
19:02:29 <flexo> OPTIMIZATION() turns to a for() loop
19:02:47 <flexo> 19:53 < AnMaster> what is the scope? <= the parent node in the tree ofcourse
19:03:04 <AnMaster> flexo, then why is there a OpNode *parent; member as well
19:03:05 <flexo> (my internet connection is somewhat fleky right now)
19:03:32 <flexo> i don't know, what line are you talking about?
19:03:50 <AnMaster> opnode.h
19:03:54 <AnMaster> struct OpNode
19:04:00 <AnMaster> I'm talking about it's members
19:04:08 -!- Corun has quit ("This computer has gone to sleep").
19:04:15 <flexo> ah
19:04:40 <flexo> you know
19:04:43 <AnMaster> yes?
19:04:45 <flexo> that's a good question
19:05:00 <flexo> i think i remember
19:05:18 <flexo> i added that for the LOAD/MUL
19:05:29 <flexo> a MUL is inside a LOAD in the tree
19:05:38 <flexo> but it's scope is actually the LOAD's parent
19:05:48 <AnMaster> LOAD() is "set constant"?
19:06:06 <flexo> well.. LOAD loads a bf cell into the accumulator
19:06:22 <AnMaster> hm ok
19:06:41 <flexo> MUL multiplies it with a constant and stors the result in a cell
19:06:50 <flexo> MAC adds the result
19:07:12 <flexo> copying is done by MUL 1
19:07:19 <flexo> my internet connection is really breaking down here
19:07:23 <flexo> i need my own line
19:07:33 <flexo> WEP WLANs just don't do the job
19:08:15 <flexo> i spent the last 10 minutes shifting my laptop over the table
19:08:33 <AnMaster> flexo, hm how would you optimise this +++[>++<<--<[-]+>>-]
19:08:42 <AnMaster> I assume to a few set constants
19:09:00 <AnMaster> at least if it was know the "iterator" cell was 0 before +++
19:09:24 <flexo> trying to find the optimal position to get in reach of the house on the other side of the street
19:09:35 <flexo> yes
19:09:41 <ehird> ssh, AnMaster will rant to you about how that's illegal
19:09:47 <ehird> in case you weren't aware or something
19:09:56 <AnMaster> ehird, why would I do that?
19:10:00 <ehird> you always do
19:10:22 <AnMaster> ehird, when did I "rant" about using wlan without permission?
19:10:24 <flexo> hm.
19:10:27 <AnMaster> I don't remember ever doing it
19:10:29 <flexo> actually i kinda fail to optimize that.
19:10:30 <flexo> oh well.
19:10:33 <ehird> you rant about X for all X where illegal(X)
19:10:56 <flexo> no, it's cool
19:11:01 <flexo> i do MAC spoofing and all
19:11:14 -!- asiekierk has joined.
19:11:23 <AnMaster> ehird, well I want a specific example of this please for WLAN. Otherwise it is just spreading lies
19:11:31 <asiekierk> http://www.youtube.com/watch?v=9ymGAujZAaY - ...wtf
19:11:35 <flexo> all traffic is routed to a server in the netherlands
19:11:36 <ehird> no, it's based on past behaviour
19:11:52 <flexo> encrypted with XTEA
19:12:01 <flexo> i'm kinda paranoid when it comes to WEP
19:12:03 <flexo> for obvious reasons
19:12:04 <AnMaster> flexo, hm?
19:12:05 <flexo> :)
19:12:16 <flexo> hm hm?
19:12:18 <AnMaster> "<flexo> all traffic is routed to a server in the netherlands" <-- what?
19:12:27 <asiekierk> ...is anyone watching my animation!?
19:12:29 <AnMaster> sounds like an China...
19:12:36 <AnMaster> if they route everything to a server
19:12:53 <flexo> yea.. when i break in other peoples WLANs i never just use their router
19:12:59 <flexo> hacked together a simple VPN
19:13:05 <flexo> well, not really a VPN
19:13:09 <flexo> it's very specific for my purposes
19:13:11 <AnMaster> flexo, also I never heard of such stuff in the Netherlands, I thought they were democratic and didn't reroute peoples traffic
19:13:29 <flexo> also, it sends all packets 5 times
19:13:39 <flexo> because my wireless links tend to be somewhat.. unstable
19:13:44 <AnMaster> oh you mean you route through a server in the netherlands
19:13:44 <flexo> AnMaster: huh?
19:13:47 <flexo> yes
19:13:58 <flexo> signal-to-noise ratio: +6 dB
19:13:59 <AnMaster> not that the gov in netherlands route traffic strangely
19:14:04 <flexo> typing via ssh is kinda hard right now
19:14:06 <AnMaster> right
19:14:16 <oklopol> asiekierk: that was awesome
19:14:26 <asiekierk> ...seriously?
19:14:41 <asiekierk> Do I have such a talent to make puppet toons?
19:14:45 <ehird> no
19:14:45 <oklopol> ;)
19:14:46 <ehird> :D
19:14:51 <asiekierk> hopefully!
19:14:53 <oklopol> well it was... unexpected.
19:14:58 <asiekierk> I thought that was really awesome :/
19:14:58 <flexo> i have no own internet connection for 2 years now
19:15:00 <flexo> but i just moved
19:15:07 <flexo> and the WLANs here just suck
19:15:11 <flexo> getting ADSL again..
19:15:16 <AnMaster> asiekierk, question, since I don't often use youtube, how do you rate 0 stars?
19:15:17 <ehird> flexo i have a wlan you could use.
19:15:24 <flexo> thanks very much
19:15:24 <ehird> AnMaster: don't be a jerk
19:15:26 <AnMaster> I mean the lowest possible seems to be 1 star
19:15:28 <asiekierk> AnMaster: You can't.
19:15:35 <asiekierk> You can rate 0 stars by not voting at all though
19:15:38 <asiekierk> :D
19:15:38 <AnMaster> ehird, no I was wondering in general
19:15:48 <ehird> if the lowest you can rate is 1 star
19:15:52 <ehird> then maybe you can't rate 0 stars
19:15:54 <AnMaster> ehird, because if he posts to youtube he must obviously know it
19:15:56 <ehird> omfgbbq
19:16:14 <AnMaster> ehird, I thought it was a case of PEBKAC
19:16:15 <AnMaster> ...
19:17:18 <flexo> boring!
19:18:10 <asiekierk> Wait, did anyone really watch my movie, cuz i see 3 views
19:18:19 -!- ehird has quit ("Caught sigterm, terminating...").
19:18:23 -!- ehird has joined.
19:18:23 <asiekierk> and 2 people other than you watched it
19:18:24 <flexo> i didn't
19:18:29 <oklopol> asiekierk: just assume no one cares about anything anyone else does. desperately wanting people to give an opinion when they aren't interested, that is, pretty much every time you don't get a spontaneous answer from anyone, just forces them to try to find a nice way to tell you they don't care.
19:18:29 <flexo> because i can't
19:18:35 <flexo> i get only like 30 kb/s..
19:18:43 <AnMaster> asiekierk, I did, but not using youtube, I don't have flash
19:18:56 <AnMaster> I use another way to use mplayer directly on the video
19:18:56 <asiekierk> AnMaster: what happened at the end?
19:19:12 <AnMaster> asiekierk, I'm still waiting for the cache to fill
19:19:12 <asiekierk> if you watched it, you should know
19:19:22 <asiekierk> oh-kay
19:19:25 <asiekierk> Going to wait
19:19:28 <AnMaster> it is 2 seconds in and report "speed: 0.0"
19:19:33 * AnMaster think connection broke
19:19:37 <ehird> and asiekierk's infinite patience shows again
19:20:06 <asiekierk> you mean n'tfinite
19:20:12 <asiekierk> i mean
19:20:12 <asiekierk> finite
19:20:19 <asiekierk> :)
19:21:11 <AnMaster> well now it worked, but I aborted after half a minute, can't stand that high pitched voice when I have a headache
19:21:35 <asiekierk> :P
19:21:39 <asiekierk> Low it down
19:21:42 <asiekierk> the volume
19:21:52 <AnMaster> asiekierk, well that doesn't help for the high pitched sound
19:21:58 <oklopol> or maybe you could use audacity or something to lower the pitch
19:22:01 <AnMaster> unless I go to 0
19:22:08 <asiekierk> go to 0 then
19:23:52 <oklopol> ^bool
19:23:52 <fungot> No.
19:23:57 <oklopol> another ep?
19:23:58 <oklopol> ^bool
19:23:58 <fungot> No.
19:24:01 <AnMaster> asiekierk, well at the end the screen goes black
19:24:02 <oklopol> sure?
19:24:04 <oklopol> ^bool
19:24:04 <fungot> No.
19:24:05 <AnMaster> there is the answer
19:24:06 <oklopol> k
19:24:14 <oklopol> then reanswer, another ep?
19:24:16 <oklopol> ^bool
19:24:16 <fungot> Yes.
19:24:17 <oklopol> k
19:24:20 <asiekierk> AnMaster: What is the puppet playing during ~1:15 - ~1:30
19:24:25 <asiekierk> is it doing anything
19:24:34 <asiekierk> ^help
19:24:34 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
19:24:35 <AnMaster> asiekierk, something behind a logo saying asie 09
19:24:38 <asiekierk> ^show bool
19:24:45 <asiekierk> Oh, the volume is 0 :/
19:24:46 <AnMaster> asiekierk, it seems to be using a ciggarette in some strange way,
19:24:50 <AnMaster> and then falls down
19:24:54 <asiekierk> AnMaster: It's a Stylophone
19:24:57 <AnMaster> could be a pen?
19:24:59 <asiekierk> a stylus-based instrument
19:25:03 <AnMaster> ok
19:25:06 <asiekierk> ^show bf bool
19:25:07 <ehird> stylophones are awesome
19:25:18 <asiekierk> ehird: Don't tell me you like have one
19:25:19 <flexo> you people are weird
19:25:21 -!- nice has joined.
19:25:25 <ehird> asiekierk: yes, I do.
19:25:31 <asiekierk> woohoo!
19:25:44 -!- nice has changed nick to nice_ka.
19:27:53 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
19:28:21 -!- KingOfKarlsruhe has quit (Nick collision from services.).
19:28:26 -!- nice_ka has changed nick to KingOfKarlsruhe.
19:28:38 -!- bsmntbombdood has joined.
19:29:00 <AnMaster> asiekierk, well I don't really like electronic sounding music
19:29:06 <AnMaster> no offence meant
19:29:13 <AnMaster> it's just a matter of taste
19:29:29 <asiekierk> ok
19:29:35 <asiekierk> I finally got white socks
19:29:43 <AnMaster> mhm?
19:29:46 <asiekierk> So I can start my Sock Puppet Video Blog!
19:29:48 <ehird> about as much as a matter of taste as when AnMaster spend ages whining about how much 'rock' sucked
19:29:55 <asiekierk> [.....]
19:30:01 <AnMaster> ehird, I said that I disliked it
19:30:05 <oklopol> asiekierk: could you have more violence, obscure jokes, swearing and sex in your next vid?
19:30:07 <flexo> no you didn't
19:30:07 <AnMaster> I didn't say this was true for everyone
19:30:15 <asiekierk> oklopol: I'm only a kid
19:30:15 <oklopol> you know. sox park
19:30:17 <AnMaster> obviously taste differs
19:30:21 <AnMaster> oklopol, hehe
19:30:27 <asiekierk> more like The Sockshit Stream
19:30:34 <ehird> asiekierk: i'm barely older than you and i support oklopol's suggestion
19:30:39 <asiekierk> i do not
19:30:50 <asiekierk> I want to make it a vlog, and a game-reviewing series
19:30:50 <asiekierk> :)
19:30:55 <AnMaster> sox park would be an awesome name
19:30:55 <ehird> then you suck. :|
19:31:09 <ehird> southocks park
19:31:11 <asiekierk> you too
19:31:19 <flexo> how old are you?
19:31:21 <AnMaster> ehird, well I'm not sure what that would *mean*
19:31:26 <ehird> flexo: asiekierk is like 12.
19:31:29 <ehird> i'm 13.
19:31:29 <oklopol> asiekierk: make a programming show
19:31:41 <asiekierk> oklopol: C64 programming show
19:31:44 <AnMaster> ehird, and yes there is a large difference there, you have gotten much better since then
19:31:49 <ehird> Lol
19:31:54 <ehird> moron
19:31:56 <ehird> :)
19:32:22 <ehird> it's actually just that I try to be nice to you occasionally just in case, always end up remembering you're an idiot th
19:32:23 <ehird> tho
19:32:24 <flexo> ehird: if that's an obscure joke you have to tell me, because, you know, no reason not to believe it
19:32:32 <AnMaster> ehird, also maturity(sp?) it is individual, so not only that
19:32:34 <ehird> flexo: maybe it's a joke _and_ serious
19:32:45 <flexo> maybe
19:33:08 <AnMaster> ehird, err, I thought it was the reverse :P
19:33:11 <ehird> flexo: you'd get on with oklopol
19:33:15 <oklopol> or maybe it's all three
19:33:26 <AnMaster> oklopol, which is the third option?
19:33:30 <oklopol> AnMaster: both
19:33:49 -!- seveninchbread has joined.
19:34:55 <flexo> maybe i should get me a cuba libre
19:35:08 <flexo> opinions?
19:35:24 <oklopol> yes
19:35:26 <oklopol> do it
19:35:30 <flexo> alright
19:35:55 <oklopol> ".eu", what does that mean
19:36:09 <flexo> europe, i suppose
19:37:03 <oklopol> i see i see. which city?
19:37:46 <ehird> what XD
19:37:59 <oklopol> ehird: exactly
19:40:40 <flexo> munich
19:41:13 -!- CakeProphet has quit (Read error: 145 (Connection timed out)).
19:41:43 <oklopol> flexo: ah. i live in the slums.
19:42:01 <flexo> what slums?
19:42:34 <oklopol> northern europe, you know, at the docks.
19:42:51 <flexo> i see
19:44:09 <flexo> this cuba libre tastes a little much to .. rummy
19:44:44 <flexo> i'm always too greedy
19:51:18 -!- kar8nga has joined.
19:54:11 <Mony> later
19:54:33 -!- Mony has quit ("Quit").
20:09:48 -!- CakeProphet has joined.
20:22:16 -!- Slereah_ has joined.
20:24:44 -!- seveninchbread has quit (Read error: 104 (Connection reset by peer)).
20:29:07 -!- Slereah has quit (Read error: 60 (Operation timed out)).
20:34:54 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:37:56 -!- asiekierk has quit (Read error: 60 (Operation timed out)).
20:43:11 -!- Hiato has quit ("Leaving.").
20:53:59 <psygnisfive> anmaster
20:54:09 <AnMaster> psygnisfive, ?
20:54:28 <psygnisfive> hey
20:54:39 <psygnisfive> miranda family languages arent eso.. as such
20:54:47 <psygnisfive> haskell is pretty esoteric
20:54:55 <psygnisfive> but its not the same kind of eso i guess
20:54:57 <AnMaster> psygnisfive, as someone else already answered
20:54:58 <AnMaster> ...
20:55:02 <AnMaster> afk
20:55:04 <psygnisfive> slereah did i know
20:55:17 <psygnisfive> im just explaining more what _i_ was thinking :P
21:02:42 <ehird> im bored, so im going to code a boring but fun thing
21:04:24 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
21:24:09 <FireFly> Which does what?
21:24:32 <ehird> guess
21:30:42 <oklopol> ooooooooooo
21:53:49 -!- seveninchbread has joined.
21:55:32 -!- CakeProphet has quit (Nick collision from services.).
21:55:34 -!- seveninchbread has changed nick to CakeProphet.
21:59:32 <FireFly> " boring but fun"
21:59:34 <FireFly> Wait, what?
22:00:56 <ehird> yes
22:09:30 * ehird plays with paren-less lisp
22:27:56 -!- BeholdMyGlory has joined.
22:45:59 <ehird> BeholdMyGlory: Hello AnMaster.
22:46:42 <AnMaster> eh
22:46:51 <AnMaster> ehird, whoever that is he isn't me
22:46:54 <BeholdMyGlory> wut?
22:46:59 <ehird> AnMaster: arvid, .se
22:47:02 <oklopol> yeah right. that's what i said about hotidlerchick.
22:47:03 <ehird> an
22:47:04 <AnMaster> ehird, yes I agree
22:47:04 <ehird> d
22:47:05 <ehird> in #archlinux
22:47:10 <ehird> yeah rite
22:47:19 <FireFly> Um
22:47:25 <flexo> so weird
22:47:25 <FireFly> It's just the same top domain
22:47:30 <FireFly> I.e. same country
22:47:34 <AnMaster> except IP doesn't match
22:47:36 <AnMaster> indeed
22:47:49 <AnMaster> I'm on d90-130-2-10.cust.tele2.se atm
22:47:56 <AnMaster> dynamic ip though
22:48:12 <FireFly> I'm also .se
22:48:16 <FireFly> But I'm not AnMaster
22:48:18 <FireFly> (For the record)
22:48:20 <AnMaster> FireFly, another thing, same name "* BeholdMyGlory (n=arvid@d83-183-183-70.cust.tele2.se) has joined #esoteric" <-- my real name is Arvid
22:48:21 <BeholdMyGlory> and I'm on d83-183-183-70.cust.tele2.se
22:48:22 <AnMaster> ...
22:48:25 <oklopol> BeholdMyGlory doesn't really sound all that AnMastery.
22:48:29 <BeholdMyGlory> hah
22:48:32 <AnMaster> which is really strange
22:48:42 <BeholdMyGlory> great to see another swede named arvid :P
22:48:42 <ehird> also #archlinux too
22:48:50 <ehird> BeholdMyGlory: you probably suck as much as him.
22:48:59 <ehird> yw
22:49:02 <BeholdMyGlory> ehird: how come?
22:49:04 <AnMaster> I don't suck, you just hate me ;P
22:49:20 <flexo> hate you? you? no. how can that be?
22:50:01 <AnMaster> ehird, the channel list differs quite a bit too
22:50:30 <flexo> ah
22:50:33 <flexo> dbc is here
22:51:17 <flexo> which, you know, is the main reason i'm hanging out here. the other reason being that i joined.
22:51:57 <AnMaster> hah
22:51:57 <ehird> :D
22:52:00 <AnMaster> BeholdMyGlory, so now that we got person confusion sorted out, why did you come here?
22:53:09 <BeholdMyGlory> AnMaster: hm. because esoteric languages are wierd. O.o
22:53:45 <ehird> wierd is a specific esolang :P
22:53:49 <AnMaster> well yes
22:54:06 <BeholdMyGlory> ehird: why aren't I suprised? :P
22:54:29 <BeholdMyGlory> hm. anyone interested in seeing "Hello World!" in my very own language?
22:54:43 <BeholdMyGlory> ah. I'm just gonna post it anyway :P
22:55:02 <AnMaster> well, what language is this?
22:55:04 <BeholdMyGlory> <_+|+,,^..::>>___h>a^.-:*>*<__|,,^...e!a<_+|,!,^..:::l*o-a+||-o_a-:*>*<<+|,!!!s|a*><_+|+,,^^--**<<+++w<o,r+a:-_r^a_+|,!,^..:***d-s<u*a,!!*u,h!e^l.l-o:s*w>o<r_l+d|u
22:55:12 <BeholdMyGlory> that's hello world
22:55:20 <BeholdMyGlory> makes a lot of sense, doesn't it?
22:55:21 <ehird> wow.
22:55:25 <ehird> that's neat
22:55:29 <ehird> how does it work?
22:55:41 <AnMaster> interesting
22:55:47 <BeholdMyGlory> every character is an operator
22:55:49 * AnMaster wonders the same
22:55:53 <BeholdMyGlory> exept for letters
22:55:58 <BeholdMyGlory> they are variables
22:56:01 <AnMaster> BeholdMyGlory, what paradigm is this?
22:56:21 <BeholdMyGlory> what the operators do, depend on what position they're at
22:56:29 <BeholdMyGlory> :P
22:56:30 <AnMaster> also it is pretty verbose for a single-char-per-command language
22:56:42 <AnMaster> BeholdMyGlory, ouch ok
22:56:55 <AnMaster> BeholdMyGlory, can you pastebin a spec or such
22:56:55 <AnMaster> ?
22:57:08 <BeholdMyGlory> AnMaster: uhm. not really
22:57:18 <BeholdMyGlory> AnMaster: haven' gotten it all figured out yet
22:57:23 <BeholdMyGlory> *haven't
22:57:46 <AnMaster> BeholdMyGlory, ok, well, what about a preliminary spec? I mean it looks very interesting
22:57:54 <AnMaster> but also impossible to guess without having a spec
22:58:16 <flexo> BeholdMyGlory: do you have a way to loop or recurse?
22:58:27 <BeholdMyGlory> AnMaster: i'm gonna create a page at esolangs when it's done
22:58:31 <AnMaster> ah yes, lets check tc-ness
22:58:45 <BeholdMyGlory> flexo: not yet, but it will
22:58:49 <flexo> ...
23:00:12 <flexo> any native english speakers here?
23:00:48 <ehird> yes
23:00:49 <ehird> me
23:01:04 <flexo> tell me then.. there is some song or something, i don't know
23:01:09 <flexo> the question just came up in another channel
23:01:14 <AnMaster> BeholdMyGlory, You need (theoretical, as in the spec, not in any actual implementations) infinite memory, so if you have a limited number of variables and no way to store data in stacks, arrays, lambdas or whatever you aren't TC 3) a way to loop or recurse
23:01:19 <AnMaster> for tc
23:01:24 <AnMaster> of course it may still not be TC
23:01:26 <flexo> a part of it goes like "she got her own"
23:01:33 <AnMaster> but those are easy checks
23:01:47 <FireFly> Actually, BeholdMyGlory has a Java program which can run the above Hello World code..
23:01:51 <flexo> does that mean anything? how much slang is it?
23:01:55 -!- Corun has joined.
23:02:06 <flexo> (not referencing some object ofcourse)
23:02:07 <AnMaster> to actually prove something TC you need to prove it able to interpreter some "known TC" language
23:02:20 <ehird> flexo: not enough context
23:02:26 <ehird> FireFly: oh, you're in cahoots with him.
23:02:27 <flexo> "i love her cause she got her own"
23:02:28 <ehird> bloody swedes.
23:02:36 <FireFly> ;D
23:02:58 <BeholdMyGlory> what've got against us? -.-
23:03:01 <AnMaster> ah didn't know you were Swedish too FireFly :)
23:03:03 <flexo> ehird: .. so?
23:03:09 <FireFly> Well now you do
23:03:15 <AnMaster> hm
23:03:25 <flexo> ehird: people are saying it means that "she's independent"
23:03:32 <ehird> prolly
23:03:34 <flexo> but i've never heard that phrase before
23:03:44 <ehird> BeholdMyGlory: swedes are finns, except fake. and dirty
23:03:48 <flexo> what do you mean by "probably"? don't guess from context, i can do that too :)
23:03:50 <AnMaster> how many Finnish people are there now again. Lets see... oklo, fizzie, deewiant, and some more iirc?
23:03:54 <AnMaster> hm
23:04:15 <ehird> dewi
23:04:21 <ehird> ilari
23:04:22 <AnMaster> ah
23:04:30 <AnMaster> 5?
23:04:36 <oklopol> dewi is australian
23:04:39 <ehird> oh.
23:04:40 <ehird> okay.
23:04:44 <AnMaster> 4 then?
23:04:46 <flexo> ehird: answer!
23:04:54 <oklopol> (i thinks.)
23:04:57 -!- olsner has quit ("Leaving").
23:05:00 <ehird> flexo: i dunno
23:05:06 <flexo> thanks
23:05:07 <flexo> :)
23:05:28 <AnMaster> 4 Swedes I think, me, firefly, behold..., and that person on who who isn't oklo or oerjan and who's name I temporarily forgot
23:05:37 <ehird> olsner
23:05:41 <AnMaster> ah thanks
23:05:42 <AnMaster> that is it
23:05:50 <AnMaster> ehird, how many from UK?
23:05:57 <AnMaster> you and ais I know, but that is it or?
23:06:45 <ehird> Asztal:
23:06:55 <ehird> but thats it
23:08:32 <AnMaster> hah
23:08:43 <AnMaster> ehird, what about comex?
23:08:50 <ehird> US.
23:08:53 <AnMaster> ah
23:10:33 <ehird> grr, there aren't enough good .cx registrars
23:11:01 <AnMaster> ehird, may I ask why you want .cx?
23:11:09 <ehird> it's complicated
23:11:23 <AnMaster> ehird, oh? a shocksite with pics of yourself?
23:11:24 <AnMaster> fine
23:11:26 <AnMaster> :P
23:11:28 <ehird> lol.
23:11:28 <AnMaster> ~
23:11:28 <ehird> no.
23:11:39 <ehird> specifically, I'm searching for the shortest domain I can get
23:11:49 <AnMaster> ehird, a.cx?
23:11:52 <ehird> t.cx
23:11:58 <ehird> the other letters are taken.
23:12:07 <AnMaster> ehird, and so for all other tlds?
23:12:15 <ehird> i don't want to check all of them
23:12:19 <AnMaster> ehird, ok
23:12:19 <ehird> (yes, I could automate a whois...)
23:12:35 <FireFly> isn't one-letter domains usually more expensive than longer?
23:12:40 <ehird> yes.
23:12:46 <ehird> and .cx is expensive enough as-is
23:13:01 <AnMaster> ehird, well, if you get t.cx it should be made into either a pastebin or an url shorterner
23:13:09 <ehird> no :P
23:13:14 <AnMaster> ehird, what!?
23:13:24 <oklopol> vjn.pb is quite short, and it's still not all that famous.
23:13:27 <ehird> i don't like url shorteners, and pastebin URIs don't have to be short
23:13:30 <oklopol> ...
23:13:39 <oklopol> yeah, exactly. vjn.pb, that's it.
23:13:48 <ehird> moar like vjn.fi/pb
23:14:07 <oklopol> no no we bought the tld pb for that.
23:14:13 <FireFly> Well
23:14:31 <AnMaster> oklopol, what country is .pb?
23:14:34 <ehird> none.
23:14:35 <ehird> he's bullshitting
23:14:40 <AnMaster> ah
23:15:02 <oklopol> :|
23:15:20 * oklopol leaves
23:15:21 <ehird> what would be cooler is a number on some tld, that parses better
23:15:22 <ehird> like
23:15:24 <oklopol> ~>
23:15:25 <ehird> eh@t.cx
23:15:25 <ehird> vs
23:15:27 <ehird> eh@2.cc
23:25:08 <AnMaster> ehird, hm, valid?
23:25:16 <ehird> yeah.
23:25:45 <AnMaster> ehird, and all used?
23:25:54 <ehird> 2.cc is available I think
23:26:00 <AnMaster> ehird, also, why "eh", why not "e"?
23:26:05 <ehird> its a bit awkward to type though
23:26:08 <ehird> AnMaster: shrug
23:26:14 <ehird> wait, no
23:26:16 <ehird> 2.cc is taken
23:34:22 <ehird> darn, cc.tv isn't available
23:41:35 <FireFly> 'night
23:41:45 -!- FireFly has quit ("Later").
2009-01-12
00:06:59 -!- Corun has quit ("This computer has gone to sleep").
00:11:43 <BeholdMyGlory> uhm.
00:11:52 <BeholdMyGlory> If anyone's still interested
00:12:05 <BeholdMyGlory> I've written a preliminary spec
00:12:14 <BeholdMyGlory> http://pastebin.com/m78cbca0b
00:12:43 <BeholdMyGlory> But keep in mind that the whole thing will change if I decide to add another operator ^^
00:13:34 <ehird> BeholdMyGlory: you need more than a byte of memory.
00:13:58 <BeholdMyGlory> ehird: no, since you store eveything in variables ^^
00:15:08 <BeholdMyGlory> ehird: which means variables wouldn't be a part of the memory... uhm. okay, that sounds a bit wierd, but still. you'll probably get the idea
00:15:18 <ehird> there are only 26 variables, no?
00:15:20 <ehird> not enough.
00:15:55 <BeholdMyGlory> ehird: well, tough luck if you need more. I haven't written it to be easy to use
00:16:01 <BeholdMyGlory> ehird: quite the opposite
00:16:01 <flexo> haha
00:16:05 <ehird> BeholdMyGlory: not tough luck
00:16:08 <ehird> I mean it won't be turing complete
00:16:16 <ehird> and thus you won't be able to write non-trivial programs in it
00:16:18 <ehird> at all
00:16:21 <ehird> simply impossible
00:17:09 <BeholdMyGlory> ehird: well, remember that I'm still figuring out the details
00:17:24 <BeholdMyGlory> ehird: will probably add a lot of other operators
00:17:27 <ehird> you need either an infinite amount of memory, or infinitely large numbers
00:17:33 <flexo> oh yea
00:17:33 <ehird> if you have neither, bzzt, not turing complete
00:17:38 <flexo> operators will solve that problem
00:17:45 -!- Corun has joined.
00:17:45 <ehird> how
00:17:51 <flexo> well
00:17:53 <flexo> you know the
00:17:56 <flexo> sarcasm operator?
00:18:04 <flexo> ...
00:18:09 <ehird> what
00:18:20 <flexo> never. mind.
00:19:59 <ehird> flexo: esplain :|
00:20:00 <BeholdMyGlory> ehird: and will also think of a better way to manage variables. might think of a way to make an infinite numbers of variables
00:20:16 <flexo> ehird: are you kidding me?
00:20:23 <ehird> flexo: possibly?
00:20:33 <ehird> are you drunk or something :|
00:20:33 <BeholdMyGlory> ehird: that was probably a quite sarcastic remark to my "will probably add a lot of other operators"
00:20:36 <flexo> nope
00:21:01 <flexo> i think he's kidding me
00:21:14 <ehird> what
00:21:55 <BeholdMyGlory> ehird: "[01:17:38] <flexo> operators will solve that problem" = sarcastic response to "[01:17:23] <BeholdMyGlory> ehird: will probably add a lot of other operators"
00:22:05 <ehird> i see/
00:22:29 <BeholdMyGlory> good for you
00:22:43 <flexo> anyway, you need less operators, not momre
00:22:44 <flexo> *more
00:23:33 <ehird> why
00:23:33 <flexo> but this doesn't really matter when it's not TC
00:23:36 <ehird> not every language has to be a tarpi
00:23:36 <ehird> t
00:23:38 <BeholdMyGlory> flexo: more operators = harder to keep track of them all = harder to program in general = my goal ^^
00:24:00 <flexo> ehird: yea well, but you need something novel
00:24:09 <flexo> feature creep is not novel
00:24:09 <ehird> its his first esolang
00:24:11 <ehird> give him a break
00:24:37 <ehird> BeholdMyGlory: I will note that Malbolge is pretty much the epitome of that: http://esolangs.org/wiki/Malbolge
00:24:46 <flexo> so? i've never written an esolang - for exactly thateason
00:24:50 <flexo> *reason
00:24:55 <flexo> also, i suspect he knows malbolge
00:24:56 <ehird> whine whine whine
00:25:09 <flexo> because the operator rotating thing likks taken from there
00:25:10 <flexo> ;)
00:25:49 <flexo> *looks like
00:26:33 <flexo> no, the world needs another glorious esolang
00:26:34 <BeholdMyGlory> flexo: i have stumbled across that page, but didn't read any of it. when looking at the examples, it seemed to be a bit too much to grasp
00:26:57 <flexo> BeholdMyGlory: examples?
00:27:13 <BeholdMyGlory> flexo: well, sample programs
00:27:22 <flexo> there exist no sample programs
00:27:35 <flexo> you might want to read the page ;)
00:27:40 <ehird> um yes
00:27:41 <ehird> there do
00:27:49 <ehird> http://esolangs.org/wiki/Malbolge#Sample_programs
00:28:00 <ehird> also guide: http://esolangs.org/wiki/Malbolge_programming
00:29:03 <flexo> yes
00:29:11 <flexo> i know that there exist programs
00:29:24 <flexo> but that hardly counts as an "example"
00:29:34 <flexo> because those examples make up like 25% of all existing programs
00:29:54 <flexo> and were written years after malbolge was published
00:29:59 <ehird> yes.
00:29:59 <ehird> we know.
00:30:02 <flexo> i know you do
00:30:18 <flexo> i'm trying to tell what i mean by saying there exist no sample programs
00:30:30 <flexo> as in
00:30:39 <flexo> "here's a reference, oh, and now i'm going to show you how to write hello world"
00:31:58 <flexo> hmmm
00:32:25 <flexo> a more formalized version of "the incredible machine"
00:33:03 <flexo> nah
00:33:16 <flexo> either too undeterministic, or too boring
00:38:50 -!- BeholdMyGlory has quit ("bye for now").
00:40:10 -!- metazilla has quit ("- nbs-irc 2.37 - www.nbs-irc.net -").
01:06:04 -!- puzzlet has quit (kornbluth.freenode.net irc.freenode.net).
01:06:05 -!- flexo has quit (kornbluth.freenode.net irc.freenode.net).
01:06:28 -!- puzzlet has joined.
01:06:28 -!- flexo has joined.
01:21:11 * AnMaster dislikes that person using the name alang
01:24:37 -!- oerjan has joined.
02:19:47 -!- oerjan has quit ("leaving").
02:33:19 -!- GreaseMonkey has joined.
03:16:45 -!- Corun has quit ("Leaving").
03:20:07 -!- Corun has joined.
04:31:12 -!- kerlo has joined.
04:31:24 <kerlo> Hmm...
05:39:41 -!- Corun has quit ("Leaving").
05:40:12 -!- seveninchbread has joined.
05:40:38 -!- CakeProphet has quit (Nick collision from services.).
05:40:51 -!- seveninchbread has changed nick to CakeProphet.
05:54:37 <psygnisfive> wee
05:54:38 <psygnisfive> :D
05:54:45 <psygnisfive> i learned how to do unification :D
05:54:56 <Slereah_> With U?
05:55:09 <psygnisfive> what?
05:55:22 <Slereah_> UNION SYMBOL
05:55:34 <psygnisfive> well i suppose after a fashion
05:55:39 <psygnisfive> what do you mean "with U" tho?
05:55:49 <Slereah_> U is the union symbol.
05:55:55 <psygnisfive> yes
05:56:07 <psygnisfive> i said unification, not union
05:56:15 <Slereah_> A U B = {x|x in A \/ x in B}
05:56:20 <psygnisfive> unification, like prolog does
05:56:28 <Slereah_> I don't know what prolog does, nerd
05:56:34 <psygnisfive> it does unification!
05:56:48 <psygnisfive> unification is kind of like pattern matching, actually
05:56:55 <psygnisfive> its something you use when you do pattern matching
05:57:05 <psygnisfive> its the binding of variables in a pattern to the thing they match
05:57:22 <psygnisfive> but it works on complicated structures not just simple ones
06:06:12 -!- seveninchbread has joined.
06:06:49 -!- CakeProphet has quit (Nick collision from services.).
06:06:55 -!- seveninchbread has changed nick to CakeProphet.
06:15:50 -!- seveninchbread has joined.
06:16:29 -!- CakeProphet has quit (Nick collision from services.).
06:16:31 -!- seveninchbread has changed nick to CakeProphet.
06:30:16 -!- seveninchbread has joined.
06:30:33 -!- CakeProphet has quit (Nick collision from services.).
06:30:35 -!- seveninchbread has changed nick to CakeProphet.
06:40:33 -!- olsner has joined.
07:22:49 <fizzie> Heh, nice job advertisement on our board. "Do you enjoy coding? Do you think about the code you write? Do you favor some "exotic" programming language (such as Lisp, Lua, ML, Haskell or Erlang) over C++ and Java? If so, then you may be just the person to come write some Symbian C++ code for us."
07:24:05 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
07:26:35 -!- CakeProphet has joined.
07:34:52 <psygnisfive> lmfao
07:35:05 <psygnisfive> do you prefer other languages of C++? then you're probably the right person to code our C++!
07:35:43 <psygnisfive> on the one hand, its true. in that, knowing any of the above probably makes you a better C++ coder if you also know C++.
07:35:52 <psygnisfive> on the other hand, C++.
07:46:17 -!- oerjan has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:55 <fizzie> On the third hand, it's not just any C++, it's *Symbian* C++. And two wrongs don't make a right here.
08:04:08 <Slereah_> fizzie is a mutant
08:04:59 <oerjan> all finns are
08:05:07 <psygnisfive> symbian c++?
08:05:09 <oerjan> they're really sort of cleaned-up zombies
08:05:45 <Slereah_> Do finns have fins?
08:05:54 <oerjan> not after the cleanup
08:05:56 <fizzie> They do not tell what the project is all about, so it's hard to say if that's why preferring "exotic" languages is a good thing there.
08:08:21 <fizzie> Symbian C++ uses a strange preprocessor-macro-based "trap harness" exception system, because they don't support real C++ exceptions. And all objects whose construction might fail therefore need to use a really strange two-phase construction so that they properly end up in the custom "cleanup stack".
08:08:59 <fizzie> (Except that I think Symbian v9 or something added support for real C++ exceptions. Not that the API classes use those.)
08:21:19 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
08:22:20 -!- CakeProphet has joined.
08:29:02 -!- seveninchbread has joined.
08:35:39 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
08:50:10 -!- ais523 has joined.
09:22:51 -!- GreaseMonkey has quit ("e disasterous.").
09:24:44 <Asztal> and "thin" templates
09:30:21 <fizzie> Yes, that too.
09:30:24 -!- oerjan has quit ("leaving").
09:31:06 <Asztal> I half-read a book on Symbian C++ once, glad I never had to use it :)
09:33:44 <fizzie> I've done a tiny bit of Symbian C++, and it... wasn't pleasant. The user interface side seemed especially painful, although I didn't really have to touch that.
09:50:11 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
09:57:28 -!- ais523 has joined.
10:21:52 -!- seveninchbread has quit (Read error: 110 (Connection timed out)).
10:24:04 -!- CakeProphet has joined.
10:48:16 -!- psygnisfive has changed nick to p5[z.
10:48:35 -!- p5[z has changed nick to p5[zi.
10:48:58 -!- p5[zi has changed nick to p5[ziiz].
11:06:04 -!- BeholdMyBot has joined.
11:13:40 <BeholdMyBot> hej
11:13:58 -!- BeholdMyBot has quit ("bye").
11:13:59 <ais523> hy
11:14:07 <ais523> that was strange...
11:14:15 <ais523> I wonder if BeholdMyBot is a bot
11:14:18 <ais523> or a bot advertiser?
11:15:22 -!- FF|Java|2 has joined.
11:15:25 <FF|Java|2> It's a bot
11:15:39 -!- FF|Java|2 has quit (Client Quit).
11:17:17 -!- BeholdMyBot has joined.
11:17:19 <BeholdMyBot> hejd
11:17:21 -!- BeholdMyBot has quit (Client Quit).
11:18:22 * ais523 wonders if BeholdMyBot interprets any esolangs yet
11:22:52 -!- jix has joined.
12:16:17 -!- ais523 has quit ("rebooting").
12:20:20 -!- ais523 has joined.
12:44:03 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
12:44:21 -!- comexk has joined.
12:46:59 -!- olsner has quit (kornbluth.freenode.net irc.freenode.net).
12:46:59 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
13:00:03 -!- olsner has joined.
13:06:51 -!- KingOfKarlsruhe has joined.
13:55:45 -!- Corun has joined.
14:00:57 <oklopol> fungot: do you think i should watch another ep?
14:00:57 <fungot> oklopol: lets see, there are some
14:01:06 <oklopol> fungot: well yes, there are
14:01:07 <fungot> oklopol: ( gravity influences pretty much everything, though.
14:01:11 <oklopol> i guess.
14:01:16 <oklopol> so maybe i'll ^bool?
14:01:18 <oklopol> ^bool
14:01:18 <fungot> No.
14:01:23 <oklopol> :|
14:01:31 <oklopol> sure about that?
14:01:33 <oklopol> ^bool
14:01:33 <fungot> No.
14:01:42 <oklopol> well then i'll ask again
14:01:44 <oklopol> ^bool
14:01:44 <fungot> Yes.
14:01:50 <oklopol> so k, i'll watch
14:01:55 <oklopol> glad i only needed to ask twice.
14:06:27 <fizzie> I'm not sure this ^bool thing is useful if you keep retrying until you get the answer you want.
14:07:11 <oklopol> STOP TELLING ME HOW TO LIVE MY LIFE
14:12:08 <fizzie> You will only get the benefits (happiness, money, love, that sort of stuff) if you unquestionably obey fungot.
14:12:09 <fungot> fizzie: right, and it would start being scary otherwise.... so i agree with yome, though he's a friend, i do
14:13:06 <fizzie> Unquestioningly, I mean.
14:13:35 <jix> fungot: what should i code on now?
14:13:35 <fungot> jix: the acme clone? :o) ( fnord
14:13:50 <jix> fungot: what's the acme clone?
14:13:50 <fungot> jix: http://www.bloodandcoffee.net/ campbell/ txt/ cps-tutorial.log it gets to the bottom.
14:16:21 <fizzie> Acme is the Plan 9 editor/development-environment/thing.
14:17:23 <jix> ah
14:17:27 <jix> but no i will not code on that
14:18:48 <fizzie> Well, then you won't be happy and successful. It's as simple as that. (Disclaimer: fungot might also be wrong, though I don't see how that would be possible.)
14:18:48 <fungot> fizzie: is there any docs about any bytecode system used by any scheme? i'm using it for my needs.
14:19:50 <fizzie> I guess it all depends on whether cfunge's ? instruction always chooses correctly.
14:20:41 <jix> how is it implemented
14:24:07 <fizzie> Seems to be the two lowest bits out of random(), seeded by gettimeofday tv_usec member. Or at least that's what it looked like.
14:31:09 <jix> hmmm seeded on app start or with every call?
14:31:36 <jix> if it were the lower two bits of rand and not random it would be pretty predictable IIRC
14:32:03 <fizzie> Uh, app start, of course.
14:32:28 <jix> well some people want to be "extra sure" and seed before every rand call
14:32:49 <jix> that combined with the time as source can make it pretty much unrandom ^^
14:33:09 <fizzie> And as far as I know glibc's rand()/srand() just use random()/srandom() initially. But all C books and other sources warn about rand's lowest bits, so I'm sure there have been crappy rand(3) implementations.
14:34:12 <jix> hmm at least the mac os x manpage of random warns about rand usage..... the rand manpage doesn't -_-
14:34:34 <fizzie> Heh, that's a clever trick.
14:35:28 <jix> oh wait it kind of warns about it
14:35:41 <jix> rand, rand_r, srand, sranddev -- bad random number generator
14:35:43 <jix> in the title
14:36:13 <fizzie> The rand(3) man page on this Debian system says: "However, on older rand() implementations, and on current implementations on different systems, the lower-order bits are much less random than the higher-order bits. Do not use this function in applications intended to be portable when good randomness is needed. (Use random(3) instead.)"
14:37:11 <fizzie> SunOS title is more politically-correct: "rand, srand, rand_r - simple random-number generator"
14:47:13 -!- Corun has quit ("This computer has gone to sleep").
14:48:07 <flexo> okay
14:48:09 <flexo> munich rocks
14:49:03 <flexo> even the people who come to read off the radiator thingies (know what i mean?) offer you IT work
14:49:06 <flexo> :)
14:54:20 <jix> hmm apple sits in munich too right?
14:54:34 <jix> apple in germany is that
14:57:29 <flexo> yep
15:29:49 -!- FireFly has joined.
15:38:03 -!- Hiato has joined.
15:43:16 -!- Corun has joined.
15:53:58 <jix> :/ that's bad
15:54:06 <flexo> what?
15:54:15 <jix> that apple germany is in munich
15:54:27 <flexo> o.o
15:54:29 <flexo> how so?
15:55:11 <jix> i live in bremen
15:55:32 <flexo> hehe
15:55:51 <flexo> i suggest we skip the "your city sucks" part :)
15:56:09 <jix> and some apple guy said i could/should do an internship there when i study
15:56:53 <flexo> i just moved to munich from near hanover / gttingen / braunschweig
15:57:11 <jix> flexo: didn't got your last msg because of special chars and being unable to configure macirssi
15:57:22 <flexo> i just moved to munich from near hanover / goettingen / braunschweig
15:57:40 <jix> ah
15:58:06 <flexo> oberharz.. clausthal-zellerfeld actually
15:58:11 <jix> hmm i'm finishing school this year and i planned to study here in bremen too
15:58:20 <flexo> but bremen sucks :)
15:58:31 <jix> i don't think so ^^
15:59:04 <flexo> the munich city center is really beautiful
15:59:32 <jix> i know
15:59:58 <jix> but still it wouldn't be the number 1 place i want to live
16:00:11 <flexo> (granted, there are several bavarian beautiful cities)
16:00:35 <flexo> yea well. the rents are somewhat expensive hehe
16:00:37 <jix> actually i don't know what place that would be but for now bremen seems best for me... but that can change over time
16:01:36 <flexo> paying 575 eur with heating included for 38,5 m^2 x.x
16:02:11 <flexo> (and given the district this is rather cheap..)
16:02:18 <jix> hmm since i never had to rent a flat yet i have no idea how expensive that is usually or here
16:02:31 <flexo> in bremen? maybe the half :)
16:03:01 <flexo> i think "half of it" would be more correct ;)
16:03:29 <flexo> so yea, apple is here. not the reason i moved here though heh
16:03:43 <flexo> have been doing flight- and maintaince-simulators for eurocopter and eads for the last year
16:03:49 <jix> ah
16:04:22 <flexo> commuting between home and munich twice a week..
16:04:35 <jix> i have been doing work on nautics-simulators (dunno if that is translated correctly) :)
16:04:45 <flexo> which means getting up at 4am on monday to start working at 10:30
16:04:50 <jix> ouch
16:04:54 <flexo> doing 10 hour days the rest of the week
16:05:07 <flexo> because of going back on friday at 12:00
16:05:13 <jix> that's hard....
16:05:37 <flexo> .. yea. now i moved :)
16:06:06 <jix> but what i did was just 3d graphics nothing specific to simulation
16:06:11 <flexo> the work is fun
16:06:41 <flexo> next project will be integrating the control hardware from one flight-simulator with the simulation from another
16:06:45 <flexo> which means integration testing. fun :)
16:07:15 <jix> but it's one of the reasons i want to stay in bremen... i can work there basically whanever i want and get payed pretty good if i compare it to what others in my school do to earn some money ;)
16:08:04 <flexo> well
16:08:18 <flexo> you know what everyone says... there is no way around the south of germany in the IT sector.. ;)
16:09:06 <flexo> as i just told you. even the "heizungsableser" are desperately searching for qualified employees ;)
16:09:22 <jix> well i don't want to work for a heizungsableser ^^
16:09:24 <jix> :P
16:09:37 <jix> (even if it's IT work)
16:09:37 <flexo> seriously though
16:09:42 <flexo> there's posters everywhere
16:10:10 <flexo> 17:02 < jix> well i don't want to work for a heizungsableser ^^
16:10:57 <flexo> ^ ofcourse not as a...
16:11:11 <flexo> well
16:11:14 <flexo> don't know the right term
16:11:17 <jix> flexo: i got it that way (hence i added (even if it's IT work))
16:11:24 <flexo> no
16:11:25 <flexo> i mean
16:11:42 <flexo> i mean not as an employee ofcourse
16:12:03 <flexo> i've been working as a freelancer for the past two years
16:12:14 <flexo> and i seriously don't care what customers do for their living :)
16:12:32 <jix> well but from what i can imagine the IT work a heizungsableser-company needs isn't that interesting
16:12:33 <flexo> if they've got an interesting project to work on - we'll see
16:12:38 <jix> that was my point
16:12:40 <flexo> nah
16:12:44 <flexo> not for the company
16:13:27 <flexo> he's working as a freelancer too
16:14:01 <flexo> this was not related to "heizungsablesen" in any way
16:14:08 <jix> ah now i got it ^^
16:14:12 <flexo> except the fact that he seems to earn a few bucks by doing it
16:15:04 <flexo> really got to get back into freelancing
16:15:15 <flexo> for obvious reasons i didn't have much time last year..
16:15:34 <jix> but since it will take some years till i finish university and i'm not even sure in what exact direction i will go i think it would be bad to move to southern germany just because everyone sais there is no way around southern germany for IT work
16:15:58 <flexo> the weather is better too
16:16:05 -!- BeholdMyGlory has joined.
16:16:06 <jix> ^^
16:16:12 <jix> i'm fine with the weather here
16:16:13 <flexo> there are some language issues though
16:16:37 <flexo> uhm
16:16:39 <flexo> no you are not.
16:16:40 <flexo> :)
16:16:54 <jix> i am
16:16:55 <flexo> i've often been in bremen
16:16:59 <flexo> it's not as worse as the oberharz
16:17:09 <flexo> but it's not something to be fine with :)
16:17:12 -!- BeholdMyBot has joined.
16:17:19 <BeholdMyGlory> hey everybody
16:17:24 <BeholdMyGlory> check my bot!
16:17:29 <BeholdMyBot> (this is my bot)
16:17:33 <jix> flexo: what does anoy you about the weather in bremen?
16:17:33 <BeholdMyGlory> now...
16:17:38 <BeholdMyGlory> ^bf >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
16:17:38 <fungot> Hello World!
16:17:39 <BeholdMyBot> Interpreting >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
16:17:39 <BeholdMyBot> Hello World!
16:17:49 <flexo> jix: it's cold, rainy, gray - just as all nothern germany
16:17:49 <BeholdMyGlory> uhm
16:17:56 <flexo> *northern
16:18:11 <BeholdMyGlory> okay. seems i'm not the first one who made a bf-interpreting bot
16:18:18 <BeholdMyGlory> that's dissapointing
16:18:20 <BeholdMyGlory> :(
16:18:26 <jix> it's not too hot here i like that
16:18:30 -!- BeholdMyGlory has left (?).
16:18:55 -!- BeholdMyBot has left (?).
16:19:04 <flexo> it's not "hot" in the south either. just very comfortable.
16:19:05 <flexo> and green
16:19:07 <flexo> sunny
16:19:11 <flexo> well
16:19:12 <flexo> not now
16:19:14 <flexo> but it will be#
16:19:15 <flexo> :)
16:19:16 <jix> well when i was in munich the last time it was way too hot
16:20:37 <jix> but i think this "where to live" discussion is going nowhere and is quite redundand
16:20:45 <jix> ^^
16:21:15 <flexo> yea
16:21:23 <flexo> going nowhere because you fail to accept the truth :)
16:39:42 -!- sebbu2 has joined.
16:40:49 -!- sebbu has quit (Read error: 148 (No route to host)).
16:40:50 -!- sebbu2 has changed nick to sebbu.
16:41:50 -!- KingOfKarlsruhe has quit (Remote closed the connection).
16:50:03 <ehird> 16:18 <BeholdMyGlory> okay. seems i'm not the first one who made a bf-interpreting bot
16:50:03 <ehird> 16:18 <BeholdMyGlory> that's dissapointing
16:50:07 <ehird> So virginly innocent.
16:50:11 <ehird> fungot is written in befunge by the way.
16:50:11 <fungot> ehird: when people poke me at night, dressed completely in white and all sorts of odd things, so it was 2002
16:50:20 <ehird> http://zem.fi/~fis/fungot.b98.txt
16:50:20 <fungot> ehird: and er, " singularity"? so it's serious?
16:57:25 <ehird> lol
16:59:57 -!- p5[ziiz] has quit (Read error: 60 (Operation timed out)).
17:06:31 -!- kar8nga has joined.
17:11:36 -!- MigoMipo has joined.
17:12:10 -!- oerjan has joined.
17:17:47 <AnMaster> ehird, hi
17:17:54 <AnMaster> has ais been on today?
17:17:58 <ehird> yes.
17:18:01 <ehird> in ##nomic.
17:18:05 <ehird> 11am
17:18:05 <AnMaster> ah
17:18:10 <AnMaster> odd he wasn't in here today?
17:18:15 <ehird> why is that odd?
17:18:28 <AnMaster> he usually is on mondays
17:18:31 <oerjan> depends what you mean by "today"
17:18:45 <oerjan> 03:18:22 * ais523 wonders if BeholdMyBot interprets any esolangs yet
17:18:54 <AnMaster> hm ok
17:19:03 <AnMaster> ah now I see it
17:30:50 <oerjan> i would like to warn people against visiting Trondheim in January.
17:31:37 <oerjan> unless you are an american billionaire, in which case i would like to invite you to come here, break some bones, and sue the bejeezus out of our snow cleaning services.
17:33:01 -!- kar8nga has left (?).
17:37:09 -!- oerjan has quit ("leaving").
17:37:20 -!- oerjan has joined.
17:37:27 <ehird> hi oerjan
17:38:37 <oerjan> O_o was that automatic?
17:38:42 <ehird> no
17:39:36 <oerjan> well hi then
17:40:52 <olsner> btw, was this the channel where you were discussing volatile and signals the other day?
17:40:59 <ehird> yes
17:41:09 <ehird> yesterday
17:41:39 <olsner> did you get around to discussing sig_atomic_t? if not I believe someone may have drawn incorrect conclusions
17:42:02 <ehird> nope
17:45:53 <olsner> okay, as I suspected... I won't waste time explaining it though since it's all described elsewhere anyway
17:55:11 -!- asiekierk has joined.
17:55:19 <asiekierk> I'm uploading another sock puppet movie
17:55:23 <asiekierk> This time, no high-pitched voices
17:55:25 <asiekierk> and some POINT
17:55:38 <asiekierk> The points are: ".", ".", "." and ".".
17:56:01 <oerjan> but under what topology?
17:57:19 <asiekierk> ...topology?
17:57:22 <asiekierk> . . .
17:57:37 * oerjan cackles evilly
17:57:51 <asiekierk> Anyway, it's 23MB
17:58:02 <asiekierk> ((i hope YouTube WILL make it HQ this time))
17:58:16 <ehird> it will be my pleasure not to watch it
17:58:31 <asiekierk> man
17:58:37 <asiekierk> and i wasted 1 hour of my life to do that :(
17:58:41 <asiekierk> NEWS @ SOCK
17:58:51 <asiekierk> NEWS @ SOCK | ehird doesn't want to watch my videos!
17:59:04 <oerjan> ehird: hey don't talk like that! you'll force me to watch it just out of pity :(
17:59:17 <ehird> :D
18:00:31 <AnMaster> <oerjan> but under what topology? <-- heh
18:00:41 <oerjan> yay
18:01:03 <AnMaster> oerjan, I *think* I understood it, I know a bit of basic topology.
18:01:05 <oerjan> anywhere else that would have been too obscure for _anyone_ to get it :)
18:01:11 <ehird> i got it
18:01:12 <ehird> :\
18:01:13 -!- MigoMipo has quit ("Life without danger is a waste of oxygen").
18:02:59 <oerjan> asiekierk: in mathematics, nearly every "set of points" comes with a mathematical structure called a topology.
18:06:48 -!- Mony has joined.
18:10:09 <AnMaster> oerjan, also a topologist can save on expenses for coffee breaks in a unusual way. :)
18:11:03 <oerjan> er...
18:11:16 <AnMaster> oerjan, I'm quite sure this joke is old
18:11:17 <ehird> don't try and understand it, I think it would kill you
18:11:29 <oerjan> ehird: so you've heard it?
18:11:35 <ehird> nope
18:11:35 <AnMaster> ehird, I didn't make it up
18:11:36 <ehird> but AnMaster's telling it
18:11:49 <oerjan> you mean he'll mess it up somehow?
18:11:59 <ehird> no, but if he thinks it's funny, it's probably _awful_
18:12:00 <oerjan> so the point disappears...
18:12:06 <ehird> groan
18:12:10 <AnMaster> haha
18:12:14 <AnMaster> oerjan, that one was good
18:12:17 <ehird> see?
18:12:22 * AnMaster drinks a cup of coffee and then eats the cup as a doughnut.
18:12:22 <ehird> my logic is infallable
18:12:29 <oerjan> also, completely unintended until i clicked return
18:12:45 <oerjan> ah
18:13:18 <oerjan> i was fearing a klein bottle
18:13:42 * oerjan traps AnMaster in one
18:13:45 <AnMaster> ehird, was it that bad? I'm sure there was a flaw in the logic. (Or as we can say in Swedish, a hole in the argument!)
18:13:56 <oerjan> *groan*
18:14:08 <AnMaster> oerjan, yes that one was much worse
18:14:26 <oerjan> which for puns means better
18:14:29 <fizzie> One day I'll buy one of those Acme-brand glass Klein bottles. They come with a calibrated decal showing the volume, and everything: http://www.kleinbottle.com/images/classicbigcal1.jpg
18:14:33 <AnMaster> oerjan, heh
18:15:11 <AnMaster> fizzie, that is a fake one
18:15:24 <oerjan> but is it the inside or outside volume?
18:15:41 <AnMaster> oerjan, heh
18:15:43 <ehird> 18:15 <AnMaster> fizzie, that is a fake one
18:15:44 <ehird> no fucking shit
18:15:52 <ehird> wanna show me a real klein bottle?
18:16:02 <AnMaster> ehird, alas, I can't
18:16:34 <oerjan> first we need to invent wormholes. then it will be a simple matter.
18:17:37 <oerjan> possibly also strange matter
18:18:25 <AnMaster> oerjan, couldn't you do it if you could access a 4th dimension (not time)
18:18:42 <oerjan> yes
18:25:53 <asiekierk> http://www.youtube.com/watch?v=Z-mqlXEv31k
18:28:53 * oerjan wonders if you could construct a functional, sweet edible coffee cup
18:31:40 * ehird writes a script to print out all unused 4-character-total domain names registratable by foreigners
18:32:18 <oerjan> oh.no
18:32:27 <oerjan> (not actually unregistered)
18:32:47 <ehird> that is 5 characters total
18:33:03 <oerjan> oh
18:33:12 <ehird> i know one so far: t.cx is available
18:33:17 <ehird> but I can't find a registrar that will accept it
18:33:50 <Slereah_> No one will click on a .cx link, ehird
18:34:01 <ehird> sure they will, there's plenty of non-goatse .cxs about nowadays
18:34:16 <jix> ehird: some domains have a policy to only accept domain names with a specific length
18:34:17 <oerjan> hm a.com seems not to exist
18:34:22 <ehird> jix: yes
18:34:27 <ehird> i don't know if it's global nowadays though
18:34:31 <jix> like for .de it has to bee at least 3 chars afaik... only big companies seem to get an exception...
18:34:31 <oerjan> are you sure single letter domains are legal?
18:34:35 <ehird> oerjan: yes
18:34:40 <jix> like db.de or o2.de
18:34:44 <ehird> [a-z].cc are registered
18:34:46 <ehird> and v.cx is too
18:34:50 <jix> (or maybe they dropped that limitation)
18:34:53 <ehird> well, all letters .cx apart from t are registered
18:34:54 <ehird> :-P
18:35:04 <ehird> a-z.cc only display their namse with varying background colours
18:35:05 <ehird> oddly
18:35:26 <oerjan> hm...
18:35:48 <oerjan> y.fr does not exist, disappointing
18:35:52 <ehird> note: this search of all 3-char domains that can be registered by foreigners will take like 500 years
18:36:01 <ehird> y.es isn't registered :(
18:36:18 <jix> ehird: why will it take that long?
18:36:42 <ehird> jix: because there's a fucking lot of domains to search through :^)
18:36:49 <oerjan> a.cc has a webpage at least
18:36:54 <ehird> oerjan: yes, a-z.cc do
18:36:57 <ehird> 18:35 <ehird> a-z.cc only display their namse with varying background colours
18:36:57 <ehird> 18:35 <ehird> oddly
18:37:06 <oerjan> oh
18:37:06 <ehird> jix: there are 87 cctlds that are registerable by foreigners
18:37:12 <ehird> and i have to check a-z, 0-9 on all of them
18:37:20 <ehird> I could filter for doesn't-require-predefined-subdomain
18:37:22 <ehird> like .co.uk etc
18:37:22 <ehird> but
18:37:24 <ehird> lazy
18:37:39 <oerjan> oh by foreigners, i guess that excludes .no
18:37:51 <oerjan> i think you need a registered norwegian company
18:37:54 <ehird> you can't register .no outside of norway, it seems
18:38:00 <ehird> you can with .se though
18:38:03 <ehird> nor .fi
18:38:08 <ehird> %w(ac ag am as at be bi bo br bs cc cd cg ch ci ck cn cx dj dk ec es fj fm gd gl gr gs hk hm hn il im in io ir is la li ls lv md mn mp ms mu mw mx na nf nl nr nu ph pk pl pn pr ps pt ro rs ru sb sc se sh sm sr st sy tc tg th tj tk tl tm to tt tv tw ug us vc vg za)
18:38:53 <AnMaster> ehird, you could automate the whois requests
18:38:59 <ehird> no shit, that's what I'm doing
18:39:02 <ehird> except you don't need to whois
18:39:05 <ehird> just try a dns lookup
18:39:10 <AnMaster> ah true
18:39:23 <ehird> ie getaddrbyhost
18:39:27 <AnMaster> ehird, some may go to "this domain isn't registered yet"
18:39:31 <ehird> yes
18:39:36 <ehird> but I wouldn't associate with such uncouth tlds anyway
18:39:52 <AnMaster> ehird, well I have seen it for .com and what not
18:40:04 <ehird> oh, those are just squatters.
18:40:15 <ehird> they'd want me to pay like £500 upwards
18:40:16 <oerjan> doesn't mean squat
18:40:28 <AnMaster> you mean some registerer(sp?) reserve a domain?
18:40:55 <ehird> registrars
18:40:56 <ehird> and no
18:40:59 <ehird> all squatters do.
18:41:05 <ehird> they register valuable-looking domains
18:41:10 <ehird> and sell them at a batshit insane premium
18:41:13 <ehird> --> $$$$
18:45:14 <AnMaster> indeed
18:45:26 <ehird> % ruby one-char-domains.rb | tee one-char-domains.txt
18:45:35 <ehird> hmm, that failed.
18:46:13 * ehird just runs it in a terminal
18:46:47 <ehird> wtf
18:46:50 <ehird> it fails when you pipe it
18:46:54 <ehird> I wonder why...
18:46:54 <jix> ehird: dns isn't enough i think
18:47:02 <ehird> jix: why not?
18:47:10 <ehird> if you can look it up to an IP, it's registered
18:47:12 <jix> what if i register a domain and don't set up dns?
18:47:12 <ehird> if not, it's not
18:47:25 <ehird> well, okay, but that's gotta be very rare
18:49:12 <ehird> jix: how would you do it, then?
18:49:15 <ehird> whois is amazingly slow.
18:50:40 * ehird drops .ag from script due to lagging up the whole thing
18:51:51 <jix> ehird: just send out the whois requests in parallel
18:52:01 <ehird> jix: and get blocked from the servers? nothx
18:52:07 <jix> they block that?
18:52:12 <jix> hmm then first do dns in parallel
18:52:22 <jix> and do whois for those who don't answer
18:52:30 <jix> dns in parallel should be no problem at all
18:52:31 <ehird> nothing to do with parallel, something's going infinite
18:52:32 <ehird> i.e.
18:52:35 <ehird> the lookup never terminates
18:52:40 <ehird> i'm trying to figure out why the fuck
18:52:48 <jix> no dns server
18:52:55 <jix> but registered maybe?
18:52:56 <ehird> except I can resolve names frmo the server
18:52:59 <jix> hmmm
18:53:01 <ehird> a.ag takes infinite amount of time to resolve
18:53:06 <ehird> bmw.ag loads immediately
18:53:24 <jix> a.ag times out here...
18:53:56 <ehird> wonder how I could set the timeout using ruby's Resolv::DNS.
18:54:07 <jix> ehird: the nameserver for a.ag isn't online
18:54:13 <ehird> ah.
18:54:16 <ehird> dammit
18:54:23 <ehird> so I can't whois, I can't dns.
18:55:37 -!- KingOfKarlsruhe has joined.
18:55:48 * ehird looks at net-dns
19:00:43 -!- Badger has quit ("leaving").
19:05:19 <ehird> The "Shut Up Net::DNS I Know The Lookups Will Fail" maneuver:
19:05:20 <ehird> dns.instance_eval { @logger = Logger.new(File.open("/dev/null")) }
19:06:55 -!- Sgeo has joined.
19:08:05 <ehird> Hmm, that fails.
19:08:08 <ehird> Need a "w" in there.
19:10:03 -!- MigoMipo has joined.
19:10:08 -!- Hiato has quit ("Leaving.").
19:10:45 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
19:12:15 <jix> hmm have a working script now
19:12:27 <ehird> me?
19:12:28 <ehird> Yes.
19:12:34 <ehird> It's 22 lines.
19:12:47 <ehird> http://pastie.org/private/ertajest839sfbb2vei1yw
19:13:06 <ehird> And also intolerably slow , but there you go.
19:13:33 <jix> missed an I there
19:13:36 <jix> mine is pretty fast
19:13:40 <ehird> Ah.
19:13:43 <ehird> Show it :)
19:15:39 <jix> still testing
19:15:46 <jix> haven't done a complete run yet
19:16:02 <ehird> Of course, even if I find one of these domains that is nice and available and registerable, it'll cost like £100/year
19:16:04 <ehird> or more
19:17:05 <jix> took me 53.727secs to find 1460 free domains
19:17:23 <ehird> 1460? Is that using the same cctld set as mine?
19:17:38 <jix> yeah
19:17:55 <ehird> neat. show your script? :)
19:17:58 <oklopol> why did the tld cross the road?
19:18:05 <ehird> to get to the other sied
19:18:06 <ehird> *side
19:18:16 -!- Corun has quit ("This computer has gone to sleep").
19:18:18 <oklopol> no to get to the other SITE XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
19:18:18 <jix> ehird: i want to try how fast i can get it first ;)
19:18:19 <oklopol> ...
19:18:28 <oklopol> no wait that didn't make sense.
19:18:36 <ehird> jix: psht, 53 seconds is faster than the 10+ minutes I got :(
19:18:59 <oklopol> err. isn't the bottleneck kinda not in the script if you're doing something like that?
19:19:13 <ehird> yes
19:19:32 <oklopol> hmm.
19:19:48 <oklopol> well i guess you could optimize the average running time by a few microseconds still.
19:20:42 <ehird> jix: besides, how fast does a program like that need to be?
19:20:47 <ehird> i mean, vs actually being able to read it
19:20:53 <jix> oklopol: i'm trying how many worker threads can run in parallel
19:21:08 <ehird> that's machine-specific.
19:21:19 <jix> well might be the dns server drops request at some point...
19:21:27 <ehird> unlikely.
19:21:38 <jix> like with 100 worker threads i seem to lose some
19:22:07 -!- Corun has joined.
19:22:17 <ehird> you're mad.
19:22:53 <oerjan> wouldn't one thread per tld be more reasonable...
19:23:17 <jix> oerjan: well i use a queue for all tlds
19:23:23 <jix> oerjan: uhm for all domains
19:23:25 <oerjan> then they all are contacting different servers
19:23:37 <jix> oerjan: you send out the requests to the same server anyway
19:23:46 <oerjan> oh whois?
19:23:47 <jix> and then your dns server looks into its cache and then reaches for other servers
19:23:54 <ehird> how about just giving the script while you mess around with that :D
19:23:56 <jix> that's how dns works
19:24:22 <oerjan> surely there is nothing preventing you from contacting the tld servers directly
19:24:26 <jix> http://rafb.net/p/awMQ2387.html
19:24:42 <jix> oerjan: except making the code more complex
19:24:44 <oerjan> after using your local dns server once to get their names
19:24:54 <ehird> ('a'..'z').each do |letter|
19:24:55 <ehird> phail
19:25:07 <jix> ?
19:25:12 <ehird> it's a-z+0-9 :P
19:25:14 <jix> ah
19:25:21 <ehird> which should slow things down quite a bit...
19:25:28 <jix> a bit
19:25:54 <ehird> outputter = Thread.new do
19:25:55 <ehird> while line = output.pop
19:25:56 <oerjan> 36/26 ~ 1.385
19:25:56 <ehird> puts line
19:25:58 <ehird> STDOUT.flush
19:26:00 <ehird> end
19:26:02 <ehird> end
19:26:04 <ehird> that will quit on you randomly
19:26:06 <ehird> if output ever gets empty while that ticks
19:26:15 <jix> ehird: output.pop blocks
19:26:24 <ehird> oh, it's a queue
19:26:24 <ehird> okay
19:26:32 <jix> but the while is indeed a bit stupid
19:26:47 <ehird> why not, umm
19:26:50 <ehird> just STDOUT.puts in the threads
19:26:53 <jix> because i never put nil in there
19:27:06 <jix> ehird: two threads printing at the same time
19:27:11 <jix> happened without that
19:27:11 <ehird> big deal?
19:27:23 <ehird> umm, presumably stdout is line-buffered
19:27:32 <jix> ehird: well you get two lines and then two newlines
19:27:36 <ehird> hm
19:27:36 <jix> instead of line, newline, line, newline
19:27:45 <jix> i could have used a mutex for output tho.... ^^
19:28:36 <jix> thinking of that i'll just do that
19:30:25 <jix> and it seems i introduced a bug in the last version without testing
19:30:38 <jix> nameing two variables the same
19:31:29 <ehird> IO.popen("host -W #{timeout} #{domain} &> /dev/stdout","r") do |pipe|
19:31:33 <ehird> that's gotta be a bottleneck
19:31:52 <jix> starting a process vs waiting for a dns replay?
19:32:16 <jix> i doubt that
19:35:14 <jix> updated version with 10 workers:
19:35:15 <jix> real2m49.290s
19:35:15 <jix> user0m10.439s
19:35:15 <jix> sys0m21.829s
19:35:20 <jix> 1998 domains.txt
19:35:24 <ehird> well, that's worse then isn't it
19:35:55 <jix> worse than what?
19:36:07 <ehird> last time
19:36:11 <ehird> when it took 50sec
19:36:15 <jix> well i used 30 workers there
19:36:16 <ehird> oh, is this with 0-9 added?
19:36:18 <jix> yeah
19:36:27 <jix> and i only used 10 to not flood the dns server
19:36:52 <jix> http://rafb.net/p/q6SwbW77.html << the code
19:38:17 <ehird> looks good. I'll run it in a bit. wanna paste domains.txt? :)
19:38:32 <ehird> the hard part is finding the ones you can actually register ofc
19:39:43 -!- Corun has quit ("This computer has gone to sleep").
19:39:54 <jix> http://rafb.net/p/ji5zS758.html << sorted domain list
19:40:41 <ehird> neat
19:41:52 -!- seveninchbread has joined.
19:44:41 <ehird> http://newyork.craigslist.org/mnh/eng/989464357.html
19:44:43 <ehird> agile!
19:45:33 <ehird> [OPTIONAL]
19:45:34 <ehird> The website will contain a section called winners section; here customers can go with the attempt of winning points. This will be a game of winning and losing points. Customers will be prone to lose points instead of winning.
19:45:37 <ehird> [END OF OPTIONAL]
19:45:57 -!- Mony has quit ("quit").
19:53:48 <jix> hmm whois says whether the domain is invalid or free to buy
19:54:20 <ehird> but not in a standard format.
19:54:21 <ehird> and not alway
19:54:22 <ehird> s
19:54:26 <jix> hmmm
19:54:46 <jix> but having it reduced to about 2000 domains whois might even work
19:55:00 <ehird> maybe
19:55:07 <ehird> .cx doesnt seem to allow single-char names
19:55:11 <ehird> so you can eliminate them all
19:55:26 <ehird> also: screenscrape registrars to omit domains that are _really_ expensive ;-)
20:00:25 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
20:01:16 <ehird> http://www.screamingduck.com/Cruft/JmpAbuse.c
20:02:06 -!- asiekierk has quit.
20:07:47 -!- Zetro has joined.
20:21:45 -!- Corun has joined.
20:22:56 -!- psygnisfive has joined.
20:39:15 -!- MigoMipo has changed nick to MigoMipoSoftware.
20:40:29 -!- MigoMipoSoftware has changed nick to JohnSucks.
20:40:41 -!- JohnSucks has changed nick to JohnIsALoser.
20:43:36 -!- JohnIsALoser has changed nick to Peugeot205GTi.
20:51:32 -!- Zetro_ has joined.
20:51:46 -!- Zetro has quit (Read error: 131 (Connection reset by peer)).
20:55:06 -!- Peugeot205GTi has changed nick to MigoMipo.
20:55:22 -!- kar8nga has joined.
21:01:45 -!- KingOfKarlsruhe has quit (Read error: 104 (Connection reset by peer)).
21:07:21 -!- Zetro_ has quit (Read error: 60 (Operation timed out)).
21:09:51 -!- Zetro_ has joined.
21:10:00 -!- Zetro_ has changed nick to Zetro.
21:17:50 -!- MigoMipo has quit ("Never put off till tomorrow, what you can do the day after tomorrow").
21:17:51 -!- CakeProphet has joined.
21:21:24 -!- Zetro has quit (Remote closed the connection).
21:21:32 -!- seveninchbread has quit (Read error: 60 (Operation timed out)).
21:37:46 -!- Corun has quit ("This computer has gone to sleep").
21:47:16 <lament> i'm beginning to understand the bass guitar fretboard!
21:47:24 <lament> O O OO
21:47:25 <lament> O O OO
21:47:27 <lament> O OO O
21:47:29 <lament> O OO O
21:47:47 <lament> that's the nicest position.
21:48:13 <lament> there's a high shape and a low shape, and the two have a common middle part.
21:48:20 <lament> time is four corner.
21:48:37 <lament> instead of memorizing four-fret shapes, such as
21:48:42 <lament> O OO
21:48:43 <lament> OO O
21:48:44 <lament> O O
21:48:55 <lament> (that's a high shape, by the way)
21:49:10 <lament> it makes more sense to memorize the low-high pair
21:49:18 <lament> because they share the middle part anyway
21:49:36 <lament> O O OO
21:49:37 <lament> O OO O
21:49:42 <lament> O OO O
21:50:01 <lament> the high shape can be seen on the right.
21:50:48 <lament> (it's, uh, the E shape)
21:52:18 <AnMaster> huh
21:52:20 <lament> it's only 2-fret movement to switch from low to high or from high to low.
21:52:31 <oklopol> i just remember strings rise in fourths.
21:53:19 <lament> when actually playing, you don't have time to calculate what note is where
21:53:31 <lament> you need to know the shapes by heart
21:53:36 <AnMaster> lament, I fail at reading the notation you used
21:53:55 <AnMaster> I played guitar, though not bass guitar
21:54:02 <oklopol> lament: well i guess if you're doing a sweet sweep or something.
21:54:24 <AnMaster> (that is of course acoustic guitar)
21:54:29 <lament> AnMaster: they're just nets, people normally draw them vertically but i draw them horizontally here
21:54:37 <lament> with fret marks,
21:55:03 <lament> O| | O| | O| O|
21:55:12 <lament> O| | O| O| | O|
21:55:13 <lament> O| | O| O| | O|
21:55:15 <AnMaster> lament, can you show me a photo of holding that first one, since I fail to understand where you got your 6th finger from
21:55:30 <oklopol> :)
21:55:35 <AnMaster> (yes I obviously fail at understanding the notation)
21:55:53 <lament> AnMaster: the fretboard is horizontal in that pic.
21:55:59 <lament> each chat line is a string.
21:56:02 <AnMaster> hm
21:56:05 <AnMaster> maybe, hm ok
21:56:14 <lament> it's just like you see the fretboard if you look at it while playing.
21:56:22 <AnMaster> lament, how would you hold it with those two low O?
21:56:25 <AnMaster> the thumb?
21:56:50 <lament> when playing, you're restricted to a single position
21:56:55 <lament> four frets\
21:56:59 <lament> five, if you extend a finger
21:57:13 <lament> like, this is a major scale
21:57:14 <lament> o oo
21:57:16 <lament> oo o
21:57:17 <lament> o o
21:57:27 <lament> major scale, one octave in a single position
21:57:31 <AnMaster> lament, also, how many strings does a "bass guitar" have? You have shown 3 and 4 before
21:57:48 <lament> bass guitar has four strings: E A D G
21:57:51 <AnMaster> ah
21:57:53 <lament> same as four bass strings on a guitar
21:58:00 <lament> so all this stuff applies to that as well
21:58:15 * AnMaster has only played classical 6-stringed acoustic guitar
21:58:19 <lament> right
21:58:26 <lament> do you know CAGED?
21:58:49 -!- BeholdMyGlory has joined.
21:58:58 <AnMaster> lament, I know the word, it means in a cage, shouting (upper case)
21:59:04 <AnMaster> but I assume that isn't what you mean
21:59:06 <lament> ok, so you don't
21:59:20 <lament> there're five basic chords
21:59:22 <lament> on a guitar
21:59:28 <lament> C, A, G, E and D
21:59:45 <AnMaster> ah right, I never heard that name for them
21:59:47 <lament> other chords are formed from those
21:59:54 <lament> moved to a different fret and/or altered
22:00:16 <lament> each chord corresponds to a scale
22:00:17 <AnMaster> lament, also it was around 5 years I played played guitar, I take piano lessons nowdays
22:00:20 <lament> each chord shape, i mean
22:00:27 <lament> cool, what do you play?
22:00:34 <AnMaster> s/played played/last played/
22:00:41 <AnMaster> lament, piano I said...
22:00:45 <lament> yes but what?
22:01:06 <AnMaster> um... non-electrical piano?
22:01:17 <lament> what pieces?
22:01:17 <AnMaster> or what do you mean?
22:01:19 <AnMaster> aha
22:01:22 <oerjan> who's on first?
22:01:24 <AnMaster> right, why didn't you say that ;P
22:01:31 <AnMaster> oerjan, indeed!
22:01:53 <oklopol> AnMaster: what else could he have meant
22:01:59 <AnMaster> lament, well, currently I have a Swedish traditional xmas song
22:02:21 <lament> what is it called?
22:02:23 <oerjan> "O Helga Natt"
22:02:23 <AnMaster> lament, the first lesson after xmas is on Thursday
22:02:36 <AnMaster> Himlen i min famn
22:02:40 <oerjan> darn
22:02:46 <AnMaster> oerjan, good guess though
22:02:52 <lament> cool
22:03:05 <lament> AnMaster: cool.
22:03:10 <AnMaster> anyway busy now, *goes back reading postgre sql manual*
22:03:11 <lament> piano is nice.
22:03:57 <AnMaster> lament, well there are two downsides (for non-electrical ones): 1) heavy 2) uses a lot of space
22:04:08 <lament> even electric ones, yeah
22:04:18 <BeholdMyGlory> AnMaster: but they sound so much better
22:04:19 * oerjan somehow thought Himlen i min famn was written by Carola ;D
22:04:25 <AnMaster> at home I have an electrical one, I would never be able to get a non-electrical one up the stairs
22:04:38 <AnMaster> nor would I have space
22:04:41 <AnMaster> BeholdMyGlory, agreed
22:04:50 <AnMaster> a grand piano is a lot nicer to play on
22:05:00 <BeholdMyGlory> AnMaster: I actually play the piano as well...
22:05:04 <AnMaster> oerjan, errm no
22:05:11 <AnMaster> oerjan, maybe she sang it or such?
22:05:19 <oerjan> well obviously :)
22:05:29 <AnMaster> oerjan, the music sheet says "Trad"
22:05:51 <AnMaster> anyway
22:06:02 * AnMaster tries to resume reading postgresql manual
22:06:15 <oerjan> she _is_ the first google hit for it :D
22:08:30 <AnMaster> oerjan, that doesn't mean a lot. For example I was looking for "I Dreamt That I Dwelt in Marble Halls" recently, don't remember why. And Enya is the first hit for it. But it is actually from the 1843 opera "The Bohemian Girl" if you look a bit further down.
22:08:52 <oerjan> hah, i was right!
22:09:01 <oerjan> http://sv.wikipedia.org/wiki/Himlen_i_min_famn
22:09:28 <AnMaster> oerjan, odd that it says "traditional" then on the sheet of music.
22:09:34 <AnMaster> and there are no citations there
22:09:39 <oerjan> well if you believe swedish wikipedia
22:09:48 <FireFly> Well I don't :P
22:09:50 <AnMaster> oerjan, [citations needed]
22:09:59 <oerjan> well it is strange that _most_ of the google hits for the first two pages mention her
22:10:02 <AnMaster> and the sheet of music could be wrong, who knows
22:10:17 <oerjan> the melody could be older
22:10:50 <FireFly> Yey, my JS snake has 7th hit on swedish google for pages from the whole web for "Javascript snake" :D
22:10:52 <oerjan> it's not exactly unheard of for old melodies to get new christian texts
22:12:03 <AnMaster> oerjan, true, also it says the book was printed in 1993. And sv wikipedia claims it to be from 1999. This makes the whole thing quite a lot more dubious
22:12:13 <oerjan> aha
22:12:22 <AnMaster> oerjan, ?
22:12:32 <oerjan> your sheet music book?
22:13:48 <ehird> FireFly: link?
22:14:03 <FireFly> http://www.google.com/search?hl=sv&client=opera&rls=en&hs=vCV&q=javascript+snake+&btnG=S%C3%B6k&lr=
22:14:05 <AnMaster> oerjan, well a photocopy of one, with the word "Copyright 1994 Bonniers" and "Kopiering förbjuden" at the bottom of the page. The actual book is from/at the music school.
22:14:11 <AnMaster> err 1993
22:14:12 <AnMaster> typed
22:14:15 <FireFly> > FireFly.nu - Javascript-Snake
22:14:16 <AnMaster> typoed*
22:14:40 <ehird> crazy swedes
22:14:44 <AnMaster> ehird, ?
22:14:49 <FireFly> "a photocopy" "Kopiering förbjuden"
22:14:50 <FireFly> :D
22:14:53 <ehird> Swedes. They are crazy
22:15:00 <AnMaster> FireFly, yes indeed
22:15:03 <BeholdMyGlory> ehird: why? -.-
22:15:10 <oerjan> hm there's another link claiming she is the composer (but not the lyrics writer)
22:15:15 <ehird> BeholdMyGlory: because they are
22:15:17 -!- kar8nga has left (?).
22:15:21 <BeholdMyGlory> ehird: got proof?
22:15:29 <oerjan> oh wait that's a norwegian text translation
22:15:34 <ehird> BeholdMyGlory: yes: everyone in here.
22:15:41 <FireFly> :<
22:15:57 <AnMaster> FireFly, interesting if you referse 180 degrees it looks backwards but continues forwards
22:15:58 <ehird> sheesh do you realise where you are
22:15:59 <AnMaster> is that intended?
22:16:06 <ehird> you're crazy by definition
22:16:08 <FireFly> I know, and no, it isn't :P
22:16:29 <FireFly> But I havn't done anything to try to fix it
22:16:48 <lament> AnMaster: pianos are the best because you play them sitting down
22:16:57 <AnMaster> FireFly, why not use "Spel slut" instead of "Game over"?
22:17:05 <ehird> because swedes are crazy
22:17:09 <AnMaster> or rather "Spelet är slut"
22:17:15 * oerjan adds -carola to the google search
22:17:18 <AnMaster> lament, ah yes good point
22:17:23 <oklopol> spell slut :DD
22:17:25 <AnMaster> lament, very good point even
22:17:32 <FireFly> Because of ^
22:17:32 -!- BeholdMyBot has joined.
22:17:32 <BeholdMyBot> Hi, BeholdMyBot!
22:17:43 <lament> Hi, lament!
22:17:44 <FireFly> Not very good when you link it in english channels :D
22:17:54 <BeholdMyGlory> ^vote Are swedes crazy?
22:17:55 <FireFly> No, but I prefer the english term, feels more.. correct
22:17:55 <BeholdMyBot> Vote cast by BeholdMyGlory: Are swedes crazy?
22:17:55 <AnMaster> BeholdMyBot, narcissism?
22:18:02 <AnMaster> hm
22:18:02 <FireFly> ^no
22:18:03 <BeholdMyBot> Yes: 0, No: 1.
22:18:07 <AnMaster> ^no
22:18:07 <BeholdMyBot> Yes: 0, No: 2.
22:18:08 <BeholdMyGlory> (everyone type "^no")
22:18:10 -!- jix has quit ("...").
22:18:10 <FireFly> :D
22:18:12 <BeholdMyGlory> ^no
22:18:13 <BeholdMyBot> Yes: 0, No: 3.
22:18:13 <lament> ^yes
22:18:14 <BeholdMyBot> Yes: 1, No: 3.
22:18:23 <ehird> ^die
22:18:35 <AnMaster> ehird, that counts as abstain?
22:18:37 <lament> BeholdMyGlory: "Vote cast by BeholdMyGlory" means you have voted.
22:18:37 <ehird> ^vote do I suck?
22:18:38 <BeholdMyBot> Vote already in progress.
22:18:44 <oerjan> this is not helping...
22:18:47 <ehird> ^endvote
22:18:50 <ehird> ^die
22:18:50 <BeholdMyGlory> lament: oh. that's right
22:18:54 <BeholdMyBot> Vote ended.
22:18:55 <BeholdMyBot> No leads yes with 3>1.
22:18:59 <BeholdMyGlory> lament: i'll have to fix that
22:19:00 <ehird> ^burninafireypitofhell
22:19:03 <ehird> ^vote do I suck
22:19:04 <BeholdMyBot> Vote cast by ehird: do I suck
22:19:04 <oerjan> hey i didn't get to vote :(
22:19:06 <ehird> ^yes
22:19:06 <BeholdMyBot> Yes: 1, No: 0.
22:19:09 <ehird> ^yes
22:19:10 <BeholdMyBot> ehird has already voted.
22:19:13 -!- ehird has changed nick to notehird.
22:19:15 <notehird> ^yes
22:19:15 <BeholdMyBot> notehird has already voted.
22:19:18 <AnMaster> :D
22:19:19 -!- notehird has changed nick to ehird.
22:19:24 <lament> ehird: part, rejoin
22:19:27 <FireFly> ^yes
22:19:27 -!- ehird has left (?).
22:19:27 <BeholdMyBot> Yes: 2, No: 0.
22:19:29 -!- ehird has joined.
22:19:29 <BeholdMyBot> Hi, ehird!
22:19:32 <ehird> ^yes
22:19:32 <BeholdMyBot> ehird has already voted.
22:19:32 <BeholdMyGlory> ^yes
22:19:33 <BeholdMyBot> Yes: 3, No: 0.
22:19:35 -!- ehird has left (?).
22:19:43 -!- notehird has joined.
22:19:43 <BeholdMyBot> Hi, notehird!
22:19:45 <notehird> ^yes
22:19:45 <BeholdMyBot> notehird has already voted.
22:19:49 <AnMaster> hm
22:19:49 <notehird> die, bitch
22:19:52 -!- notehird has changed nick to ehird.
22:19:55 <FireFly> Protip: It uses the hostname
22:19:56 <ehird> im not changing my effing ident for you
22:19:58 <FireFly> :D
22:19:58 <lament> ehird: change username
22:19:59 <ehird> FireFly: duh
22:20:00 <lament> oh, ident
22:20:03 <BeholdMyBot> Vote ended.
22:20:04 <BeholdMyBot> Yes leads no with 3>0.
22:20:08 <lament> ^yes
22:20:08 <BeholdMyBot> No vote cast.
22:20:11 <BeholdMyGlory> hum
22:20:16 <BeholdMyGlory> okay
22:20:17 <fizzie> Heh, note-hird.
22:20:18 <lament> "No vote cast" is not correct either.
22:20:19 <AnMaster> FireFly, hostname is bad, since often a lot of people are on the same host
22:20:25 <BeholdMyGlory> lament: I know, i know
22:20:37 <FireFly> Better than no protection at all / nick protection
22:20:50 -!- BeholdMyBot has quit ("bye").
22:20:51 <AnMaster> ^vote Does ehird suck?
22:20:53 <AnMaster> argh
22:20:57 <BeholdMyGlory> hah :P
22:20:59 <FireFly> Timing
22:20:59 <AnMaster> oh and no he doesn't
22:21:12 <lament> DOES TOO!
22:21:13 <ehird> depends how well you pay. :|
22:21:16 <ehird> :| :| :|
22:21:20 <AnMaster> lament, that always confused me
22:21:44 <BeholdMyGlory> lament: is "no vote in progress" better? :P
22:21:46 <AnMaster> "Does too" seems like bad English grammar.
22:21:55 <AnMaster> BeholdMyGlory, no voting in progress
22:21:57 <lament> here's a bass guitar with infinitely many (well, 10) strings:
22:21:58 <ehird> <AnMaster> wut is an idiom??????//////
22:21:58 <AnMaster> may be better
22:22:10 <AnMaster> ehird, ah, it is an idiom?
22:22:15 <AnMaster> What exactly does it mean?
22:22:18 <lament> http://hpaste.org/13867
22:22:24 <ehird> AnMaster: "no, you're wrong, it does"
22:22:30 <lament> you'll get the same shape if you tune a regular guitar in all fourths
22:22:31 <AnMaster> ehird, ah thanks
22:23:04 <AnMaster> because logically ehird, I think it sounds like it means "yes you are right, but it is also the opposite" or something like that
22:23:17 <ehird> omg, english is not totally logical
22:23:18 <ehird> !!
22:23:25 <AnMaster> ehird, indeed :(
22:23:36 <ehird> mi'e .Eli,at.xrd.
22:23:38 <fizzie> I hopes you people already advertised fungot's sources to new bot-writers, hmm?
22:23:39 <fungot> fizzie: heh... yes, i can accept that... " angery"?
22:23:39 <ehird> let's switch to LOJBAN
22:23:40 -!- BeholdMyBot has joined.
22:23:40 <BeholdMyBot> Hi, BeholdMyBot!
22:23:44 <ehird> FireFly: yes
22:23:51 <ehird> err
22:23:52 <ehird> fizz
22:23:53 <ehird> fizzie:
22:23:58 <ehird> BeholdMyGlory: in case you missed it - http://zem.fi/~fis/fungot.b98.txt
22:23:59 <fungot> ehird: ( mit scheme)" at http://paste.lisp.org/ display/ fnord) has a rather large undertaking a moderately sized channel made up of bugs, ahead of primitive nations like finland. :p they claim that a single lsd dose ( much lower than their freenode counterparts.
22:24:00 <fizzie> Ha, the tab strikes again.
22:24:03 <ehird> it also interprets brainfuck
22:24:04 <ehird> and underload
22:24:10 <ehird> I suggest you don't bother. :D
22:24:21 <BeholdMyGlory> ehird: and that is? :P
22:24:27 <ehird> BeholdMyGlory: the source to fungot
22:24:27 <fungot> ehird: yes i guess it can be taught how to optimise it... fnord! shub-niggurath! as a tripcode seperator along with the current cdr.
22:24:30 <ehird> written in befunge-98
22:24:37 <BeholdMyGlory> ehird: aha
22:24:37 <ehird> http://esolangs.org/wiki/Befunge
22:24:44 <ehird> ^bf ,[.,]!it does brainfuck
22:24:44 <BeholdMyGlory> ehird: that's just wierd
22:24:45 <BeholdMyBot> Interpreting ,[.,]!it does brainfuck
22:24:45 <fungot> it does brainfuck
22:24:48 <ehird> ^ul (and underload)S
22:24:48 <fungot> and underload
22:24:48 <FireFly> I don't like the syntax of Befunge ._.
22:24:50 <lament> ^vote Should bots have the same rights as human IRC users?
22:24:51 <BeholdMyBot> Vote created by lament: Should bots have the same rights as human IRC users?
22:24:51 <FireFly> I prefer Argh!
22:24:52 <ehird> fungot: and it babbles nonsense!
22:24:53 <fungot> ehird: riight. with lynx that is: ( vector-set! hwc 3 o)
22:25:09 <ehird> In conclusion: stop writing your esoteric bot unless you can match its features in a more esoteric way. :P
22:25:10 <oklopol> lament: err where does the scale start? from the lower-left?
22:25:22 <oerjan> ^maybe?
22:25:24 <BeholdMyGlory> ^yes
22:25:24 <BeholdMyBot> Yes: 1, No: 0.
22:25:24 <lament> oklopol: from anywhere, really
22:25:51 <BeholdMyBot> Vote ended.
22:25:51 <BeholdMyBot> Yes leads no with 1>0.
22:25:58 <lament> oklopol: if it's c-major, then C is on the second string from the bottom on the first fret
22:26:10 <lament> oklopol: but basically whenever you see this shape
22:26:11 <lament> OO
22:26:12 <lament> OO
22:26:21 <oklopol> oh the 4th note from lower-left
22:26:21 <lament> the bottom-right note there is the root
22:26:30 <lament> yes
22:27:06 <BeholdMyGlory> ehird: actually, it's not supposed to have something to do with esoteric languages
22:27:11 <oklopol> probably would've heard that if i'd sung that in my head, my pattern matching skills didn't do it without writing it down in another format first.
22:27:13 <BeholdMyGlory> ehird: it just happens to interpret bf
22:27:23 <AnMaster> BeholdMyBot, "<BeholdMyBot> Yes leads no with 1>0." <-- shouldn't it be "leads over"
22:27:31 <ehird> no
22:27:35 <AnMaster> no?
22:27:37 <AnMaster> ok
22:27:51 <BeholdMyGlory> AnMaster: sounds a bit swedish :P
22:27:53 <oerjan> AnMaster: is "komponist" the word for composer in swedish?
22:27:53 <oklopol> (visual pattern matching skills that is, they work more consciously, and less efficiently)
22:28:04 <AnMaster> BeholdMyGlory, very possible
22:28:07 <BeholdMyGlory> ^vote Does swedes pwn?
22:28:07 <BeholdMyBot> Vote created by BeholdMyGlory: Does swedes pwn?
22:28:10 <AnMaster> oerjan, no
22:28:14 <AnMaster> oerjan, kompositör
22:28:21 <oerjan> ah
22:28:23 <lament> oklopol: it seems necessary to imagine something like this while actually playing to be sure you hit the right frets
22:28:29 <ehird> BeholdMyGlory: can you stop kthx
22:28:30 <AnMaster> oerjan, I have no clue what a "komponist" is.
22:28:43 <lament> oklopol: (that's not much to imagine since the actual repeating pattern is pretty small)
22:28:44 <BeholdMyGlory> ehird: yeah :P
22:29:07 <BeholdMyBot> Vote ended.
22:29:07 <BeholdMyBot> A draw with 0:0.
22:29:09 <ehird> http://polandian.wordpress.com/2008/04/21/polish-road-signs-some-of-my-favorites/
22:29:10 <AnMaster> oerjan, what is it in Norwegian?
22:29:19 <oklopol> lament: well i remember all (jump-as-interval, jump-in-strings) tuples
22:29:30 <oerjan> AnMaster: komponist
22:29:51 <AnMaster> ^vote Will this vote end in a draw?
22:29:51 <BeholdMyBot> Vote created by AnMaster: Will this vote end in a draw?
22:29:52 <AnMaster> ^no
22:29:53 <BeholdMyBot> Yes: 0, No: 1.
22:29:53 -!- BeholdMyBot has quit ("bye everybody :D").
22:29:54 <oklopol> all relevant ones that is
22:29:57 <AnMaster> argh
22:30:01 <oerjan> i was trying to find a way to get only swedish hits on the question who wrote that song
22:30:02 <AnMaster> I was trying to create a PARADOX!
22:30:03 <BeholdMyGlory> hah :P
22:30:03 <FireFly> Is a nic elanguage
22:30:33 <FireFly> oerjan, try "search for pages in swedish" on swedish google
22:30:36 <oklopol> lament: of course i do imagine parts of that pattern automatically while doing that, i just never learned a pattern of any kind explicitly, so it's less conscious.
22:30:49 <oerjan> FireFly: using kompositör seemed to work
22:30:53 <FireFly> Ah
22:31:26 <oerjan> this too claims carola is the composer: http://www.notpoolen.com/SheetMusic/Default.aspx?SheetMusicID=1230
22:32:01 <AnMaster> oerjan, well I can only cite what it says in sheet of music
22:32:04 <AnMaster> *shrug*
22:32:18 <olsner> wtf, why do I find you talking about carola?
22:32:20 <oerjan> is it really the exact same melody?
22:32:31 <AnMaster> oerjan, no clue
22:32:37 <AnMaster> nor do I plan to research it
22:32:45 <AnMaster> it really doesn't interest me
22:32:48 <AnMaster> afk
22:33:35 <oerjan> olsner: AnMaster said he was playing the traditional swedish christmas song "Himlen i min famn" on piano. i joked i thought that was by carola. and now i cannot find anything on the web to prove me wrong :D
22:34:01 <oerjan> but his notes are _older_ than carola's record!
22:34:18 <olsner> she is a crazy devout christian so it wouldn't surprise me
22:34:57 <oerjan> i didn't know crazy devout christians could do time travel ;D
22:35:00 <MizardX> ^vote Will the next vote be ^no?
22:35:03 <ehird> olsner: some redundancy there
22:35:31 * oerjan swats ehird
22:35:31 <olsner> ehird: no, when it comes to carola that really isn't redundant :P
22:35:36 <oerjan> oh wait
22:35:41 * oerjan swats ehird -----###
22:36:26 <oerjan> "greater than the sum of the parts", perhaps...
22:36:52 <ehird> i am _so_ intolerant :D
22:37:02 <oerjan> die atheist scum!
22:37:13 <ehird> die ... non-atheist scum!
22:37:14 <ehird> ooh burn
22:37:27 <oerjan> JIHAD ====\___/
22:37:54 <ehird> ANTI-JIHAD \//////////////////////////////////
22:38:15 <FireFly> INFINITE LOOP = SUICIDE +[>+]
22:38:25 <FireFly> At least for a computer
22:38:33 <BeholdMyGlory> ^bf +++++[>++++++++++<-]>.
22:38:34 <fungot> 2
22:38:37 <ehird> Thank you for that
22:38:50 <BeholdMyGlory> ^bf +[>+]
22:39:06 <BeholdMyGlory> maybe i shouldn't have done that
22:39:12 <BeholdMyGlory> hm...
22:39:14 <ehird> no.
22:39:15 <ehird> it'll survive.
22:39:20 <ehird> it'll just kill it after a while.
22:39:22 <ehird> theoretically.
22:39:25 <ehird> ^ul (im alive)S
22:39:25 <fungot> im alive
22:39:28 <ehird> see?
22:39:31 <BeholdMyGlory> ah
22:39:39 <BeholdMyGlory> that's better than mine
22:39:43 <FireFly> Indeed it is
22:39:45 <FireFly> :P
22:39:59 <BeholdMyGlory> being coded in java, the memory runs out almost instantly
22:40:03 <ehird> ...
22:40:08 <ehird> java?
22:40:13 <ehird> we're not friends any more.
22:40:13 <FireFly> Hm, what's ^ul?
22:40:17 <ehird> FireFly: underload
22:40:22 <BeholdMyGlory> ehird: why not?
22:40:24 <ehird> http://esolangs.org/wiki/Underload
22:40:27 <ehird> BeholdMyGlory: _java_
22:40:32 <BeholdMyGlory> ehird: yes?
22:40:41 <ehird> BeholdMyGlory: _j_a_v_a_
22:40:56 <FireFly> We have a Java test tomorrow
22:40:59 <BeholdMyGlory> ehird: yes, i'm quite aware of the spelling
22:41:01 <FireFly> (Me & BeholdMyGlory)
22:41:01 <ehird> >__<
22:41:06 <ehird> you both suck
22:41:08 <BeholdMyGlory> ehird: what's you point? :P
22:41:09 <FireFly> Not our fault ;<
22:41:17 <FireFly> It's either Java or no programming for us
22:41:17 <ehird> FireFly: well he seems to be ok with it
22:41:21 <ehird> in conclusion
22:41:23 <ehird> BeholdMyGlory: you are unholy
22:41:37 <BeholdMyGlory> ehird: tell me something i didn't know
22:41:49 <ehird> ok, you are holy
22:41:56 <BeholdMyGlory> omg
22:41:56 <FireFly> SURPRISE
22:42:03 <BeholdMyGlory> but don't you like
22:42:11 <BeholdMyGlory> have to be religious to be holy?
22:42:16 <BeholdMyGlory> or something?
22:42:19 <ehird> yes. you are religious.
22:42:25 <ehird> also, swedish.
22:42:26 <FireFly> Hrm, intepreting argh in command-line would be quite hard
22:42:28 <ehird> I rest my case
22:42:38 <FireFly> Argh!*
22:42:52 <BeholdMyGlory> ehird: no. no, I certainly are not religious. you take that back this minute!
22:42:57 <BeholdMyGlory> *am not
22:43:05 <ehird> BeholdMyGlory: ok mr religious
22:43:07 <oerjan> FireFly: it's somewhere between argc and argv
22:43:30 <FireFly> >.<
22:43:33 <BeholdMyGlory> ehird: you die now.
22:43:57 <FireFly> ^argh lh
22:44:03 <ehird> BeholdMyGlory: insensitive much
22:44:08 <FireFly> :<
22:44:29 * oerjan makes another notch in his gun
22:44:37 <AnMaster> oerjan, what gun?
22:44:42 <BeholdMyGlory> by the way, everyone
22:45:06 <BeholdMyGlory> how are strings stored in the buffer terminated in bf?
22:45:13 <BeholdMyGlory> null?
22:45:29 <oerjan> This one //===
22:45:45 <AnMaster> <FireFly> It's either Java or no programming for us <-- ouch, at least I could take C++ course, which while still horrible isn't as bad as Java
22:45:50 <ehird> ... BeholdMyGlory:
22:45:54 <ehird> that makes no sens
22:45:54 <ehird> e
22:45:59 <BeholdMyGlory> ehird: probably not
22:46:00 <AnMaster> oerjan, hm
22:46:01 <ehird> there's no intrinsic string mechanism in bf.
22:46:06 <AnMaster> oerjan, that looks strange
22:46:11 <BeholdMyGlory> ehird: yes, i'm aware of that
22:46:28 <BeholdMyGlory> ehird: didn't know how else to say it :P
22:46:38 <ehird> ... i see.
22:46:40 <oerjan> AnMaster: you try making a 1-line ASCII gun
22:46:42 <ehird> well you make no sense :P
22:46:48 <AnMaster> oerjan, I don't
22:46:52 <AnMaster> oerjan, or wait
22:46:52 <BeholdMyGlory> ehird: I'm used to it
22:47:06 <AnMaster> oerjan, ===# <-- seem from above
22:47:36 <oklopol> BeholdMyGlory: the language imposes no constraint on how you store strings.
22:47:39 <FireFly> `/¯'==
22:47:45 <FireFly> Hrm
22:47:57 * AnMaster prefers his =========##### (again from above)
22:48:01 <AnMaster> what is it?
22:48:16 <FireFly> It was supposed to be something which it doesn't look like
22:48:18 <oerjan> BeholdMyGlory: EOF is often given as 0 on input, i think fungot uses that
22:48:19 <fungot> oerjan: eval ( ( ( in there. an mit scheme repl does indeed provide hooks for customizing the printer, since everything is global :)
22:48:24 <oerjan> testing
22:48:28 * AnMaster waits
22:48:48 <AnMaster> no one?
22:49:01 <oerjan> ^bf ,[.,]++++++++[>+++++<]>.!test
22:49:02 <AnMaster> oh well, rifle
22:49:06 <fungot> test ...out of time!
22:49:15 <oerjan> oh wait
22:49:18 <oerjan> ^bf ,[.,]++++++++[>+++++<-]>.!test
22:49:18 <fungot> test(
22:49:19 <BeholdMyGlory> oerjan: hm. i've tried that, but game of life doesn't work any better for that in my interpreter
22:49:38 <ehird> errrrrrrr
22:49:38 <AnMaster> BeholdMyGlory, eh? game of life in bf?
22:49:39 <ehird> what
22:49:43 <ehird> AnMaster: it exists
22:49:43 <ehird> but
22:49:45 <ehird> BeholdMyGlory: whaaaaaaaat
22:49:48 <BeholdMyGlory> AnMaster: yes, of course
22:49:50 <ehird> that makes no sense
22:49:50 <AnMaster> that wasn't the game of life
22:49:50 <oerjan> yeah fung*t does 0 on eof
22:49:51 <AnMaster> ...
22:49:59 <ehird> AnMaster: game of life in BF exists
22:49:59 <ehird> so stfu
22:50:06 <AnMaster> oerjan, fung*t? Did you mean fungot?
22:50:06 <fungot> AnMaster: import " ircutils" def x def lament set lament getuser " esoteric" and " fnord
22:50:12 <ehird> that's why he did that.
22:50:19 <BeholdMyGlory> http://www.linusakesson.net/programming/brainfuck/index.php
22:50:20 <AnMaster> ehird, yes I know :P
22:50:56 <AnMaster> ehird, also of course it exists, my question was how it was related to the line oerjan ran
22:51:12 <ehird> you fail at parsing english.
22:51:13 <BeholdMyGlory> I actually think that the person who made game of life to bf is swedish (Linus Åkesson sounds swedish, right? :P)
22:51:35 <AnMaster> BeholdMyGlory, yes, but I don't know if it could be some other Nordic country
22:51:49 <oerjan> AnMaster: i was merely testing fung*t's EOF convention
22:51:55 <BeholdMyGlory> AnMaster: my thought exactly
22:52:04 <AnMaster> oerjan, ah
22:52:20 <ehird> My name is Linus Åkesson, though some of you may know me as lft. I live in Lund, Sweden, and work as a software engineer.
22:52:21 <ehird> take a guess
22:52:34 <BeholdMyGlory> ehm
22:52:40 <AnMaster> hm Lund, that is Danish isn't it ;P
22:52:40 <BeholdMyGlory> I think he's swedish
22:52:42 * AnMaster ducks
22:52:42 <oerjan> BeholdMyGlory: other common EOF conventions for bf are "no change" and -1
22:52:59 <BeholdMyGlory> oerjan: but -1=255?
22:53:09 <AnMaster> (it is actually close to Denmark, and the dialect there is like a mix of Swedish and Danish)
22:53:22 <oerjan> BeholdMyGlory: well if it's 8-bit
22:53:47 <fizzie> Re fung*t, the tape is 1000 cells long, wraps, and the cells are 8-bit and also wrap.
22:53:48 <BeholdMyGlory> oerjan: which it is, at least with my interpreter
22:53:56 <ehird> fizzie: he means eof
22:54:02 <ehird> BeholdMyGlory: go for 0
22:54:21 <fizzie> ehird: Yes, I just thought I'd list the other conventions I used. EOF-0 was already mentioned.
22:54:33 <ehird> wait
22:54:34 <ehird> 1000 cells?
22:54:36 <ehird> useless
22:54:45 <ehird> why not make it unbounded
22:54:47 -!- Corun has joined.
22:54:56 <AnMaster> ehird, have you run into any issues so far?
22:54:59 <BeholdMyGlory> 1000? isn't bf supposed to be "unlimited"?
22:55:11 <ehird> BeholdMyGlory: 30,000 is müller's original
22:55:15 <ehird> but unlimited is TC
22:55:16 <oerjan> BeholdMyGlory: if you want to test a game of life program you'll need to find the bf conventions used. the brainfuck page on the wiki has an entire section about bf convention variations
22:55:19 <ehird> assuming an infinite computer
22:55:25 <oerjan> iirc
22:55:28 <fizzie> The original wasn't unlimited either. And I don't want it to consume an unbounded amount of memory.
22:56:08 <BeholdMyGlory> ehird: well, i use an arraylist, making the memory unlimited, as far as java allows it
22:56:19 <AnMaster> fizzie, do you pack 4 bf-cells into each bef-cell?
22:56:27 <AnMaster> actually that would be messy
22:57:31 <fizzie> Yes, I don't do that. It's just that the "+n" operation (I combine consecutive +++s and ---s) actually does "x=(x+n)%256", and the "move right n steps" does "pos=(pos+n)%1000".
22:59:02 <FireFly> Time to sleep
22:59:42 <AnMaster> fizzie, makes sense
23:02:08 <BeholdMyGlory> okay, it's after midnight here in sweden, and it's time to go to bed
23:02:14 <BeholdMyGlory> night all
23:02:17 -!- BeholdMyGlory has left (?).
23:03:37 -!- FireFly has quit ("Later").
23:18:27 <AnMaster> ARGH I have become trapped in a tv troupe website
23:21:30 <oerjan> ITYM tvtropes
23:21:37 <AnMaster> ITYM?
23:21:46 <oerjan> GIYF
23:21:51 <AnMaster> what?
23:21:57 <oerjan> JFGI
23:22:06 <AnMaster> anyway I meant tvtropes yes
23:22:10 <AnMaster> oerjan, stop it
23:22:19 <oklopol> LWAN
23:22:24 <oerjan> oh no
23:22:30 * AnMaster googles them
23:22:40 <AnMaster> aha
23:22:43 <AnMaster> aha
23:22:47 <oklopol> EOCREMCA!
23:23:11 <AnMaster> I see
23:23:11 <AnMaster> oklopol, that made no sense
23:23:16 <AnMaster> it means "Life Without A Number" according to google
23:23:19 <oklopol> WTTBYAAN.
23:23:34 <AnMaster> Did you mean: EUROCREME
23:23:34 <AnMaster> No standard web pages containing all your search terms were found.
23:23:34 <AnMaster> Your search - EOCREMCA - did not match any documents.
23:23:42 <AnMaster> Your search - WTTBYAAN - did not match any documents.
23:23:45 <AnMaster> oklopol, sigh
23:24:05 <oklopol> haha eurocreme
23:24:05 <oerjan> oklopol: you are even more evil than me. i am proud of you.
23:24:10 <ehird> eurocreme
23:24:24 -!- ehird has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
23:24:34 * oerjan may be slightly affected by just reading dilbert
23:24:34 <AnMaster> ehird, I totally agree
23:24:44 <oklopol> oerjan: well, did you?
23:24:54 <AnMaster> ehird, did you google it first
23:24:54 <oerjan> did what?
23:24:55 <oklopol> i'll just assume you didn't, just tell my if you did.
23:25:12 <AnMaster> ehird, it seems to be a site for gay porn...
23:25:13 <oklopol> you don't have to google "eurocreme".
23:25:16 <oklopol> i mean
23:25:21 <oklopol> euro creme
23:25:28 <AnMaster> Eurocreme.com - Welcome to Eurocreme.com!
23:25:28 <AnMaster> This site contains hardcore gay pornography. If you are under the age required by law in your place of residence to view such material, or if it is illegal ...
23:25:28 <AnMaster> www.eurocreme.com/ - 7k - Cached - Similar pages -
23:25:31 <AnMaster> well
23:25:36 <ehird> hot.
23:25:41 <AnMaster> ehird, I disagree
23:26:51 <oerjan> ehird: don't you dare ruin your precious innocence!
23:27:11 -!- olsner has quit ("Leaving").
23:27:47 <oklopol> in no sense does he have innocence.
23:28:20 <oerjan> yay i found a flaw in oklopol's sarcasm detector!
23:28:39 <oklopol> oerjan: sorry, pun generator overrides it.
23:28:50 <oerjan> oh darn
23:28:53 <oklopol> :P
23:29:07 <oerjan> oklopol found a flaw in my pun detector!
23:31:11 <oklopol> inner sensation chicks are hot
23:34:13 <oklopol> okokokokokokokokokokokokoko
23:34:18 <oklopol> should probably go to sleep soon
23:34:30 <oklopol> courses start tomorrow \o/
23:34:36 <oklopol> life is worth living again!
23:36:43 <kerlo> First amendment; therefore, despite being only 11, I can view all the hardcore gay pornography I want.
23:36:47 <kerlo> Or something like that, anyway.
23:38:13 <oklopol> you're 11 and you know lojban?
23:38:25 <kerlo> I'm 16 and know only some lojban.
23:38:33 <oklopol> well you know all the best words.
23:39:09 <oklopol> my nick comes from "lo polko", it means "the path", you know, i'm a kung fu master.
23:39:27 <oklopol> (also don't look that up, it's a secret gismu)
23:40:10 <ehird> oklopol: kerlo = ihope
23:40:14 <ehird> = Warrigal = warrie = uoris
23:40:18 <ehird> = dogface or whatever
23:40:22 <kerlo> .o'acu'i
23:40:28 <oklopol> ehird: ohh that i have missed somehow.
23:40:29 <kerlo> Which took me two minutes to look up.
23:40:51 <ehird> kerlo first entered here when he was 12, I know this because as an obsessive logreader I have to keep track of these things
23:41:23 <kerlo> Hmm. ihope, dogface, Warrigal, warrie, uoris, kerlo, in that order, I believe. So I change nicks every eight months, on average?
23:41:29 <ehird> i guess
23:42:02 <kerlo> And kerlo is mundane enough that I could actually use it as a real-life nickname. :-P
23:42:13 <oklopol> "girl-o"
23:42:18 <oklopol> "warry gal"
23:42:37 <oklopol> haha, "waress"
23:42:48 <kerlo> I am a female war.
23:43:04 <kerlo> But "kerlo" is obviously a male name, as it ends in "o".
23:43:16 <oklopol> well yeah i guess girl-o could be like a tranny
23:43:32 <kerlo> Despite the last letter of a lojban gismu being meaningless except in precisely one case.
23:44:06 <kerlo> (It's required to distinguish between broda, brode, brodi, brodo and brodu, which are isomorphic.)
23:44:41 <oklopol> "ihope", planning to change sex, hoping it goes okay, "dogface", didn't go okay, "Warrigal, warrie, uoris", hormone treatments made you angry all the time, "kerlo", finally fully a woman
23:45:30 <oklopol> kerlo: if you're telling that to me, i will have to inform you i know everything already. and no one else cares.
23:46:17 <oklopol> aaaanyway, i'm going to sleep. getting a bit too imaginative.
23:46:19 <oklopol> ->
23:46:36 * kerlo applauds
23:47:01 <oklopol> ...did i guess right?
23:47:20 <kerlo> Yep.
23:47:24 <oklopol> :O
23:47:29 <oklopol> well congrats
23:47:37 <oklopol> maybe we can hook up some time
23:47:40 * oklopol goes ->
23:49:31 <psygnisfive> oklopol!
23:49:47 <psygnisfive> why do you have to go to sleep just when i see you? >_<
23:52:12 * ehird plays with forth
23:52:18 <ehird> CHAR C EMIT
23:55:08 <kerlo> Hang on a moment, if you will.
23:55:58 <oerjan> does that print a C?
23:56:36 <kerlo> Never mind.
23:57:01 <oerjan> kerlo: what, are you going to leave us hanging like that?
23:57:18 <ehird> [ehird:~/Code] % gforth forthbot.f -e "RUN BYE"
23:57:18 <ehird> USER forthbot forthbot forthbot forthbot
23:57:20 <ehird> NICK forthbot
23:57:22 <ehird> JOIN #esoteric
23:57:24 <ehird> sphear
23:57:26 <ehird> oerjan: yes, it prints C
23:57:28 <ehird> *phear
23:57:38 <kerlo> oerjan: no, you can stop hanging now.
23:58:26 <oerjan> whew
23:59:16 <ehird> forth cat:
23:59:22 <ehird> : CAT BEGIN KEY EMIT AGAIN ;
2009-01-13
00:00:12 <ehird> oi, revel in its awesomosity
00:00:27 <kerlo> It reminds me of...
00:00:30 <AnMaster> ehird, forth is a fun language
00:00:34 <AnMaster> but why upper case?
00:00:42 <AnMaster> is it to show it is a SERIOUS LANGUAGE?
00:00:45 <AnMaster> ;D
00:00:47 <ehird> AnMaster: ANS Forth only guarantees that the standard routines are available in uppercase form
00:00:55 <ehird> so, generally, you just TURN ON THE CAPSLOCK AND TYPE
00:01:21 <ehird> kerlo: of...
00:01:26 <AnMaster> ehird, well. ok. but I mean upper case only languages reminds me of COBOL and SQL. Not a nice combination
00:01:38 <AnMaster> even though SQL is okish
00:01:42 <kerlo> : CAT [ , . ] ;
00:01:44 <ehird> Forth is mainly used for embedded work. It's not pretty. It's a pretty closed-world system.
00:01:52 <AnMaster> true
00:01:52 <ehird> kerlo: That's essentially it :P
00:02:03 <ehird> I mean, key returns as soon as one keyboard key is pressed.
00:02:06 <AnMaster> ehird, it also reminds me of INTERCAL
00:02:18 <ehird> and if you press <ENTER>, it just does a carriage return and goes to the start of the line
00:02:23 <ehird> no new line, no clearing of the current one
00:02:37 <ehird> err
00:02:41 <ehird> s/carriage return/line feed/
00:02:43 <kerlo> Are you trying to tell me that KEY gets a keystroke?
00:02:46 <AnMaster> ehird, it wants CRLF?
00:02:46 <ehird> or w/e
00:02:48 <ehird> kerlo: yes
00:02:50 <ehird> AnMaster: no
00:02:55 <AnMaster> ehird, err what?
00:03:10 <kerlo> A line feed goes to the start of the line and does not give you a new line?
00:03:18 <kerlo> In other words, it returns the carriage and does not feed a line?
00:03:25 <ehird> Okay, okay, it's a carriage return
00:03:33 <ehird> but in forth, the word CR prints a carriage return/line feed so :P
00:03:34 <ehird> confusing
00:03:50 <AnMaster> indeed confusing
00:04:04 <ehird> gah, my nc is not BIG_GAPING_SECURITY_HOLE'd
00:04:09 * ehird tries to make it so
00:04:59 <oerjan> make it .so
00:06:53 <ehird> kfdfhgf
00:08:00 <ehird> someone give me a working netcat
00:09:18 <fizzie> Didn't I have a befunge interpreter in forth somewhere? Maybe I should try enhancing it to do funge-98 some day...
00:09:28 <ehird> : INIT-USER ." USER forthbot forthbot forthbot forthbot" CR ;
00:09:28 <ehird> : INIT-NICK ." NICK forthbot" CR ;
00:09:30 <ehird> : INIT-JOIN ." JOIN #esoteric" CR ;
00:09:32 <ehird> : INIT INIT-USER INIT-NICK INIT-JOIN ;
00:09:34 <ehird> : MAIN-LOOP ;
00:09:36 <ehird> : RUN INIT MAIN-LOOP ;
00:09:38 <ehird> is that good style? :P
00:10:08 * kerlo takes a look at su
00:11:09 <fizzie> Here's my Forth style, but I have no idea whether it's good or not; probably not: http://zem.fi/~fis/be.fs.html
00:11:58 <ehird> BE-GETC is vey long
00:12:05 <ehird> and you have stack diagrams up the wazoo
00:13:10 <AnMaster> wazoo?
00:13:32 <fizzie> They are aligned in vim; I think the syntax/2html.vim gets confused by them tabs somehow.
00:13:48 <AnMaster> ehird, wazoo - Zoo in, Washington, US
00:13:48 <AnMaster> ?
00:13:55 <AnMaster> s/in,/in/
00:14:07 <ehird> fizzie: yes but you're not meant to have them outside of word definitions
00:14:09 <ehird> AnMaster: fail
00:14:20 <AnMaster> ehird, was just guessing
00:14:27 <ehird> A damn useful little "backend" utility begun 950915 or thereabouts,
00:14:27 <ehird> as *Hobbit*'s first real stab at some sockets programming. Something that
00:14:29 <ehird> should have and indeed may have existed ten years ago, but never became a
00:14:31 <ehird> standard Unix utility. IMHO, "nc" could take its place right next to cat,
00:14:33 <ehird> cp, rm, mv, dd, ls, and all those other cryptic and Unix-like things.
00:14:35 <ehird> lol, nc was the guy's first sockets prorgam
00:14:53 <ehird> great program, wonder why he fell of the face of the earth
00:15:11 <AnMaster> nc rocks
00:15:19 <fizzie> ehird: Well, they were useful when debugging the thing.
00:15:22 <ehird> AnMaster: not gnu nc
00:15:24 <AnMaster> however I usually use socat instead
00:15:26 <ehird> gnu netcat sucks
00:15:29 <AnMaster> it is way more powerful
00:15:36 <AnMaster> ehird, why does gnu netcat suck?
00:15:48 <AnMaster> apart from bloated size
00:15:52 <ehird> bloated, shitty, like all gnu programs, and not a real improvement over hobbit's original code
00:16:04 <flexo> yea, gnu sucks in general
00:16:07 <AnMaster> ehird, gnu emacs isn't shitty!
00:16:10 <ehird> yes it si
00:16:12 <AnMaster> but apart from that, sure
00:16:14 <AnMaster> si
00:16:15 <AnMaster> right
00:16:16 <flexo> all bloated, un-unix-ish
00:16:19 <AnMaster> Spanish?
00:16:21 <ehird> original netcat is only 1668 lines long and does everything gnu netcat does
00:16:27 <flexo> trying to do vender-lockin all the time
00:16:31 <AnMaster> ehird, well yes, I prefer socat
00:16:33 <AnMaster> as I said
00:16:44 <flexo> and they code c like it was lisp
00:16:47 <AnMaster> it is pretty awesome
00:16:58 <flexo> the gnu coding standard is horrible
00:17:06 <AnMaster> flexo, agreed
00:17:16 <AnMaster> but gnu emacs rocks
00:17:18 <ehird> gnu cat is a good laugh
00:17:22 <AnMaster> that is the single exception
00:17:27 <flexo> i like netbsd
00:17:33 <ehird> gnu emacs is exactly like the rest of the gnu tools
00:17:33 <AnMaster> I like freebsd
00:17:44 <fizzie> The original netcat doesn't do ipv6. Although I have to admit I use here openbsd's netcat, which is the original with IPv6 support patched in.
00:17:47 <flexo> yea, well, i've got taste
00:18:12 <AnMaster> flexo, I also use openbsd
00:18:16 <flexo> that's the reason i don't like emacs either
00:18:22 <fizzie> Still, I think the GNU compiler collection doesn't suck that much.
00:18:27 <flexo> agreed
00:18:34 <AnMaster> oh it does
00:18:37 <flexo> the gnu coding style is used there too though
00:18:45 <AnMaster> yes and it sucks too
00:18:48 <flexo> gcc is about the only gnu program which doesn't totally suck
00:18:55 <AnMaster> flexo, it sucks more than gnu emacs
00:19:00 <flexo> nope.
00:19:07 <AnMaster> flexo, that is your opinion
00:19:11 <ehird> gcc is alright
00:19:12 <flexo> yea, and i'm right
00:19:22 <AnMaster> flexo, except it is subjective clearly
00:19:30 <flexo> actually.. nope
00:19:46 <ehird> gcc is only nice because it works, though
00:19:47 <ehird> code-wise, more of the same
00:19:50 <AnMaster> flexo, well, I'm sure vim has nicer coding style, EXCEPT it doesn't do what I need
00:19:50 <flexo> i disagree
00:19:54 <AnMaster> so that is irrelevant
00:20:04 <flexo> yea, vim isn't so nice
00:20:10 <ehird> flexo don't bother arguing with AnMaster, he doesn't have mutable state
00:20:12 <flexo> it's rather bloated
00:20:20 <AnMaster> flexo, same for vi, it doesn't do what I need
00:20:24 <flexo> ehird: look again, do you see me arguing?
00:20:27 <ehird> yes :D
00:20:33 * AnMaster agrees with ehird
00:20:36 <flexo> "yea, and i'm right" is not really an argument
00:20:52 <fizzie> Anyways, g'netcat. I mean, g'night.
00:20:53 <flexo> AnMaster: well, you need the wrong stuff
00:20:55 <AnMaster> ehird, I have a mutable state except when I don't
00:21:02 <AnMaster> flexo, now that is subjective
00:21:07 <flexo> nope
00:21:25 <ehird> things can be subjective but there only be one right answer.
00:21:28 <ehird> 's called taste.
00:21:31 <flexo> exactly
00:21:33 <ehird> but then AnMaster is a hypocrite
00:21:38 <ehird> see: "rock music"
00:21:41 <AnMaster> ehird, how so?
00:21:47 <ehird> hmm wonder why forthbot isn't joining
00:21:48 <AnMaster> also I dislike rock music, and what about it?
00:21:54 <AnMaster> how is that hypocritical?
00:21:57 <flexo> emacs is like rock music
00:22:00 <flexo> don't you see the connection?
00:22:01 <AnMaster> nop
00:22:04 <ehird> AnMaster: you force that on anyone who mentions rock music
00:22:05 <flexo> ask ehird about it
00:22:06 <AnMaster> flexo, it isn't
00:22:26 <AnMaster> ehird, no it is my personal view point, which I indeed promote
00:22:40 <ehird> that's it
00:22:41 <ehird> you promote it
00:22:43 <ehird> I don't go
00:22:45 <ehird> hey AnMaster classical sucks
00:22:49 <AnMaster> ehird, I learned how by your way of promoting OS X
00:22:49 <ehird> whenever you mention classical music
00:22:50 <AnMaster> :P
00:22:55 <AnMaster> so you are a hypocrite too
00:22:59 <ehird> i only do that when people are having an OS pissing match
00:23:05 <ehird> or i'm blabbing to myself
00:23:16 <flexo> os x sucks, actually
00:23:24 <flexo> :)
00:23:33 <AnMaster> flexo, not really
00:23:37 <flexo> ..
00:23:47 <flexo> this is how i got into esoteric programming
00:23:50 <AnMaster> flexo, I mean, not compared to windows
00:23:51 <flexo> i got so fucking frustrated
00:23:56 <ehird> i like os x. some people with poor taste dislike it.
00:23:57 <ehird> that's ok.
00:24:00 <ehird> they're just misguided.
00:24:00 <flexo> because all programming languages suck at some point
00:24:02 <flexo> all apis suck
00:24:05 <flexo> are inconsistent
00:24:07 <ehird> everything sucks, flexo
00:24:11 <flexo> the operating systems are buggy
00:24:11 <flexo> etc.
00:24:13 <ehird> the thing to do is to optimize for least suckage
00:24:13 <AnMaster> ehird, YES!
00:24:16 <AnMaster> I agree
00:24:19 <AnMaster> everything sucks
00:24:31 <ehird> yes. it's just a matter of paying the right amount.
00:24:34 <flexo> but in brainfuck it's not possible to do inconsistent APIs
00:24:35 * ehird *groan*
00:24:38 <flexo> to break naming schemes
00:24:42 <flexo> or use sillyOnes
00:25:05 <AnMaster> flexo, err yes it is, see gcc-bf
00:25:07 <AnMaster> compiles C to bf
00:25:15 <flexo> so?
00:25:17 <ehird> % ./forthbot.sh
00:25:17 <ehird> USER forthbot forthbot forthbot forthbot
00:25:19 <ehird> NICK forthbot
00:25:21 <ehird> JOIN #esoteric
00:25:23 <ehird> PRIVMSG #esoteric :I am an awesome cake
00:25:25 <ehird> [hangs]
00:25:27 <ehird> isn't that sufficient?
00:25:28 <flexo> brainfuck is by definition always beautiful
00:25:32 <flexo> i like that
00:25:43 <AnMaster> flexo, obviously it must be related, so you can trace it back to the original code
00:25:48 <AnMaster> even though names have been lost
00:26:02 <flexo> it's related - so?
00:26:06 <flexo> all the uglyness has been compiled out
00:26:14 <flexo> no functions
00:26:29 <flexo> no "real" abstraction mechanisms
00:26:33 <ehird> ok, forth phails at unix pipes
00:26:34 <ehird> tee hee
00:26:36 <AnMaster> but you could do inconsistent parameter order, like stack_pop(stack, count) stack_push(count, stack, outvariable)
00:26:37 <AnMaster> and so on
00:26:42 <AnMaster> and it would be there in the result
00:26:50 <ehird> flexo: another non-sucky piece of gnu software: gforth
00:26:51 <flexo> yea well. but you don't see it.
00:26:52 <AnMaster> ehird, funny
00:27:01 <AnMaster> flexo, yes the calling convention you see
00:27:06 <flexo> in brainfuck?
00:27:12 <flexo> you don't see anything in brainfuck code
00:27:14 <AnMaster> flexo, certainly, check gcc-bf out
00:27:21 <AnMaster> if ais found somewhere to host it
00:27:29 <AnMaster> ask ehird about details where it is hosted
00:27:45 <flexo> i'm not going to check anything out to have you destroy my worldview
00:28:04 <AnMaster> hah, ok
00:28:15 <ehird> % ./forthbot.sh |cat
00:28:16 <AnMaster> at least I accept that I'm wrong, when I *am* wrong
00:28:17 <ehird> [hang]
00:28:29 <AnMaster> ehird, funny, so gforth sucks?
00:28:33 <ehird> no
00:28:36 <AnMaster> what?
00:28:36 <flexo> AnMaster: so do i
00:28:37 <ehird> trying to get forth to integrate with unix sucks
00:28:41 <AnMaster> ehird, ah
00:28:42 <flexo> i just happen to never .. am?
00:28:48 <flexo> eh. be!
00:29:02 <AnMaster> flexo, hah
00:29:05 <flexo> ...
00:29:06 <flexo> :)
00:29:19 <ehird> If you pipe into Gforth, your program should read with read-file or read-line from stdin (see General files).
00:29:20 <AnMaster> well I'm sometimes wrong, but well saying subjective is objective is a bad one
00:29:21 <ehird> o.k.
00:29:34 <flexo> AnMaster: you know, i might have been kidding
00:29:36 <AnMaster> ehird, the other way around then?
00:29:37 <kerlo> Now, time to try to figure out how to use Hugs.
00:29:46 <ehird> AnMaster: type instead of ."
00:29:47 <ehird> it seems
00:29:48 <flexo> i'm fully aware that it's not possible to argue with insane people
00:29:48 <AnMaster> kerlo, use ghc?
00:29:48 <ehird> kerlo: don't
00:29:50 <ehird> ghci
00:29:52 <ehird> :P
00:29:57 <flexo> someone prefering emacs over vi is obviously insane
00:30:06 <flexo> so i must have been kidding in my tries to argue
00:30:09 <AnMaster> <ehird> AnMaster: type instead of ." <--?
00:30:16 <ehird> ." a"
00:30:16 <ehird> should be
00:30:19 <ehird> S" a" type
00:30:20 <ehird> well
00:30:22 <ehird> it should be
00:30:23 <ehird> char a emit
00:30:24 <AnMaster> ehird, is that forth code?
00:30:25 <ehird> but :P
00:30:27 <ehird> yes
00:30:30 <kerlo> AnMaster: GHC doesn't work under Xen, I believe.
00:30:30 <ehird> hmm that doesn't work
00:30:34 <ehird> kerlo: wat
00:30:36 <ehird> of course it does
00:30:39 <ehird> i use ghc on rutian occasionally
00:30:42 <AnMaster> kerlo, err there is no reason it shouldn't
00:31:01 <kerlo> Well, when I run GHCi, it gives me a fancy error.
00:31:15 <AnMaster> kerlo, well whatever causes that it isn't xen
00:31:22 <AnMaster> did you check if it was something else?
00:31:30 <AnMaster> also why not look around for that error
00:32:36 <ehird> aha, just need to flush stdout
00:32:46 <ehird> : say stdout write-line stdout flush-file ;
00:32:50 <kerlo> I looked around for that error. The bug page says it seems to be caused by Xen.
00:32:55 <AnMaster> ehird, it doesn't flush at exit?
00:32:59 <ehird> i want line-flush
00:33:07 <AnMaster> kerlo, what is this error?
00:33:25 -!- forthbot has joined.
00:33:25 <forthbot> I am an awesome cake
00:33:25 <AnMaster> ehird, what is wrong with flush-file?
00:33:29 <ehird> woop woop
00:33:30 <ehird> it works
00:33:34 <ehird> AnMaster: flush-file flushes it
00:33:36 <ehird> stop being stupid
00:33:40 <ehird> ." didn't work
00:33:42 <ehird> neither did write-line
00:33:43 <ehird> i needed to flush
00:33:44 <ehird> so i did
00:33:46 <ehird> as i said above
00:33:46 -!- forthbot has quit (Remote closed the connection).
00:33:51 <AnMaster> ehird, well "<ehird> i want line-flush" <-- why?
00:34:03 <ehird> ok, i'm not talking to you until you can comprehend basic english
00:34:10 <AnMaster> you made no sense
00:34:15 <ehird> i see.
00:34:22 <AnMaster> and if flush-file works, why did you want flush-line?
00:34:28 <AnMaster> what would the difference be?
00:34:30 <kerlo> Okay, maybe it's not quite so Xen-related.
00:34:31 <kerlo> http://hackage.haskell.org/trac/ghc/ticket/2063
00:35:25 <kerlo> Though it doesn't actually look like that bug; it looks like this one: http://hackage.haskell.org/trac/ghc/ticket/2013
00:37:33 <AnMaster> why do they need 32-bit
00:37:40 <AnMaster> can't they use full 64-bit pointers?
00:41:31 -!- oerjan has quit ("Good night").
00:43:44 <AnMaster> kerlo, idea, if you have multilib, just build an -m32 haskell
00:43:51 <AnMaster> ghc/ghci that is
00:43:54 <ehird> he didn't build haskell.
00:43:56 <ehird> almost certainly.
00:44:00 <ehird> building ghc is nigh-on impossible
00:44:11 <ehird> i.e., it takes 4-5 hours even on this fast machine
00:44:15 <ehird> with parallel make
00:44:20 <AnMaster> ehird, true, even gentoo offers a binary package for it
00:44:46 <AnMaster> ghc, openoffice, firefox and thunderbird all have binary packages
00:44:53 <ehird> what about x11/kde
00:45:03 <ehird> compiling those is stupid, wasteful and slow
00:45:06 <AnMaster> ehird, no, but they are much faster here
00:45:13 <ehird> hm. k
00:45:16 <AnMaster> X11 takes about 2 hour at most
00:45:26 <ehird> kde takes like 8 hours
00:45:26 <AnMaster> a complete KDE would take a bit less than 5 hours
00:45:45 <AnMaster> ehird, depends, I only use kdebase and kdesdk + a few random other apps
00:45:51 <AnMaster> gentoo uses split ebuilds for them
00:45:58 <AnMaster> so you can just merge the programs you want
00:46:12 <AnMaster> no need to compile each whole kde package
00:46:32 <ehird> Here's an example of an invocation of Gforth that is usable in a pipe:
00:46:32 <ehird> gforth -e ": foo begin pad dup 10 stdin read-file throw dup while \
00:46:34 <ehird> type repeat ; foo bye"
00:46:39 <ehird> kill it
00:46:50 <ehird> i don't think that can handle lines of more than 10 chars
00:47:14 <AnMaster> ehird, ouch
00:47:23 <ehird> This example just copies the input verbatim to the output. A very simple pipe containing this example looks like this:
00:47:24 <ehird> cat startup.fs |
00:47:26 <ehird> gforth -e ": foo begin pad dup 80 stdin read-file throw dup while \
00:47:28 <ehird> type repeat ; foo bye"|
00:47:30 <ehird> head
00:47:32 <ehird> and it magically changes to 80
00:47:32 <AnMaster> hah
00:47:34 <ehird> confirming my suspicions
00:47:38 <AnMaster> yes
00:47:45 <AnMaster> ehird, can't you copy n chars?
00:47:50 <AnMaster> where n is unknown
00:47:52 <ehird> probably.
00:47:59 <ehird> but I don't want to figure it out until tomorrow.
00:48:02 <ehird> on that note... ciao
00:48:06 <AnMaster> ehird, night!
00:48:10 <AnMaster> sleep well
00:48:15 <AnMaster> or whatever you say in English
00:48:25 <ehird> that works
00:48:44 <AnMaster> :)
01:13:02 -!- Corun has quit ("This computer has gone to sleep").
01:41:55 -!- seveninchbread has joined.
01:53:54 -!- seveninchbread_ has joined.
02:02:01 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
02:13:08 -!- seveninchbread has quit (Connection timed out).
02:16:14 -!- Corun has joined.
02:47:04 -!- seveninchbread_ has changed nick to CakeProphet.
04:11:29 <kerlo> Okay. Can anyone name *any* IRC bot that allows IRC users to more or less execute arbitrary code, other than lambdabot and bsmnt_bot?
04:11:41 <bsmntbombdood> why?
04:11:51 <bsmntbombdood> it's a pretty stupid thing to do
04:12:10 <kerlo> The guys who run lambdabot and bsmnt_bot do it.
04:13:57 <bsmntbombdood> and we are pretty stupid
04:14:19 <kerlo> Oh.
04:14:53 <kerlo> Okay, let me see if I can hack GHC into working on normish.org.
04:16:51 <kerlo> Oh, let's try a newer version.
04:26:53 <Asztal> kerlo: geordi
04:27:12 <Asztal> (in ##c++)
04:27:53 <kerlo> Oh, please. That is *so* last ten-minute period.
04:36:49 -!- kerlo has quit (Remote closed the connection).
04:45:57 -!- kerlo has joined.
05:07:08 -!- Corun has quit ("This computer has gone to sleep").
05:22:12 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
05:41:32 <bsmntbombdood> <3 job karma
05:42:12 <oklopol> ooooooooooooooooooo
05:52:13 -!- psygnisfive has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:58 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
08:12:48 -!- CakeProphet has joined.
08:25:50 -!- oerjan has joined.
10:22:19 -!- oklopol has quit (Read error: 110 (Connection timed out)).
10:51:48 -!- Hiato has joined.
12:24:29 -!- oerjan has quit ("leaving").
12:42:32 -!- Hiato has quit (Read error: 110 (Connection timed out)).
13:03:18 -!- jix has joined.
13:51:30 -!- Corun has joined.
14:42:54 <ehird> 04:14 <kerlo> Okay, let me see if I can hack GHC into working on normish.org.
14:42:54 <ehird> 04:16 <kerlo> Oh, let's try a newer version.
14:43:00 <ehird> itt: kerlo has never heard of apt-get
14:44:17 <Slereah_> ehird
14:44:22 <Slereah_> I want to eat your bones.
14:44:28 <ehird> okay
14:44:29 <ehird> do so
14:45:14 <Slereah_> Could you send your bones through the mail?
14:45:18 <ehird> done
14:45:36 <Slereah_> I hope they arrive soon.
14:54:08 -!- Corun has quit ("This computer has gone to sleep").
15:23:39 <ehird> http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory.html?rel=html
15:31:54 <ehird> we need a higher-order factory calculus
15:34:35 <MizardX> Abstractions run amok
15:39:01 <ehird> [[Please, use more civilized language; remember, you're on the Internet.]] -- reddit
16:05:03 -!- KingOfKarlsruhe has joined.
16:18:20 -!- oerjan has joined.
16:21:00 <oerjan> <ehird> http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory.html?rel=html
16:21:07 <oerjan> clearly this is a monad
16:21:14 <ehird> moar liek gonad
16:21:38 <oerjan> requestProcessorFactoryFactory :: IO (IO Processor)
16:21:42 <ehird> :D
16:21:57 <ehird> oerjan: does yi work
16:22:05 <oerjan> never tried it
16:22:13 <ehird> i am downloading it :D
16:22:40 -!- FireFly has joined.
16:23:21 <oerjan> actually there should probably be another IO on that, since the initial request is really a factory too
16:24:16 <oerjan> (IO replaced with another monad as appropriate, of course)
16:24:45 <oerjan> <ehird> [[Please, use more civilized language; remember, you're on the Internet.]] -- reddit
16:25:00 <ehird> <oerjan> <ehird> [[Please, use more civilized language; remember, you're on the Internet.]] -- reddit
16:25:00 <oerjan> that would be sensible.
16:25:10 <oerjan> unfortunately, the internet rarely is.
16:26:02 <ehird> CWD="`(cd \"\`dirname \\\"$0\\\"\`\"; echo $PWD)`"
16:26:04 <ehird> impressive
16:26:23 <oerjan> O_O
16:27:37 <oerjan> rube goldberg programming?
16:43:30 -!- MigoMipo has joined.
16:57:33 -!- KingOfKarlsruhe has quit (Remote closed the connection).
17:45:44 <AnMaster> ehird, http://rcfunge98.com/rcsfingers.html#UNIX <-- crazy idea. And format of mask isn't specced
17:45:58 <ehird> That's not crazy.
17:46:01 <ehird> That's reasonable.
17:46:07 <ehird> Also, you know what a umask is, presumably.
17:46:20 <ehird> That spec is fine, and looks useful.
17:46:36 <ehird> Change file access <- the only really vague part
17:46:57 <AnMaster> true, guess: permissions
17:47:08 <ehird> yes, probably chmod
17:47:20 <ehird> almost certainly, in fact.
17:47:42 <AnMaster> ehird, also his list of fingerprints is now crazily long
17:47:52 <ehird> he's an odd guy.
17:48:01 <ehird> but that spec is one of the better ones, it's just terse
17:48:01 <AnMaster> ehehehe,,,, yes...
17:48:16 <ehird> AnMaster: want vagueness?
17:48:16 <ehird> http://rcfunge98.com/rcsfingers.html#TRGR
17:48:54 <AnMaster> ehird, indeed, my policy nowdays is to avoid implementing any RCS fingerprints that mycology doesn't test.
17:49:01 <ehird> that's no fun
17:49:09 <ehird> AnMaster: you should implement TRGR without looking at rc/funge
17:49:09 <AnMaster> yes he wrote his own test suites sometimes, but often they are buggy
17:49:22 <ehird> just implement what it says there, make up the unspecified parts (like wtf a trigger is) youreslf
17:49:30 <ehird> and claim it to be spec-compliant, which it would be
17:49:51 <AnMaster> ehird, well I have done similar before and it ended up with flames
17:49:59 <ehird> when, which?
17:50:16 <AnMaster> ehird, hm, interpreting REXP as using a global buffer for example
17:50:22 <ehird> ah.
17:50:25 <ehird> "flames"?
17:50:31 <ehird> i don't think i've ever seen mikeriley show emotion :D
17:50:38 <AnMaster> ehird, eheheheheheh,,,,,,,,,,,,!
17:50:47 <ehird> ok, that got old when I specced mkry
17:51:12 <AnMaster> ehird, true
17:52:57 <Deewiant> I love the way that spec is called "UNIX" when it provides 15 instructions related mostly to unix permissions
17:53:31 <ehird> it seems reasonable to me
17:53:33 <ehird> they're unix syscalls
17:53:43 <Deewiant> "UNIX", to me, implies all of unix
17:53:47 <AnMaster> ehird, what about other unix stuff
17:53:56 <AnMaster> I mean UPRM might have been a better name
17:54:01 <ehird> i guess
17:54:34 <Deewiant> Either provide all of unix in one fingerprint or split it into multiple fingerprints each of has a cohesive purpose
17:54:45 <AnMaster> Deewiant, agreed
17:54:45 <Deewiant> Not "some unix permission stuff and oh, domain names too"
17:54:54 <ehird> it does domain names?
17:54:55 <ehird> ok, thats stupid
17:54:56 <Deewiant> D and N
17:55:00 <Deewiant> what the hell's the difference anyway
17:55:11 <AnMaster> why not use SCKE?
17:55:19 <AnMaster> doesn't it perform those?
17:55:34 <ehird> no
17:55:36 <ehird> that makes sens
17:55:37 <ehird> e
17:55:41 <Deewiant> why
17:55:44 <ehird> one is a reverse dns lookup of the current host
17:55:48 <ehird> one is the /etc/hostname
17:55:56 <AnMaster> hm
17:55:56 <Deewiant> which is which
17:55:58 <ehird> i'd only provide the latter, admittedly
17:56:02 <ehird> Deewiant: N is hostname
17:56:04 <ehird> D is domainname
17:56:09 <ehird> figure it out :P
17:56:30 <AnMaster> H( -- id)Get host id
17:56:31 <AnMaster> huh?
17:56:33 <AnMaster> what is that
17:56:45 <ehird> ummmmmmm.
17:56:45 <Deewiant> ehird: domainname comes from uname according to man 2 getdomainname
17:56:48 <ehird> AnMaster: i don't know
17:57:03 <Deewiant> in which case that may make sense but it still doesn't fit in the same fingerprint IMO
17:57:08 <ehird> yes
17:57:10 <ehird> but teh separation isn't bad
17:57:28 <Deewiant> right, I just got what you meant by "one is a reverse dns lookup"
17:57:31 <Deewiant> you meant SCKE, not D
17:57:49 <Deewiant> AnMaster: hostid
17:58:17 <AnMaster> hm
17:58:41 <AnMaster> `hostid' prints the numeric identifier of the current host in
17:58:42 <AnMaster> hexadecimal. This command accepts no arguments. The only options are
17:58:42 <AnMaster> `--help' and `--version'. *Note Common options::.
17:58:43 <AnMaster> interesting
17:58:47 <AnMaster> so those aren't arguments?
17:58:56 <Deewiant> no, they're options
17:59:02 <AnMaster> ok
17:59:07 <AnMaster> whatever
18:00:09 <Deewiant> hostid supposedly comes from the MAC address of eth0 but I don't see the resemblance
18:00:16 <AnMaster> nor do I
18:00:44 <ehird> % hostid
18:00:44 <ehird> 00000000
18:01:03 <Deewiant> ahaha
18:01:10 <Deewiant> 007f0100
18:01:14 <Deewiant> I just realised what that is
18:01:16 <Deewiant> besides my hostid
18:01:17 <ehird> what
18:01:22 <Deewiant> it's 0.127.1.00
18:01:23 <ehird> ??
18:01:28 <ehird> lol wat
18:01:30 <AnMaster> Deewiant, ah yes, and it is same as mine
18:01:31 <Deewiant> which is the byte transposition of 127.0.0.1
18:01:35 <ehird> XDD
18:01:40 <Deewiant> which is unsurprisingly what's under localhost in /etc/hosts
18:01:41 <ehird> yeah, 0.0.0.0 also works
18:01:44 <Deewiant> and that's my unique host id
18:01:45 <AnMaster> ehird, well it seems like a rather silly command
18:01:52 <ehird> ::1 localhost
18:01:55 <AnMaster> Deewiant, it tries to read /etc/hostid btw
18:01:56 <ehird> I suppose that's what's causing it
18:02:00 <AnMaster> doesn't seem documented
18:02:06 <Deewiant> AnMaster: yes, if you've got one
18:02:08 <AnMaster> the file doesn't exist though
18:02:23 <AnMaster> Deewiant, can't find what the file is supposed to do
18:02:31 <Deewiant> ehird: yeah, it probably does a scanf("%3d.%3d.%3d.%3d") :-P
18:02:46 <ehird> no, 0.0.0.0 resolves to this machine
18:02:47 <ehird> here
18:02:53 <AnMaster> wtf
18:02:57 <ehird> that's usual
18:02:58 <ehird> try it
18:03:00 <AnMaster> err
18:03:02 <Deewiant> AnMaster: echo "foo" > /etc/hostid
18:03:02 <Deewiant> hostid
18:03:05 <AnMaster> ehird, resolves in what way?
18:03:06 <Deewiant> 0a6f6f66
18:03:09 <ehird> Deewiant: doesn't work for me
18:03:14 <AnMaster> ehird, DNS?
18:03:14 <ehird> AnMaster: as an ip.
18:03:17 <AnMaster> ah
18:03:25 <Deewiant> ehird: what doesn't
18:03:25 <AnMaster> ehird, because it doesn't resolve in DNS
18:03:29 <ehird> running a server on 127.0.0.1 doesn't let anyone else access it
18:03:33 <ehird> does with 0.0.0.0
18:03:33 <AnMaster> but if you mean it is possible to bind to...
18:03:37 <ehird> so, slightly different semantics on listening
18:03:41 <AnMaster> ehird, yes of course, but that isn't same as "resolve"
18:03:43 <ehird> but for connection
18:03:45 <ehird> it's the same
18:03:46 <AnMaster> it means "listen to all"
18:03:47 <ehird> AnMaster: oh stfu
18:03:55 <ehird> you can connect to 0.0.0.0
18:03:57 <ehird> and get localhost
18:03:59 <ehird> that's what i'm saying
18:04:00 <AnMaster> ehird, resolve means "reverse DNS resolve"
18:04:07 <ehird> shut upppppppp
18:04:21 <ehird> just because you're a freaking pedant doesn't mean you have to complain even if you understand me
18:04:42 <oerjan> yes it does!
18:04:50 <Deewiant> AnMaster: let resolve = "reverse DNS " ++ resolve in resolve ===> "reverse DNS reverse DNS reverse DNS reverse DNS " ...
18:05:09 <oerjan> wait, i'm late for that argument thread...
18:05:28 -!- Hiato has joined.
18:05:30 <AnMaster> Deewiant, checking if the result from reverse lookup resolves to same ip is a common check
18:05:32 <oerjan> ^ul ((reverse DNS )S:^):^
18:05:32 <fungot> reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS ...too much output!
18:05:39 <AnMaster> for example ircds use it before showing host
18:05:49 <AnMaster> if it doesn't exist someone is trying to fake reverse dns
18:05:56 <AnMaster> a lot of other software also use it
18:06:09 <ehird> wow, AnMaster excells further in the field of "totally irrelevant misunderstandings leading to ranting about minor points"
18:06:17 <ehird> someone give him a reward
18:06:26 <AnMaster> ehird, nice!
18:06:27 * Deewiant gives reward to AnMaster
18:06:47 <oerjan> AnMaster: now you need to give a speech
18:06:54 <ehird> oh god, you'll set him off again
18:07:13 <AnMaster> oerjan, oh? what sort of speech?
18:07:15 <Deewiant> ^ul ((acceptance speech )S:^):^
18:07:15 <fungot> acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech ...too much output!
18:08:09 <AnMaster> Well I think this rewardm which seems to be oerjan's frying pan with the word "reward" painted on it, is very nice
18:08:17 <AnMaster> but isn't stealing it a bit mean Deewiant?
18:09:20 <Deewiant> Whence do you infer that I stole it
18:09:43 <AnMaster> Deewiant, because I don't think oerjan would give it away voluntarily
18:09:57 <Deewiant> You thought wrong
18:10:13 <oerjan> you said it was for short selling!
18:10:27 <ehird> deewiant if I write a befunge-98 implementation in 5 characters will you rewrite mycology to give it all GOODs
18:11:16 <Deewiant> ehird: no
18:11:22 <ehird> deewiant why not
18:11:33 <Deewiant> ehird: mu
18:12:23 <ehird> deewiant why not
18:13:07 <Deewiant> ehird: why would I rewrite something only to recreate the original: if your implementation is a befunge-98 implementation it will get all GOODs
18:13:20 <ehird> well it would be a fuzzy implementation.
18:13:26 <ehird> specifically, it would execute random parts of memory.
18:13:30 <ehird> sometimes, that will run befunge-98 code.
18:13:35 <Deewiant> you can do that in 5 chars?
18:13:55 <oerjan> then sometimes it will pass mycology. what's the problem?
18:14:06 <ehird> Deewiant: yes.
18:14:18 <ehird> ignoring the main() { } boilerplate.
18:14:21 <ehird> well.
18:14:24 <ehird> it'll be more like 10 chars.
18:14:34 -!- oklopol has joined.
18:14:51 <oerjan> i thought it was gonna be J or something...
18:15:14 <oklopol> jjjjjjjjjjjjjjjjjjjjjj!
18:15:34 <oerjan> but J is probably memory safe
18:15:40 <ehird> Deewiant:
18:15:44 <ehird> #include<stdlib.h>
18:15:47 <ehird> main(){return((int(*)(int))rand())();}
18:16:21 <ehird> well, that doesn't bode for command args
18:16:22 <ehird> ok
18:16:23 <ehird> try this
18:16:38 <ehird> #include<stdlib.h>
18:16:39 <ehird> main(a,v){return((int(*)(int))rand())(a,v);}
18:18:00 <ehird> hmm wait
18:18:02 <ehird> that needs to be
18:18:10 <ehird> #include<stdlib.h>
18:18:12 <ehird> main(a,v){return((int(*)(int,char**))rand())(a,v);}
18:18:12 <ehird> yw
18:18:32 <Deewiant> RAND_MAX is too small, it'd only work on a small part of my memory
18:18:48 <ehird> Deewiant: patches welcome, but that isn't an issue
18:19:02 <ehird> i mean, the chances of the befunge-98 interp in ram being at a piece of ram < RAND_MAX is like 100%
18:19:14 <AnMaster> ehird, is it?
18:19:18 <ehird> yes.
18:19:18 <Deewiant> hmm
18:19:23 <AnMaster> ehird, why?
18:19:25 <Deewiant> can one see from somewhere where stuff is in memory
18:19:29 <ehird> AnMaster: because of magic
18:19:33 <ehird> Deewiant: wut
18:19:41 <Deewiant> and possibly set a minimum memory location where they must live ;-)
18:20:01 <oklopol> O0oOOOooo0ooo0oOoooo0oO0oOOoo0oo0000oo.......
18:20:02 <Deewiant> ehird: well, stuff tends to have mappings to virtual memory
18:20:18 <Deewiant> I'd guess there's something in /proc that'd tell me
18:20:22 <AnMaster> Deewiant, you can see where things are mapped in the current process cat /proc/self/maps
18:20:23 <AnMaster> iirc
18:20:27 <AnMaster> on linux
18:20:38 <AnMaster> mostly useful for debugging
18:20:58 <Deewiant> so I see
18:21:06 <Deewiant> hmm
18:21:25 <Deewiant> any chance of seeing where the program counter is? :-P
18:21:32 <AnMaster> Deewiant, gdb
18:21:37 <AnMaster> attach gdb to it
18:21:53 <Deewiant> meh
18:21:56 <AnMaster> then it is show registers or something like that
18:22:14 <Deewiant> cat I had installed, gdb I don't :-P
18:22:46 <AnMaster> Deewiant, well obviously replace the "self" part in the path with the pid you are interested in
18:23:17 <Deewiant> doesn't solve the problem of lacking gdb
18:23:45 <AnMaster> Deewiant, well I guess you could write your own debugger to do it
18:23:45 <ehird> I should write this interp in haskell. Wait, Asztal's done that
18:24:01 <lament> OoOOoO
18:24:17 <ehird> waiiiiiiit
18:24:19 <ehird> Asztal: that's in C++!!!
18:24:23 <ehird> who did it in haskell?
18:24:44 <Deewiant> I forget his nick, the finnish guy
18:25:13 <ehird> :DD
18:25:14 <ehird> fizzie?
18:25:21 <ehird> oooh
18:25:22 <ehird> ilari?
18:25:25 <Deewiant> nope
18:25:30 <oklopol> did what?
18:25:30 <ehird> has to be
18:25:32 <Deewiant> not here now, I don't think
18:25:32 <ehird> it's the rubiks cube guy
18:25:34 <ehird> right?
18:25:55 <Deewiant> I know a lot of finnish rubik's cube guys :-P
18:26:02 <ehird> XD
18:26:15 <Deewiant> ehird: looking at some programs on my machine it seems they all have their IP at locations beyond RAND_MAX
18:26:16 <AnMaster> Deewiant, hm something on f?
18:26:23 <ehird> Deewiant: that's their problem
18:26:35 <ehird> Deewiant: the idea isn't to hit into a program
18:26:37 <Deewiant> ehird: your interpreter likely has a 0% chance of success
18:26:42 <ehird> the idea is to hit into some memory that happens to be valid machine code
18:26:45 <ehird> that runs befunge-98 programs
18:27:08 <Deewiant> funktio
18:27:10 <Deewiant> that was his nick
18:27:10 <AnMaster> ehird, err no, it is likely you will hit an unmapped area. then segfault due to that
18:27:16 <Deewiant> http://funktio.awardspace.com/misc/hsfunge/
18:27:17 <ehird> AnMaster: wait, why are you using an OS?
18:27:20 <Deewiant> and it's no longer up
18:27:20 <ehird> I don't support operating systems
18:27:42 <AnMaster> ...
18:27:48 <Deewiant> ehird: good luck getting such memory without an OS
18:27:55 <Deewiant> without stuff going on, the memory doesn't change much :-P
18:27:58 <ehird> Deewiant: sure, it's meant to fit into your own OS
18:27:59 <ehird> in kernelspace
18:28:17 <Deewiant> does that not mean supporting operating systems
18:28:26 <ehird> no, i don't support oses i.e. i don't support it in userspace
18:28:32 <Deewiant> right
18:29:49 <Deewiant> so I guess hardware drivers don't support much of anything then :-P
18:29:55 <AnMaster> Deewiant, how goes work on ccbi2?
18:30:44 <Deewiant> AnMaster: stalled since september due to DMD bug #2339
18:30:54 <AnMaster> Deewiant, still not fixed. huh
18:31:08 <Deewiant> AnMaster: my oldest open bug is from 2006 june
18:31:19 <AnMaster> Deewiant, how many have patches?
18:31:25 <Deewiant> AnMaster: ~none
18:31:27 <Deewiant> a few might
18:31:29 <AnMaster> ok
18:31:40 <Deewiant> not by me, though
18:31:54 <Deewiant> it /is/ a frontend problem so I /could/ fix it... if I could
18:31:56 <AnMaster> also poll: should I make up a fingerprint for interfacing SQL databases? If yes which of these DBs: SQLite, MySQL, PostgreSQL
18:32:02 <AnMaster> note I may not implement it
18:32:09 <Deewiant> DB-independent
18:32:16 <Deewiant> interpreter-defined
18:32:30 <AnMaster> Deewiant, you still need DB-dependent connection of some sort hm
18:32:47 <AnMaster> Deewiant, or it would be quite useless
18:33:04 <Deewiant> interpreter-defined
18:33:18 <ehird> i'll do better
18:33:23 <ehird> i'll write OBJDB
18:33:28 <ehird> well.
18:33:33 <AnMaster> GRDB?
18:33:33 <ehird> OBDB
18:33:38 <ehird> funge object database.
18:33:43 <ehird> basically, persistent fungespace. >:D
18:33:45 <AnMaster> ehird, what about graph DB?
18:33:52 -!- Hiato has quit ("Leaving.").
18:33:54 <Deewiant> ehird: basically o and i?
18:33:55 <ehird> AnMaster: no, that's too ... practical
18:34:05 <ehird> Deewiant: yes but, can you use fingerprints with that?
18:34:11 <AnMaster> ehird, FILE?
18:34:14 <Deewiant> ehird: meaning what?
18:34:15 <ehird> basically
18:34:24 <ehird> Deewiant: e.g. say you have an OOP fingerprint that stores objects in fungespace
18:34:29 <ehird> you could make it use the persistent fungespace
18:34:39 <ehird> instead of regular fungespace
18:34:43 <Deewiant> ehird: sure, you could use o and i to store that
18:34:48 <ehird> Deewiant: o rly?
18:34:50 <ehird> i mean like
18:34:51 <ehird> new object
18:34:54 <ehird> just gives you fungespace coords
18:34:59 <ehird> the actual fungespace is in the fingerprint code
18:35:01 <Deewiant> sure
18:35:05 <ehird> but the persistent fungespacer
18:35:08 <ehird> makes the fingerprint use it
18:35:12 -!- Hiato has joined.
18:35:15 <ehird> can't do that with o/i
18:35:26 <AnMaster> no clue what you mean.
18:35:27 <Deewiant> ehird: VMEM?
18:35:38 <Deewiant> ehird: sounds like virtual memory, anyway :-P
18:35:41 <AnMaster> Deewiant, that exists?
18:35:46 <AnMaster> RCS I assume?
18:35:49 <Deewiant> AnMaster: nope
18:35:55 <AnMaster> ah
18:35:58 <ehird> Deewiant: it's basically mmap
18:36:10 <AnMaster> wait hm, paging segments in funge space
18:36:10 <AnMaster> ?
18:36:10 <ehird> you can swap out some fungespace usage with a version that writes to a fil
18:36:11 <ehird> e
18:36:18 <AnMaster> VMEM indeed then
18:36:28 <ehird> combine with an OOP fingerprint
18:36:30 <AnMaster> ehird, also a crazy nice idea
18:36:31 <ehird> and you have a funge object database.
18:36:33 <ehird> :DD
18:36:36 <Deewiant> ehird: you can write fungespace to a file using threads which do o every tick
18:36:49 <AnMaster> but the code would need to handle paging itself
18:36:51 <AnMaster> of course
18:37:00 <AnMaster> fingerprints can't do it behind the scens
18:37:01 <Deewiant> ehird: so the only new thing here is something like virtual memory unless I misunderstood
18:37:02 <AnMaster> scenes*
18:37:14 <ehird> Deewiant: that's 1) inefficient, 2) it's a separate fungespace: you can have multiple of them, and only do some things in them, etc
18:37:37 <Deewiant> ehird: 1) that's probably how I'd implement it on windows anyway
18:37:41 <Deewiant> ehird: 2) MVRS
18:37:58 <AnMaster> VMEM should have memory protection too
18:38:02 <ehird> Deewiant: can MVRS cause certain fingerprints to write to one of the fungespaces,
18:38:05 <ehird> but have the rest of the program outside of it?
18:38:11 <ehird> and still be able to access the fungespaces the fingerprints are using?
18:38:17 <ehird> without these fingerprints knowing about mvrs, that is
18:38:26 <AnMaster> hm. some nice ideas for this vmem
18:38:34 * AnMaster writes them down
18:38:36 <Deewiant> ehird: yes, just run the code in a different mvrs?
18:38:41 <AnMaster> basically a DMA-hole to disk!
18:38:41 <Deewiant> er, universe
18:38:44 <AnMaster> by mmap()
18:39:01 <ehird> meh
18:39:04 <AnMaster> also DMA has nothing to do with it
18:39:10 <ehird> how far did hsfunge get?
18:39:11 <AnMaster> but it sounds cool ;P
18:39:13 -!- olsner has joined.
18:39:26 <Deewiant> ehird: it found a bug in mycology, can't remember if he did any fingerprints though
18:40:02 <ehird> so should i do this in haskell or C :P
18:40:11 <ehird> i should do it in haskell and be faster than cfunge for the lulz
18:41:14 <Deewiant> good luck with that
18:41:31 <ehird> :P
18:42:06 <AnMaster> brb
18:42:18 <Deewiant> I have some hidden ideas for funge-space algos which should be comparatively about as fast as cfunge without being as lame as 'static array the size of the biggest program I know of'
18:42:41 <Deewiant> but only 'about' because that's obviously cheating and can't really be beat :-P
18:43:18 <ehird> well, the static array thing is a good idea, but the biggest program i know of is kind of stupid
18:44:04 <Deewiant> it's the size of mycology rounded up to powers of two
18:44:18 <Deewiant> (256*1024)
18:44:25 <ehird> yeah
18:44:41 <ehird> still, the static array is still a good idea, right?
18:44:42 <Deewiant> mycology is 180*800 or so and uses a bit of space on the negative side making it around 190*810
18:44:55 <Deewiant> I don't like static arrays :-P
18:45:14 <ehird> why not :P
18:45:54 <Deewiant> if you have dynamic data it's just extra complexity
18:46:01 <Deewiant> or a source of bugs :-P
18:51:05 <ehird> poll time
18:51:15 <ehird> "BEFUNGE-98EHIRD": C or Haskell or Other
18:53:48 <oerjan> Other. Specifically, Malbolge.
18:54:18 <ehird> invalid option
18:54:20 <Deewiant> Factor
18:54:37 <ehird> Doesn't run on OS X Tiger because slava pestov is a kid with ADHD and can't stop using shiny APIs.
18:54:45 <Deewiant> Joy
18:54:53 <ehird> Does Joy even have file IO?
18:55:30 <Deewiant> Doesn't it?
18:55:41 <oerjan> hm, "Grief programming language"
18:55:45 <ehird> Well, okay, does it have any other OS interfaces Deewiant?
18:56:15 <Deewiant> Probably not, I don't know
18:56:38 <Deewiant> ehird: Cat, then.
18:56:53 <AnMaster> <ehird> "BEFUNGE-98EHIRD": C or Haskell or Other <- other, weird
18:57:04 <AnMaster> or is it wired? can't remember
18:57:07 <ehird> AnMaster: The author of Cat is a retard. he claimed that a lazy map function was O(1).
18:57:11 <ehird> AnMaster: wierd
18:57:16 <AnMaster> ehird, ah yes
18:57:17 <AnMaster> thanks
18:57:22 <AnMaster> well I suggest using it
18:57:25 <lament> of course it's O(1)
18:57:29 <ehird> AnMaster: no
18:57:31 <Deewiant> all lazy functions are O(1)
18:57:36 <ehird> well, exactly
18:57:41 <ehird> but you don't talk about them like that
18:57:44 <ehird> because that's _idiotic_
18:57:44 <Deewiant> Haskell—the constant-time programming language
18:57:50 <AnMaster> ehird, also i and o are optional
18:57:56 <ehird> your mom is optional
18:57:59 <AnMaster> so you can manage without file io
18:58:10 <AnMaster> ehird, also I admit jitfunge is faster
18:58:13 <Deewiant> AnMaster: he has to read the befunge file somehow
18:58:19 <Deewiant> AnMaster: whence the source without I/O?
18:58:26 <AnMaster> Deewiant, hm true
18:58:49 <AnMaster> Deewiant, anyway fast mmaped IO in funge space sounds fun
18:58:59 <ehird> hhmm.
18:59:03 <ehird> can't you load fungespace with mmap?
18:59:04 <AnMaster> I'm not sure how much it will impact stuff when I need to check if some area should be mmaped
18:59:08 <AnMaster> for every read/write
18:59:12 <ehird> and copy-on-write
18:59:27 <AnMaster> ehird, I open with mmap() to avoid issues like fread() ends with \r and next start with \n
18:59:43 <AnMaster> ehird, one issue is the source file line length will vary
18:59:49 <ehird> I mean
18:59:51 <ehird> without parsing
18:59:53 <AnMaster> you need to build a line index or something
18:59:53 <ehird> just mmap() and go
19:00:11 <AnMaster> ehird, well don't think so due to varying line length, you need to locate newlines somehow
19:00:18 <AnMaster> I did consider that a lot you know
19:00:21 <AnMaster> for extra speed
19:00:37 <AnMaster> and at least I couldn't figure out a way to do it
19:01:02 <AnMaster> ehird, so basically you need to parse for \r, \r\n and \n
19:01:08 <AnMaster> all are valid line ending
19:01:21 <AnMaster> mycology uses \r\n for example
19:01:37 <ehird> i'm gonna go for haskell because i don't wanna fuck with memory management more than i have to
19:02:00 <AnMaster> hm copy on write in C, I know kernel does it by page faults and such
19:02:02 <ehird> now convince me not to call it butts
19:02:16 <AnMaster> ehird, call what butts?
19:02:22 <ehird> the interp.
19:02:36 <ehird> well, interp-and-possible-future-compiler-to-llvm because haskell has libraries for that and i am fucking nuts
19:02:37 <AnMaster> well why should I convince you about that?
19:02:40 <ehird> (nutphillia)
19:02:48 -!- MigoMipo has left (?).
19:03:03 <ehird> AnMaster: because if you try it out you'll have to phrase things awkwardly to avoid mentioning its name
19:03:07 <AnMaster> ehird, and I only claimed cfunge was the current fastest _interpreter_
19:03:18 <AnMaster> I admit that jit compilers like jitfunge are faster
19:03:46 <oerjan> ehird: butts has nothing to do with fungi, and therefore cannot be the name of a funge implementation. that's just the way it is.
19:03:55 <AnMaster> oerjan, good point
19:04:15 <ehird> ok then, i'll call it neocallimastigomycota
19:04:35 <AnMaster> oerjan, what about FBBI? Flaming Bovine Befunge Interpreter
19:04:39 <ehird> funge
19:04:40 <AnMaster> written by C. Pressy
19:04:42 <ehird> is in befunge
19:04:44 <ehird> is in FBBI
19:04:44 <AnMaster> ehird, true
19:04:51 <AnMaster> good point
19:05:35 <ehird> oerjan: link to that page with funge-related names?
19:05:37 <ehird> you linked to it a while ago iirc
19:05:43 <AnMaster> ehird, and don't claim I can't admit when I was wrong in the future, now that it actually happened you saw me admit that right above
19:05:55 <AnMaster> ~
19:06:21 <AnMaster> http://rcfunge98.com/rcsfingers.html#IMTH <-- why...
19:06:47 <AnMaster> quite a few of those exist in FIXP
19:07:03 <AnMaster> the rest are trivial without IMTH I think
19:07:21 <oerjan> ehird: this time i might suggest http://en.wikipedia.org/wiki/Category:Lists_of_fungal_species
19:07:49 <ehird> meh
19:07:52 <ehird> I preferred the flat list
19:07:56 <oerjan> darn latin
19:08:04 <oerjan> yeah those were in english
19:09:36 <oerjan> here's a big one: http://www.britmycolsoc.org.uk/files/ENGLISH_NAMES.pdf
19:09:43 <ehird> it wasn't a pdf either :P
19:10:12 <oerjan> _and_ i didn't save the link
19:10:13 <AnMaster> ehird, that isn't an issue when they open inline in the browser and without silly plugins
19:10:23 <AnMaster> it just works here with konqueror
19:10:31 <ehird> umm, that's a plugin.
19:10:35 <ehird> also, pdfs suck anyway.
19:10:54 <AnMaster> ehird, hm? kpdf is a kpart, which is used both by kpdf itself and by konqueror
19:11:11 <ehird> AnMaster: kpart - you mean, a plugin
19:11:18 <AnMaster> ehird, no a module
19:11:29 <ehird> wow. it's not a module, it's a plugin.
19:11:31 <ehird> how profound.
19:11:32 <AnMaster> or kingerprint
19:11:34 <AnMaster> ;P
19:11:34 <ehird> a rose by any other name.
19:11:55 <AnMaster> ehird, well I said "silly plugins", implying third party acrobat one
19:12:03 <AnMaster> so sure it may be a plugin
19:12:15 <AnMaster> if that makes you happier
19:15:21 <oerjan> another one: http://www.english-country-garden.com/fungus.htm
19:15:21 <AnMaster> Deewiant, looks like Mike did his own variant of SNGL... SGNE
19:18:33 * AnMaster ponders a 3 letter fingerprint: SQL
19:18:36 <AnMaster> well
19:18:50 <AnMaster> I got some ideas for the "db independent"
19:19:46 <AnMaster> all I will need is basic common SQL support. I mean, the concept of a database with one or more schemas, with views and tables (and possibly stored procedures and so on)
19:19:50 <AnMaster> btw I just got an idea
19:19:54 <AnMaster> for PostgreSQL
19:20:12 <AnMaster> there is PL/pgSQL
19:20:17 <AnMaster> and PL/Tcl
19:20:19 <AnMaster> and several more
19:20:22 <AnMaster> what about
19:20:26 <AnMaster> PL/Befunge
19:20:27 <AnMaster> :D
19:20:38 <AnMaster> ehird, what do you thing?
19:20:43 <AnMaster> think*
19:20:43 <ehird> ?
19:20:53 <AnMaster> ehird, about a PL/Befunge for Postgres
19:20:57 <ehird> it's a crappy idea, like most of yours.
19:20:57 <AnMaster> just a wild idea
19:21:04 <ehird> did you want that, or the lie?
19:21:08 <AnMaster> ehird, why is it crappy?
19:21:20 <ehird> it's thoroughly uninteresting
19:21:22 <AnMaster> there is a PL/sh even
19:21:25 <AnMaster> which is worse IMO
19:21:46 <AnMaster> (third party)
19:25:36 <ehird> possible name: milkcap
19:26:28 <AnMaster> ehird, for your interpreter?
19:26:34 <ehird> yes
19:27:31 <AnMaster> ehird, also if you decide to jit I'm not going to care, I don't have the time to add jitting to cfunge currently, no idea about later
19:28:26 <oerjan> it's the jitterbug
19:28:54 <AnMaster> sigh
19:29:16 <ehird> hm. mutability violating the liskov subtitution principle. interesting.
19:29:27 <AnMaster> oerjan, that was too bad even for a groan
19:33:04 <AnMaster> night all
19:34:17 <ehird> Joel Spolsky reaches the minimum in substantive content: http://www.joelonsoftware.com/items/2009/01/13.html
19:34:31 -!- olsner_ has joined.
19:34:45 <lament> what, he has even less content now?
19:34:56 <lament> you should have said reaches a new mininum
19:34:59 <ehird> :-)
19:35:34 <ehird> lament: he's still got a bit to lose, though... he wrote a full title summarizing the article which he found & linked to, he picked a quote to excerpt, and found a relevant picture and resized & embedded it into the post
19:35:37 <lament> pianos are so nice, they have black keys and white keys
19:35:39 <ehird> still way too much work
19:35:51 <lament> while on a fretboard all notes look the same :(
19:36:15 <oerjan> ebony and iiiivory...
19:36:55 <lament> i seriously conteplate labeling a fretboard.
19:41:04 -!- MigoMipo has joined.
19:41:07 -!- olsner has quit (Read error: 110 (Connection timed out)).
19:46:44 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
19:48:47 -!- CakeProphet has joined.
20:02:00 <ehird> http://www.riffraff.info/2009/1/12/writing-a-shakespeare-interpreter-with-parrot
20:11:17 <oerjan> ^style
20:11:17 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
20:11:34 <oerjan> ^style ss
20:11:34 <fungot> Selected style: ss (Shakespeare's writings)
20:11:56 <oerjan> fungot: don't you think these parrots are getting uppity?
20:11:57 <fungot> oerjan: lucil. seruilius? you are they that hear their detractions, and can digest as much: make no compare between that love a woman can bear me and that i am
20:15:12 -!- kar8nga has joined.
20:21:26 -!- KingOfKarlsruhe has joined.
20:21:30 <FireFly> ^style irc*
20:21:30 <fungot> Not found.
20:21:35 <FireFly> ^style ff7
20:21:35 <fungot> Selected style: ff7 (Full script of the game Final Fantasy VII)
20:21:48 <ehird> * means selected
20:21:50 <ehird> fungot: poop.
20:21:51 <fungot> ehird: aooooooh!! get in the attack on weapon. we can't use it in time! don't let your guard down! or ain't my hospitality good enough for you to the ancients, only aerith can save our lives.
20:21:55 <ehird> fungot: poop out some text.
20:21:55 <fungot> ehird: we've finally found you.
20:22:12 <oerjan> oh dear oh dear
20:25:01 -!- Corun has joined.
20:30:47 <oklopol> two yesses and i'll watch an ep, otherwise not.
20:30:49 <oklopol> ^bool
20:30:49 <fungot> Yes.
20:30:50 <oklopol> ^bool
20:30:50 <fungot> Yes.
20:30:55 * oklopol watches
20:37:58 <oerjan> fungot: you enabler you
20:37:58 <fungot> oerjan: got it going to let them get any customers so. your orders? where are you talking about this? simply destroy a group like that you a copy once i push this button, they'll hear you.
20:41:55 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:46:53 -!- KingOfKarlsruhe has joined.
21:08:58 -!- Hiato has quit (Read error: 110 (Connection timed out)).
21:21:29 -!- Sgeo has joined.
21:23:37 -!- Corun has quit ("Leaving").
21:23:44 <MizardX> Is the answer to this question "No."?
21:23:44 <MizardX> ^bool
21:23:45 <fungot> No.
21:23:57 <oerjan> Great Success!
21:24:47 <ehird> Is the answer to this question maybe?
21:24:48 <ehird> ^bool
21:24:48 <fungot> Yes.
21:25:10 <oerjan> erm...
21:25:15 <FireFly> According to fungot, the answer to MizardXs question isn't "No."
21:25:16 <fungot> FireFly: i thought you were alive somewhere... before. goin' on!? da-chao statue and leviathan are ashamed!! you all right
21:25:25 <FireFly> 'kay.
21:25:39 <ehird> Is the answer to this question yes?
21:25:41 <ehird> ^bool
21:25:42 <fungot> Yes.
21:30:44 <oerjan> What is the answer to this question?
21:30:51 <oerjan> ^ul (A cheat.)S
21:30:51 <fungot> A cheat.
21:37:07 -!- MigoMipo has quit.
21:37:34 <Sgeo> How did Vundo manage to protect itself even in Safe Mode?
21:39:57 -!- BeholdMyGlory has joined.
21:40:28 <ehird> idea:
21:40:39 <ehird> a virtual machine running unpatched windows xp, with a mail account
21:40:46 <ehird> a daemon runs on the machine containing it
21:40:54 <ehird> whenever it gets an email with an attachment, it puts the attachment into the vm
21:40:57 <ehird> and executes it
21:41:03 <ehird> any next buttons are automatically clicked or sth
21:41:11 <ehird> and, regularly, screenshots are automatically taken
21:41:14 <ehird> and posted to a website
21:41:16 <ehird> -> chaos
21:43:25 <MizardX> ehird: http://xkcd.com/350/
21:44:19 <ehird> ha
21:58:37 <Sgeo> I'm pretty sure a file I have on my computer is part of Vundo, even though almost nothing detects it
21:58:43 <Sgeo> Is there any place I can submit it?
21:59:06 <ehird> yes. email a security company.
21:59:52 <Sgeo> Like who?
21:59:56 <ehird> try google
22:01:02 <Sgeo> Found a place
22:01:20 <ehird> where
22:01:55 -!- comexk has changed nick to comex.
22:02:32 <oerjan> "Because Vundo has random file names, it is not possible for VundoFix to have a 100% detection rate. Often, the infected files must be removed using VundoFix's "Add more files" option (they cannot be removed manually in any way)."
22:02:38 <oerjan> maybe that is relevant?
22:03:10 <Sgeo> VundoFix has an "Add more files" option?
22:03:24 * Sgeo goes to use
22:03:27 <oerjan> (from wikipedia:VundoFix)
22:03:38 <Sgeo> Although, if I knew of that earlier, I would not have found this second file
22:04:17 <ehird> sgeo, how did you get infected?
22:04:26 <Sgeo> Don't know
22:04:27 <ehird> stoopid :|
22:04:38 <ehird> so why are you using windows again
22:04:48 <Sgeo> Various windows-only games
22:05:18 <ehird> wut is wine/vmware
22:05:28 <oklopol> oooooooooooooooooooooo
22:05:35 <Sgeo> VMware doesn't work with 3d
22:06:13 <Sgeo> and WINE doesn't work with one of the programs I want
22:06:38 <ehird> so use wine with all but the one which it doesn't work with, use vmware for that one
22:06:41 <oklopol> better not have fun than to use windows.
22:06:56 -!- olsner_ has changed nick to olsner.
22:06:57 <Sgeo> The one it doesn't work with is a 3d program
22:07:11 <oklopol> just stop playing and quit wineing.
22:07:25 <ehird> Sgeo: so boot into windows for that one
22:07:47 <Sgeo> Or have a separate Windows laptop maybe.. OH WAIT
22:20:24 -!- Corun has joined.
22:24:27 -!- Corun has quit (Client Quit).
22:25:18 <ehird> funge 98 in haskell project
22:25:19 <ehird> i
22:25:20 <ehird> s
22:25:22 <ehird> GO
22:25:54 -!- pikhq has quit ("leaving").
22:26:00 <ehird> i wonder what i should implement first
22:26:12 <oerjan> >
22:26:18 <ehird> wut?
22:26:35 <oerjan> or maybe v ?
22:26:38 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
22:26:43 <ehird> oerjan: nowhere near that stage first
22:26:50 <ehird> that has to come after a complete fungespace impl...
22:27:47 -!- flexo has quit (Remote closed the connection).
22:27:53 -!- flexo has joined.
22:28:57 <ehird> hm
22:32:48 <ehird> so. who's alive of {fizzie,Deewiant,AnMaster,Asztal}?
22:32:52 <ehird> {,Azstal}
22:33:18 <oerjan> hm?
22:33:30 <ehird> trying to get the funge implementors :^)
22:33:51 <oerjan> oh that sz/zs thing
22:34:31 <ehird> :-P
22:36:42 <oklopol> MEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
22:37:17 <oerjan> i detect a distinct lack of membership in the presented set
22:37:25 <oklopol> :|
22:37:31 <oklopol> :<
22:37:34 <oklopol> :(
22:37:36 <ehird> have you implemented funge-98 oklopol
22:37:48 <oklopol> nope, nuvvah
22:37:53 -!- KingOfKarlsruhe has quit (Remote closed the connection).
22:38:05 <oklopol> 93 a few times, does that count as one 98? :P
22:38:41 <ehird> no :P
22:38:51 <oklopol> oh :(
22:39:45 <oerjan> i guess the first problem is to choose the datastructure for an infinite, reasonably efficient mutable array, 93 experience won't help there
22:40:06 <ehird> oerjan: also, N-dimensional
22:40:27 <oerjan> yeah
22:40:47 <ehird> also, lahey space
22:40:54 <oerjan> oh right
22:41:04 <oerjan> so need to detect line ends
22:41:22 <oerjan> scratch my Data.Map suggestion for simplicity then
22:41:34 <ehird> Data.Map wouldn't be nearly fast enough anyway.
22:41:40 <ehird> Note, oerjan, that it does need to be sparse.
22:41:52 <oerjan> Data.Map is sparse
22:41:55 <ehird> yes
22:41:57 <oklopol> oerjan: {}
22:42:05 <ehird> I need an infinite efficient mutable sparse array in N dimensions, that I can use as a lahey space
22:42:10 <oerjan> oklopol: hm?
22:42:13 <ehird> I'm going to tell #haskell that
22:42:14 <ehird> :DD
22:42:16 <oklopol> oerjan: py
22:42:24 <ehird> hmm
22:42:27 <ehird> oerjan:
22:42:28 <ehird> The requirements for a line in Lahey-space are the following: Starting from the origin, no matter what direction you head, you eventually reach the origin. If you go the other way you reach the origin from the other direction.
22:42:37 <ehird> doesn't that break down for infinite arrays?
22:42:57 <oerjan> er
22:43:21 <oerjan> as i said, you need to detect the end
22:43:49 <oklopol> well just store max coords in all directions.
22:43:52 <oerjan> (of inhabited space)
22:44:34 <ehird> oerjan: then... that's not fungespace
22:44:39 <ehird> fungespace is finite, isn't it?
22:44:40 <ehird> AnMaster?
22:44:41 <ehird> Deewiant?
22:44:49 <lament> http://www.gopromusic.com/get.php?id=1235
22:44:52 <oerjan> what are you talkin about?
22:45:13 <oerjan> lahey-space was invented for funges afaik
22:45:23 <oerjan> and they are infinite
22:46:31 <ehird> meh, okay
22:46:37 <ehird> but
22:46:37 <ehird> oerjan:
22:46:40 <ehird> Starting from the origin, no matter what direction you head, you eventually reach the origin.
22:46:43 <ehird> that implies finiteness
22:47:04 <oerjan> only in an abstract sense
22:47:11 <oerjan> what really goes on iirc:
22:47:45 <oerjan> when you reach the end of the inhabited part of a line, you turn around and go to the other end, then turn again
22:47:50 <ehird> ah
22:47:54 <ehird> so you jsut keep track of current bounds
22:47:57 <oklopol> oerjan: i just mean that's a way to know when there's only uninhabited shit left.
22:47:58 <ehird> and expand when you put stuff further?
22:48:01 <oerjan> yep
22:48:03 <oklopol> max coords of el habitation.
22:48:51 <ehird> oerjan: but e.g. "g" still works on uninhabited space
22:48:51 <ehird> like
22:48:56 <ehird> if we just have 0,0 inhabited
22:49:00 <oerjan> also, the "going to the other end" is of course without executing anything
22:49:01 <ehird> does 1,1 == 0,0
22:49:02 <ehird> when you g it?
22:49:05 <ehird> i.e., does g wrap
22:49:07 <ehird> or only the ip
22:49:21 <oerjan> only the ip
22:49:41 <oerjan> heck otherwise there would be no easy way to expand the space...
22:49:52 <ehird> no
22:49:53 <ehird> that'd be using p
22:49:56 <ehird> im talking about g
22:50:04 <oerjan> well yeah
22:50:18 <ehird> http://search.cpan.org/~jquelin/Language-Befunge-4.07/ latest release november, i wonder if it works under mycology
22:50:19 <oerjan> but they are opposites so it would be insane
22:50:24 <ehird> tru
22:50:40 <oerjan> i don't _think_ funge-98 is insane in that particular way
22:51:38 <oklopol> it's not exactly obvious how it's wrap if it wrapped.
22:51:45 <oklopol> *it'd
22:52:26 <oerjan> lucky i have fuzzy parsing on :D
22:53:56 <oerjan> keeping only global bounds could be inefficient though
22:54:16 <ehird> what do you do then
22:54:29 <oerjan> keeping bounds for each line
22:54:49 <ehird> ah
22:54:50 <ehird> so
22:54:57 <ehird> >
22:54:57 <ehird> aaaaaaaaa
22:55:02 <ehird> the first > meets itself instantly?
22:55:08 <oerjan> right
22:55:09 <oklopol> ofc
22:55:17 <ehird> befunge-98 is fucking crazy
22:55:30 <oerjan> the wrapping is instantaneous
22:55:37 <ehird> holy fack.
22:55:38 <oklopol> the other option is to loop infinitely anyway
22:55:45 <ehird> lol
22:55:50 <oerjan> which is important for synchronized threading iirc
22:56:14 <oklopol> well not that important, you don't actually need to wrap, ever.
22:56:27 <oklopol> what is more important is that whitespace is instaneous
22:56:53 <oerjan> i vaguely recall someone mentioning it was ambiguous if it wrapped in a string
22:57:58 <oklopol> huh?
22:58:11 <oklopol> like if you have string mode and start moving into the infinite?
22:58:16 <oerjan> yes
22:58:24 <oklopol> err
22:58:32 <oklopol> in string mode, was whitespace space or not?
22:58:51 <oerjan> well obviously it's space if it's inside
22:59:03 <oklopol> if it's space, then moving out of bounds should, imo, simply start making an infinite string and exhaust all memory.
22:59:16 <Asztal> the whitespace is collapsed XML-style in a string :)
22:59:27 <oerjan> O_O
22:59:33 <ehird> yep
22:59:34 <oklopol> the idea is just whitespace is a special optimized nop
22:59:36 <ehird> 'tis
22:59:37 <oerjan> ok that part _may_ be insane :D
22:59:38 <ehird> hi Asztal
22:59:44 <Asztal> hello
22:59:47 <oklopol> it's not in string mode
22:59:55 <ehird> Asztal: i assume you're willing to answer my endless qs :D
23:00:15 <Asztal> I can try :)
23:01:08 <ehird> i wonder if I should ask Haskell "So. I need an infinite efficient mutable sparse array in N dimensions (settable at runtime), that I can use as a lahey space" again
23:09:17 <oerjan> again?
23:10:34 <ehird> yes
23:11:19 -!- Corun has joined.
23:18:37 <ehird> 23:18 <rwbarton> from that page: "Lahey-Space is a mathematical model of the space used in Funge-98" <-- that is a lie
23:18:38 <ehird> 23:18 <ehird> rwbarton: is it now
23:19:01 <ehird> 23:18 <rwbarton> Yes
23:19:02 <ehird> 23:18 <rwbarton> There is no math in the subsequent section
23:19:03 <ehird> fail
23:21:27 -!- Corun has changed nick to SomeGuy.
23:21:45 -!- SomeGuy has changed nick to KEITH-EMULATOR.
23:22:04 -!- olsner has quit ("Leaving").
23:22:06 -!- KEITH-EMULATOR has changed nick to Corun.
23:22:32 <oerjan> Corun: so there's a shortage of real keiths now?
23:22:35 <Corun> <_<
23:22:36 <ehird> Syntax
23:22:36 <ehird> The syntax for identifiers draws from the best parts of the esteemed languages BASIC and Perl. Like Perl, all identifiers must be preceded by a $ symbol, and like BASIC, identifiers must be followed by a symbol indicating their type. Except we don't care about their type really, so we say they must be followed by $. (Studies also show that this syntax can help serious TeX addicts from "bugging out".)
23:22:41 <ehird> -- http://catseye.tc/projects/quylthulg/doc/quylthulg.html
23:24:17 <oklopol> ehird: sure it was fail and not a joke?
23:24:22 <ehird> oklopol: nope
23:24:26 <ehird> it was fail
23:24:27 <ehird> >_<
23:24:37 <oklopol> i mean it was a pretty classic joke.
23:24:58 <oklopol> was a pretty lucky fail
23:25:45 <Asztal> I'm glad I didn't bother with the N dimensions thing
23:25:50 <ehird> As an example,
23:25:50 <ehird> -foreach $x$ = [2, 3, 4] with $a$ = 1 be *$a$*$x$* else be null-1-
23:25:51 <ehird> will evaluate to 23. On the other hand,
23:25:53 <ehird> foreach $x$ = null with $a$ = 1 be $a$ else be 23
23:25:55 <ehird> will also evaluate to 23.
23:26:24 <oerjan> i think there's still some serious tex bugging there
23:27:03 <ehird> Now you see why we don't need arguments to these macros: you can simply use macros as arguments. For example,
23:27:03 <ehird> {*[SQR][*{X}*{X}*]}{*[X][5]}{SQR}
23:27:35 <ehird> The first school (Chilton County High School in Clanton, Alabama) says that most comments that programmers write are next to useless anyway (which is absolutely true) so there's no point in writing them at all.
23:27:36 <ehird> The second school (Gonzaga College S.J. in Dublin, Ireland — not to be confused with Gonzaga University in Spokane, Washington) considers comments to be valuable as comments, but not as source code. They advocates their use in Quylthulg by the definition of macros that are unlikely to be expanded for obscure syntactical reasons. For example, {*[}][This is my comment!]}. Note that that macro can be expanded in Quylthulg using {}}; it's just that the Gon
23:27:41 <ehird> zaga school hopes that you won't do that, and hopes you get a syntax error if you try.
23:27:43 <ehird> The third school (a school of fish) believes that comments are valuable, not just as comments, but also as integral (or at least distracting) part of the computation, and champions their use in Quylthulg as string literals involved in expressions that are ultimately discarded. For example, <"Addition is fun!"<+1+2+<.
23:31:05 -!- BeholdMyGlory has left (?).
23:38:50 -!- FireFly has quit ("Later").
23:39:22 <Sgeo> Is Quylthulg turing complete?
23:39:35 <ehird> yes.
23:40:02 <oerjan> beyond all doubt, apparently
23:40:03 <lament> with addition of the turing-completeness instruction?
23:40:54 * oerjan sprays Sgeo and lament with Doubt-B-Gone
23:42:19 <lament> PHHSHHHHHHHHHHHHHHTt.
23:42:51 <ehird> a language with no iteration would be fun
23:42:54 <ehird> the code is a list
23:43:04 <ehird> so loops are making lists that cycle a few times
23:45:26 <oerjan> a cyclopean language
23:46:08 <lament> it cycles, just like the bass guitar fretboard
23:57:13 <Sgeo> AAAAAAHHHHHHHRRRRRRRGGGGGGGHHHHHHHH!
23:57:34 <ehird> what
23:57:38 <ehird> why did you say that in both channel
23:57:39 <ehird> s
2009-01-14
00:08:19 <bsmntbombdood> so oerjan and oklopol
00:08:24 <bsmntbombdood> is norway or finland better?
00:14:00 <ehird> I thikn I'm talking to a markov chain bot
00:14:01 <ehird> 00:12 <SamanthaDega> This is not #haskell. Maybe you could consider better file handling rather than loading the file into an array. Like in C I have a file handle which could with a releatively simple fn be move to point to the same column in the next/previous line. You don't need to load data into an array to own it, you just need to manage it properly however you decide to manage it. thanks for being awesome. thanks for the example code. Hope all the
00:14:05 <ehird> pro
00:16:10 <ehird> anyone want to decipher that?
00:17:40 <bsmntbombdood> what?
00:17:42 <bsmntbombdood> pretty simple
00:18:29 <bsmntbombdood> are you writing it in haskell?
00:18:56 <ehird> no
00:18:58 <ehird> im talking about that guy
00:19:04 <ehird> i can't tell wtf he's trying to say
00:19:59 <bsmntbombdood> you don't need the file in an array
00:20:56 <ehird> i think you're messing with me. what i'm saying is that this guy is making no sense at all, he's just spewing random shit every time i say something to him
00:21:22 <bsmntbombdood> it makes sense to me
00:23:33 <oerjan> bsmntbombdood: never been to finland. good night.
00:23:36 -!- oerjan has quit ("leaving").
00:23:38 <bsmntbombdood> maybe i should learn haskell
00:48:55 -!- jix has quit (Read error: 60 (Operation timed out)).
00:59:04 -!- GreaseMonkey has joined.
01:24:19 <flexo> *yawn*
01:24:20 <flexo> bored!
02:44:34 -!- pikhq has joined.
03:05:53 <Corun> Write a language
03:05:59 <Corun> What else does one do when bored?
03:06:34 <Corun> Write a very very simple language, in machine code (yes, machine code, not asm)
03:07:00 <Corun> Then write a superset language, written in the original language
03:07:03 <Corun> And keep doing that
03:07:20 <Corun> Until you have a relatively feature full language written in itself
03:07:33 <Corun> Without ever having written an interpreter in any other language
03:08:29 <Corun> N...No?
03:09:13 <Corun> N...Yes?
03:09:17 <Corun> Y...No?
03:09:19 <flexo> no.
03:09:21 <Corun> Oh.
03:09:24 -!- pikhq has quit (kornbluth.freenode.net irc.freenode.net).
03:11:04 -!- pikhq has joined.
03:11:08 <Corun> Or you could initially write it in itself
03:11:13 <Corun> And hand compile it.
03:17:19 <MizardX> heh
03:19:31 -!- Corun has quit ("WOT").
03:52:37 -!- CakeProphet has quit ("lol").
04:23:46 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
04:25:27 -!- psygnisfive has joined.
04:43:15 -!- Corun has joined.
05:12:51 -!- Corun_ has joined.
05:18:51 <oklopol> bsmntbombdood: is norway or finland better? <<< come to finland and we can go fishing
05:19:01 <bsmntbombdood> oklopol: k
05:19:20 <bsmntbombdood> the nordic countries sound nice
05:20:47 -!- Corun_ has quit ("This computer has gone to sleep").
05:21:42 <oklopol> i don't actually fish, ever
05:21:50 <oklopol> norway is better for that.
05:23:55 <bsmntbombdood> yeah fishing is not very fun
05:29:13 <oklopol> ooooooo
05:29:43 <oklopol> gotta gope, ->
05:29:58 -!- Corun has quit (Read error: 110 (Connection timed out)).
05:47:44 -!- GreaseMonkey has quit ("Client Excited").
05:55:51 -!- sebbu2 has joined.
06:09:02 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
06:11:02 -!- psygnisfive has joined.
06:13:14 -!- sebbu has quit (Read error: 110 (Connection timed out)).
06:45:39 -!- Sgeo has quit (Remote closed the connection).
07:02:43 -!- olsner has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:17:22 -!- olsner has quit ("Leaving").
09:14:20 -!- oerjan has joined.
11:39:54 -!- psygnisf_ has joined.
11:44:24 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
12:08:55 -!- ais523 has joined.
12:23:51 -!- jix has joined.
12:42:37 -!- oerjan has quit (kornbluth.freenode.net irc.freenode.net).
12:45:09 -!- oerjan has joined.
12:47:16 -!- ais523_ has joined.
12:52:54 -!- Mony has joined.
12:54:09 <Mony> plo
12:54:11 <Mony> p
12:54:14 <ais523_> p
12:54:18 <oklopol> o
12:54:19 <ais523_> wait, you fixed it first
12:54:30 -!- ais523 has quit (Nick collision from services.).
12:54:44 -!- ais523_ has changed nick to ais523.
12:54:48 <oklopol> ep?
12:54:49 <oklopol> ^bool
12:54:50 <fungot> No.
12:54:51 <oklopol> :|
12:54:58 <ais523> pepep
12:55:01 <oklopol> let's try that one again
12:55:02 <oklopol> ^bool
12:55:02 <fungot> Yes.
12:55:05 <oklopol> thought so
12:56:32 <Mony> how are you guys ?
12:56:38 <ais523> fine, a bit tired
12:56:50 <Slereah_> I'm three miles tall.
12:57:03 <ais523> Slereah_: is this some definition of mile I'm unaware of?
12:57:18 <Slereah_> No.
12:57:26 <ais523> hmm... what's the horizon on 3 miles?
12:57:26 <Mony> lol
12:57:30 <ais523> I'm wondering if I can see you from England
12:58:19 <Slereah_> Buy some binoculars with your wolfram money mister millionaire.
12:58:35 <ais523> actually, I was wondering if the curvature of the earth got in the way
12:58:46 <ais523> and I'm mostly using the money to cancel out student debt
12:58:58 <Slereah_> Is school expensive in England?
12:59:12 <ais523> it can be, but University is very expensive
12:59:20 <ais523> mostly because you have to meet living and tuition costs yet don't have a job
12:59:25 <Slereah_> I pay like 400 euros a year here.
12:59:29 <ais523> so students famously nearly always get into huge amount of debt
12:59:45 <ais523> it's something like £1175 per year over here
12:59:46 <Slereah_> Well, I'm still at my mom's, so it helps
12:59:53 <ais523> plus the cost of living
13:00:00 <ais523> which normally comes to more
13:15:19 -!- oerjan has quit ("leaving").
13:45:11 -!- Corun has joined.
13:50:09 -!- Corun has quit ("This computer has gone to sleep").
14:04:27 <ehird> hi ais523
14:04:44 <oklopol> o
14:04:44 <oklopol> o
14:04:44 <oklopol> o
14:04:45 <oklopol> o
14:04:46 <oklopol> ->
14:04:49 <ais523> hi ehird
14:21:47 <Deewiant> ehird: coding a Befunge-98 interp in Haskell?
14:21:54 <ehird> that is my intention, yep
14:22:05 <ehird> i also intend to implement every fingerprint I can.
14:22:16 <ais523> more even than the AnMaster list?
14:22:18 <ehird> Deewiant: actually, funge98
14:22:29 <ehird> I hope to be N dimensional.
14:22:30 <ehird> at runtime
14:22:35 * ais523 wonders vaguely if ehird is mad enough to implement IFFI
14:22:37 <ehird> ais523: Sure, he doesn't even do stuff like TRDS.
14:22:44 <ehird> Or half of MikeRiley's fingerprints.
14:22:45 <ehird> Or MKRY!
14:23:04 <ais523> note that IFFI is written such that it could in theory be used with INTERCAL interps other than C-INTERCAL
14:23:08 <ais523> or even with languages other than INTERCAL
14:23:13 <ehird> IFFI would be fun
14:23:15 <AnMaster> hi ais523
14:23:17 <Deewiant> I implement every cross-platform fingerprint which makes a degree of sense
14:23:17 <ais523> hi AnMaster
14:23:26 <ais523> Deewiant: and IFFI doesn't?
14:23:27 <Deewiant> (that excludes MKRY among others)
14:23:40 <ehird> Deewiant: i will implement fingerprints no matter if I can test them on the right software/hardware or not
14:23:49 <ehird> and sense will get your fingerprint delayed
14:23:59 <ehird> also: ponies.
14:24:06 <Deewiant> ais523: IFFI was the intercal one? I'm not sure it does ;-)
14:24:21 <ais523> Deewiant: well, a lot is left implementation-defined
14:24:28 <AnMaster> ais523, I'm currently writing down ideas for a fingerprint called SQL, very early, not even level of draft yet
14:24:42 <ehird> umm, that's a nice random topic change
14:24:48 <ais523> and it also depends on the "implementation-specified instructions" area with charcodes above 100
14:24:53 <ais523> *128
14:24:54 <AnMaster> ehird, err? it is befunge related
14:25:12 * ais523 thought ehird was referring to the /topic
14:25:37 <ehird> no, that's a reference to a gay porn site. google corrected an acronym oklopol said to EUROCREME
14:25:46 <ehird> and apparently it's a gay porn site. so there you go.
14:25:50 <AnMaster> http://rafb.net/p/Z73Y8i84.html <-- some random ideas for it, most isn't detailed yet, like parameters for most things and so on
14:26:11 <AnMaster> any constructive comments are welcome
14:26:26 <ehird> it's still a thoroughly uninteresting idea.
14:26:56 <ais523> ehird: this isn't about MKRY randomness or TRDS insanity, this is about Befunge as a practical esoteric language for the 21st century
14:27:06 <ehird> har har har.
14:27:07 <ais523> you have to admit, on the practical esolangs side, Befunge is winning
14:27:09 <AnMaster> ais523, :D
14:27:36 <ehird> Deewiant: what would you use if you needed a Data.Map that'll get mutated alll the time?
14:27:37 <ais523> it has the best stdlib of any esolang I know, apart from possibly Deltaplex
14:27:38 <ehird> i.e., fungespace
14:27:47 <ais523> and I don't really know Deltaplex
14:27:49 <ais523> ehird: OCaml
14:27:50 <Deewiant> ehird: Data.Map. :-P
14:27:54 <Deewiant> ehird: it's what hsfunge used
14:28:04 <AnMaster> ais523, I think I should return stuff like what db drivers are supported and such (possibly). If I implement this in cfunge it will probably support sqlite and postgresql
14:28:05 <ehird> ais523: fuck you. Deewiant: how slow was hsfunge?
14:28:07 <Deewiant> ehird: but, uh, have fun with N dimensions
14:28:10 <AnMaster> with easy to add new drivers
14:28:17 <ehird> Deewiant: wellllll, I'm not sure it can be done
14:28:18 <ehird> I mean
14:28:19 <Deewiant> ehird: not /too/ slow
14:28:23 <ehird> you need instructions for turning in N dimensions
14:28:32 <Deewiant> ehird: can't remember, maybe about 50x slower than cfunge
14:28:36 <Ilari> Got reference for MKRY (I couldn't find one that's up)?
14:28:43 <ehird> Ilari: yes, google cache:
14:28:45 <Deewiant> Ilari: it's a joke.
14:28:50 <ehird> yes, it is
14:28:50 <ais523> Ilari: not a very good joke either
14:28:55 <AnMaster> agreed
14:29:07 <ehird> pfft, it's hilarious
14:29:34 <ehird> hrm, no google cache. trying web archive
14:29:41 <Deewiant> ehird: I seem to recall hsfunge getting through mycology in 1-2 seconds but I don't remember on what machine so I can't compare that time to anything
14:29:49 <AnMaster> ais523, anyway what is needed for a generic database access abstraction interface? I have only used mysql, sqlite and postgresql so I don't know what other database systems could need.
14:29:59 <ais523> ehird: you could just install an httpd on eso-std.org...
14:30:04 <AnMaster> odbc and such for example, (I don't even know how that works)
14:30:08 <ehird> no i couldn't because i didn't save tusho.net
14:30:25 <AnMaster> eh?
14:30:26 <ais523> oh, you lost the spec too?
14:30:33 <ehird> sure.
14:30:34 <AnMaster> ah
14:30:35 <ehird> wait.
14:30:37 <ehird> it;'s here
14:30:42 <ehird> maybe.
14:30:55 <Deewiant> ehird: eh? what happened to tusho.net
14:31:00 <ais523> well, my opinions on wiping a server to uninstall all the software vs. simply uninstalling all the software using the package manager are a matter of private record
14:31:06 <ehird> Deewiant: /shrug
14:31:14 <ehird> ais523: you know what, it's my server, i really don't give a shit.
14:31:57 <ais523> AnMaster: are you going to implement a driver-independent syntax for SQL queries?
14:32:02 <ehird> flood time
14:32:03 <ehird> Ilari:
14:32:05 <ehird> <html style="font-family: sans-serif">
14:32:06 <ehird> <h1>"MKRY" (0x4d4b5259)</h1>
14:32:08 <ehird> <h2>a funge-98 fingerprint by <a href="http://tusho.net/">tusho</a></h2>
14:32:10 <ehird> <dl>
14:32:12 <ehird> <dt>C ( -- c... )
14:32:14 <ehird> <dd>Push ','s
14:32:16 <ehird> <dt>D ( -- c... )
14:32:18 <ehird> <dd>Push '.'s
14:32:20 <ehird> <dt>E ( -- c... )
14:32:22 <ehird> <dd>Push 'e' and 'h' (random)
14:32:24 <ehird> </dl>
14:32:26 <ehird> <p>All pushes from 3 to 15.</p>
14:32:28 <ehird> </html>
14:32:30 <ehird> before you say anything, that's the idea.
14:33:31 <AnMaster> ais523, hm there is the SQL standard
14:33:47 <ais523> AnMaster: yes, not all DB drivers implement it correctly
14:33:50 <AnMaster> ais523, isn't that enough? I assume everyone follows the standard ;P
14:33:52 <ais523> in fact, I'm not entirely convinced any do
14:33:53 <ehird> why not just use DBI via Perl if you think it's such an interesting idea.
14:34:05 <AnMaster> ais523, true
14:34:10 <ais523> for instance, what quote characters mean what tends to vary a lot
14:34:12 <AnMaster> but well, this is still funge
14:34:41 <ehird> then make them use scke.
14:34:49 <AnMaster> ais523, hm what about prepared statements? I don't know how standard they are, but surely they solve some of the issue?
14:34:52 <ehird> because if you're just passing sql on, there's no point
14:34:56 <ais523> AnMaster: some of the issue, yes
14:35:03 <ehird> umm
14:35:05 <ais523> make sure you allow for parameterised statements
14:35:07 <ehird> so it's not even an SQL fingerprint any more
14:35:08 <ehird> cool.
14:35:16 <ais523> ehird: it's an interact-with-DB-driver fingerprint
14:35:26 <ais523> having both SQL and prepared statements makes sense there
14:35:31 <AnMaster> indeed
14:35:35 <ehird> which is unneeded unless you abstract the queries.
14:35:41 <ehird> because every server and its dog has a socket interface.
14:35:42 <ais523> parameterised SQL, anyway, is useful for avoiding injections
14:35:50 <AnMaster> ehird, not sqlite
14:35:51 <AnMaster> ...
14:35:58 <AnMaster> which is the one I'm most interested in
14:36:07 <AnMaster> ais523, indeed
14:36:10 <ais523> it makes much more sense to write "WHERE field = ?" and give an argument rather than trying to use string concatenation
14:36:17 <ais523> also, I love SQL's use of ? for arguments
14:36:27 <AnMaster> ais523, well some dbs allow WHERE field :namedparameter
14:36:28 <AnMaster> or such
14:36:34 <AnMaster> not sure how wide that support is
14:37:33 <ais523> exactly
14:37:35 <ehird> i wonder if there's a channel called #really-esoteric that is actually about esoteric programming ideas
14:37:39 <ais523> SQL portability is a nightmare
14:37:53 <ais523> ehird: this is about esolanging, although not a part of it that, say, you or oklopol would be interested in
14:37:57 <AnMaster> ais523, well that is why abstracting the actual query would be very hard
14:38:01 <ais523> AnMaster: yes
14:38:06 <ehird> no, it's not about esoteric programming ideas
14:38:11 <ais523> you'd have to invent your own nonportable unambiguous syntax for it
14:38:17 <ehird> it is tangentially related to an esolang, but it's not an esoteric programming idea
14:38:26 <AnMaster> I mean simple selects sure, but what about nested selects, with joins and sub queries and so on
14:38:34 <ais523> ehird: the international hub for design, development and deployment of esoteric programming languages
14:38:37 <ais523> this is deployment, IMO
14:39:02 <ehird> ok, tell you what, i'll emulate #really-esoteric: someone tell me when we're talking about esoteric programming ideas.
14:39:03 -!- ehird has left (?).
14:39:50 <Ilari> Like languages with write-once-read-many memory? :-)
14:40:27 <ais523> that might be esoteric, but needn't be
14:40:33 <ais523> write-many-read-once would be more fun
14:41:00 <ais523> I've actually had some thoughts along those lines
14:41:18 <ais523> to create a lang which was as usable as possible, but deliberately sub-TC
14:41:27 <Ilari> Oh, and no instruction pointer. :-)
14:41:43 <ais523> the idea would be that it would be impossible to write a nonterminating program, but apart from that it would be as usable as possible
14:41:51 <Slereah_> ais523 : Just do a TC language and add to the specs "The memory is 10^80 bits"
14:41:51 <ais523> Ilari: which lang are you thinking of, here?
14:42:05 <ais523> Slereah_: yes, but in a less cheating way than that
14:42:10 <ais523> besides, that fails for some things
14:42:17 <ais523> it can't primality-check arbitrarily large numbers, for instance
14:42:20 <ais523> whereas the lang I was thinking of could
14:43:20 <Ilari> Language which uses context-free grammar to guide lengthening of string (the extension candidates are matched to given context-free grammar on each step).
14:44:00 <ais523> hmm... I find that in IP-less languages like Thue, I normally end up implementing an IP in order to program in them
14:44:37 <Ilari> <AOL>Me too</AOL> :-)
14:45:12 <ais523> the AOL tags always seem to be redundant, because it always says "Me too" between them
14:45:17 <ais523> maybe just <AOL /> would do
14:45:46 <Ilari> ais523: For language that can express P, you probably just need to prohibit backward jumps and superlinear looping...
14:46:05 <ais523> my idea was basically that
14:46:21 <ais523> but instead of prohibiting superlinear looping, to prohibit super-Ackermann looping
14:47:16 <Ilari> How you prohibit super-Ackermann looping? Something to do with primitive recursion?
14:47:42 <Slereah_> What is "super ackermann looping"?
14:47:44 <ais523> oh, much more boring than that, I was planning to just make the programmer use the Ackermann function to calculate the number of iterations
14:48:28 <ais523> Slereah_: it's a loop which goes more times than an any Ackermann function whose arguments are the amount of input, and constants
14:48:37 <Ilari> Or having loop construct where loop bound is A(m.n), where m needs to be fixed?
14:48:51 <ais523> pretty much
14:49:12 <Ilari> Actually, probably no need to fix m. Its finite anyway...
14:49:55 <ais523> in fact, you could just put the Ackermann function in the standard library, use bignums, and require the programmer to specify the number of iterations of a loop in advance
14:50:10 <ais523> you need the Ackermann function in the stdlib to be able to do that, or you can't implement the Ackermann function itself
14:51:25 -!- ehird has joined.
14:51:29 <ehird> To be a hypocrite:
14:51:33 <ehird> YES QT IS NOW UNDER THE LGPL
14:51:35 <ehird> FUCK YEAH
14:51:45 <ais523> ehird: why is that better than what they had before?
14:51:57 <ehird> because it was either GPL or shell out money to them for a commercial license
14:52:01 <ais523> no, it wasn't
14:52:05 <ehird> and I like MIT
14:52:15 <ehird> ais523: the QPL is viral too, iirc
14:52:18 <ais523> it had a special exception allowing it to link with <long list of open-source licences>
14:52:25 <ehird> o rly
14:52:26 <ais523> and BSD was definitely one of them
14:52:32 <ehird> MIT?
14:52:55 <ehird> Well, OK, I didn't know that. But now it's obvious, and commercial apps can use it freely too. Which is nice.
14:53:29 <ehird> In addition:
14:53:29 <ehird> *Qt source code repositories will be made publicly available and will encourage contributions from desktop and embedded developer communities.
14:53:31 <ehird> *Service offerings for Qt will be expanded to ensure that all Qt development projects can have access to the same levels of support, independent of the selected license.
14:53:34 <ehird> nice.
14:53:36 <ehird> ok, hypocrite over ->
14:53:38 -!- ehird has left (?).
14:54:13 <Ilari> Also, one could make language expressing most useful classes by allowing bounding loops by input fields...
14:54:26 <Ilari> Not just input field sizes.
14:55:01 <ais523> strange, trolltech's own page on Qt licensing is currently a 404
14:55:07 -!- ehird has joined.
14:55:13 <ehird> WHEN DID TROLLTECH RENAME TO QT SOFTWARE
14:55:15 -!- ehird has left (?).
14:55:22 -!- ehird has joined.
14:55:24 <ehird> Ah, september
14:55:26 <ehird> 30th
14:55:27 -!- ehird has left (?).
14:56:00 <ais523> Ilari: that's a linear bounded automaton, isn't it?
14:56:11 <ais523> ah, only if the input's in unary
14:57:02 <Ilari> I think that would allow expressing all E+TIME classes...
14:57:16 <ais523> Ilari: you're a lot more technical than me on these matters
15:00:55 <Ilari> BTW: Primality-checking arbitiary large numbers doesn't need loop superlinear in input size... :-)
15:01:07 <ais523> no, but it does need an infinite amount of memory
15:02:16 <Ilari> Lack of loops superlinear in input size impiles bound on memory usage.
15:02:32 <Ilari> ... Growing with input size, of course.
15:02:33 <ais523> only if there's a bound on the input
15:02:50 <ais523> which is what I think I was trying to get at
15:03:13 <Ilari> Unbounded amount of memory is not the same thing as infinite amount of memory.
15:03:32 <ais523> they come to the same thing from the programmer's point of view, though
15:03:38 <ais523> at least, there's no way to tell them apart that I know of
15:07:10 <Ilari> I think that proving that some program can only use unbounded amount of memory is in AH-PI-2 (harder than halting problem).
15:08:24 <ais523> I know there's more than one uncomputable computational class, but I don't know the names of any in particular
15:08:50 <Slereah_> Aren't they just greek letters with superscripts?
15:09:07 <ais523> but there's quite a difference between proving the program halts, and requiring the programmer to give a proof the program halts
15:09:07 <ais523> the second can be done in the syntax of a langauge
15:09:15 <Ilari> AH-PI-2 is class of problems that are in co-RE if halting oracle is available.
15:09:35 <ais523> what's it a halting oracle for? TC languages?
15:09:42 <Ilari> ais523: Yes.
15:10:12 -!- FireFly has joined.
15:10:43 <ais523> hi FireFly
15:10:50 <FireFly> 'lo
15:11:06 <ais523> lots of people I don't recognise seem to have been turning up in #esoteric recently
15:11:14 <ais523> that can only be a good thing, probably
15:11:28 <FireFly> Well, I've been lurking that esolang wiki for about half a year
15:11:34 <FireFly> Interesting stuff, really
15:11:38 <ais523> definitely
15:11:58 <Slereah_> You should see EsCo, too
15:12:01 <ais523> although not all the langs are all that good, there are some real gems in there
15:12:01 <Slereah_> It's awesome.
15:12:05 <Slereah_> We all love it.
15:12:13 <ais523> Slereah_: which one was EsCo again? And do I sense sarcasm?
15:12:40 <Slereah_> EsCo was the Esoteric Compiler
15:12:54 <Slereah_> For such diverse languages as Brainfuck, Spoon and Ook.
15:12:56 <ais523> oh, it was that one that someone spammed to esolang
15:13:11 <Slereah_> I'm sure the next bold move is an esme compiler.
15:13:18 <ais523> don't mention esme, please
15:13:33 <ais523> I still hope, deep down, it was a trolling attempt
15:13:37 <ais523> because there's no other logical explanation
15:13:42 <ais523> on the other hand, that makes it very esoteric, I suppose
15:14:34 <ais523> and esco's apparently an interp, not a compiler
15:15:02 <FireFly> Logical names 'r' us?
15:15:20 <ais523> let's see... it claims BF, Ook!, Spoon, HQ9+, Whitespace, Byter, and Befunge-93
15:15:35 <ais523> not that bad a selection, although there are no "hard" esolangs there
15:15:49 <ais523> and it's apparently an abbreviation for "EsotericCombined"
15:15:50 <Slereah_> What's a "hard" esolang?
15:15:58 <ais523> Slereah_: one that's hard to interpret/compile
15:16:08 <ais523> I'd say Unlambda and INTERCAL are two good examples
15:16:10 <Slereah_> Like the ANDREI MACHINE 9000? :o
15:16:20 <Slereah_> I don't know.
15:16:39 <Slereah_> Unlambda should be easily doable in a functional languages.
15:16:42 <ais523> I'm not counting langs like TwoDucks which are theoretically impossible to interpret, of course
15:16:47 <ais523> Slereah_: the problem in functional languages is d
15:16:51 <Slereah_> Although I still don't know what continuation is.
15:16:52 <ais523> although I think I've worked out a way around that
15:16:58 <ais523> c is hard if you don't have call/cc already
15:17:09 <ais523> anyway, I think Unlambda -> Underlambda is doable
15:17:14 <Slereah_> Heh.
15:17:31 <Ilari> Or esolang that needs full-blown implmentation of CYK for execution?
15:17:36 <Slereah_> CYK?
15:17:44 <ais523> I worked out the trick for d -> pure-functional a while back
15:17:51 <ais523> but deleted my notes on it, and the compiler I wrote, by mistake
15:17:57 <ais523> and haven't reconstructed them yet
15:17:59 <Slereah_> Also what's the theoretical machine behind INTERCAL again?
15:18:06 <ais523> Slereah_: I'm not sure if it has a name
15:18:18 <Slereah_> Well, where does it store informations
15:18:19 <ais523> CLC-INTERCAL compiles to bytecode called ICBM that's specifically designed for INTERCAL
15:18:24 <Ilari> Algorithm to decide uniform language recognization for context-free grammars in polynomial time.
15:18:35 <ais523> whereas C-INTERCAL compiles to C
15:18:39 <ais523> (and from there to native code)
15:19:15 <Ilari> That is, given string x and context-free grammar L, it can decide wheiher x is in L in polynomial time.
15:19:55 <ais523> most esolangs don't care about computational complexity
15:20:06 <ais523> in fact, most practical langs don't
15:20:09 <ais523> it might be nice to create one that did
15:20:10 <Slereah_> We're all about the model, not the speed!
15:20:24 <ais523> well, not always
15:20:32 <ais523> cfunge is a nice counterexample
15:20:45 <Slereah_> I don't know much of funge languages
15:20:49 -!- ehird has joined.
15:20:51 <ehird> http://philosecurity.org/2009/01/12/interview-with-an-adware-author
15:20:52 <ais523> Slereah_: it's nothing to do with the lang, just the interp
15:20:55 <ehird> hypocrite ->
15:20:56 -!- ehird has left (?).
15:21:11 <ais523> the interp is specifically designed for speed
15:21:28 <ais523> because when you're having fun with esolangs, you may as well set extra challenges
15:21:34 <ais523> like writing the world's fastest funge interp
15:21:50 <ais523> (and then fizzie went and invented jitfunge, just for even more crazy-speed funge fun)
15:23:48 -!- ehird has joined.
15:23:50 <ehird> 07:12:40 <Slereah_> EsCo was the Esoteric Compiler
15:23:52 <ehird> esoteric _combine_
15:23:58 <ehird> they were naive interpreters
15:23:59 -!- ehird has left (?).
15:24:32 <Slereah_> Combine?
15:24:42 <Slereah_> Do they shoot you with lasguns?
15:24:57 -!- ehird has joined.
15:25:02 <Slereah_> [16:24:20] <Slereah_> Combine?
15:25:02 <Slereah_> [16:24:30] <Slereah_> Do they shoot you with lasguns?
15:25:04 <ehird> i think it was that the interpreters were COMBINED together.
15:25:07 <ehird> revolutionary ->
15:25:07 -!- ehird has left (?).
15:26:23 <ais523> ehird: http://doc.trolltech.com/4.4/license-gpl-exceptions.html is the list of licences that pre-LGPL Qt could be linked with
15:26:25 <ais523> MIT is on there
15:27:33 -!- ehird has joined.
15:27:35 <ehird> S: In your professional opinion, how can people avoid adware?
15:27:36 <ehird> M: Um, run UNIX.
15:27:38 <ehird> S: [ laughs]
15:27:40 <ehird> M: We did actually get the ad client working under Wine on Linux.
15:27:42 <ehird> S: That seems like a bit of a stretch!
15:27:44 <ehird> M: That was a pretty limited market, I’d say.
15:27:45 <Slereah_> Also, that dude was writing in scheme, he can't be all bad.
15:27:46 <ehird> -- that interview linked above
15:27:48 <ehird> ->
15:27:49 <Slereah_> ehird
15:27:50 -!- ehird has left (?).
15:27:54 <Slereah_> Stop leaving like that
15:28:09 <ais523> why don't we just set the channel to allow message from outside?
15:28:16 <ais523> that way, ehird wouldn't have to join and part again to send messages
15:28:28 <ais523> OTOH, ehird is obviously reading the logs, so just joining the channel would be easier
15:30:34 <Slereah_> ehird, stop being the scourge of the world
15:36:54 <AnMaster> ais523, hm was afk, what is the argument about?
15:37:10 <ais523> there's no actual argument; just ehird keeps joining, saying stuff, and parting again
15:37:34 <AnMaster> ais523, why?
15:37:46 <ais523> no real idea
15:37:55 <AnMaster> ok
15:38:52 <Slereah_> Because he is the scourge of the earth.
15:39:05 <AnMaster> ais523, also funge is not that easy to make fast, I mean 2D sparse array
15:39:16 <AnMaster> linear address space is much simpler
15:39:25 <ais523> yes
15:39:56 <AnMaster> ais523, however that reminds me of a wild idea, I don't know if me or Deewiant had it first, anyway it happened when trying to understand what ehird meant with an idea for another fingerprint
15:40:05 <AnMaster> paged memory in fungespace
15:40:11 <AnMaster> so you can mmap a file into an area
15:40:33 <AnMaster> ais523, add in some buzz words like DMA to non-funge world and such
15:40:48 <ais523> DMA and funge?
15:40:55 <ais523> that's great
15:41:03 <AnMaster> ais523, anyway it would slow down normal operation because you would need to check if the coords would be into an mmaped area
15:41:26 <AnMaster> also the file would need to be a raw file, couldn't care about stuff like newlines
15:41:28 <ais523> AnMaster: are you focusing specifically on optimising fingerprints? or just on optimising core funge?
15:41:49 <AnMaster> ais523, this idea? neither, because it would slow down normal operation
15:41:58 <AnMaster> and it probably isn't sane
15:42:12 <AnMaster> ais523, anyway I wouldn't want to spec it, just an idea I had
15:42:13 <ais523> well, it's sane /enough/
15:42:51 <AnMaster> ais523, well, how would you avoid the overhead of checking a list of mappings to see if the access would be inside a mmaped() area in funge space on every funge space access
15:43:22 <ais523> well, you'd only need to do it for p and g unless the IP went into the area
15:43:28 <ais523> and you'd only need to do it if the fingerprint had been loaded
15:43:40 <AnMaster> ais523, well other instructions that access too, lots of them in fingerprints
15:43:43 <AnMaster> also I/O
15:43:45 <AnMaster> and so on
15:43:50 <AnMaster> err
15:43:51 <AnMaster> i/o
15:44:23 <AnMaster> ais523, but then you would need to check each time the IP moves to see if it is inside such an area
15:44:32 <AnMaster> so not sure you could gain much
15:44:39 <ais523> AnMaster: not each time the IP moved
15:44:43 <AnMaster> hm?
15:44:46 <ais523> just at every delta-changing or jumping instruction
15:44:55 <ais523> you can project the IP's path the rest of the time
15:45:15 <AnMaster> hm, this would be one thing that is easier in a JIT I believe
15:45:32 <ais523> well, JITs need to do that anyway
15:45:42 <AnMaster> exactly
15:46:08 <ais523> doesn't mean you can't do it in a non-JIT
15:46:23 <AnMaster> hm
15:47:39 -!- ehird has joined.
15:50:32 <ehird> you know what sucks
15:50:32 <ehird> ?
15:50:36 <oklopol> being tired.
15:51:23 <ehird> people.
15:51:25 <ehird> and everything
15:51:33 <oklopol> uhhuh?
15:52:12 <oklopol> i should probably do some algebra
15:52:39 <Slereah_> x - 3 = 0
15:52:42 <Slereah_> SOLVE
15:53:07 <ehird> x=3
15:53:30 <oklopol> Slereah_: i don't have the time for your incredible puzzles right now.
15:53:53 <ais523> Slereah_: (x-3) is not an lvalue
15:53:59 <AnMaster> hm
15:54:20 <AnMaster> ais523, postgres has an async SQL interface as well as a sync one
15:54:22 <AnMaster> interesting
15:54:29 <AnMaster> (for the fingerprint)
15:54:30 <oklopol> oooooooooooo
15:55:50 <ais523> kkkkkkkkkkkk
15:56:21 <AnMaster> eeeeeeeeeeee
15:57:09 <ehird> yyyyyyyyyy
15:57:32 <AnMaster> yay not even matched count
15:58:40 <AnMaster> or wait, ehird uses a variable width font, he probably didn't see that we all used same length of the lines
15:58:51 <ehird> no, I don' tuse a variable width font
15:58:52 <ehird> and you didn't
15:58:55 <ehird> 15:54 <oklopol> oooooooooooo
15:58:55 <ehird> 15:55 <ais523> kkkkkkkkkkkk
15:58:56 <ehird> 15:56 <AnMaster> eeeeeeeeeeee
15:58:58 <ehird> account for nicks, bums
15:59:03 <ais523> ehird: no
15:59:16 <ais523> besides, some clients right-justify nicks
15:59:23 <AnMaster> ehird, well I right-align nicks to column 12 or so
15:59:42 * ehird switches to a variable-width font
15:59:54 <ehird> delicious.
16:00:15 <ais523> AnMaster: I actually spent the effort counting oklopol's os
16:00:20 -!- FireFly has quit ("Later").
16:00:43 <Ilari> Variable-with fonts and some versions of xterm don't mix (the results look hideous)...
16:00:43 <AnMaster> ais523, I just copied, went to start, pressed Insert key to enter overwriting mode and pressed e until the end :P
16:00:55 <ehird> Ilari: I don't use a console IRC client.
16:00:55 <ais523> AnMaster: that's cheating
16:01:04 <ehird> because I have a GUI environment :P
16:01:07 <ais523> although this client doesn't have the insert/overwrite toggling
16:01:07 <AnMaster> ais523, no that is solving it in the simplest possible way
16:01:18 <ehird> no that is cheating
16:01:27 <ais523> ehird: nothing prevents you right-justifying nicks in a GUI environment...
16:01:36 <ehird> ais523: fail
16:01:36 <ehird> 16:00 <Ilari> Variable-with fonts and some versions of xterm don't mix (the results look hideous)...
16:02:03 <ais523> ehird: oh, miseed the context
16:02:07 <AnMaster> ais523, indeed, I'm using a GUI client on the bouncer atm, well two clients in fact
16:02:16 * AnMaster was trying out conspire
16:02:27 <AnMaster> seems like "a slightly less sucking xchat"
16:02:46 <ehird> its an xchat fork.
16:03:15 <AnMaster> ehird, yes I know
16:03:26 <ehird> I am using futura. I feel FUTURAstic.
16:03:38 <AnMaster> well I much prefer ERC over conspire
16:03:59 <AnMaster> but well, I prefer trying stuff before I dismiss them. :)
16:04:15 <ehird> Optima looks weird.
16:04:24 <AnMaster> ehird, is that a font?
16:04:28 <ehird> typeface.
16:04:36 <ehird> HELLO FROM ZAPFINO
16:04:40 <AnMaster> how does font differ from typeface?
16:05:03 <ehird> A font is the computerized representation of one variation (regular, bold etc) of a typeface.
16:05:17 <ehird> Or, you know, the metal-ized representation, if you're oldsk00l.
16:05:43 <AnMaster> ehird, ah yes, my old pal Gutenberg liked that a lot
16:06:10 <ehird> You knew Johannes Gutenberg?
16:06:11 <ehird> Oldsk00l
16:06:20 <AnMaster> ehird, ~
16:06:29 <ehird> PAPYRUS! Next up: COMIC SANS!
16:06:34 <AnMaster> ouch
16:06:45 <ehird> COMIC SANS MS! The OFFICIAL FONT of #ESOTERIC!
16:06:50 -!- FireFly has joined.
16:06:50 <AnMaster> argh
16:06:53 <FireFly> :<
16:07:12 <AnMaster> ehird, what about that MS chat thingy
16:07:16 <AnMaster> ehird, that would be even worse
16:07:23 <ehird> Code2000!
16:07:37 <AnMaster> ehird, I mean using it, in comics mode
16:07:49 <ehird> I'm ignoring you :D
16:07:55 <AnMaster> ehird, well I would hate it
16:08:18 <ehird> no, it's great
16:08:24 <ehird> MS Chat is the best irc client eve
16:08:25 <ehird> r
16:08:59 <AnMaster> ehird, I'm quite sure you forgot the ~
16:09:10 <ehird> no
16:09:11 <ehird> very serious
16:11:20 <ehird> "YouTube Now Mutes Videos With Unauthorized Copyrighted Music"
16:11:21 <ehird> lollllllll
16:11:21 <ehird> http://mashable.com/2009/01/14/youtube-mutes-videos/
16:11:49 * AnMaster looks
16:12:13 <Slereah_> Gay
16:12:33 <AnMaster> ouch
16:14:23 <AnMaster> in what way is it muted?
16:14:42 <AnMaster> I mean, just in the GUI or in the actual file?
16:14:49 <Slereah_> Iunno
16:14:53 <Slereah_> Go and find out!
16:14:58 <ehird> i think it forces the mute in the gui
16:14:59 <ehird> but not the file
16:15:54 <AnMaster> ehird, seems to be in the file, I just tried with youtube-dl to get the .flv
16:16:00 <AnMaster> of one of the examples
16:16:02 <ehird> well, that makes more sense :P
16:16:36 <AnMaster> ehird, well true
16:31:41 <AnMaster> ais523, about quoting, what about S = Escape string for query
16:31:48 <AnMaster> iirc several DB interfaces has such
16:31:59 <ais523> AnMaster: no no no
16:32:08 <ais523> don't do escaping then inserting strings, that way injections lie
16:32:09 <AnMaster> ais523, ok prepared is better yes
16:32:14 <ais523> use parametrised queries, or prepared statements
16:32:42 <AnMaster> ais523, well at least sqlite only allow parametrised queries with prepared statements iirc
16:32:57 <AnMaster> but it was a while since I last used that API
16:36:26 <AnMaster> ais523, I'm reading up on three DBs when making this interface: PostgreSQL, SQLite and MySQL. To make sure it is reasonably portable
16:36:50 <AnMaster> if you know any other open source SQL database that may be of interest, tell me
16:37:18 <AnMaster> (and before anyone ask: why open source only?: I don't plan to pay for oracle to make sure it is compatible)
16:37:25 <ehird> oracle has a free edition.
16:37:43 <ehird> i think it needs like 4gb of ram though.
16:37:52 <AnMaster> ehird, I have 1.5 in this system
16:37:56 <AnMaster> so tough luck
16:38:01 <ehird> that was an exaggeration
16:38:26 <AnMaster> anyway from what I heard oracle is quite similar to postgres in many aspects
16:38:51 <ehird> oracle is pretty terrible from what i've seen.
16:39:07 <AnMaster> mhm
16:40:00 <AnMaster> well if you can do simple stuff like: query, get row at a time, start/end/roll back transactions, connect/disconnect, get error code/message related to last error it should be fine
16:40:29 <AnMaster> what interest me more is how to integrate the postgresql async interface easily
16:40:32 <AnMaster> it would be cool
16:40:38 <ehird> wow, this is so boring
16:40:50 <AnMaster> well everything isn't about you all the time
16:41:19 <ehird> how ironic
16:43:13 <ehird> grrrrr fuck people who talk about useless use of cat.
16:43:21 <ehird> its a bloody unix pipeline. it makes sense like that.
16:43:41 <AnMaster> ehird, well doing cat foo | grep bar makes no sense
16:43:44 <AnMaster> grep bar foo
16:43:46 <AnMaster> makes much more sense
16:43:46 <ehird> grrrr
16:43:48 <ehird> kill yourself
16:43:54 <AnMaster> um?
16:43:55 <ehird> it makes perfect effing sense
16:44:00 <AnMaster> why?
16:44:06 <ehird> no, why doesn't it?
16:44:11 <ehird> you're catting the file, then grepping that
16:44:16 <ehird> you read unix pipelines left to right
16:44:21 <ehird> that makes _perfect_ sense
16:44:21 <AnMaster> grepping a file makes more sense
16:44:24 <oklopol> :)
16:44:31 <FireFly> No?
16:44:37 <AnMaster> ehird, "can not create process: limit exceeded"
16:44:41 <AnMaster> makes a lot of sense too
16:44:49 <ehird> yeah because that cat is going to linger there forever
16:44:52 <ehird> and you can only run 5 processes
16:44:53 <ehird> total
16:44:57 <ehird> before your machine crashes
16:44:58 <ehird> I feel for you
16:45:09 <AnMaster> ehird, because you can hit the limit on a lot of shell servers quickly
16:45:11 -!- BeholdMyGlory has joined.
16:45:26 <ehird> yes. adding an extra cat to a pipeline will be _fatal_
16:45:44 <AnMaster> ehird, sometimes it will break stuff yes. Like I described
16:45:45 <ais523> BeholdMyGlory: are you AnMaster, or do we have two Arvids on this channel?
16:45:54 <AnMaster> ais523, two people
16:45:55 <ehird> AnMaster: uh huh. sure.
16:46:00 <AnMaster> we established that yesterday
16:59:47 <ehird> The people on the Tubes must chip in and make an alternative to You Tube, it's not that expensive. The company must be based somewhere outside USA and it should be owned by at least 1 Mil guys so it will be never sold to any big company.
16:59:49 <ehird> --reddit
17:00:26 <ais523> ehird: you'd have to make a distributed version, somehow
17:00:37 <ehird> ok ais523 i ask you one thing
17:00:44 <ais523> 1 million's about the population of Birmingham, so it seems a bit excessive
17:00:44 <ehird> when i quote someone stupid for no particular reason
17:00:48 <ehird> please stop responding seriously
17:01:01 <ais523> ehird: in that case, you've missed the joke
17:01:13 <ehird> it's more that the joke is turning me into a gibbering wreck
17:09:36 <ehird> wow, zzo38 doesn't get open source
17:09:37 <ehird> Most of the new files added to Vonkeror are now licensed by GNU GPL v3 or
17:09:38 <ehird> later version (it is permitted because the LGPL v2.1 permits it). I am
17:09:40 <ehird> making a exception: Anyone who is making Conkeror software may relicense
17:09:42 <ehird> under the Conkeror license, in order to be added into Conkeror. Anyone
17:09:44 <ehird> can remove this exception from your own copy of the codes if they want
17:09:46 <ehird> to, but it is not required to remove this exception. However, this
17:09:48 <ehird> exception only grants additional permission to the workers of Conkeror.
17:09:50 <ehird> itt: vaguest shit ever
17:09:52 <ehird> who the hell is a worker of conkeror
17:10:19 <ehird> 1* Select odd/even row of tables using [_even] and [_odd] CSS selectors
17:10:20 <ais523> well, it's certainly legit to make a GPL3 fork of an LGPL2.1+ project
17:10:24 <ais523> not that that is generally sensible
17:10:25 <ehird> itt: zzo38 is microsoft 2.0
17:10:33 <ehird> ais523: i mean the relicensing clause
17:10:50 <ehird> http://zzo38computer.cjb.net/vonkeror/screenshots/screenshot_001.png Impressively ugly.
17:11:05 <ais523> ehird: that sort of thing is relatively common, just worded better
17:11:13 <ehird> ais523: conkeror is OPEN SOURCE
17:11:14 <ais523> in fact, it reminds me of the actually correct version of the wording
17:11:16 <ehird> everyone is a "worker" of it
17:11:20 <ehird> there's no people actually "in" conkeror
17:11:26 <ais523> ehird: yes, I know
17:11:31 <ais523> the problem's with who the exception is given to
17:11:41 <ais523> but legally speaking, it can be given to any set of people and the licence still works
17:12:08 <ehird> doesn't mean the reclicensing works
17:12:25 <ehird> Tax bracket system should work differently, which is that for example if $0.01 to $200.00 is 0% and $200.01 to $400.00 is 10% and if you earn $300.00 then you should pay $10.00 in taxes, not $30.00 (note that my numbers are just examples, these actual numbers are stupid but the idea has to do with how the calculations are done, not the actual rates used)
17:12:27 <ehird> Maybe that is unclear. But maybe if I write it in Javascript then it will be easier to understand? Or maybe not. I will write in Javascript anyways.
17:12:38 <ehird> this guy is like a troll minus the troll
17:12:50 <ehird> he's impossible to understand and often slightly clueless, except minus the frustration
17:12:57 <ehird> and he's just writing on his blog nowadays so he isn't even talking to anyon
17:12:57 <ehird> e
17:33:39 -!- oerjan has joined.
17:37:43 <AnMaster> <ehird> when i quote someone stupid for no particular reason <ehird> please stop responding seriously <-- you aren't that nice when I do it...
17:38:00 <ehird> he does it less often.
17:38:54 <AnMaster> good point ehird
17:39:16 <ais523> ehird: I respond seriously only when it's actually funny
17:39:32 <ais523> or when, in this case, I don't think the comment is as stupid as you think it is (yet, of course, still stupid)
17:41:29 <ehird> i wonder where chris pressey works
17:41:43 <ehird> i wouldn't be surprised if he somehow makes money out of cats eye, due to the expanse of http://catseye.tc/projects/
17:46:05 <ehird> yep
17:46:06 <ehird> Established by Chris Pressey in Winnipeg, Manitoba, Canada, and now located in Vancouver, British Columbia, Cat's Eye Technologies has provided custom software development and consulting services since 1995. Our clients have included Manitoba Health, Star Building Materials, Morrison Homes, and Samkoma.com.
17:46:30 <ais523> it's pretty amazing that a genuine company has a whole esolang win
17:46:32 <ais523> *wing
17:46:40 <ais523> especially one so famous
17:47:30 <ehird> well, it's just one guy :P
17:47:44 <ehird> who does freelancing work. and happens to have an esolang hobby.
17:49:16 <ehird> http://catseye.tc/about/php.html
17:49:30 <ehird> the last paragraph is priceless
17:49:41 <ehird> especially since it's a real error
17:50:38 <ehird> "Perl is what happens when you play Katamari Damacy with the Unix toolchain. This condition has been less gracefully described, by others, as "being a steaming heap." "
17:50:40 <ehird> http://catseye.tc/about/perl.html
17:50:41 <ais523> how do you know it's a real error?
17:50:46 <ehird> ais523: the source code
17:50:51 <ehird> the linebreak and everything
17:50:54 <ehird> is exactly the same
17:50:54 <ais523> is it linked from the page?
17:51:08 <FireFly> Too bad it wasn't line 404
17:51:18 <ais523> I do like the idea of playing Katamari Damacy with the UNIX toolchain, though
17:51:18 <ehird> but
17:51:20 <ehird> /internal/directory/structure/home/website/include/oh_drat.php
17:51:23 <ehird> that's obviously fake
17:51:28 <FireFly> Propably
17:51:31 <ehird> so i guess he caused a php error
17:51:33 <ehird> then copied the code
17:51:40 <ehird> and modified it
17:51:47 <oerjan> <ais523> I'd say Unlambda and INTERCAL are two good examples
17:51:58 <ais523> oerjan: of esolangs which are hard to compile/interpret
17:52:03 <oerjan> unlambda is easy if you think in terms of graph rewriting
17:52:04 <ais523> as opposed to BF, which is easy
17:52:20 <ais523> oerjan: I suppose rewriting langs would be good at d
17:52:23 <ais523> how good are they at c?
17:52:32 <ais523> OTOH, actually writing a graph rewriting lang in the first place is nontrivial
17:52:39 <oerjan> you use CPS style, of course
17:52:41 <ehird> I want to write an unlambda->efficient c compiler
17:52:49 <ehird> it isn't self-modifying is it?
17:52:54 <ais523> ehird: not exactly
17:53:01 <ais523> but d makes it self-resemanticising
17:53:29 <ehird> can't you just track d tags and pass thunks to d-tainted functions?
17:53:35 <ehird> to be efficient on non-D using code
17:53:44 <ais523> oh, I'm sure there are tricks that work
17:53:46 <ais523> it's just nontrivial
17:54:01 <ais523> as for c, if you're using CPS you need to do garbage collection of continuations somehow
17:54:17 <ehird> cheney on the mta
17:54:20 <oerjan> actually by graph rewriting i mean little more than ML/haskell style ADTs with pattern matching
17:54:26 <ehird> ais523: http://home.pipeline.com/~hbaker1/CheneyMTA.html
17:54:26 <ehird> basically
17:54:33 <ais523> oerjan: that's what I was thinking of too
17:54:34 <ehird> you convert to cps
17:54:35 <ehird> you allocate everything on the stack
17:54:38 <ehird> and you use regular c function calls
17:54:41 <ehird> then
17:54:42 <ais523> I normally use Thutu for that sort of thing
17:54:42 <ehird> to gc
17:54:45 <ehird> you do a longjmp
17:54:49 <ais523> or even more fun, recursive Perl regexen
17:54:51 <ehird> to clear the cstack
17:54:51 <oerjan> ais523: oh, the point is the continuations can _also_ be done as such structures
17:54:52 <ehird> *c stack
17:55:05 <ehird> it's a generational garbage collector that's really insanely fast beacuse you just call c functions and allocate on the stack
17:55:13 <ehird> it's a piece of art
17:55:28 <ehird> you get efficient allocation, function calls, continuations and GC, almost for free.
17:56:10 <ais523> hmm... it depends on longjmp/alloca
17:56:14 <ehird> no
17:56:20 <ais523> presumably using alloca precisely because it plays well with longjmp
17:56:21 <ehird> it doesn't depend on alloca inherently
17:56:26 <ehird> although most of the time you want to use it
17:56:29 <ehird> but their example doesn't
17:56:31 <ais523> it's how it handles dynamic-size data
17:56:32 <ehird> it is _all_ stack-allocated
17:56:37 <ais523> alloca is stack allocation
17:56:45 <ehird> please stop talking to me like I don't know C
17:56:46 <ehird> read their example program
17:56:48 <ais523> I suppose you could use VLAs, but VLA + longjmp = madness
17:56:59 <ehird> http://home.pipeline.com/~hbaker1/cboyer13.c
17:57:02 <ehird> grep for alloca(
17:57:44 <ais523> ehird: probably it just doesn't have any dynamic-sized data structures, so doesn't need it
17:57:50 <ehird> yes.
17:57:53 <ehird> I'd go for VLAs.
17:57:54 -!- oklopol has quit (Read error: 145 (Connection timed out)).
17:57:55 <ehird> sure, its madness
17:57:58 <ehird> but it'd work no
17:57:58 <ehird> ?
17:58:22 <ehird> of course, alloca would be about as well-supported, easier to code, and more sane.
17:58:36 <ais523> I'm not certain that longjmp + VLA is guaranteed to do anything in particular
18:00:49 * ehird decides to write some perl
18:01:15 <ehird> unlambda-compiling perl to be specific
18:02:09 <ehird> guess what i'm going to do to be esoteric
18:02:22 <ais523> CPS?
18:02:27 <ais523> that's esoteric in Perl
18:02:48 <ehird> nope
18:02:57 <ehird> write my own object system.
18:04:02 <ehird> :D
18:04:23 <oerjan> i recall the bundled perl interpreter in the unlambda distribution was rather slow
18:04:35 <oerjan> as in, my INTERCAL interpreter was faster than it :D
18:04:39 <ehird> XD
18:04:43 <ehird> this will compile unl to semi-efficient c
18:05:38 <ais523> oerjan: oh dear
18:05:52 <ais523> well, C-INTERCAL is designed to be not inherently slow
18:05:59 <ais523> not like cfunge-fast
18:06:04 <ais523> but as in, it won't deliberately slow you down
18:06:13 <ais523> also it doesn't give a runtime penalty for features you aren't using
18:06:33 <oerjan> i thought that was a C++ mantra
18:06:35 <ehird> ais523 isn't nearly shocked enough :(
18:07:04 <ais523> oerjan: well, C++ is like that too
18:07:14 <ais523> but on the other hand, other langs do give a penalty for features you aren't using
18:07:18 <ais523> so we had to choose one or the other
18:07:45 <oerjan> of course there's an excuse, the perl interpreter was a debugger too
18:07:55 <ais523> that isn't really an excuse
18:08:01 <ais523> debuggers shouldn't give much of a runtime penalty either
18:08:07 <ais523> IIRC, even yuk doesn't slow programs down much
18:08:34 <ais523> anyway, there's a huge bug in the C-INTERCAL profiler atm
18:08:35 <ehird> hmm, what's the perl prototype that makes the {...} passed to the function be a sub {...}?
18:09:25 <ais523> &
18:09:30 <ehird> thx
18:09:31 <ais523> wait, you're messing with prototypes?
18:09:33 <ais523> yay
18:09:36 <ehird> :DD
18:09:37 <ais523> that's eso from the start
18:09:43 <ehird> ais523: it uses prototypes to implement a prototypical object system
18:09:44 <ehird> :DDD
18:11:17 <ehird> ais523: can you make an anonymous sub run in a certain scope?
18:11:21 <ehird> i.e., inject variables into it and stuff
18:11:46 <ais523> ehird: yes
18:11:53 <ehird> how :D
18:11:54 <ais523> as long as the sub doesn't try to declare the variables itself
18:12:22 <ais523> you make sure the variables haven't been lexically scoped when the anon sub has been declared
18:12:38 <ehird> they need to be lexical inside the scope of the anon sub
18:12:41 <ais523> they mustn't be inside a my at any level, you have to be aiming at the globals when the sub was declared
18:12:48 <ais523> then, you use local inside the block that calls the sub
18:12:51 <ais523> via eval if necessary
18:13:13 <ehird> hrm, actually I'll just do it like the rest of perl's oo system
18:13:16 <ais523> you can use local anywhere without interfering with this, it was deprecated in favour of my because my was saner
18:13:32 <ais523> but local, being insaner, is better for implementing that sort of insane scheme
18:13:40 <ehird> my $Rectangle = $Object->clone {
18:13:41 <ehird> sub cloned {
18:13:42 <ehird> my ($self, $w, $h) = @_;
18:13:44 <ehird> $self->width = $w; $self->height = $h;
18:13:46 <ehird> return $self;
18:13:48 <ehird> }
18:13:50 <ehird> };
18:14:08 <ehird> now to get that to run
18:14:27 <ehird> oops, first line should be
18:14:28 <ehird> my $Rectangle = $Object->clone->do {
18:14:40 * ais523 tries to remember the last time they saw a perl variable that started with a capital letter
18:14:44 <ais523> for some reason, that just Doesn't Happen
18:14:56 <ehird> :-)
18:15:20 <ehird> hmm
18:15:25 <ehird> does #include "__FILE__" work in C?
18:15:26 <ehird> it should
18:15:41 <ehird> er
18:15:42 <ehird> sans quotes
18:15:44 <ehird> #include __FILE__
18:15:46 <ais523> I think it works without the quotes
18:15:58 <ais523> although it isn't guaranteed to, it will on most cpps
18:16:00 <ehird> ais523: here's what i'll do in the underload compilation:
18:16:13 <ehird> #ifndef _UNDERLOAD_HEADER
18:16:17 <ais523> (it isn't guaranteed because #include isn't guaranteed to work on non-standard-headers, e.g. if you don't have a filesystem)
18:16:19 <ehird> argh
18:16:20 <ehird> OI
18:16:24 <ehird> stop ruining my paste
18:16:25 <ehird> [[
18:16:28 <ehird> #ifndef _UNDERLOAD_HEADER
18:16:30 <ehird> #define _UNDERLOAD_HEADER
18:16:32 <ehird> #include __FILE__
18:16:33 <ais523> if you don't want people to ruin your pastes, use a pastebin
18:16:38 <ais523> besides, it's still readable anyway
18:16:40 <ehird> i'm writing it as I go
18:16:42 <ehird> so here I start again
18:16:43 <ehird> [[
18:16:45 <ehird> #ifndef _UNDERLOAD_HEADER
18:16:47 <ehird> #define _UNDERLOAD_HEADER
18:16:49 <ehird> #include __FILE__
18:16:54 <ehird> #undef _UNDERLOAD_HEADER
18:16:59 <ehird> (HERE GOES UNDERLOAD CODE)
18:17:00 <ehird> #else
18:17:03 <ais523> it's not as if you're using telnet, surely other people's comments don't interfere with typing?
18:17:04 <ehird> (BORING HEADER BOILERPLATE)
18:17:05 <ehird> #endif
18:17:06 <ehird> ]]
18:17:08 <ais523> I can still read it
18:17:18 <ehird> i.e., it hides the boring boilerplate definitions at the bottom of the file
18:17:23 <ehird> while still letting them be used in the top of the file
18:17:25 <ais523> Underload, or Unlambda?
18:17:34 <ehird> unlambda, but whatever
18:17:40 <ehird> that's irrelevant to the trick :P
18:17:47 <ais523> ehird: please, they're as different as Java and JavaScript
18:17:50 <ais523> well, almost
18:17:57 <ehird> they're irrelevant _to the trick_
18:19:15 <oerjan> <ais523> 1 million's about the population of Birmingham, so it seems a bit excessive <-- is that the official UK definition of excessive?
18:19:32 <AnMaster> wow this fingerprint spec is quite large
18:19:38 <ais523> oerjan: no, but it may as well be
18:19:39 <AnMaster> it is already 200 lines, and far from complete
18:19:41 <ais523> AnMaster: which fingerprint?
18:19:42 <ehird> say, does perl have a built-in exception handling system?
18:19:47 <ais523> IFFI's about that long, but complete IIRC
18:19:48 <AnMaster> ais523, SQL (3 letter yes)
18:19:49 <ais523> ehird: yes
18:19:54 <ehird> o rly
18:19:58 <ais523> it's eval {} for try {} (note, not eval "")
18:20:00 <ais523> and die for throw
18:20:08 <ais523> catch is done using one of the weirdly named variables
18:20:14 <ais523> probably $@, but I might be wrong on that
18:20:16 <ehird> okay, ummm, how do you have different types of exceptions there :DD
18:20:33 <ais523> ehird: I'm not sure offhand if you can throw anything but a string
18:20:39 <AnMaster> ais523, what language is this?
18:20:40 <ais523> but if you can, you can just use isa on the object to see what it is
18:20:42 <ais523> AnMaster: Perl
18:20:43 <ehird> AnMaster: perl
18:20:45 <AnMaster> ah
18:20:54 <ehird> okay so
18:20:54 <ehird> eval {
18:20:58 <ehird> blah
18:21:00 <ehird> } or {
18:21:04 <ehird> ... stuff with $@ ...
18:21:04 <ehird> }
18:21:05 <ehird> :D
18:21:11 <AnMaster> huh
18:21:18 <AnMaster> ehird, that is perl's exception handling?
18:21:24 <AnMaster> seems a bit unusual
18:21:27 <ehird> essentially.
18:21:30 <ais523> AnMaster: this is Perl we're talking about
18:21:32 <ehird> it just lets you recover from a die "foo"
18:21:38 <ais523> all its features were bolted onto the core as simply as possible
18:21:38 <AnMaster> ah
18:21:40 <ais523> *possibly
18:21:43 <ehird> because eval { } will be false when it dies
18:21:48 <ais523> which is why objects are basically just sugar for stuff
18:21:48 <ehird> so you can use or on it with a code block
18:21:51 <ehird> and the die string is put in $@
18:21:53 <AnMaster> ehird, heh
18:22:01 <ais523> ehird: I think the block might have to end with 1; for that to work
18:22:04 <AnMaster> ehird, does this work for language errors, say division by zero
18:22:10 <ais523> but then, Perl modules have to end like that for the same reason
18:22:11 <ehird> AnMaster: maybe.
18:22:12 <ais523> AnMaster: yes
18:22:16 <AnMaster> hm ok
18:22:18 <ais523> although it throws a string in that case
18:22:31 <ais523> you can use ref $@ to see if it's a string or not
18:22:38 <ehird> does perl have an empty package built in?
18:22:42 <ehird> like BLANK or something
18:22:53 <ais523> not that I know of
18:23:02 <AnMaster> um
18:23:02 <ais523> although some, like strict or warnings, are very simple
18:23:10 <ais523> because they just set flags that the compiler reads
18:23:21 <ais523> what, you thought use strict; was a compiler directive?
18:23:28 <AnMaster> wouldn't $@ be argv?
18:23:33 <ehird> AnMaster: no.
18:23:36 <AnMaster> oh ok
18:23:37 <ais523> AnMaster: no, that's @ARGV
18:23:41 <AnMaster> ah
18:23:50 <ais523> what made you think it would be $@?
18:23:53 <AnMaster> well perl is often close to shell I noted...
18:23:58 <AnMaster> so it wasn't such a bad guess
18:24:13 <ais523> AnMaster: it's a mix of C, shell, and sed
18:24:16 <ais523> which explains a lot
18:24:18 <AnMaster> ais523, yes true
18:24:44 <AnMaster> ais523, what about awk?
18:24:54 <ais523> oh, that too
18:25:00 <ais523> although that's more use English; than default
18:28:48 <AnMaster> ais523, eh?
18:29:05 <ais523> AnMaster: use English; imports awk-like variable names
18:29:22 <AnMaster> um ok...
18:29:25 * ais523 wonders vaguely if awkwards is the opposite direction to sedwards
18:30:09 <ehird> 18:28 tomboy64 has left IRC ("This connection was severed because the sys-admin has been abducted by aliens and is now being tortured in the most pleasurab)
18:30:41 <AnMaster> ais523, so what would this awk script be in perl http://rafb.net/p/DOu9SY23.html ?
18:30:49 <ehird> try awk2perl.
18:30:52 <ehird> it will tell you.
18:31:14 <AnMaster> ehird, I'm not sure if this is gawk specific or not since I have no other awk here
18:31:23 <ehird> try it and see.
18:31:36 <AnMaster> ehird, also what package is awk2perl?
18:31:39 <ehird> a2p(1)
18:31:44 -!- KingOfKarlsruhe has joined.
18:31:45 <ehird> if you have perl you have it
18:31:52 <AnMaster> ah right
18:31:56 <AnMaster> tried the full name
18:32:01 <ehird> output looks correct to m
18:32:01 <ehird> e
18:33:03 <ais523> AnMaster: http://rafb.net/p/fw7OUJ65.html
18:33:10 <ais523> that was a2p
18:33:12 <ehird> yeah because he is unable to run program
18:33:12 <ehird> s
18:33:21 <AnMaster> hm
18:33:26 <AnMaster> I was running it locally
18:33:27 <AnMaster> ...
18:33:27 <ais523> ehird: well, jumped to running a2p before that conversation started
18:33:33 <ais523> and only just saw your descriptions
18:33:42 <ehird> a2p is surprisingly competent
18:33:48 <ais523> ehird: it generated the line $[=1
18:33:52 * AnMaster waits for ehird to say he is sorry for that comment above to ais523
18:33:54 <ais523> which is very very deprecated in modern Perl
18:34:03 <ehird> who cares about modern perl
18:34:05 <ehird> AnMaster: what?
18:34:14 <ais523> ehird: it's more or less gets-level deprecation
18:34:19 <ehird> ais523: so?
18:34:23 <ais523> it doesn't automatically give everyone an evil handle to take over your computer
18:34:24 <ehird> if it works, it works
18:34:25 <ais523> but it's close
18:34:26 <AnMaster> <ehird> yeah because he is unable to run program <ehird> s <ais523> ehird: well, jumped to running a2p before that conversation started <ais523> and only just saw your descriptions <ehird> oops, sorry
18:34:33 <AnMaster> that is what I expected but didn't see
18:34:34 <ehird> well what is $]
18:34:40 <ais523> ehird: the version number
18:34:47 <ais523> $[ is the base of arrays
18:34:54 <ais523> as in, normally arrays are zero-based
18:34:58 <ais523> $[=1; makes them one-based
18:35:02 <ehird> ouch
18:35:03 <AnMaster> no one sane would make $] be a version number
18:35:07 <ais523> but changing the value causes chaos
18:35:09 <ais523> AnMaster: why not?
18:35:12 <ais523> it was unused
18:35:13 <ehird> AnMaster: um, I made a mistake. do I have to point that out to everyone?
18:35:19 <ehird> i mean, he said he did it before the conversation
18:35:21 <ehird> so that's that
18:35:37 <ais523> apparently they chose it based on a bad pun, so people would remember it more easily
18:35:42 <AnMaster> ais523, well it makes no sense, I mean reserve the namespace $PERL_ or such and have $PERL_VERSION
18:35:43 <ais523> "Is this version of Perl within the right bracket?"
18:35:58 <ehird> AnMaster: that's longer.
18:36:01 <AnMaster> *groan*
18:36:04 <AnMaster> ehird, yes and?
18:36:06 <AnMaster> more readable?
18:36:09 <ehird> AnMaster: there you go.
18:36:17 <FireFly> [19:35:03] <AnMaster> no one sane would make $] be a version number <-- Last time I checked, we were in #esoteric
18:36:18 <ehird> it's perfectly readable to anyone who knows perl
18:36:19 <ais523> and they do have a reserved namespace, it's dollar followed by punctuation marks or control codes
18:36:21 <FireFly> The insaner, the better
18:36:22 <ehird> and makes hacking up scripts easy
18:36:26 <ehird> FireFly: wow, you caught on already
18:36:31 <ehird> don't worry, AnMaster is always like this
18:36:33 <FireFly> ;P
18:37:02 <AnMaster> ais523, well, what if they one day need more than the amount of punctuation marks or control codes
18:37:16 <ais523> they have already, but they didn't run out
18:37:23 <AnMaster> oh?
18:37:33 <ais523> you can have variable names which start with a control code and are followed by normal letters
18:37:40 <ais523> written as ${^Variable}, for instance
18:37:45 <ais523> where ^V is either a literal control-V
18:37:52 <ais523> or the separate characters ^V
18:37:54 <ais523> to make it easier to type
18:37:56 <AnMaster> ais523, also that awk script was a lot nicer
18:38:00 <AnMaster> than the generated perl code
18:38:01 <ais523> it's stored internally as a literal control-V, though
18:38:07 <ehird> omg machine compiled code
18:38:07 <ehird> is
18:38:08 <AnMaster> but I assume you could make the perl code nicer
18:38:08 <ais523> and of course it was, written code > generated code
18:38:08 <ehird> ugly!!
18:38:11 <ais523> more or less always
18:38:13 <ehird> call the PRESS
18:38:29 <AnMaster> <AnMaster> but I assume you could make the perl code nicer <ehird> omg machine compiled code <ehird> is <ehird> ugly!!
18:38:32 <AnMaster> that is what I said yes
18:38:33 <AnMaster> ...
18:38:48 <ehird> <AnMaster> everyone types instantly, and network lag does not exist
18:38:52 <ais523> the Perl isn't that bad, though, apart from it's missing idiomatic abbreviations for if/else
18:38:59 <ais523> which makes it much vertically longer than it ought to be
18:39:04 <AnMaster> ehird, well you could wait a few seconds before over reacting
18:39:07 <AnMaster> that would work too
18:39:16 <ehird> it's called sarcasm
18:39:18 <ehird> not overrreacting
18:39:31 <AnMaster> ehird, it seemed like you were attacking me?
18:39:41 <ehird> no
18:39:49 <ehird> i was responding sarcastically to comments I considered ridiculous.
18:40:25 <AnMaster> ais523, well it uses next line; instead of a switch or elseif or whatever, because each of those ends so it will never execute the next one
18:40:31 <AnMaster> guess that is a special case
18:40:59 <ais523> AnMaster: there is no switch in perl, but an if/elsif chain would have made more sense
18:41:03 <ais523> just a2p isn't trying to optimise that case
18:41:13 <ais523> or even a ?: chain would have worked there
18:41:24 <AnMaster> ais523, true. would local($dir, $CC, $bits, $GC, $THR) = @_; detect missing parameters?
18:41:25 <ais523> (actually, I lied, there is a switch in Perl but it's really new and hasn't caught on yet)
18:41:51 <AnMaster> as in error out, or warn on missing parameters
18:41:54 <ais523> AnMaster: not without warnings on
18:41:56 <ais523> probably not even then
18:41:58 <ais523> it would just assign undef
18:42:03 <AnMaster> ais523, well the original awk code would
18:42:10 <ais523> you can check easily enough using @_ == 5
18:42:13 <AnMaster> too few parameters
18:42:14 <ais523> just a2p neglected that check
18:42:18 <AnMaster> ais523, right
18:43:01 <AnMaster> ais523, I don't understand the logic for the check if $running_under_some_shell; at the top
18:43:15 <ais523> AnMaster: that's for systems on which #! doesn't work
18:43:18 <ehird> AnMaster: it's a hack
18:43:22 <ehird> in shell, the next line won't be executed
18:43:24 <ais523> think about what the code does in sh
18:43:27 <ehird> but in perl, it's waiting for the end of the statement
18:43:29 <AnMaster> hm
18:43:30 <ehird> and that if makes it never run
18:43:34 <ehird> AnMaster: x if y;
18:43:34 <ehird> in perl
18:43:35 <ehird> is
18:43:37 <ehird> if y { x }
18:43:39 <ais523> it is, in fact, a Perl/sh polyglot
18:43:39 <ehird> well
18:43:41 <ehird> if (y) { x }
18:43:49 <ais523> which reinvokes the program under Perl if it's running in sh
18:43:51 <AnMaster> ais523, heh
18:43:54 <AnMaster> ais523, oh?
18:43:55 <ais523> hence the slightly weird phrasing
18:44:01 <AnMaster> ah
18:44:03 <AnMaster> right
18:44:13 <AnMaster> ais523, that assumes perl is in /usr/bin however
18:44:22 <AnMaster> I think /usr/bin/env perl would be more portable
18:44:23 <ehird> no
18:44:25 <ais523> it's often done with /usr/bin/env
18:44:27 <ehird> it uses the perl you have on your system
18:44:33 <ehird> in my case I get
18:44:34 <ehird> #!/opt/local/bin/perl
18:44:35 <ehird> eval 'exec /opt/local/bin/perl -S $0 ${1+"$@"}'
18:44:37 <ehird> if $running_under_some_shell;
18:44:37 <AnMaster> ah
18:44:38 <ais523> ah, of course
18:44:41 <ehird> AnMaster: you're not meant to distribute these scripts, ofc
18:44:42 <AnMaster> right
18:44:43 <ehird> it's object code
18:45:01 <AnMaster> well then I would surely use the local awk on my system
18:45:09 <ehird> not everyone has gawk
18:45:18 <ehird> not everyone _wants_ gawk
18:45:20 <AnMaster> ehird, well it could be portable awk
18:45:25 <ehird> whatever
18:45:25 <AnMaster> I just haven't tried it
18:45:29 <ehird> AnMaster: a2p is useful for porting scripts over
18:45:31 <AnMaster> since it is a local one off script
18:45:38 <ehird> it runs as object code out of the box as a proof-of-concept
18:45:42 <ehird> and lets you hack it up afterward
18:45:42 <ehird> s
18:46:00 <AnMaster> ehird, it supports gawk extensions?
18:46:07 <ehird> i don't know
18:51:26 <AnMaster> " For aesthetic reasons you may wish to change the array base $[ from 1 back to perl’s default of 0, but remember to change all array subscripts AND all substr()
18:51:26 <AnMaster> and index() operations to match."
18:51:28 <AnMaster> from man page
18:52:21 <ais523> heh
18:52:27 <ais523> I see why they set $[
18:52:31 <AnMaster> oh?
18:52:34 <ais523> it's more than just aesthetic reasons, though
18:52:41 <AnMaster> why?
18:52:45 <ais523> really, you don't want to force an array index of 1 onto all the other code you link it with
18:52:53 <AnMaster> well true
18:52:55 <ais523> although they have a fix for that in recent versions, it's hacky
18:53:05 <AnMaster> ais523, why do they set $[ then?
18:53:44 <ais523> AnMaster: to avoid having to wrap all the indexing operations in the whole program
18:53:51 <AnMaster> For efficiency, you may wish to remove the keyword from any return statement that is the last statement executed in a subroutine. A2p catches the most common
18:53:51 <AnMaster> case, but doesn’t analyze embedded blocks for subtler cases.
18:53:52 <AnMaster> wut?
18:53:53 <ais523> the thing about Perl is it's good for large programs and short one-off scripts
18:53:56 <ais523> but in different ways
18:54:08 <ais523> AnMaster: hmm... that shouldn't affect efficiency nowadays
18:54:11 <ais523> a2p must be really old
18:54:15 <AnMaster> ais523, what keyword?
18:54:17 <AnMaster> I don't gt it
18:54:19 <ais523> AnMaster: return
18:54:19 <AnMaster> get*
18:54:25 <ais523> you can write 4; instead of return 4;
18:54:29 <ais523> at the end of a procedure
18:54:32 <AnMaster> err
18:54:37 <AnMaster> ah
18:54:40 <Mony> http://fichiers.asibasth.com/images/conneries/divers/Programmer_Superiority.jpg
18:54:41 <ais523> shouldn't affect efficiency apart from the time it takes to parse the return keyword, though
18:55:58 <AnMaster> ais523, what is $, = ' '; about?
18:56:12 <ais523> AnMaster: separator for print statements
18:56:19 <AnMaster> ah right
18:56:38 <ais523> print "a", "b", "c"; is equivalent to print "a$,b$,c$/";
18:56:45 <ais523> except that the second one would actually print $/ twice, as it's implicit
18:56:49 <AnMaster> ais523, anyway how do you set input separator? because the call to the script did that with -F iirc
18:56:56 <ais523> $/
18:57:03 <AnMaster> mhm
18:57:04 <ais523> although that can't be a regex in Perl, and it can be in awk
18:57:18 <AnMaster> oh it can in awk? nice
18:57:28 <AnMaster> I shall certainly remember it, will be useful
18:58:07 <AnMaster> BUGS
18:58:08 <AnMaster> It would be possible to emulate awk’s behavior in selecting string versus numeric operations at run time by inspection of the operands, but it would be gross
18:58:08 <AnMaster> and inefficient. Besides, a2p almost always guesses right.
18:58:08 <AnMaster> Storage for the awk syntax tree is currently static, and can run out.
18:58:13 <AnMaster> heh at the latter
18:58:25 <AnMaster> AUTHOR
18:58:25 <AnMaster> Larry Wall <larry@wall.org>
18:58:35 <ehird> why's that notable?
18:59:52 <AnMaster> ehird, what? the strange bug about using static storage?
18:59:58 <ehird> no, the author
19:00:18 <AnMaster> ehird, well wikipedia has an article on him so I guess he is notable?
19:00:23 * oerjan swats ehird -----###
19:00:27 <ehird> but why is it notable that he wrote a2p
19:00:31 <ehird> why did you quote that block
19:00:34 <oerjan> HOW DARE YOU INSULT THE GREAT LARRY WALL
19:00:35 <ais523> AnMaster: he's notable for writing Perl
19:00:40 <ais523> so writing a2p too is hardly surprising
19:00:43 <AnMaster> ais523, indeed
19:00:49 <ais523> that's like calling me notable for writing convickt
19:00:56 <AnMaster> ais523, oh yes you are
19:01:02 <ais523> not for that reason, though
19:01:20 <AnMaster> ais523, well after looking at convickt code I would say: very notable for that
19:01:26 <AnMaster> also notorious
19:03:44 <ehird> Just to put this into perspective, I never use getopt, either in C or in perl.
19:03:44 <ehird> I suppose this could be construed as a character flaw.
19:03:45 <ehird> —Larry Wall, Dec 1989
19:03:57 <AnMaster> um
19:04:05 <ais523> there are lots of good Larry Wall quotes
19:04:09 <AnMaster> ehird, "put what in perspective"
19:04:14 <ehird> http://groups.google.com/group/comp.lang.perl/browse_thread/thread/4bda45c06e872fef/86586c72bf0ddc18#86586c72bf0ddc18
19:04:29 <ais523> the one about real programmers not needing backups, but instead persuade the whole Internet to mirror their work, I think is quite insightful
19:04:58 <ehird> backing up a gpg-encrypted drive image via thepiratebay could work, if you bundle parts of it with illegal material
19:05:12 <ehird> I remember once I uploaded a computer game to the pirate bay -- skip ahead a year, I can't find my disc.
19:05:19 <ehird> So I download my own copy from everyone else.
19:05:27 <ehird> that was quite silly
19:06:35 <AnMaster> ehird, hah
19:07:27 <AnMaster> ehird, also isn't the pirate pay just a torrent searcher, not a tracker?
19:07:30 <AnMaster> I'm no expert..
19:07:34 <ehird> both.
19:07:37 <AnMaster> oh ok
19:07:43 <ehird> it's a tracker that provides a search facility for the torrents it tracks
19:07:52 <AnMaster> ehird, and not for other's torrents?
19:08:00 <AnMaster> err grammar fail
19:08:10 <ehird> No. Sites like torrentz.com aggregate torrent trackers into a search engine.
19:08:14 <AnMaster> ah
19:08:20 <AnMaster> though tpb was like that too
19:08:21 <AnMaster> oh well
19:09:14 <ehird> hmm
19:09:18 <ehird> I wonder if bless {}, NULL will work in perl
19:09:20 <AnMaster> #!/usr/local/bin/perl
19:09:21 <AnMaster> do 'getopt.pl';
19:09:23 <AnMaster> wtf is that?
19:09:29 <ehird> AnMaster: that would run the script getopt.pl
19:09:30 <AnMaster> isn't it use getopt? or something
19:09:31 <ehird> i.e., like a load
19:09:33 <AnMaster> ah
19:09:36 <ehird> and this is from _1989_
19:09:40 <AnMaster> ah true
19:09:46 <AnMaster> so it is probably a module nowdays?
19:09:49 <ehird> yes
19:09:56 <ehird> perl was only 2 years old back then, and had only been public i think for like a year
19:09:59 <AnMaster> modules didn't exist back then?
19:10:05 <ehird> unlikely
19:10:08 <AnMaster> ok
19:14:38 <ehird> hee, I found the torrent
19:14:45 <ehird> seeder 0, leechers 1 :(
19:14:50 <AnMaster> hm
19:15:04 -!- sebbu has joined.
19:15:10 <AnMaster> how to represent NULL in funge? as in NULL from SQL
19:15:11 <AnMaster> ais523, ^
19:15:38 <ais523> AnMaster: hmm... are you mostly dealing with string data?
19:15:55 <AnMaster> ais523, um? as in type of prepared statement or type or return value
19:16:04 <AnMaster> I try to make it support several types
19:16:15 <ais523> if so, you could use -1 or some other character that doesn't make sense in strings
19:16:15 <ais523> but that's no good if you're returning an integer
19:16:19 <AnMaster> currently I have <type><data> where format of <data> depends on <type>
19:16:21 <ehird> holy crap
19:16:25 <ehird> my keyboard
19:16:25 <ehird> just
19:16:27 <ehird> manually closed
19:16:29 <ehird> every window in my browser
19:16:30 <ehird> one by one
19:16:34 <AnMaster> ais523, and yes I support integers and blobs
19:16:34 <ehird> without me telling it to
19:16:42 <ais523> ehird: are you sure?
19:16:45 <AnMaster> ehird, your keyboard?
19:16:45 <ais523> and keyboard, or mouse?
19:16:47 <ehird> ais523: yep, i'll explain
19:16:48 <AnMaster> did that?
19:16:50 <AnMaster> how
19:17:05 <ehird> i pressed cmd-w to close one window, while i was pressing it, my (wireless) keyboard lost connection for some reason
19:17:14 <ehird> and so the OS never got the "keypress up" signal from it
19:17:17 <ehird> so it thought i was holding it down
19:17:18 <AnMaster> well
19:17:24 <ehird> and it stopped when the last window was closed, and thus there was no focus
19:17:25 <ehird> :DD
19:17:27 <ais523> that's a bug, isn't it?
19:17:33 <ehird> probably
19:17:39 <ehird> it's not exactly gonna be common though
19:17:41 <AnMaster> ehird, I wouldn't use a wireless keyboard anyway
19:17:51 <ehird> that's nice. i don't care. it was my system, not yours
19:18:01 <ais523> I don't know about other protocols, but on Windows the protocol is to send a key-down message for every time the key should appear, then a key-up at the end
19:18:02 -!- sebbu2 has quit (Connection timed out).
19:18:10 <ais523> so holding down a key gives down,down,down,down,down...
19:18:13 <ais523> and letting go gives up
19:18:17 <ehird> no
19:18:22 <ehird> that's not how it works at the hardware layer
19:18:23 <ehird> it gets
19:18:25 <ais523> that's how messages are sent to the software
19:18:27 <ehird> KEY X UP
19:18:29 <ehird> KEY X DOWN
19:18:33 <ais523> hardware using a similar method would make sense, probably
19:18:38 <ehird> no
19:18:42 <AnMaster> ehird, you have a short fuse (as I would say in Swedish, "kort stubin", not sure if the translation is very unidiomatic or not)
19:18:43 <ehird> because the repeat rate is configurable
19:18:52 <ais523> AnMaster: it is idiomatic
19:18:55 <AnMaster> ok
19:19:01 <ais523> ehird: yes, but wouldn't the keyword be?
19:19:05 <ehird> AnMaster: no, i've just learnt that talking with you is so irritating that I try not to give it too much thought.
19:19:07 <ehird> ais523: well, yes...
19:19:11 <ehird> but anyway, that's how keyboards work
19:19:18 <ehird> so the driver never got "key X up"
19:19:47 -!- kar8nga has joined.
19:20:25 <ehird> ok, $Object->{hello}(); works
19:20:32 <ehird> now to make $Object->hello work
19:20:32 <AnMaster> ehird, if it detects the lost connection (which I know it does for wireless mouse on OS X at least) it should send the key up event itself
19:20:40 <ehird> AnMaster: shrug
19:20:45 <ehird> it was funny
19:20:47 <ehird> so it's a feature
19:21:07 <ehird> hey, what perl method gets called when the method isn't known again?
19:21:08 <ais523> ehird: most people wouldn't consider all their windows closing a feature...
19:21:12 <ais523> ehird: AUTOLOAD
19:21:14 <AnMaster> ehird, I'm pretty sure I have seen an ibook display "connection lost" under an image of a mouse
19:21:20 <ehird> AnMaster: yes
19:21:32 <AnMaster> ehird, the same for keyboards I assume?
19:21:35 <ehird> yes
19:21:50 <AnMaster> and for mouse it sends button up when that box shows up
19:21:50 <ehird> ais523: what args does it get? :\
19:21:57 <AnMaster> but not for keyboard?
19:22:40 -!- ais523 has quit (Read error: 60 (Operation timed out)).
19:22:56 <AnMaster> ouch that sounds like the C pre-processor trying to auto add missing includes XD
19:24:51 <ehird> http://pastie.org/private/xisw72zrb5danroibmor7a c program reordering
19:24:58 <ehird> self-contained files without huge library bulk at the top.
19:25:46 -!- ais523 has joined.
19:26:52 <AnMaster> ehird, eh
19:27:09 <AnMaster> oh right
19:27:38 <AnMaster> ehird, why though? I don't see the point
19:27:45 <ehird> for compiler output
19:28:00 <ehird> the huge support functions can be at the bottom so you can inspect the compiled unlambda easily
19:28:02 <AnMaster> ehird, why not just add the include at the top instead
19:28:03 <ehird> without scrolling a lot
19:28:06 <AnMaster> ah
19:28:08 <AnMaster> right
19:28:14 <ehird> AnMaster: that adds a function too
19:28:19 <ehird> note that there's no prototype before it
19:28:22 <ehird> it just reorders thec ode
19:28:24 <AnMaster> ehird, this is from an unlambda compiler?
19:28:28 <AnMaster> why didn't you say
19:28:33 <ehird> i'm planning to write it :P
19:28:34 <ehird> so yes
19:28:44 <ehird> also, I'll keep the constant name.
19:28:48 <AnMaster> ehird, well yes for that I guess it makes a certain amount of cense
19:28:54 <AnMaster> sense*
19:28:56 <AnMaster> gah
19:29:38 <ehird> http://www.nordier.com/v7x86/index.html
19:29:44 <ehird> Nerdgasm!
19:30:53 <ehird> % perl unl2c.pl
19:30:53 <ehird> __PROXY=HASH(0x18006a0)
19:30:55 <ehird> 1
19:30:56 <ehird> 2
19:30:59 <ehird> 3
19:31:00 <ehird> __PROXY=HASH(0x18006a0)
19:31:02 <ehird> now why does it duplicate that arg...
19:31:04 <ehird> oh
19:31:06 <ehird> hm
19:34:36 <AnMaster> ehird, thanks for that link
19:34:40 * AnMaster bookmarks
19:35:07 * ehird tries to figure out how to define a variable i n another package
19:35:22 <AnMaster> what is __PROXY?
19:35:29 <ehird> a package I made up.
19:35:44 <AnMaster> and what is this HASH() thing? MD5 hash?
19:36:03 <AnMaster> or maybe sha1
19:36:06 <ehird> no
19:36:07 <ehird> perl hash
19:36:10 <ais523> AnMaster: no, it's an attempt to print a pointer to a hash
19:36:11 <ehird> i.e. hashtable
19:36:15 <AnMaster> ais523, ah
19:36:16 <ehird> oh hi ais523
19:36:17 <ehird> how can I do this
19:36:19 <AnMaster> ah ehird
19:36:21 <ehird> our $__PROXY::foo;
19:36:34 <ais523> ehird: that makes no sense
19:36:39 <ehird> I know it doesn't
19:36:43 <ehird> and that's why I want to do it.
19:36:45 <ais523> so what /are/ you trying to do?
19:36:52 <ehird> exactly that.
19:36:56 <ehird> as if in __PROXY "our $foo;" was done
19:37:07 <AnMaster> our?
19:37:12 <ehird> aha, I got it working
19:37:12 <ais523> you're trying to declare a lexically scoped variable... in a different scope?
19:37:12 <AnMaster> no! MINE!
19:37:14 <AnMaster> ;P
19:37:16 <ehird> sub __PROXY::AUTOLOAD {
19:37:16 <ehird> unshift @_;
19:37:17 <ehird> my ($obj, @args) = @_;
19:37:18 <ais523> AnMaster: my is a keyword too
19:37:19 <ehird> print $__PROXY::AUTOLOAD,"\n";
19:37:21 <ehird> }
19:37:23 <ehird> % perl unl2c.pl
19:37:25 <ehird> __PROXY::hello
19:37:27 <ehird> __PROXY::DESTROY
19:37:29 <AnMaster> ais523, meaning?
19:37:37 <ais523> AnMaster: they declare lexically scoped variables
19:37:40 <ais523> sort-of like auto in C
19:37:45 <ais523> except in C you have to give the data type
19:37:51 <AnMaster> ais523, hehe
19:38:02 <ais523> in Perl, you don't, which is why the auto-like keyword is needed
19:38:09 <AnMaster> ais523, so what if you don't use my, what sort of scope is used then?
19:38:15 <ehird> AnMaster: dynamic scope
19:38:18 <AnMaster> aha
19:38:20 <ehird> instead of lexica
19:38:21 <ehird> l
19:38:25 <ehird> wait, no
19:38:27 <ehird> global, usually
19:38:28 <ehird> I think
19:38:33 <ehird> "local" is for dynamic scope
19:38:46 <AnMaster> I see
19:39:06 <ais523> ehird: "local" is for INTERCAL-like scope
19:39:14 <AnMaster> ais523, ?
19:39:24 <ehird> ais523: question, how can you say "is this a sub"?
19:39:43 <ais523> well, it's a sub if you're running it
19:39:49 <ais523> checking for a pointer to a sub would make more sense
19:39:52 <ais523> which you can do with ref
19:39:53 <ehird> well, yes
19:39:59 <AnMaster> ehird, if (Object.IsSubmerged()) return true;
19:40:00 <ais523> AnMaster: push/pop on a stack for scoping
19:40:02 <ehird> ooh, wait...
19:40:06 <AnMaster> ais523, ah right
19:40:21 <ehird> how do you call an anonymous sub again?
19:40:41 <AnMaster> no one noticed the joke? :(
19:40:52 <ehird> yes, i did
19:40:54 <ehird> it just wasn't funny
19:41:04 <ais523> ehird: &$variable_holding_pointer_to_sub;
19:41:15 <AnMaster> you never like my jokes ehird :(
19:41:18 <ehird> ais523: actually, the anonymous sub is the result of a function calll.
19:42:10 <ehird> ais523: do you have to do ->() or something?
19:42:11 <ehird> i think so
19:42:16 <ehird> yep
19:42:19 <ehird> foo->(...)
19:42:24 <ais523> ehird: that's syntactic sugar, which works
19:42:34 <ais523> the non-sugared version is &{put call here}();
19:43:08 <ehird> ais523: ok, now how do I execute some code in the context of whoever called me? <_<
19:43:31 <ais523> ehird: you're already in the context of whoever called you, apart from lexically scoped variables
19:43:42 <ais523> lexical scoping is deliberately sane, so you aren't going to be able to get around it
19:43:59 <ehird> ais523: except
19:44:01 <ehird> functions can use caller
19:44:09 <ehird> I want caller to be whoever called this method, in the function I call
19:44:10 <ehird> not me
19:44:23 <ehird> so, I just want to contort the call stack
19:44:27 <ehird> "just"
19:44:46 <ais523> ehird: ah, interesting
19:44:53 <ais523> do you return immediately after the call, or do you do other things?
19:45:04 <ehird> return the result of the call, immediately after it returns
19:45:14 <ais523> Perl has a primitive just for you, then
19:45:18 <ais523> goto &procedure;
19:45:23 <AnMaster> ouch
19:45:25 <ais523> that's the tail-recursion primitive
19:45:25 <ehird> ais523: oho!
19:45:27 <ehird> and with arguments?
19:45:33 <ehird> goto &procedure(@args);?
19:45:33 <ais523> you put them in @_ before the call
19:45:35 <ehird> ouch
19:45:39 <AnMaster> hahaha
19:45:40 <ehird> ais523: okay, what about if I have a subref?
19:45:48 <ais523> goto &$subref;
19:46:12 <AnMaster> ais523, does perl support "normal" goto? I mean like goto in C
19:46:25 <ais523> yes, although it's bad style
19:46:29 <ehird> oh my fucking god.
19:46:29 <ehird> it worked.
19:46:32 <AnMaster> wow
19:46:35 <ehird> i feel awful
19:46:36 <ehird> I feel dirty
19:46:38 <ehird> i want to die
19:46:39 <ehird> but it worked
19:46:40 <AnMaster> ehird, pastebin the code
19:46:40 <ehird> holy shit.
19:46:44 <ehird> yep ,will do
19:46:52 <ais523> ehird: what's wrong with a tail-recursion primitive which lets you tail-recurse to /different/ procedures?
19:46:56 <ais523> actually, that was its original use
19:47:03 <ehird> ais523: you've got to see this
19:47:05 <ehird> http://pastie.org/private/c1x8277pqihm1ht3srcwfg
19:47:16 <ehird> i feel _dreadful_
19:47:33 <ais523> ehird: is that a good thing, or a bad thing?
19:47:39 <AnMaster> ehird, my $name = $__PROXY::AUTOLOAD; ?
19:47:41 <ehird> i wish I knew, ais523
19:47:43 <ehird> AnMaster: yes.
19:47:47 <AnMaster> ehird, what does that do
19:47:58 <ehird> AnMaster: google it, i'd have another breakdown if I tried to explain
19:48:19 <ais523> ehird: that's the original purpose for which AUTOLOAD and goto & were invented
19:48:23 <AnMaster> ehird, well googling that exact string found nothing, I have no clue what to google
19:48:27 <ehird> ais523: i know, but what it does
19:48:28 <ehird> is perverse
19:48:31 <ehird> it invents an object system
19:48:35 <ehird> and a whole new object semantics
19:48:40 <ehird> with that horrible, horrible stuff
19:48:42 <ais523> does it make you feel dirtier or less dirty to know that you're using those commands with their intended meaning?
19:48:52 <ehird> I think it's the fact that I can use them to give that result
19:49:05 <ehird> I mean, variables and functions in the same namespace?
19:49:07 <ehird> That's terrible!
19:49:12 <ehird> That's not Perl!
19:49:21 <ais523> they aren't in the same namespace
19:49:28 <ehird> yes they are
19:49:28 <AnMaster> ehird, is this object orientation for perl?
19:49:30 <ehird> $Object->a
19:49:33 <ehird> $Object->foo(1,2,3)
19:49:37 <ehird> AnMaster: perl already has object orientation
19:49:37 <ais523> AnMaster: Perl has at least 2 object-orientation systems already
19:49:42 <ehird> i'm just abusing one aspect of it
19:49:44 <AnMaster> then what is this then?
19:49:45 <ehird> in a deliciously perverse way
19:49:47 <ehird> to invent my _own_ system
19:49:51 <AnMaster> oh
19:49:53 <AnMaster> right
19:49:59 <AnMaster> ais523, why two?
19:50:05 <ais523> AnMaster: the default one
19:50:10 <ais523> and lots of others as CPAN modules
19:50:12 <AnMaster> wouldn't just adding basic OO work
19:50:13 <ais523> probably using similar tricks to ehird
19:50:31 <AnMaster> ais523, so the perl built in OO is not very good?
19:50:35 <ehird> hmm wait
19:50:36 <AnMaster> since people wrote their own
19:50:37 <ehird> mine doesn't pass along self
19:50:39 * ehird makes it
19:50:41 <ais523> no, it's just too general
19:50:48 <ais523> and thus confusing to use, and not particularly standardised
19:50:52 <AnMaster> ais523, ah
19:51:30 <AnMaster> ais523, sounds like even PHP OO is saner than that
19:51:36 <AnMaster> and PHP is generally insane
19:51:40 <ehird> wait, I wonder how my use of unshift worked
19:51:46 <ehird> it actually did a pop...
19:51:47 <ehird> I think...
19:51:54 <ais523> unshift != pop
19:51:59 <ehird> oh no... I can't figure out my own code...
19:52:05 <ais523> unshift pushes to the left of an array, pop pops from the right
19:52:11 <ehird> yes
19:52:37 <oerjan> so unshift should be called mom then?
19:53:21 <AnMaster> oerjan, eh?
19:53:25 <ais523> oerjan: I was going to reply to that, but couldn't think of anything sensible to say
19:53:28 <ais523> AnMaster: it's a really bad pun
19:53:37 <AnMaster> I don't get it
19:53:38 <ehird> hmm...
19:53:43 <ehird> how do you merge two hashes in perl?
19:53:47 <ehird> well
19:53:49 <ehird> two hashrefs.
19:53:50 <oerjan> AnMaster: ask your mom or pop
19:53:56 <ais523> ehird: %a = (%b, %c) for hashes
19:54:01 <ehird> hashrefs :P
19:54:09 <ais523> %$a = (%$b, %$c)
19:54:19 <ehird> can you do %$self = ...;?
19:54:20 <ehird> well, I guess so.
19:54:21 <ehird> ew :D
19:54:24 <ais523> should be pretty obvious given the syntax for dereferencing
19:54:33 <ehird> wait
19:54:36 <ehird> %a = (%a, %b)
19:54:37 <ehird> surely
19:54:39 <ehird> to add more stuff
19:54:40 <ais523> actually, I'm not entirely sure if assigning to self screws up the blessing
19:54:47 <ais523> and yes, to merge into a hash
19:54:52 <ais523> but you can easily just rebless once you're done
19:54:57 <ehird> do => sub {
19:54:58 <ehird> my ($self, $more) = @_;
19:54:59 <ehird> %$self = (%$self, %$more);
19:55:01 <ehird> return $self;
19:55:03 <ehird> }
19:55:05 <ehird> BEHOLD
19:55:08 <ehird> ... dammit
19:55:09 <ehird> doesn't work
19:55:13 <ais523> did it mess up the blessing?
19:55:16 <ehird> $Object->do {
19:55:18 <ehird> is invalid syntax
19:55:22 <ehird> why?
19:55:24 <ehird> i don't want parens
19:55:29 <ehird> I need a prototype
19:55:30 <ehird> I guess
19:55:33 <ais523> ehird: think about it
19:55:37 <AnMaster> blessing??
19:55:37 <ais523> what you're saying makes no sense
19:55:41 <ais523> you can't have object calls with prototypes
19:55:43 <AnMaster> perl is religious?
19:55:47 <ais523> because then you could change the syntax at runtime
19:55:47 <ehird> AnMaster: well, yes
19:55:49 <ehird> larry wall is christian
19:55:50 <AnMaster> ah
19:55:54 <ehird> but bless is part of the OO system
19:56:03 <AnMaster> hah
19:56:03 <ais523> AnMaster: no, it's just the syntax for associating a pointer with a class
19:56:05 <ehird> ais523: you can anyway :P
19:56:07 <ais523> to tell it what class it's an object for
19:56:09 <ais523> ehird: no
19:56:09 <AnMaster> hm
19:56:10 <ehird> using eval
19:56:14 <ais523> only inside BEGIN{} blocks
19:56:20 <ais523> even eval doesn't change the syntax at runtime
19:56:25 <ehird> umm, schwartzian snippet
19:56:27 <ais523> what confuses people is that eval has a compile then run
19:56:45 <ais523> but that only affects the code inside the eval
19:56:47 <AnMaster> <ais523> because then you could change the syntax at runtime <-- Feather!
19:56:50 <AnMaster> :D
19:57:10 <ehird> ais523: then what about the schwartzian snippet
19:57:14 <ehird> or wtf it's called
19:57:19 <ais523> the one that says parsing Perl is TC?
19:57:23 <ehird> yes
19:57:26 <ais523> it just runs the prototype code in a BEGIN {} block
19:57:32 <ais523> which in Perl, is technically compile-time
19:57:35 <ehird> ah
19:57:45 <ais523> being able to run arbitrary code at compile-time = having TC syntax
19:57:48 <ais523> fairly obviously
19:58:00 <AnMaster> Schwartzian Transform is the only hit
19:58:02 <AnMaster> when googling
19:58:06 <AnMaster> is it that?
19:58:10 <ais523> no
19:58:10 <ehird> http://www.perlmonks.org/?node_id=663393
19:58:14 <ehird> whatever / 25 ; # / ; die "this dies!";
19:58:17 <ehird> that can be parsed two ways
19:58:21 <ehird> if whatever takes no arguments, it's a call to it
19:58:23 <ehird> then a devision
19:58:24 <ehird> then a ;
19:58:25 <ehird> then a comment
19:58:29 <ehird> if whatever takes an argument
19:58:31 <ehird> it calls whatever with a regexp
19:58:33 <ehird> and then dies
19:58:43 <ehird> but you can define functions at runtime...
19:58:47 <ehird> :-D
19:59:37 <ais523> ehird: prototypes are compile-time only
19:59:47 <ais523> that's why there's a BEGIN block in the proof
20:00:01 <AnMaster> ais523, prototypes as prototypes in C?
20:00:12 <ais523> AnMaster: not exactly, as they modify the syntax of the language
20:00:23 <ais523> although they say what type each parameter is, just like C prototypes do
20:00:30 <AnMaster> ais523, I thought Perl didn't have C-style prototypes
20:00:40 <ais523> it doesn't
20:00:41 <AnMaster> ais523, oh?
20:00:41 <ehird> it doesn't
20:00:46 <AnMaster> then wtf
20:00:46 <ehird> snap.
20:00:50 <ehird> so ais523
20:00:55 <ehird> how can I get $Object->do { to work
20:00:55 <ehird> :D
20:00:57 <ais523> saying what type each parameter is isn't sufficient to be a C-style prototype
20:01:03 <ais523> ehird: Source filters!
20:01:09 <ais523> (N.B. not recommended)
20:01:12 <ehird> ais523: FUCK YOU :(
20:01:13 <ehird> sorry
20:01:13 <ehird> just
20:01:15 <ehird> bad
20:01:17 <ehird> memories
20:01:19 <ehird> :{
20:01:40 <oerjan> i
20:01:41 <oerjan> c
20:01:42 <oerjan> a
20:01:43 <oerjan> n
20:01:44 <oerjan> t
20:01:46 <oerjan> y
20:01:49 <oerjan> p
20:01:51 <oerjan> e
20:01:54 <oerjan> like
20:01:56 <ehird> n
20:01:56 <oerjan> this
20:01:57 <ehird> o
20:01:58 <ehird> r
20:01:59 <oerjan> too
20:02:00 <ehird> c
20:02:07 <ehird> a
20:02:07 <ehird> n
20:02:07 <ehird> o
20:02:08 <ehird> am
20:02:10 <ehird> a
20:02:12 <ehird> l
20:02:14 <ehird> o
20:02:15 <Mony> w
20:02:15 <Mony> t
20:02:16 <Mony> f
20:02:16 <ehird> t
20:02:18 <ehird> o
20:02:20 <ehird> f
20:02:22 <ehird> t
20:02:24 <Mony> s
20:02:24 <ehird> h
20:02:25 <Mony> t
20:02:26 <Mony> o
20:02:26 <ehird> a
20:02:26 <Mony> p
20:02:27 <Mony>
20:02:28 <ehird> n
20:02:29 <Mony> i
20:02:29 <Mony> t
20:02:30 <ehird> t
20:02:32 <ehird> o
20:02:34 <ehird> s
20:02:36 <ehird> f
20:02:38 <ehird> b
20:02:40 <oerjan> what
20:02:40 <ehird> a
20:02:41 <oerjan> have
20:02:41 <FireFly> S
20:02:41 <FireFly> T
20:02:42 <oerjan> i
20:02:42 <FireFly> F
20:02:42 <ehird> n
20:02:43 <FireFly> U
20:02:43 <oerjan> done
20:02:43 <FireFly> :D
20:02:44 <ehird> t
20:02:46 <ehird> b
20:02:48 <ehird> u
20:02:50 <ehird> t
20:02:52 <ehird> a
20:02:54 <ehird> l
20:02:56 <ehird> a
20:02:58 <ehird> k
20:03:00 <ehird> .
20:03:02 <ehird> p
20:03:04 <ehird> l
20:03:06 <ehird> o
20:03:07 <Mony> zomg
20:03:08 <ehird> p
20:03:10 <ehird> you
20:03:12 <ehird> hvae
20:03:14 <ehird> done
20:03:16 <ehird> magic
20:03:17 <AnMaster> ...
20:03:18 <ehird> and
20:03:20 <ehird> a
20:03:21 <AnMaster> what the heck was that?
20:03:22 <ehird> bowl
20:03:24 <ehird> of
20:03:26 <ehird> plate
20:03:28 <ehird> of
20:03:30 <ehird> faeriy
20:03:32 <ehird> es
20:03:34 <ehird> magic
20:03:36 <ehird> dust
20:03:38 <ehird> .
20:03:51 <FireFly> It's over \o/
20:04:00 <ehird> ais523: couldn't I define a dynamic prototype on AUTOLOAD? <__<
20:04:17 <ais523> no
20:04:17 <Mony> \o~
20:04:19 <ais523> Perl is a compiled language!
20:04:25 <ehird> ais523: hmm, perl needs a ,= operator
20:04:28 <ehird> %$self = (%$self, %more);
20:04:29 <ehird> could be
20:04:29 <Mony> 'later guys !
20:04:37 <ehird> %$self ,= %more;
20:05:02 <AnMaster> ais523, hm
20:05:20 <AnMaster> ehird, what about .= ?
20:05:24 -!- Mony has quit ("Quit").
20:05:27 <ehird> that is for strings
20:05:27 <AnMaster> does that exist?
20:05:29 <ais523> AnMaster: that's for string concatenation
20:05:32 <ais523> not array concatenation
20:05:34 <AnMaster> ehird, yes I was wondering if it existed
20:05:37 <ehird> AnMaster: you can't even compare strings and ints the same way
20:05:38 <ais523> which would indeed be ,= if it existed
20:05:39 <AnMaster> like in PHP
20:05:40 <ehird> 1 == 2
20:05:41 <ehird> but
20:05:41 <AnMaster> ...
20:05:42 <AnMaster> true
20:05:43 <ehird> 'a' eq 'b'
20:05:45 <AnMaster> read what I said
20:05:48 <ehird> i know
20:05:48 <AnMaster> <AnMaster> does that exist?
20:05:48 <ehird> :D
20:05:54 <ehird> i was just saying something funny.
20:05:56 <ais523> "0xa" = "1e1"
20:06:00 <ais523> *==
20:06:05 <ehird> hmm
20:06:09 <ehird> how do you copy a hash in perl <__<
20:06:10 <AnMaster> ais523, I much prefer:
20:06:12 <ais523> but then, it does in PHP too, and PHP doesn't have a string-compare operator
20:06:14 <AnMaster> X = y
20:06:16 <AnMaster> if x = y
20:06:19 <AnMaster> and so on
20:06:22 <AnMaster> they should all be same
20:06:23 <ais523> ehird: just assign it without using a reference
20:06:29 <AnMaster> ais523, don't you agree?
20:06:30 <ais523> as in my %new_hash = %$oldhash
20:06:37 <ehird> i much prefer (= x y), (equal? x y), (eqv? x y) and (eq? x y)
20:06:37 <AnMaster> ais523, as in math
20:06:38 <ais523> and you can then return a reference to new_hash
20:06:43 <ehird> (Scheme has _all_ of those comparison ops.)
20:06:45 <AnMaster> ehird, yes that is nice too
20:06:48 <ehird> (They're all useful in all different situations.)_
20:07:01 <AnMaster> ehird, agreed
20:07:03 <ehird> R5RS Scheme is interestingly complete in the few areas it dabbles in.
20:07:06 <ais523> Perl has ||=, if you're after weird operators
20:07:07 <ehird> It has a comprehensive numeric tower.
20:07:14 <ehird> ais523: eh, ruby has that
20:07:15 <ehird> it's useful
20:07:16 <FireFly> Or equal to?
20:07:18 <ais523> yes
20:07:21 <ehird> it's "initialize this var if it isn't already"
20:07:23 <AnMaster> ais523, what is ||= ?
20:07:25 <ehird> FireFly: a ||= b is actually
20:07:25 <ais523> ehird: no, that's //=
20:07:27 <ehird> a || (a = b)
20:07:29 <AnMaster> logical and?
20:07:31 <ehird> (AnMaster: too)
20:07:36 <ais523> ehird: no, it's a = (a || b)
20:07:40 <AnMaster> an operator called "too"?
20:07:47 <ehird> ais523: well, in Perl maybe
20:07:49 <ehird> but in ruby it's that
20:07:53 <ais523> ehird: they mean the same thing
20:07:58 <ehird> nope
20:08:00 <ais523> because if a, then a || b is the same as a
20:08:07 <ehird> in Ruby, the assignment is never triggered
20:08:12 <ehird> a very VM-level distinction, yes
20:08:16 <ehird> but one nevertheless
20:08:16 <ais523> optimisation/
20:08:19 <ehird> it's actually faster
20:08:19 <ais523> or can you detect it?
20:08:26 <ehird> ais523: i don't think you can detect it
20:08:32 <ehird> you can in a C extension, probably, though
20:08:36 <ais523> if you can't detect it from inside the program, then it semantically is a = (a || b), and it's just being optimised
20:08:51 <ehird> clone => sub {
20:08:52 <ehird> my $self = shift;
20:08:53 <ehird> bless %$self, __PROXY;
20:08:55 <ehird> },
20:09:12 <ehird> oops
20:09:14 <ehird> should just be $self
20:09:14 <ehird> heh
20:09:31 <ais523> ehird: that doesn't copy the object
20:09:37 <ehird> hmm true
20:09:39 <ehird> I'll have to do
20:09:40 <ais523> it should be my %copy_of_self = %$self;
20:09:44 <ehird> actually
20:09:45 <ehird> it should be
20:09:52 <ais523> bless \%copy_of_self, $self;
20:09:52 <ehird> my $copy_of_self = \%$self;
20:09:53 <ehird> I think
20:09:54 <ehird> XD
20:10:01 <ais523> ehird: no, that's wrong
20:10:05 <ehird> ok
20:10:10 <ais523> \%$self is like writing &*self in C
20:10:15 <ais523> you get back self, not a copy of it
20:10:15 <ehird> ah
20:10:30 <ais523> you want to dereference, copy the dereferenced value, then reference the copy
20:10:34 <ehird> wow, it works
20:10:36 <ais523> that's what a deep copy /is/, after all
20:10:43 <ehird> a prototypical object system in Perl in 27 lines
20:10:44 <ehird> not bad
20:10:58 * ehird adds one last nicety
20:11:10 <ehird> hmm
20:11:40 <AnMaster> ais523, err a deep copy is more, it copies any pointers in the struct too
20:11:45 <ais523> well, OK
20:11:52 <ais523> a non-shallow non-deep copy
20:11:53 <AnMaster> ais523, you mean a shallow copy
20:11:59 <AnMaster> err how?
20:11:59 <ais523> no, a shallow copy just copies the pointer
20:12:02 <ais523> it's a 1-level copy
20:12:10 <AnMaster> ais523, no that would be making a copy of the reference
20:12:10 <ais523> you're duplicating the struct, but not pointers inside it
20:12:13 <AnMaster> not a copy of the object
20:12:18 <ais523> AnMaster: ah, that's what I call a shallow copy
20:12:20 <AnMaster> a shallow copy would copy level 1
20:12:24 <AnMaster> ais523, well I might be wrong
20:12:32 <AnMaster> but I thought shallow copy was what you described
20:12:33 <ais523> it's one-level copies we're talking about, anyway
20:12:35 <ehird> http://pastie.org/private/jenlaevavatsjngzjmsljw
20:12:41 <ehird> A PROTOTYPICAL OBJECT SYSTEM IN AROUND 30 LINES OF PERL
20:12:42 <ehird> :DD
20:12:55 <AnMaster> ehird, nice
20:13:06 <ehird> I will add delegation to multiple prototypes instead of just one, then that'll be version 1.
20:13:12 <ehird> I shall use it for my underload to C compiler. :D
20:13:19 <ehird> It will be called... Minob.
20:13:28 <ehird> Slogan: So small you can just paste it in.
20:13:30 <ehird> >:D
20:13:45 <AnMaster> ehird, what about private members?
20:13:56 <AnMaster> and protected and so on
20:14:03 <ehird> AnMaster: Eh, private data is for weenies.
20:14:09 <AnMaster> ehird, oh ok
20:14:17 <AnMaster> also C++-style friend for the extra "eww"
20:14:18 <ehird> I don't even think CLOS has it, and CLOS is a pretty good object system.
20:14:19 <AnMaster> ;P
20:14:22 <ais523> AnMaster: in Perl, the convention is not to declare as private, just to not access other class's private stuff
20:14:28 <ehird> AnMaster: Just call the var _foo if you really don't want anyone to touch it
20:14:29 <ais523> *classes'
20:14:37 <AnMaster> ais523, well perl usually have good documentation so I guess it works
20:14:43 <AnMaster> perl modules*
20:14:49 <ehird> I'd prefer to be able to do
20:14:51 <ehird> sub hello {
20:14:51 <ehird> ...
20:14:52 <ehird> }
20:14:54 <ehird> instead of
20:14:56 <ehird> hello => sub {
20:14:58 <ehird> ...
20:15:00 <ehird> },
20:15:02 <ehird> but there you go
20:15:09 <AnMaster> ehird, per-processor
20:15:09 <ais523> leading underscore's normally used for internals, so as to let people know not to use it
20:15:19 <ais523> but that isn't actually enforced
20:15:21 <ehird> ais523: how would I go about doing it with sub?
20:15:28 <AnMaster> ais523, ah it isn't reserved for something?
20:15:33 <ais523> AnMaster: no
20:15:40 <ais523> apparently, they use the leading underscore to scare C programmers
20:15:46 <ais523> into keeping away
20:15:51 <AnMaster> ais523, from perl?
20:15:59 <ais523> AnMaster: no, from private internals
20:16:00 <oerjan> leading underscare
20:16:02 <AnMaster> ah
20:16:12 <AnMaster> oerjan, heh
20:16:16 <ehird> hmm
20:16:23 <ehird> ais523: is there an "anti ,="? :D
20:16:23 <ais523> ehird: the problem is that sub hello { } is a named subroutine declaration
20:16:39 <ais523> you aren't going to be able to return a value like that
20:16:45 <ais523> that's why anonymous subs exist, after all
20:16:47 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:16:52 <ais523> as for an anti ,=, what do you want to do?
20:16:56 <ais523> remove elements from a hash?
20:16:58 <ehird> un-concatenate hashes
20:16:59 <ehird> XD
20:17:16 <ehird> what I really need is to define AUTOLOAD on the hash _itself_
20:17:16 <ehird> :s
20:17:17 <ais523> ehird: does that differ from removing elements which are the keys of a given hash?
20:17:32 <ehird> ais523: nope. any ideas how I could "AUTOLOAD the hash"?
20:17:32 <ehird> that is
20:17:34 <AnMaster> ais523, perl is basically hack * (awk + sed + C + sh + rand())
20:17:37 <ehird> $hashref->{fooasdasdasd}
20:17:39 <AnMaster> I mean the syntax
20:17:40 <ehird> would call a subroutine
20:17:45 <AnMaster> and the language itself
20:17:50 <ais523> ehird: yes, you could tie the hash
20:17:55 <ais523> but then anyone sane will kill you
20:17:56 <AnMaster> (of which syntax is a part)
20:18:05 <ehird> ais523: can you bless a tied hash?
20:18:09 <ais523> and I have no idea how tied hashes interact with the OO system
20:18:17 <ais523> I'm not at all convinced that you can bless a tied hash
20:18:21 <ehird> im gonna ask #perl XD
20:18:25 <ais523> although I'm pretty sure it's in an FAQ somewhere
20:18:26 <oerjan> AnMaster: i really liked that katamari damacy reference earlier
20:18:32 <ehird> 20:18 <ehird> Can you bless a tied hash? Don't ask.
20:18:32 <ehird> 20:18 ais523 has joined (n=ais523@147.188.254.127)
20:18:43 <ais523> ehird: I'm here to watch the fun
20:18:46 <ehird> of course, now they will ask.
20:18:47 <AnMaster> <ehird> im gonna ask #perl XD <-- I'm going to watch too
20:18:48 <ais523> it isn't something you'd do if you were sane
20:19:07 <AnMaster> what is a tied hash?
20:19:30 <ehird> http://perldoc.perl.org/Tie/Hash.html
20:19:33 <AnMaster> ehird, when you are done you should pastebin your code there
20:19:34 <AnMaster> :D
20:19:40 <ehird> 20:19 <mst> ehird: you can bless any reference, perl doesn't give a shit what it's a reference -to-
20:19:44 <AnMaster> ehird, I want to see their reactions
20:19:45 <ehird> itt: hardcore perl users don't be givin' a shit
20:19:47 <ais523> ehird: no, that's the CPAN module for tying hashes
20:19:54 <ehird> ais523: fail
20:19:56 <AnMaster> ehird, ouch
20:19:57 <ais523> there's a tie primitive
20:19:58 <ehird> if that was a cpan module
20:19:59 <ehird> Home > Core modules > T > Tie::Hash
20:20:13 <ais523> ehird: well, core is also CPAN, the way I think of things
20:20:17 <ais523> just because it's in core doesn't change things
20:20:20 <ais523> it's still a module
20:20:29 <ehird> I think the sky is green.
20:20:29 <ais523> there's a primitive for doing tying, why bother with modules?
20:20:39 <ais523> ehird: modules get moved back and forth all the time
20:20:42 <ais523> they're still modules
20:20:59 <AnMaster> ais523, well what is a tied hash then?
20:21:21 <ehird> 20:20 <buu> ehird: So, in short, "yes". And it does what you expect.
20:21:22 <ehird> 20:21 <ehird> buu: Hooray. What I expect is bunnies to fly out of my nose, though.
20:21:25 <ehird> 20:21 <buu> ehird: You're in luck!
20:21:25 <ehird> 20:21 <ehird> I'm so lucky!
20:21:40 <AnMaster> hah
20:21:57 <AnMaster> ehird, well this is a typical example of #perl I guess
20:22:13 <AnMaster> at least they would be happy about a hack like that python-with-no-indent hack you made
20:22:18 <AnMaster> using lambda iirc
20:22:19 <ais523> Tie::Hash just defines the standard hash-tying methods
20:22:27 <ais523> AnMaster: ever seen ACME::Pythonic?
20:22:31 <AnMaster> ais523, nop
20:22:36 <ais523> IIRC, there was also a Python module to go the other way
20:22:38 <AnMaster> ais523, the name doesn't bode well
20:22:44 <AnMaster> ACME I mean
20:22:49 <ais523> AnMaster: it's a Perl source filter which gives it Python syntax
20:22:54 <AnMaster> hah
20:22:59 <ais523> and ACME is for the jokey/not entirely serious stuff on CPAN
20:23:08 <ais523> there's an ACME::Brainfuck, for instance
20:23:14 <ais523> which allows inline BF in Perl code
20:23:20 <ais523> without even any special syntax
20:23:28 <ais523> I think it uses heuristics to tell the BF and the Perl apart
20:23:29 <AnMaster> ais523, there is a python module for ; and {} in python I know
20:23:36 <AnMaster> filter or encoding or something
20:23:38 <AnMaster> forgot the name
20:34:09 <AnMaster> ais523, hm how does it reinterpret the code?
20:34:19 <AnMaster> I mean it needs to reinterpret the code with a changed interpreter right?
20:34:22 <AnMaster> after the use foo;
20:34:36 <ais523> AnMaster: it's a source filter
20:34:42 <AnMaster> ais523, and that means?
20:34:44 <ais523> you have to write the use foo at the top
20:34:50 <AnMaster> right
20:34:54 <ais523> and it goes and runs the rest of the code through the source filter before continuing to compile
20:35:00 <AnMaster> ais523, after any #!/bin/perl or such I assume?
20:35:07 <ais523> only from the use statement onwards
20:35:15 <AnMaster> an
20:35:17 <AnMaster> ah*
20:36:36 <AnMaster> also that ACME::Brainfuck, does it share memory with perl or something?
20:37:02 <ais523> it's a source filter
20:37:13 <ais523> I think it uses some var in the module itself as a tape and pointer
20:37:14 <AnMaster> ais523, I mean the bf code it runs
20:37:19 <AnMaster> and the perl code it runs
20:37:24 <ais523> it doesn't share memory with Perl
20:37:27 <AnMaster> how can they interact with each other memory
20:37:41 <ais523> but BF code is a Perl expression which returns the current value at the pointer
20:37:46 <ais523> and I think Perl can access the tape via some API
20:38:01 <AnMaster> ais523, this may interest you too http://www.postgresql.org/docs/8.3/static/ecpg-concept.html
20:38:38 <ais523> AnMaster: heh, that's source filters for C
20:38:45 <AnMaster> ais523, indeed
20:39:16 <AnMaster> ais523, and it is serious, I can't see any serious use of a source filter for perl or C. I think ecpg is silly
20:39:33 <ais523> what about cpp? that's a source filter
20:40:08 <AnMaster> ais523, well true
20:40:17 <AnMaster> but I mean another source filter apart from cpp
20:40:34 <AnMaster> ehird, what is the last version of your OO system?
20:40:43 <AnMaster> care to pastebin it? :D
20:40:45 <ais523> *latest?
20:40:51 <ais523> last would imply there wouldn't be any more
20:40:51 <AnMaster> ais523, yes
20:40:57 <AnMaster> ah
20:41:14 <oerjan> famous latest words
20:41:15 <AnMaster> what about the last and greast?
20:41:23 <AnMaster> (intentional typo)
20:41:33 <AnMaster> oerjan, hah
20:42:05 * AnMaster wish it was last word instead of latest Office crap
20:42:13 <AnMaster> (I so hate MS word...)
20:42:48 <ais523> AnMaster: what in particular don't you like about it?
20:43:00 <AnMaster> ais523, well it's document format for a start
20:43:15 <AnMaster> even more so with the last XML based not-really-standard thing
20:43:31 <ais523> ok, I'll agree with that
20:43:37 <AnMaster> ais523, also clippy
20:43:51 <ais523> meh, clippy was easy to turn off
20:44:18 <AnMaster> ais523, and then there is the stupid "this sentence seems overly bureaucratic" when I type (message translated from Swedish word)
20:44:28 <AnMaster> when I type a formal letter
20:44:33 <AnMaster> and so on
20:44:33 <ais523> it's "overly formal" in English
20:44:40 <ais523> but actually, I usually got the opposite error
20:44:49 <AnMaster> ais523, I never got the opposite
20:44:53 <ais523> Word's grammar-checker doesn't like people using the passive
20:45:02 <AnMaster> also it complains about "old Swedish" sometimes
20:45:20 <AnMaster> which again I use because I want to
20:45:34 <AnMaster> ais523, I guess it differs between languages
20:45:46 -!- Corun has joined.
20:45:49 <AnMaster> ais523, oh also they don't include spell checking or grammar checking for all the languages
20:45:59 <AnMaster> just English + language Word is localized in
20:46:08 <AnMaster> ais523, which is quite strange
20:46:18 <AnMaster> any idea why?
20:46:23 <ais523> AnMaster: it's addonable, I think
20:46:26 <ais523> just not installed by default
20:46:28 <AnMaster> ais523, costs money?
20:46:32 <AnMaster> because it isn't on the cd
20:46:35 <ais523> probably
20:46:36 <AnMaster> with office standard
20:46:45 <AnMaster> that is office xp btw
20:46:50 <AnMaster> I don't have any newer
20:46:54 <AnMaster> nor do I plan to get that
20:47:53 <AnMaster> ais523, oh and openoffice is just as bad. I mean why are there no high quality office suites, I mean same level of quality as emacs is for text editors or such
20:48:14 <AnMaster> koffice is a joke
20:48:18 <ais523> AnMaster: LaTeX?
20:48:30 <AnMaster> ais523, yes but that doesn't do the spreadsheet bit though
20:48:32 <oerjan> http://www.irregularwebcomic.net/744.html
20:48:36 <AnMaster> sure it solves the text issue
20:48:43 <ais523> AnMaster: I've heard good things about Gnumeric, but never used it
20:48:49 <ais523> maybe I should download it and have a look
20:49:09 <AnMaster> ais523, I think I tried it a few years ago
20:49:11 <AnMaster> maybe 2 or 3
20:49:15 <AnMaster> wasn't very good back then iirc
20:49:32 * ais523 installs Gnumeric
20:49:52 <AnMaster> ais523, that would mean installing half of gnome
20:49:54 <AnMaster> which would suck
20:50:56 <ais523> AnMaster: I have half of gnome installed already
20:51:03 <ais523> both Gnome and KDE are installed here
20:51:04 <ais523> and why not?
20:51:09 <ais523> besides, KDE4 still isn't finished
20:51:13 <AnMaster> ais523, yes
20:51:18 <AnMaster> ais523, I'm on KDE 3.x
20:51:20 <ais523> so Gnome is the only real desktop environment I can use here atm
20:51:42 <AnMaster> ais523, KDE 3.x for me. And going awesome wm instead of KDE 4 when it is time for that
20:51:51 <ehird> back
20:52:23 <AnMaster> ais523, I wonder what happens if you do startx, then jumps back to the console and starts xdm using the normal service script for it
20:52:28 <AnMaster> I'm not about to try
20:52:36 <AnMaster> xdm or gdm or kdm
20:52:45 <ais523> AnMaster: me? I don't run startx by hand
20:52:50 <AnMaster> ais523, well I do
20:53:07 <AnMaster> ehird, <AnMaster> ehird, what is the last version of your OO system? <AnMaster> care to pastebin it? :D
20:54:08 <ehird> "I mean same level of quality as emacs is for text editors or such"
20:54:13 <ehird> ms word.
20:54:18 <ehird> AnMaster: i just came back, no revisions atm
20:54:19 <ehird> adding ties
20:54:26 -!- olsner has joined.
20:54:35 <AnMaster> ehird, tell me when you are done
20:54:40 <ais523> hmm... Gnumeric reminds me of Abiword
20:54:41 <ehird> soon.
20:54:52 <ais523> not full-featured, but looks good at what it tries to do
20:55:23 <ais523> circular references act really weirdly, though
20:56:17 <ais523> it seems to get 850*77.1 right
20:56:28 <ais523> but that's not particularly surprising
20:56:53 <psygnisf_> so
20:56:57 <psygnisf_> ive designed a language. :T
20:57:23 <ais523> psygnisf_: what paradigm?
20:57:56 <psygnisf_> i think the best way to describe it is as a pattern-matching unifying tree-rewriting system.
20:58:13 <ais523> sounds great
21:00:30 <psygnisf_> my only task now is to.. actually make the language. XD
21:00:54 -!- psygnisf_ has changed nick to psygnisfive.
21:01:04 <AnMaster> <ais523> it seems to get 850*77.1 right
21:01:04 <AnMaster> <ais523> but that's not particularly surprising
21:01:09 <AnMaster> why would you even try that?
21:01:19 <ais523> AnMaster: because famously, Excel 2007 got it wrong
21:01:23 <ais523> at least, until they patched it
21:01:24 <AnMaster> ais523, how?
21:01:32 <ais523> to be precise, it was a bug in the binary to decimal conversion
21:01:39 <ais523> which converted numbers just below 65535 to 1000000
21:01:44 <ais523> *100000
21:01:44 <AnMaster> heh
21:01:56 <AnMaster> ais523, why not just use snprintf()?
21:02:01 <AnMaster> or something like ti
21:02:03 <AnMaster> it*
21:02:09 <AnMaster> windows has itoa() iirc
21:02:15 <ais523> AnMaster: don't ask me, I haven't read the source code to Excel
21:02:20 <AnMaster> true
21:02:26 <ais523> but I think it's because it would have printed as 65534.9999999999999999999999999
21:02:28 <ais523> or something similar
21:02:38 <psygnisfive> ais523: i think also the way its designed, integer math is entirely feasible from primitives in the system. rather than building it in terms of stuff outside the system. :o
21:02:44 <AnMaster> ais523, oh? depends on setting precision?
21:02:47 <ais523> psygnisfive: that's true of most langs
21:02:49 <ais523> AnMaster: yes
21:03:05 <AnMaster> ais523, if proper rounding mode is set it wouldn't be an issue
21:03:08 <ais523> if you set "precision as displayed", the incorrect numbers actually went and affected other calculations
21:03:11 <psygnisfive> mm i suppose in some sense it is.
21:03:16 <ais523> the bug wasn't rounding mode, just the rounding algorithm
21:03:28 <AnMaster> ais523, ah
21:03:42 <ais523> Googling "850 77.1" gives lots of results, anywy
21:03:44 <ais523> *anyway
21:06:01 <ehird> I wonder how you do "x and return x" in perl.
21:08:42 <ais523> $x and return $x;
21:10:25 -!- oklopol has joined.
21:10:32 <ehird> $result = $_->{$key} and return $result; works
21:10:44 <ais523> why wouldn't it?
21:12:19 <ehird> ais523: can you put undef in a hash or is that just essentially deleting that element?
21:12:28 <ais523> you can put undef in a hash
21:12:30 <oklopol> hillo everyone!
21:12:32 <ais523> and it isn't deleting the element
21:12:37 <ehird> agh.
21:12:42 <ais523> you use exists to tell if undef's in a hash
21:12:49 <ais523> *anything's in a hash
21:12:50 <ehird> i'm _implementing_ exists.
21:12:52 <ais523> and defined to see if it's undef
21:13:11 <ais523> you can use delete to get rid of an element altogether, rather than just undeffing it out
21:13:47 <oerjan> oklopol: how dare you call me a jam!
21:14:03 <AnMaster> oerjan, ?
21:14:07 <AnMaster> that made no sense
21:14:24 <oklopol> it made frighteningly lot of sense.
21:14:31 * oerjan cackles evilly
21:14:47 <oerjan> gitf
21:15:12 <oerjan> er wait
21:15:16 <oerjan> giyf
21:15:22 <ehird> hmm.
21:15:27 <ehird> i have to implement firstkey/nextkey.
21:15:28 <ehird> Kill me.
21:15:41 <ehird> I wonder if
21:15:47 <oklopol> "goo in the face"
21:15:48 <oerjan> i cannot, someone took my saucepan
21:15:53 <ehird> each %{ $self->{data}, @$self->{delegates} }
21:15:54 <ehird> would work
21:16:03 <oerjan> oh wait
21:16:27 <oerjan> //=== *boom*
21:17:27 <ehird> AnMaster: the object system is growing to >100 lines :P
21:18:20 <oerjan> rule #1 of short programs: never add features
21:18:27 <ehird> it's not really a feature
21:18:29 <ehird> it's just making it actually work
21:18:54 <AnMaster> oerjan, when?
21:19:03 <AnMaster> also is saucepan == fryingpan?
21:19:05 <AnMaster> in English
21:19:09 <oerjan> no
21:19:10 <ais523> AnMaster: no, not quite
21:19:14 <AnMaster> ais523, oh?
21:19:16 <ais523> frying pans are flatter and wider
21:19:27 <AnMaster> ais523, right
21:19:28 <ais523> and generally used to fry things
21:19:34 <ais523> saucepans are more commonly used for boiling
21:19:40 <AnMaster> ais523, kettle?
21:19:48 <ais523> kettles are used for boiling water
21:19:52 <AnMaster> right
21:19:54 <ais523> and are much more enclosed
21:20:00 <ais523> saucepans are used for boiling vegetables
21:20:08 <ehird> i was imagining AnMaster putting stuff to boil in a kettle there XD
21:20:10 <ais523> and cooking baked beans
21:20:14 <AnMaster> ais523, pot?
21:20:19 <ais523> pot's more general
21:20:30 <AnMaster> is sausepan a type of pot?
21:20:31 <ais523> a saucepan's a type of pot, but there are others
21:20:33 <oklopol> yeah pot's great
21:20:34 <ais523> like flowerpots
21:20:42 <AnMaster> hm
21:20:47 <ehird> Type of arg 1 to keys must be hash (not private variable) at unl2c.pl line 55, near "$flattened;"
21:20:48 <ehird> what fuck my life
21:20:55 <ehird> it isssssssssss
21:20:58 <ais523> ehird: that makes sense
21:20:59 <ehird> it's just the result of a function callllllllllllll
21:21:04 <ais523> you maybe want to dereference it first
21:21:05 <ehird> my $flattened = $self->_flatten;
21:21:05 <ehird> keys $flattened;
21:21:06 <ehird> each $flattened;
21:21:07 <ais523> functions can't return hashes
21:21:09 <ehird> sub __DELEGATE::_flatten {
21:21:10 <ehird> my $self = shift;
21:21:12 <ehird> %{ $self->{data}, @$self->{delegations} };
21:21:14 <ehird> }
21:21:19 <ais523> yep, you're returning an array there
21:21:22 <ais523> functions can't return hashes
21:21:23 <ehird> umm
21:21:24 <ehird> hashes are arrays.
21:21:30 <ehird> did you mean hashref?
21:21:38 <ais523> hashes != arrays
21:21:43 <ais523> you can't run keys on an array
21:21:45 <ehird> ohhhhhhhhh, the problem is "my $flattened"
21:22:01 <ais523> and yes, you're assigning your array to a scalar there
21:22:04 <ais523> so you only get its length
21:22:14 <ehird> my %flattened = $self->_flatten;
21:22:16 <ehird> will do it
21:22:18 <AnMaster> Cookware and bakeware
21:22:18 <AnMaster> From Wikipedia, the free encyclopedia
21:22:18 <AnMaster> (Redirected from Saucepan)
21:22:19 <AnMaster> gah
21:22:25 <AnMaster> can't find interwiki link that way
21:22:30 <AnMaster> kastrull?
21:22:44 <ehird> Type of arg 1 to each must be hash (not subroutine entry) at unl2c.pl line 61, near "->flatten;"
21:22:46 <ehird> ok now _that's_ bizarre
21:23:02 <ais523> no, it isn't
21:23:09 <ais523> it's telling you exactly what I was saying
21:23:15 <ais523> which is that functions can't return hashes
21:23:18 <ehird> well, okay :P
21:23:20 <ais523> you can return a hashref if you want
21:23:47 <ehird> Bareword "__PROXY" not allowed while "strict subs" in use at unl2c.pl line 75.
21:23:48 <ehird> ;_;
21:24:02 <AnMaster> Bareword?
21:24:03 <ais523> ehird: ah, you're interacting with use strict;
21:24:07 <ais523> try putting it in quotes
21:24:08 * ehird defines __PROXY stuff _before_ doing the bless
21:24:12 <ehird> ais523: ah, ok
21:24:18 <ais523> AnMaster: a bareword's a string with no meaning
21:24:20 <ais523> like foo
21:24:24 <AnMaster> ah
21:24:32 <ehird> Can't use global @_ in "my" at unl2c.pl line 85, near "= @_"
21:24:36 <ais523> Perl interprets it as "foo", or &foo(), depending on context
21:24:38 <ehird> fuck you Perl, thatmakes perfect sense
21:24:43 <ehird> its complaininga bout
21:24:44 <ehird> my ($self, %more) = @_;
21:24:51 <ais523> ehird: you aren't inside a function
21:24:53 <ehird> which worked fine before I turned on STUPID PEDANTIC MODE.
21:24:55 <ehird> ais523: wrong
21:24:58 <ehird> do => sub {
21:24:58 <ehird> my ($self, %more) = @_;
21:25:11 <ais523> hmm....
21:25:28 <ais523> well, that's a my
21:25:34 <ais523> and that is presumably a global @_
21:25:45 <ais523> so all that remains is to wonder wtf that's an error
21:25:55 <AnMaster> ais523, can't you read a global in a function?
21:26:01 <ais523> AnMaster: you can, normally
21:26:06 <ais523> so I'm wondering what's happening here
21:26:20 <oerjan> AnMaster: in fact = @_ is the perl idiom for finding a function's arguments
21:26:21 <ehird> bet its to do with the %more
21:26:22 <AnMaster> it's confused by ehird
21:26:27 <AnMaster> oerjan, indeed
21:26:31 <ais523> ehird: no, because that's inside the my
21:26:38 <ehird> true/
21:26:38 <AnMaster> oerjan, I know *THAT* much perl
21:26:46 <ais523> out of interest, what does my $self = shift; my %more = @_; do?
21:26:57 <ais523> that should mean the same thing
21:27:01 <ais523> almost
21:27:07 <AnMaster> ais523, almost?
21:27:17 <ehird> ahhh, i found the issue
21:27:19 <ais523> AnMaster: it leaves a different value in @_
21:27:22 <ais523> but normally you aren't reading it again
21:27:23 <AnMaster> ais523, ah
21:27:26 <ais523> ehird: what was it?
21:27:28 <ehird> delegate => sub {
21:27:28 <ehird>
21:27:30 <ehird> }
21:27:32 <ehird> do => sub {
21:27:34 <ehird> my ($self, %more) = @_;
21:27:36 <ais523> missing comma
21:27:36 <ehird> can you spot the error?
21:27:39 <ais523> so you weren't inside a sub
21:27:42 <ehird> the 'do' was tripping it up and all went to hell :D
21:27:45 <AnMaster> <ais523> missing comma
21:27:46 <AnMaster> <ehird> can you spot the error?
21:27:47 <AnMaster> hehe
21:27:56 <ehird> said it first on my end :P
21:27:57 <AnMaster> (yes I know lag)
21:28:03 <AnMaster> ehird, well it looked funny here
21:28:04 <ais523> ehird: said it before I received your message
21:28:10 <ehird> heh, ok :)
21:28:13 <ais523> no way can I type that fast
21:28:21 <AnMaster> ais523, of course, or it couldn't had arrived first to me
21:28:31 <AnMaster> due to spanning tree
21:28:34 <ais523> and it would have been a pretty fast sopt even then
21:28:42 <AnMaster> you can't get out of order then
21:28:45 <AnMaster> in that way
21:31:46 <ehird> "Joel on Software. The site is read by thousands of programmers a month -- the ones who are so good at programming they have spare time at work to read the self-absorbed drivel I publish there."
21:31:52 <ehird> Gee, Joel is finally coming to a realization.
21:31:57 <ais523> is that what it actually says?
21:32:04 <ehird> yep
21:32:07 <ehird> http://www.inc.com/magazine/20090101/how-hard-could-it-be-thanks-or-no-thanks_Printer_Friendly.html?partner=fogcreek
21:32:11 <ehird> the rest of the article is, of course, drivel
21:34:30 <ehird> this thing is awful
21:34:36 <ehird> I'm basically implementing an object system as a tied hash
21:34:39 <ehird> then blessing it for nicer syntax
21:36:14 <oerjan> clearly cthulhu is the god involved here
21:38:11 <ehird> Can't coerce array into hash at unl2c.pl line 66.
21:38:12 <ehird> ;_____________________;
21:39:42 <oerjan> maybe the array is not of the right format?
21:40:05 <ais523> nah, you can coerce even an array of the wrong format into a hash, normally
21:40:10 <ais523> although it gives warnings
21:40:42 <ehird> print $self->{delegates},"\n";
21:40:42 <ehird> foreach (@$self->{delegates}) {
21:40:43 <ehird> ->
21:40:46 <ehird> ARRAY(0x181c8b4)
21:40:48 <ehird> Not an ARRAY reference at unl2c.pl line 15.
21:40:49 <ehird> FAIL
21:40:51 <ehird> :(
21:41:03 <ais523> @{$self->{delegates}}
21:41:07 <ais523> you fail at operator precedence
21:41:18 <ehird> hmm. No, I think Perl does in that case
21:41:28 <ais523> ehird: what should $$self->{delegates} do?
21:41:39 <ehird> um. shoot the programmer?
21:41:40 <ais523> now, claim with a straight face that @ and $ should have different precedences
21:42:05 <AnMaster> ais523, what is $$?
21:42:22 <ais523> AnMaster: $ means lots of things
21:42:28 <ais523> but all to do with scalars
21:42:33 <AnMaster> and $$?
21:42:38 <ehird> Using a hash as a reference is deprecated at unl2c.pl line 94.
21:42:40 <ais523> AnMaster: that's two separate $s
21:42:42 <ehird> so what am I meant to do, retardoperl
21:42:46 <ehird> ${%Object_proto}?
21:42:47 <ehird> puh-leez
21:42:49 <ais523> ehird: what are you trying to do?
21:42:50 <ais523> that makes no sense
21:42:57 <ais523> you can't dereference a hash, it isn't a pointer
21:43:01 <ehird> ais523: it's kind of complicated and it involves tied hashes.
21:43:02 <ais523> that's like trying to dereference an int
21:43:02 <ehird> and FWIW, it works.
21:43:10 <ehird> %Object_proto->{delegations} _actually works_
21:43:14 <ehird> i'm not kidding
21:43:18 <AnMaster> ais523, hm I just had an idea: a lisp language with list as the ONLY datatype, no integers no #t or #f, no strings
21:43:26 <AnMaster> no floats
21:43:31 <ehird> you need atoms.
21:43:39 <AnMaster> ehird, hm why?
21:43:41 <ehird> i guess you could hack them with a bunch of nils.
21:43:47 <AnMaster> yes :D
21:43:54 <ehird> AnMaster: there's no list in lisp
21:43:58 <ehird> there's cons cells and nil
21:44:03 <ehird> so, you have two datatypes, right off the bat
21:44:07 <AnMaster> ehird, right true, so cons and nil
21:44:11 <AnMaster> or no
21:44:21 <ehird> ais523: so how can I do %Object_proto->{data} without perl whining
21:44:23 <AnMaster> just cons, and instead of nil you have another node
21:44:25 <AnMaster> like the first one
21:44:38 <AnMaster> ehird, what do you think about that?
21:44:41 <ais523> ehird: it's whining because that is deliberately deprecated
21:44:46 <ais523> what, exactly, are you trying to do?
21:44:54 <ehird> ais523: i've told you
21:44:57 <ehird> it's a tied hash
21:45:02 <ehird> I'm trying to access its internal object data.
21:45:12 <ais523> put the internal data as a key in the hash
21:45:13 <ehird> there _has_ to be a way without getting a warning
21:45:15 <ehird> i'm sure of it
21:45:16 <ehird> ais523: FAIL
21:45:19 <ehird> that's not the reccomended way
21:45:23 <ehird> and it's not how perl's code examples do it
21:45:28 <ais523> well, you have to store it somewhere
21:45:29 <ehird> and it's also brittle if that key ever comes up in user code
21:45:30 <ais523> where are you storing it?
21:45:31 <oerjan> AnMaster: well then you need pointer equality to be able to distinguish anything
21:45:34 <ehird> ais523: yes, inside the hash's object
21:45:36 <ehird> that's how tied hashes work
21:45:51 <ais523> "the hash's object"
21:45:53 <ais523> that is the hash
21:45:53 <AnMaster> oerjan, a built in form?
21:45:56 <ehird> ais523: nope.
21:46:02 <ehird> read perldoc perltie, plz
21:46:07 <AnMaster> oerjan, ok I guess cons and nil then
21:46:10 <ais523> or wait... is it tied to an object that is also a hash?
21:46:40 <oerjan> AnMaster: _everything_ would be x = (x . x) in structure otherwise
21:46:43 <ehird> ais523: sortof
21:46:53 <AnMaster> oerjan, true
21:48:32 <ais523> ehird: googling implies that $Object_proto->{data} is equivalent
21:48:36 <ehird> ah, OK
21:48:36 <ais523> although I'm not sure if I believe it
21:48:39 <ehird> thanks
21:48:45 <ais523> and that the fact the original was working is a bug in the parser
21:49:07 <ais523> does that do the same thing?
21:49:11 <ehird> gonna try in a sec
21:49:19 <ehird> @foo[1..-1] is the list resulting the same except without the first element?
21:49:22 <ehird> or is -1 wrong
21:49:37 <ais523> I think -1 is the last element
21:49:41 <ais523> IIRC, 1.. works
21:49:46 <ehird> ah OK
21:49:48 <ais523> but I haven't tried, I might have confused it with Haskell
21:49:49 <ehird> Global symbol "$Object_proto" requires explicit package name at unl2c.pl line 94.
21:50:00 <ehird> i'll just ask #perl and be shunned
21:50:02 <ais523> ehird: so the Googling was wrong, I thought it looked fishy
21:50:15 <ehird> 21:50 <ehird> so... don't ask... but how can I use a hash as a reference in a way that doesn't cause perl to spew a warning at me?
21:50:29 <ehird> i predict an answer involving "no warnings;"
21:50:33 <ehird> or "no strict;" or w/e
21:50:45 <ehird> 21:50 <mauke> ehird: no.
21:50:46 <ehird> 21:50 <ehird> mauke: but-but-but-
21:50:52 <ais523> ah
21:50:56 <ais523> $Object_proto{data}
21:50:58 <ehird> 21:50 <bloo> ehird: ....If it's spitting a warning out at you, you're doing it wrong
21:50:58 <ehird> 21:51 <ehird> bloo: probably. how do I do it right?
21:51:02 <ehird> ais523: no, that's wrong too
21:51:08 <ais523> or does that mean something else?
21:51:10 <ehird> that's a regular hash object
21:51:13 <ais523> they're equivalent on untied hashes, it seems
21:51:15 <ehird> 21:51 <bloo> perldoc perlreftut
21:51:15 <ehird> 21:51 <bloo> I think.
21:51:23 <ehird> April fools day idea: #perl stops being a haven for condescending idiots.
21:51:30 <ehird> Hahahahaha!
21:51:59 <ais523> perl -Mwarnings -Mstrict -e'my %a = ( a => 1); print %a->{a},"\n"' prints 1, for instance
21:52:02 <ehird> hrm, $Object_proto{data} works, which is a bug
21:52:13 <ais523> ehird: not a bug at all
21:52:18 <ehird> it's a bug in my code
21:52:19 <ehird> is what I mean
21:52:20 <ais523> you're storing data inside the hash itself
21:52:23 <ehird> yes, I know
21:52:25 <ais523> I knew you would be, there was nowhere else
21:52:40 <ehird> I just have to figure out how to get the hash to give me access to a secret area of vip quality.
21:53:04 <ehird> 21:52 <bloo> ehird: Don't feel bad, some times I do shit in perl that shouldn't work but does
21:54:36 <ehird> Also,
21:54:37 <ehird> elsif (defined $obj->{_unknown}) {
21:54:38 <ehird> @_ = (@_[0], $name, @_[1..]);
21:54:40 <ehird> goto &$obj->{_unknown};
21:54:42 <ehird> }
21:54:56 <ehird> I don't think any of this code should work, but it does.
21:55:16 <ais523> why shouldn't that work?
21:55:28 <ais523> splice on @_ would be more idiomatic than that, though
21:55:29 <AnMaster> what does it do
21:55:37 <AnMaster> ehird, show them your whole file
21:55:38 <AnMaster> :D
21:55:40 <AnMaster> in #perl
21:55:41 <ais523> although I can never remember which arg to splice does what
21:56:02 <AnMaster> ehird, also what about using the C API to do it in some strange way?
21:56:13 <ehird> AnMaster: no, and no
21:56:23 <AnMaster> why no at the second :(
21:56:40 <AnMaster> want pure perl?
21:56:45 <AnMaster> if yes it's okay
21:56:51 <AnMaster> ehird, then why no at the first?
21:57:03 <ehird> because it isn't _that_ crazy, just a bit fucked
21:57:17 <AnMaster> ehird, um?
21:57:29 <AnMaster> I thought you said a lot was _THAT_ crazy even
21:57:36 <oerjan> "I'm not mad, I'm a scientist!"
21:57:45 <AnMaster> oerjan, hah
21:57:56 <AnMaster> oerjan, sounds like mezzacotta?
21:58:16 <ais523> I don't think the mezzacottan scientist ever said exactly that, but I might be wrong
21:58:34 <AnMaster> ais523, very possible
21:58:44 <AnMaster> ais523, also have you checked the whole history XD
21:58:44 <oerjan> he got pretty close
21:58:51 <ais523> after all, I have quite a lot of mezzacotta backlog to catch up on
21:59:00 <ais523> meh, you made that joke first
21:59:09 <AnMaster> ais523, yes
21:59:44 <AnMaster> hrrm why does the mezzacotta comic have scrollbars some days
21:59:46 <AnMaster> that's strange
21:59:53 <oklopol> statistically speaking, nothing has been said yet, the combinatorial explosion is visible in natural language as well.
22:00:00 <AnMaster> zooming in and then out removes it
22:00:29 <oerjan> it's SVG
22:00:36 <AnMaster> oerjan, yes and?
22:00:38 <AnMaster> I use firefox
22:00:42 <psygnisfive> oklopol
22:00:43 <psygnisfive> what?
22:00:44 <psygnisfive> lol
22:00:46 <AnMaster> so why shouldn't it display just fine inline
22:00:55 <oerjan> did you mention this earlier? if not i think someone else did
22:01:16 <AnMaster> oerjan, um?
22:01:26 <oklopol> psygnisfive: what what?
22:01:32 <oerjan> i have a sense someone mentioned scrollbars before
22:02:02 <oerjan> anyway i don't see it, so it's something about how firefox displays them i guess
22:02:07 <psygnisfive> what did you mean "statistically speaking, nothing has been said yet, ..."?
22:02:20 <AnMaster> oerjan, they only happens sometimes
22:02:28 <AnMaster> oerjan, what browser do you use?
22:02:33 <oerjan> IE7
22:02:34 <oklopol> psygnisfive: well what percentage would you estimate has been said of all 10 word sentences for instance?
22:02:38 <AnMaster> oerjan, poor you
22:02:43 <oklopol> i'll venture 0%, maybe negative.
22:03:06 <AnMaster> oklopol, I think close to 0%
22:03:21 <AnMaster> but positive
22:03:29 <oerjan> oklopol: in fact the word ligwotnigafebrble has probably been mentioned only once
22:03:49 <AnMaster> um
22:03:55 <oklopol> oerjan: that too, but i find that a less interesting observation.
22:04:21 <AnMaster> if you can make up any word of any length then the number of possible 10 word sentences is infinite
22:04:27 <AnMaster> and that means some number / inf
22:04:34 <AnMaster> I have no clue what that ends up as
22:04:37 <AnMaster> maybe oerjan know?
22:04:41 <oerjan> 0
22:04:41 -!- kar8nga has left (?).
22:04:44 <AnMaster> oerjan, ah
22:04:58 <oklopol> basic probability
22:05:00 <AnMaster> oerjan, what sort if infinite is all possible words in all possible languages?
22:05:01 <oklopol> oh oerjan, btw
22:05:16 <AnMaster> oerjan, aleph-0?
22:05:23 <oerjan> well the character set would be an issue
22:05:25 <oklopol> was reading the algo book, which for some reason introduces probabilities and shit in the last chapter
22:05:37 <oklopol> your measure theory explanation was pretty useful there
22:05:40 <AnMaster> oerjan, in "all possible" I said
22:05:59 <oerjan> if there are more than countably many possible characters, you get more than that
22:06:03 <oklopol> talked about measuring probabilities in continuous sample spaces
22:06:12 <AnMaster> oerjan, is there?
22:06:31 <oerjan> i'm not sure the question even has meaning
22:06:47 <oklopol> just warning you i'll probably want another wikipedia lecture at some point! :P
22:07:36 <oerjan> you need some mathematical representation of "all possible languages" to even begin to answer it, but "all possible" might force you outside that...
22:07:51 <oerjan> so a paradox
22:08:05 <oklopol> hah, owned by math
22:08:11 <oklopol> kicked your ass
22:09:47 <oerjan> well semantics more than math, perhaps
22:10:56 <AnMaster> oerjan, Why?
22:10:56 <AnMaster> or: Why not?
22:10:56 <AnMaster> choose yourself.
22:11:23 <AnMaster> I'm happy with that
22:11:24 <oerjan> now if we assume something more limited, such as something representable as a subset of the plane, you can limit it
22:11:31 <AnMaster> but then remains a single question:
22:12:02 <oerjan> (beth-2 or less, i think)
22:12:04 <AnMaster> Why? (no not why anything specific, but just a plain "why")
22:12:31 <AnMaster> oerjan, "beth-2"?
22:12:44 <oerjan> 2^(2^aleph_0)
22:12:47 <AnMaster> ah
22:14:13 <oerjan> with pictures satisfying any kind of niceness requirement, that will probably drop to beth-1
22:14:49 <psygnisfive> oklopol!
22:14:53 <oerjan> (closed sets, say)
22:14:56 <psygnisfive> with regard to your percentages
22:15:22 <AnMaster> oerjan, that is 2^aleph_0?
22:15:24 <psygnisfive> hold the newsreaders nose squarely, water, or friendly milk with countermand my trousers
22:15:29 <oerjan> that's beth-1
22:15:47 <oerjan> beth-(n+1) = 2^(beth-n)
22:15:47 <psygnisfive> waiter**
22:15:51 <AnMaster> well, I asked if 2^aleph_0 == beth-1 or not?
22:16:01 <AnMaster> so yes
22:16:20 <oerjan> oh
22:16:28 <oerjan> my eyes read that as what
22:16:52 <oerjan> *"that" as "what"
22:17:38 <oklopol> ooooooooooooooooooooooooooooooooo
22:17:57 <oklopol> psygnisfive: what's countermand?
22:18:12 <oklopol> oh
22:18:13 <psygnisfive> http://en.wiktionary.org/wiki/countermand
22:18:21 <oklopol> it's a real world word i didn't know.
22:18:26 <oklopol> well this is embarrassing.
22:18:32 <psygnisfive> :P
22:18:41 <ais523> well, it doesn't make any sense in psygnisfive's sentence
22:18:41 <oklopol> i did somewhat reverse-engineer it though
22:18:43 <ais523> despite being a real word
22:19:04 <ais523> for that matter, the rest of the sentence makes no sense either
22:19:18 <psygnisfive> ais523, you clearly have never seen this: http://www.youtube.com/watch?v=hHQ2756cyD8
22:19:22 <oerjan> and yet, he insisted on correcting water
22:19:28 <ais523> correct, I can't access Youtube
22:19:46 <psygnisfive> shame shame
22:19:52 <psygnisfive> its a hilarious little video
22:20:13 -!- BeholdMyGlory has quit ("Konversation terminated!").
22:20:46 <AnMaster> ais523, why not?
22:21:09 <ais523> AnMaster: no Flash
22:21:12 <ais523> nor do I want to install it
22:21:24 <AnMaster> ais523, mplayer?
22:21:30 <AnMaster> then use youtube-dl
22:21:48 <AnMaster> ais523, also where is ick's darcs atm?
22:21:54 <ais523> AnMaster: on my hard drive
22:22:04 <ais523> ever since eso-std.org went down, I've had nowhere to host it
22:22:04 <AnMaster> ais523, want some hosting for it?
22:22:13 <ais523> could be useful
22:22:38 <AnMaster> ais523, gcc-bf would be too big with gcc source included however, but ick repo should be find
22:22:41 <AnMaster> fine*
22:22:43 <AnMaster> let me set it up
22:22:53 <psygnisfive> you know
22:22:54 <psygnisfive> in the future
22:23:18 <psygnisfive> some crazy esolanger is going to geneer a sexually transmitted disease
22:23:26 <oklopol> ais523: it makes perfect sense when you s/with/will/
22:23:28 <psygnisfive> and eso-std.org will have new meaning.
22:23:31 <psygnisfive> just letting you know.
22:24:01 <AnMaster> ais523, adduser want to know full name, I guess from a whois it is "(this is obviously not my real name)"?
22:24:09 <AnMaster> ;P
22:24:11 <oklopol> well it did originally too, but it didn't really parse
22:24:36 <oklopol> and don't any of you dare parse it now, i already failed once today.
22:25:05 <oerjan> too late
22:25:29 <ehird> yay, the damn kids are getting off my lawn.
22:25:31 <ehird> where by lawn I mean server.
22:25:46 <AnMaster> ais523, I need your public ssh key since password auth is turned off
22:25:50 <oerjan> got yourself thrown off?
22:26:11 -!- FireFly has quit ("'till morning").
22:26:12 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
22:26:15 <ehird> by the way psygnisfive
22:26:16 <AnMaster> sigh
22:26:18 <ehird> that video is muted
22:26:22 <ehird> due to copyright infringement :P
22:26:25 <ehird> it seems
22:26:32 -!- ais523 has joined.
22:26:35 <AnMaster> ais523,
22:26:39 <AnMaster> <AnMaster> ais523, I need your public ssh key since password auth is turned off
22:26:43 <ais523> yes, I received
22:26:49 <AnMaster> ais523, not the other way
22:26:51 <psygnisfive> ehird: what?! its never been in the past
22:26:52 <psygnisfive> >.<
22:26:57 <psygnisfive> well im sure you can find another version
22:27:07 <oklopol> wasn't muted
22:27:12 <ais523> but couldn't send for some reason
22:27:12 <ais523> it's in id_rsa.pub, isn't it?
22:27:20 <AnMaster> ais523, yes
22:27:23 <oerjan> January 2009: Youtube starts seriously getting rid of copyright infringements
22:27:23 <AnMaster> put it in /msg
22:27:45 <oerjan> February 2009: Youtube loses 90% of users
22:27:46 <oklopol> what it's only january still?
22:28:08 * oklopol is stunnered
22:28:18 <oklopol> oerjan: another story time? :D
22:28:21 <AnMaster> ais523, stop timing out all the time
22:28:25 <oerjan> oh dear no
22:28:33 <oklopol> :<
22:28:40 <ais523> AnMaster: received it yet?
22:28:45 <oerjan> also, this was a real world prediction
22:28:54 * ais523 wonders wtf's up with their connection
22:29:05 <ehird> fgf
22:29:10 <ais523> 16 seconds to ping myself
22:29:17 <ais523> apparently it took AnMaster 30 seconds to ping me
22:29:46 <oklopol> well i don't see any use for youtube except to see copyrighted shit. and most good shit is copyrighted
22:30:10 <ehird> 22:29 <ehird> how can I "temporarily untie" a var?
22:30:10 <ehird> 22:29 <ehird> without doing untie/tie
22:30:12 <ehird> 22:29 <mauke> the answer is "no"
22:30:16 <ehird> #perl thinks they're really clever.
22:30:22 -!- jix has quit ("...").
22:30:54 <oerjan> isn't that more of a prolog answer, really?
22:31:22 <psygnisfive> ehird what are you trying to do now??
22:31:32 <ehird> psygnisfive: i'm implementing an OOP system in perl. shush
22:31:37 <ais523> ehird: simple, you use a localised typeglob, like we worked out in /msg
22:31:39 <psygnisfive> ah x.x
22:31:41 <psygnisfive> perl.. x.x
22:31:43 <ehird> ais523: no.
22:31:45 <ehird> I tried that.
22:31:47 <ehird> it didn't work.
22:31:54 <ais523> why not?
22:32:09 <ais523> I thought you said it did
22:32:17 <ehird> http://www.apple.com/pr/library/2009/01/14advisory.html uhoh
22:32:53 <psygnisfive> UH OH
22:33:00 <psygnisfive> steve is dying :O
22:33:02 <oklopol> ooooooooooooo
22:33:04 <ehird> quite.
22:33:24 <psygnisfive> or hes having problems with a meth addiction
22:33:26 <ehird> lol, google muted the rick roll
22:33:31 <ehird> priceless
22:33:38 <ais523> ehird: for being copyrighted?
22:33:40 <ehird> http://uk.youtube.com/watch?v=oHg5SJYRHA0
22:33:40 <ehird> yep
22:33:45 <ais523> classic
22:33:54 <ehird> it was all an elaborate scheme leading to this
22:34:56 <ehird> ... wait apparently it isn't actually muted
22:35:01 <ehird> huh
22:35:09 <ehird> my Flash is playing up...
22:35:26 <psygnisfive> haha ehird :)
22:35:30 <oklopol> yeah right, you're just making up these muting stories so we'd get rickrolled by your link.
22:35:33 <ehird> no, seriously psygnisfive
22:35:37 <ehird> it's silent for me
22:35:38 <ehird> XD
22:35:42 <psygnisfive> by playing up do you mean you accidentally had it muted yourself? ;)
22:35:47 <ehird> no
22:35:51 <ehird> the volume is on full on it
22:35:53 <ehird> and this machine
22:35:58 <ehird> it just isn't making any sound
22:35:58 <psygnisfive> uh huh
22:36:04 <psygnisfive> SO YOU SAY SIR, SO YOU SAY.
22:36:09 <oklopol> ...what, astley has *other songs* too?!?
22:36:13 <ehird> i'm not lying okay psygnisfive
22:36:17 <psygnisfive> oklopol dont you have to go somewhere?
22:36:27 <psygnisfive> ehird: obviously not. you're lying poorly, ehird. POORLY!
22:36:31 <oklopol> psygnisfive: well sleep.
22:36:38 <psygnisfive> oh. well. sleep, feh.
22:36:40 <ehird> psygnisfive: STOP IT I HATE NOT BEING BELIEVED WHEN I'M NOT LYING >__<
22:36:41 <psygnisfive> just drink some coffee.
22:36:58 <psygnisfive> ehird: stop hating it and i'll stop not believing you.
22:37:02 <oklopol> but i actually won't.
22:37:18 <ehird> perl sux
22:37:22 <ehird> and i love it
22:37:23 <ehird> and it sux.
22:37:35 <psygnisfive> haha
22:37:35 <ehird> feel free to apply that to new exciting contexts.
22:38:12 <ehird> Four weeks after birthing a nationwide Wikipedia edit ban, Britain's child porn blacklist has led at least one ISP to muzzle the Internet Archive's Wayback Machine - an 85 billion page web history dating back to 1996.
22:38:15 <ehird> /facepalm
22:38:23 <ehird> WFM, thank god
22:38:34 <psygnisfive> what is this now?
22:38:36 <ehird> sooo guys where should I escape to from this hellhole?
22:38:38 <psygnisfive> wait
22:38:41 <ais523> ehird: Tor
22:38:44 <psygnisfive> brits arent allowed to edit wiki anymore?
22:38:46 <ais523> sourced from a different country
22:38:48 <ais523> psygnisfive: only for a bit
22:38:51 <psygnisfive> wtf?
22:38:52 <ais523> it wasn't an aren't allowed
22:38:54 <psygnisfive> thats insane
22:39:10 <ais523> basically, what happened was that lots of ISPs used proxies to implement the blacklist
22:39:15 <ais523> routing all the traffic from the UK through about 6 IPs
22:39:26 <ehird> ais523: "How can I escape from Oceania?" "Talk in pig latin!"
22:39:29 <psygnisfive> how would wikipedia and the wayback machine have anything to do with child porn?!
22:39:39 <psygnisfive> *pignewspeak
22:39:46 <ais523> which meant that there was no way to distinguish legitimate users from vandals
22:39:51 <ehird> psygnisfive: http://en.wikipedia.org/wiki/Virgin_Killer
22:39:51 <ais523> and the UK got blocked by mistake a lot
22:39:55 <ehird> which is the page that was blocked
22:39:57 <ehird> but, what ais523
22:39:57 <ais523> it happened to Qatar once
22:39:58 <ehird> said
22:40:01 <ehird> for the edit block
22:40:08 <psygnisfive> oubleday usplay ungooday
22:40:14 <ais523> Wikipedia doesn't cope well with entire countries having only a few IPs
22:40:38 <psygnisfive> oh i see, so what you mean ais is not that BRITAIN banned people from editting WIKI
22:40:49 <ehird> it's called wikipedia
22:40:51 <psygnisfive> but rather britain implemented measures that made it impossible for wiki to verify idents
22:41:02 <psygnisfive> which resulted in non-editting privs only
22:41:02 <ais523> yes, and all brits got banned by mistake every now and then
22:41:03 <ehird> so guys i'm thinking like, Norway?
22:41:09 <psygnisfive> yeah ok
22:41:12 <psygnisfive> interesting :o
22:41:15 <ehird> oerjan: how's it in Norway with yer civil liberties, and your fjords?
22:41:23 <ais523> not to mention the limit that only 6 users could register per IP per day made it rather hard for everyone to log in
22:41:37 <psygnisfive> FJORDS
22:41:49 <psygnisfive> you know
22:42:06 <psygnisfive> americans seem to have an enormously difficult time pronouncing things that look, at first, like they're foreign
22:42:13 <psygnisfive> consonant+j for instance
22:42:47 <psygnisfive> like.. tokyo. toh-key-oh
22:43:13 <psygnisfive> its not as tho english doesnt have the sequence "ky" /kj/ as it is
22:43:52 <psygnisfive> i once heard an american say "bjarnum" as "buh-jar-num" because she couldnt get the bj right
22:44:02 <psygnisfive> even tho english has the bj sequence!
22:44:05 <psygnisfive> *sigh*
22:44:06 <ehird> <psygnisfive> she couldnt get the bj right
22:44:12 <psygnisfive> well its true
22:44:18 <psygnisfive> you have to use your tongue
22:44:23 <psygnisfive> move it around just right you know
22:45:02 <psygnisfive> in circles around the head of the cock, you see.
22:46:48 -!- olsner has quit (Remote closed the connection).
22:47:23 <oerjan> ehird: the fjords are nice
22:47:34 <psygnisfive> fjords are cool
22:47:42 <psygnisfive> im not really sure what fjords ARE, but they're cool
22:48:39 <psygnisfive> ahh
22:48:51 <psygnisfive> a long narrow inlet with steep sides, created by glacial activity
22:48:51 <oerjan> norway does have a cp blacklist though afair
22:48:52 <psygnisfive> huh!
22:53:35 <ehird> hrm
22:53:47 <ehird> AHA
22:56:25 <ehird> grmmm
22:56:29 <ehird> ais523: kill me i hate perl
22:59:50 <psygnisfive> ehird why are you doing this in perl?
22:59:58 <ehird> because i want to, psygnisfive
23:00:15 <oerjan> clearly it would be far too easy in anything else
23:03:30 <ehird> Reference found where even-sized list expected at unl2c.pl line 61.
23:03:31 <ehird> SHUT UP
23:04:54 <oerjan> even so.
23:07:58 <psygnisfive> thats not really what i meant but ok :)
23:08:23 <ehird> psygnisfive:
23:08:23 <ehird> ?
23:08:28 <ehird> perl is fun
23:08:30 <ehird> it's eso.
23:08:36 <psygnisfive> perl isnt eso
23:08:38 <psygnisfive> its mainstream
23:08:41 <psygnisfive> and its ugly
23:08:49 <ehird> it's mainstream, but it's eso
23:08:51 <ehird> and it's not ugly
23:08:58 <psygnisfive> the only way in which it might be eso is in its ugliness
23:09:02 <psygnisfive> and uselessness
23:09:07 <ehird> the only thing I glean from your past two lines is that you're the typical ruby fanatic who's never used perl but dislikes it anyway
23:09:10 <ehird> hmm, wait a second, you are!
23:09:17 <psygnisfive> ive used perl, thanks.
23:09:23 <ehird> yeah. sure you have.
23:09:36 <psygnisfive> and im not really a ruby fanatic. its just convenient for me to dev in
23:09:46 <psygnisfive> im more of a scheme fanatic. :P
23:09:49 <ehird> ais523: can you pick up the argument from here I lost interest.
23:10:08 <ais523> no, it's too late, I need to go home very soon
23:10:17 <ehird> IT'S NEVER TOO LATE TO DEFEND PERL
23:10:52 <psygnisfive> ehird theres no argument
23:10:56 <psygnisfive> i just dont like perl
23:11:16 <ehird> so don't talk about my usage of it
23:11:32 <psygnisfive> i was merely wondering why you were doing this with perl
23:13:23 <ehird> hmm ais523
23:13:26 <ehird> is there a nicer way to phrase this
23:13:38 <ehird> @{[$foo, @{$bar}]}
23:13:43 <ehird> where $bar is an arrayref and $foo is a hash
23:13:51 <ehird> ($foo, $bar) makes it a hash
23:13:54 <ehird> err
23:13:55 <ehird> *@$bar
23:14:00 <ehird> I guess (@$bar, $foo) might work
23:14:04 <ehird> but that's the wrong way around :p
23:14:08 <ais523> ($foo, $bar) isn't intrinsically either a hash or an array, I think
23:14:43 <ehird> wait... I want a hash
23:14:44 <ehird> duh
23:14:45 <ehird> stupid me
23:15:15 <ehird> return %{$self->{data}}, map {%$_} @{$self->{delegations}};
23:15:18 <ehird> am I a bad person?
23:15:20 <ehird> yes.
23:18:57 <ehird> Returns a reference to the object underlying VARIABLE (the same value that was originally returned by the tie call that bound the variable to a package.) Returns the undefined value if VARIABLE isn't tied to a package.
23:18:59 <ehird> AHA!!
23:26:08 -!- ais523 has quit (Client Quit).
23:39:52 -!- amca has joined.
23:41:37 -!- amca has quit (Client Quit).
23:49:43 -!- Corun has left (?).
2009-01-15
00:04:05 <oklopol> oooooooooooooooooooooooooooooooo
00:10:42 <psygnisfive> hey
02:07:52 -!- MizardX has quit ("Blue squares floting about...").
02:10:11 -!- oerjan has quit ("leaving").
02:11:52 -!- MizardX has joined.
04:16:13 -!- CakeProphet has joined.
06:58:46 -!- Slereah has joined.
07:10:10 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
07:18:06 -!- FireFly has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:34 -!- FireFly has quit ("Later").
08:59:58 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
09:00:22 -!- lament has joined.
09:00:59 <AnMaster> ehird, how did the OO stuff work out?
09:01:31 -!- oklopol has quit (Read error: 110 (Connection timed out)).
10:18:27 -!- jix has joined.
10:25:35 -!- ais523 has joined.
12:14:18 -!- CakeProphet has quit ("lol").
12:17:35 -!- oerjan has joined.
13:17:11 <ais523> hi oerjan
13:17:28 <ais523> (if anyone claims I'm an hour late on that, I'll mumble something about time zones, or DST, or something.)
13:17:41 <oerjan> time dilation. works for me.
13:17:43 <oerjan> and hi
13:18:07 <ais523> grr... RL business is annoying
13:18:14 <ais523> especially when it involves VHDL
13:18:17 <ais523> even though I like VHDL
13:19:39 <oerjan> no, no, RL _business_ is annoying
13:19:53 <oerjan> accounting, cash flow problems, that sort of thing.
13:20:02 <ais523> hmm... I wonder if busyness is a real word?
13:20:09 <ais523> or if business is actually the way it's spelt
13:20:20 <ais523> but agreed, both meanings are pretty annoying
13:20:56 <oerjan> http://www.merriam-webster.com/dictionary/busyness has it
13:22:46 <oerjan> the entry on business claims it's archaic to use it to mean "busyness"
13:30:38 <fizzie> OED lists 'business': "I. State or quality of being busy. (Cf. the adj.) -- (These senses are all obs., but some of them occur as nonce-words with special spelling BUSYNESS, and trisyllabic pronunciation.)"
13:33:34 <ais523> \ul ((\ul )SaSaS(:^)S)((^ul )SaSaS(:^)S):^
13:33:52 <ais523> not that I expect that to run, gunfot isn't here
13:33:57 <ais523> but I still like looking at it
13:34:24 <AnMaster> hi ais523
13:34:31 <ais523> hi
13:49:55 -!- jix has quit ("Computer has gone to sleep").
13:52:47 -!- jix has joined.
14:00:48 -!- oerjan has quit ("leaving").
14:41:27 -!- Hiato has joined.
14:56:56 -!- Hiato has quit ("Leaving.").
15:08:16 <AnMaster> mysql_connect() Connects to a MySQL server (this function is deprecated; use mysql_real_connect() instead)
15:08:17 <AnMaster> heh
15:08:21 <AnMaster> interesting naming scheme
15:08:36 <AnMaster> what if they find out they need a third version of the call in the future?
15:09:05 <AnMaster> mysql_very_real_connect()? mysql_surreal_connect()?
15:09:11 <ais523> mysql_actually_connect_this_time
15:09:21 <AnMaster> heh
15:09:36 <ais523> what lang is that function in?
15:09:45 <AnMaster> ais523, The C API for mysql
15:09:56 <ais523> [CTCP] Received CTCP-PING reply from ehird: 1232032186 seconds.
15:09:58 <ais523> hi ehird
15:10:04 <ehird> hi ais523
15:10:07 <ais523> although something's up with that pingtime
15:10:09 <ehird> holy crap
15:10:12 <ehird> how did that happen
15:10:14 <ehird> did you ping me like hours ago?
15:10:18 <ehird> if so I was offline, and I guess my bouncer phailed at ponging
15:10:19 <ais523> no, that's more than hours
15:10:23 <ais523> that's years, or so
15:10:27 <ehird> ha
15:10:41 <ehird> probably my bouncer decided to play tricks with you
15:10:42 <ais523> I pinged you when offline, and got an away message
15:10:44 <AnMaster> ais523, oh btw postgres' API works better for this: PGconn *PQconnectdb(const char *conninfo); <-- conninfo is a key=value space separated options string
15:10:45 <ais523> AFAICT, when you came online your bouncer ponged me back, but with the wrong number
15:10:47 <ais523> somehow
15:10:48 -!- MigoMipo has joined.
15:10:57 <AnMaster> sqlite uses _v2 _v3 and so on
15:11:13 <ais523> AnMaster: key=value string isn't really very Cy
15:11:14 <ehird> anyway, my object system is >100 lines and it still doesn't work properly yet
15:11:17 <ais523> umm... C-ey
15:11:20 <ais523> or whatever
15:11:22 <ais523> C-like
15:11:29 <AnMaster> ais523, true, but easier to add new features too
15:11:30 <AnMaster> "MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsigned long client_flag)"
15:11:30 <ehird> basically, I have a tied hash that delegates to other objects, that you bless with a proxy object.
15:11:43 <ehird> <AnMaster> ais523, true, but easier to add new features too
15:11:50 <ehird> didn't berkley sockets teach you anything?
15:11:52 <ehird> structs
15:11:57 <AnMaster> ehird, yes I agree
15:12:16 <ehird> of course, berkeley sockets _is_ awful, but it is very C
15:12:44 <ehird> wow, I was tired while printf debugging yesterday
15:12:44 <ehird> print"yo, ... in da klub ;-)\n";
15:13:21 <ehird> btw, if you guys ever are coding perl
15:13:22 <ehird> and think
15:13:26 <ehird> "ooh, I could solve this with a tied hash nicely"
15:13:27 <ehird> just
15:13:28 <ehird> kill yourself
15:13:38 <ehird> it's way better than the alternative
15:14:37 -!- FireFly has joined.
15:14:41 <AnMaster> MySQL's C API make very little sense. Compared to PostgreSQL and SQLite APIs
15:14:53 <ehird> mysql makes little sense.
15:14:56 <ehird> sql makes little sense.
15:14:59 <ehird> the relational model makes little sense.
15:15:19 <AnMaster> ehird, agreed for the first. And well SQL does have problems, but I have yet to see something widespread that is better
15:15:33 <ehird> widespread is quite irrelevant.
15:15:40 <ehird> and SQL, amusingly, isn't even relational-model-sane.
15:15:46 <AnMaster> true it isn't
15:16:02 <ehird> http://en.wikipedia.org/wiki/Codd%27s_12_rules
15:16:12 <ehird> "that system must use its relational facilities (exclusively)"
15:16:14 <ehird> ding, mysql fails 1
15:16:22 <ehird> "All information in the database is to be represented in one and only one way, namely by values in column positions within rows of tables."
15:16:27 <ehird> ding, i'm almost certain mysql provides other ways
15:16:28 <ehird> 2
15:16:43 -!- KingOfKarlsruhe has joined.
15:16:57 <AnMaster> ehird, you mean like views?
15:16:58 <ehird> [[All views that are theoretically updatable must be updatable by the system. ]]
15:17:03 <ehird> I don't know if mysql does this
15:17:10 <ehird> sql probably does
15:17:15 <ehird> but, whatever
15:17:17 <ais523> nobody implements SQL
15:17:19 <ehird> sql isn't relational
15:17:21 <ehird> mysql less so
15:17:24 <ehird> ais523: no, these aren't SQL rules
15:17:27 <ehird> these are relational rules
15:17:27 <AnMaster> ehird, oh writable views, hm I know SQLite docs says it is one of the missing features in SQLite
15:17:30 <ehird> written by the guy who invented the model
15:17:40 <ehird> SQL fails a lot of thme
15:17:42 <ehird> MySQL fails even more
15:17:46 <AnMaster> indeed
15:17:49 <ehird> and the best part is that the relational model isn't even good
15:17:51 <ehird> they fail at failing,.
15:18:19 <AnMaster> what would be funny was if MySQL failed in a way that made it better than correct SQL. Sadly it doesn't do that
15:18:46 <AnMaster> oh the irony of missing irony
15:20:39 <AnMaster> <ehird> "All information in the database is to be represented in one and only one way, namely by values in column positions within rows of tables." <-- apart from views and stored procedures, the only way I could think of would be that the result can be fetched both by column position in the result and by column name
15:20:46 <AnMaster> in sql in general
15:20:56 <AnMaster> don't know if mysql provides other ways?
15:21:09 <AnMaster> s/?$//
15:29:17 -!- oklopol has joined.
15:31:00 -!- |MigoMipo| has joined.
15:31:29 -!- |MigoMipo| has quit (Client Quit).
15:34:46 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
15:46:56 -!- Slereah_ has joined.
15:59:21 <ehird> GRR
15:59:22 -!- Slereah has quit (Read error: 110 (Connection timed out)).
15:59:22 <ehird> A TARBOMB
15:59:30 * ehird considers writing a script that checks for tarbombs and contains them
15:59:37 <ais523> ehird: why didn't you untar it in a separate directory/
15:59:47 <ehird> because normally I assume people aren't bozo
15:59:48 <ehird> s
16:00:09 <ais523> ehird: that's often an unsafe assumption
16:00:16 <ehird> yes, but it keeps me sane
16:08:11 * ehird considers writing a lisp parser that mirrors the structure of the lisp it's parsing.
16:09:07 <ehird> LOL, someone complained that jquery's api docs don't work with noscript.
16:13:53 <jix> haha
16:14:19 <Slereah_> Tone down the nerd humor, I'm back
16:14:39 <ais523> ehird: why should the API docs require JavaScript to read?
16:14:43 <ais523> that's a valid complaint
16:14:53 <ais523> especially as I often load up API docs in w3m whilst programming
16:14:53 <ehird> ais523: it's a _javascript api_
16:15:03 <ehird> if you're programming something with javascript, you have javascript enabled to test it
16:15:10 <ais523> ehird: but that's in your test window
16:15:17 <ais523> it's not in your text editor window
16:15:22 <jix> the complaint is valid to a degree... but funny anyway
16:15:34 <ehird> ais523: it's a good thing the jquery api docs isn't text editor-integrated, then
16:16:09 <ais523> ehird: no, it isn't
16:16:19 <ehird> i meant for the example you gave.
16:16:19 <ais523> with most API docs, I can work around using a tabbed shell, or with Emacs
16:16:35 <ehird> also, I use a text editor to edit text, not look up apis,.
16:16:35 <ais523> I don't see why API docs should arbitrarily prevent themselves being loaded in a text editor
16:16:37 <ehird> or play tetris.
16:16:45 <ais523> ehird: well, I don't use my editor for Tetris
16:16:52 <ais523> but looking up APIs is a pretty sensible use for them
16:16:55 <ehird> someone does, because it's in the base distribution
16:16:58 <ais523> even Microsoft does that, with Intellisense
16:17:10 <ehird> "Microsoft does it" is not a way to convince me something is a good idea.
16:17:23 <ais523> I mean, pretty much every editor does nowadays
16:17:27 <ais523> even vi has syntax higlighting
16:17:37 <ais523> how is API lookup fundamentally different from syntax higlighting?
16:17:44 <ais523> it's one of the things needed when programming, unless you have a perfect memory
16:17:48 <ehird> vi does not have syntax highlighting, as far as I know.
16:17:49 <ehird> vim does.
16:17:53 <ais523> well, OK
16:18:00 <ehird> but vim is essentially emacs--
16:18:17 <ais523> but M-x man and M-x perldoc are commands I use all the time when programming
16:18:20 <ais523> depending on the language
16:18:21 <ehird> also, syntax highlighting is tied fundamentally to the editor
16:18:29 <ehird> API docs aren't
16:18:36 <ais523> ehird: they are very involved with the editor
16:18:44 <ais523> unless you like doing a lot of cut/paste/search, or retyping
16:18:59 <ais523> in the VHDL I'm editing atm, I type for and I get an entire generate-for statement template
16:19:03 <ais523> which in VHDL is not trivial to write by hand
16:19:06 <ehird> that's not an api document
16:19:08 <ehird> that's just snippets
16:19:11 <ais523> yes
16:19:15 <ais523> APIs are similar, though
16:19:17 <ehird> not really.
16:19:20 <ais523> you need to look up which argument's which
16:19:22 <ehird> i wonder why so many people apparently don't have a desktop environment
16:19:23 <ais523> if you can't remember
16:19:39 <ehird> which is, um, _designed_ for passing information between programs concurrently
16:19:57 <ais523> why pass the information when you can use it without passing?
16:20:05 <ais523> do you use the mouse for API lookups, by any chance?
16:20:26 <ehird> no, but I generally don't need API lookups
16:21:09 <ehird> also, I use the mouse for pinpointing both precise pieces on the screen that would be tedious to access with a keyboard, and large fuzzy areas which would also be tedious with a keyboard
16:21:17 <ehird> e.g., input field focusing, text selection, window selection
16:21:18 <ais523> with Mac OS X, I'm surprised that things like API lookups aren't integrated the same way as spell-checkers
16:21:28 <ehird> they probably are if you use xcode. I don't
16:21:48 <ais523> ehird: doesn't that make it silly for jquery's API to require JavaScript, then?
16:21:59 <ais523> what if I'm writing jquery-using code at home without Internet access?
16:22:07 <ehird> you download the api.
16:22:12 <ais523> does that require JS?
16:22:13 <ehird> docs
16:22:20 <ehird> ais523: it uses adobe air or some shit
16:22:25 <ehird> what I am saying is:
16:22:37 <ehird> it isn't bad for the _web version_ of a _javascript api's_ documentation to require javascript
16:22:45 <ais523> yes, it is
16:22:55 <ais523> it's bad for the web version of /anything/ to _require_ javascript if possible
16:23:00 <ais523> demonstrating JS, ok
16:23:09 <ais523> but other things should fallback gracefully, even if they're very JS-related
16:23:24 <ais523> would you think it bad for the web version of the Java API to require Java?
16:23:32 <ais523> (it doesn't, by the way)
16:23:39 <ehird> yes: java isn't inherently web based. jQuery is.
16:23:45 <flexo> in the real world javascript is available everywhere..
16:23:54 <ais523> ehird: I've written non-web-based computer games in JavaScript
16:24:01 <ehird> ais523: you wouldn't use jquery for it.
16:24:07 <ais523> which were entirely client side, and required copy and paste for saving
16:24:10 <ais523> and no, I wouldn't
16:24:17 <ais523> but that's just my personal preferences
16:24:17 <ehird> umm, entirely client side: so it used html?
16:24:20 <ais523> yep
16:24:27 <ehird> file:/// to an HTML counts as the web, imo.
16:24:41 <ais523> well, the lack of any CGI support influenced things somewhat
16:24:44 <ehird> flexo: yes, some people choose to castrate their browser because of their tin foil hats
16:24:47 <ais523> the web normally had that
16:24:54 <ais523> ehird: not just tin foil hats
16:25:06 <ais523> to avoid all sorts of annoying things that people normally use JS for is at least as valid a reason
16:25:23 <ehird> so stop going to those sites
16:25:32 <ehird> i don't know where this mass of annoying JS sites are, because I never come across them.
16:25:37 <flexo> same here
16:25:40 <ais523> ehird: do you use an ad-blocker?
16:25:47 <ehird> nope.
16:25:50 <ais523> pretty much any random non-tech news site will have annoying JS-based adverts
16:26:00 <ais523> apart from reputable ones
16:26:10 <flexo> how about using reputable ones then?
16:26:12 <ehird> most of the sites I go's ads are inconspicuous and ignorable. the ones that have annoying ones, I DON'T GO TO THOSE SITES!
16:26:22 <ehird> why would I go to a site that evidently has no respect for me at all?
16:26:24 <FireFly> The reputable ones has flash based ads instead
16:26:26 <ehird> i wouldn't.
16:26:34 <ais523> ehird: well, they may still have useful content, I just show no respect for them either
16:26:45 <ais523> printable versions, adblock, etc are fair game against them
16:27:02 <ehird> i can get the useful content somewhere that doesn't enjoy pounding me with a giant mass of ads
16:28:18 <ais523> can you always?
16:28:28 <ais523> the BancSTAR page has annoying JS ads, for instance
16:28:31 <ais523> and I don't know of any copies of it
16:28:52 <ehird> http://www.geocities.com/ResearchTriangle/Station/2266/tarpit/bancstar.html
16:28:53 <ehird> I see no ads.
16:29:07 <ais523> ehird: top-right
16:29:14 <ais523> your brain must have just got good at filtering them out
16:29:16 <ehird> Nope.
16:29:19 <ehird> You're hallucinating.
16:29:19 <ais523> either that, or your browser
16:29:28 <ais523> I can even send you a screenshot if you like
16:29:32 * ehird looks at html source.
16:29:43 <ehird> Okay, the ad uses <layer>.
16:29:49 <ehird> I guess it's so old Safari can't run it.
16:29:52 <ehird> That's fine by me.
16:30:20 * ais523 opens in Konqueror out of interest
16:30:35 <ais523> yep, no ad in Konq
16:30:48 <ais523> so it's a WebKit vs. Gecko/Trident thing
16:30:59 <ehird> Incidentally, I used to use an ad blocker. But the web looks nicer without it: tasteful ads are placed into page layouts in a way that makes it look like an odd unbalance if you block them.
16:31:00 <ais523> (I'm almost convinced the ad shows in IE, or they'd never have put it there)
16:33:13 <ehird> Is it just the regular geocities ad?
16:33:22 <ehird> If so, yeah, that's annoying. But it has a close button at the top,
16:34:48 <ehird> No pasting, not even "only one line" -- #perl topic
16:34:53 <ehird> what, you can't put single lines in #per
16:34:54 <ehird> l
16:35:14 <ehird> hmph, they even got rid of gumbyBRAIN. I liked that bot.
16:35:17 <ehird> #perl sux
16:37:36 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
16:39:33 <Ilari> And enabling Javascript is a security risk. Especially if you browse nonreputable sites or sites containing certain (very common) kinds of external ads...
16:40:22 -!- ais523 has joined.
16:40:44 <Ilari> Plus some sites do quite nasty-looking stuff with javascript.
16:41:02 <ehird> Ilari: 1) Don't go to those sites. 2) Really, like what?
16:41:26 <ehird> The only vaguely scary thing I have seen done with JS is aza raskin's socialhistory.js, and that's just a _bug_, really... plus it isn't even really practical
16:41:51 <ais523> ehird: unclosable websites?
16:42:11 <ehird> geez, do people here just browse serial key sites all day?
16:42:13 <ehird> that's really what it sounds like
16:42:39 <ais523> ehird: I'm thinking more malicious links
16:42:52 <ehird> lik
16:42:53 <ehird> e
16:44:22 -!- jix has quit (Read error: 104 (Connection reset by peer)).
16:44:36 <Ilari> And "Don't go to those sites" extends to sites like Youtube (selective javascript blocking capabilities of Noscript come handy there)?
16:44:46 <ais523> I don't go to Youtube at all
16:44:54 <ais523> I don't have Flash installed, for one
16:44:56 <ehird> Ilari: umm, what annoying things does youtube do with js?
16:45:29 <ais523> ehird: play videos
16:45:50 <ehird> ais523: we know you dislike youtube.
16:45:52 <ehird> I was asking Ilari.
16:46:07 <Ilari> ehird: Youtube was given as example where Javascript does bad things to security (even if you trust Youtube). Some other sites do annoying things with js.
16:46:18 <ehird> "bad things to security"?
16:46:24 <ehird> This vagueness is not very interesting
16:46:49 <ais523> ehird: pretty much any browser is less secure with Flash enabled than without
16:46:59 <ais523> cross-platform critical vulnerabilities pop up every now and then
16:47:05 <ais523> I'm not sure how this relates to JS, though
16:47:06 <ehird> Thannnk you. Go away. I'm talking about JavaScript. Stop talking about how much youtube sucks...
16:47:21 <Ilari> ais523: I don't have flash installed either... :-)
16:47:45 <ais523> tbh, I don't even miss YouTube
16:47:55 <ais523> I have a TV at home, but rarely use it
16:48:21 <ehird> Area Man Constantly Mentioning He Doesn't Have Flash Installed
16:48:30 -!- jix has joined.
16:49:04 <Ilari> s/Javascript does bad things to security/where having Javascript unconditionally enabled degrades security/
16:49:19 <ehird> Yes, I recall asking for examples...
16:49:23 <ehird> I also recall not getting them
16:49:45 <ais523> ehird: Clickjacking?
16:50:02 <ehird> Elaborate
16:50:11 <ais523> ehird: basically it consists of using JS and iframes
16:50:16 <jix> some website that does not use javascript has a bug that allows anyone to insert malicious content ... for example a javascript that makes you do something on that site (submit form whatever) that does harm to you in some way
16:50:34 <ais523> jix: no, not that, that's something else
16:50:40 <ehird> that's xss.
16:50:45 <ais523> although I agree that can be a problem, JS security normally avoids that nowadays
16:50:49 <ehird> xss is the fault of incompetent server-side developers
16:50:56 <ehird> who don't check for the origin of such requests
16:51:02 <ais523> ehird: you have to admit that XSS is blocked completely by turning off JS, though
16:51:12 <ehird> ...
16:51:21 <ehird> ais523: you can't get viruses if you turn off your computer!
16:51:24 <ais523> and yes, XSS is caused by incompetent website designers; but likewise, browser security holes are caused by incompetent browser designers
16:51:31 <ais523> you have to strike a balance somewhere
16:52:16 <ais523> hmm... irrelevant to the current argument, but http://www.kb.cert.org/vuls/id/836068 looks interesting
16:52:25 <ehird> old.
16:52:33 <ehird> Nobody competent has used md5 for years, anyway.
16:52:34 <Ilari> Combine external Javascript and nasty stuff JS can do (and I'm not talking about trying-to-run-malware-nasty), and it can get real nasty.
16:52:34 <ais523> well, that's within the last 3 weeks
16:52:50 <ais523> md5 has been known imperfect for a while, but that's the first practical exploitation of it I've seen
16:52:52 <ehird> your hypotheticals are amusing. are you unable to provide examples?
16:53:01 <ais523> ehird: well, I was going to explain clickjacking
16:53:24 <ais523> http://en.wikipedia.org/wiki/Clickjacking does it better than I could, though, probably
16:53:50 <ehird> ok, that's a browser bug
16:54:12 <ais523> ehird: in what way would you suggest modifying browsers to avoid it without losing functionality?
16:54:24 <ais523> also, I prefer not to assume my browser is 100% bugfree, even though it isn't IE
16:54:36 <ehird> not let sites interact with embedded pages on other sites
16:54:43 <ehird> this is already done to a large degree
16:54:54 <ehird> that's just another aspect that has to be stopped, simple enough...
16:55:34 <jix> ehird: how is clickjacking a browser bug
16:55:51 <ais523> ehird: also, I point out that JS adverts are exactly the sort of thing that might do that sort of thing
16:55:58 <ais523> in which case it isn't an "other site"
16:56:04 <ehird> jix: they allow a site to cause an interaction with an embedded component on another site in a way that hasn't been accounted for
16:56:11 <ais523> "another site"?
16:56:23 <ais523> what if it's an interaction between a website and its own adverts?
16:56:30 <ehird> cross-domain scripting rules.
16:56:32 <ais523> which are hosted there, but haven't been properly checked for security
16:56:37 <ais523> ehird: what do you mean cross-domain?
16:56:42 <ais523> "a website and its own adverts"
16:56:54 <ais523> and please don't tell me all advert-loading is done from external servers
16:56:59 <ais523> although I admit quite a bit of it is
16:57:21 <ehird> i'll continue this conversation when it takes a turn that doesn't consist of me stating why things can be easily fixed and you asking about every trivial term I'm using that someone talking about browser security should know about
16:57:48 <ais523> ehird: I'm not saying I don't understand what "cross-domain" means
16:57:55 <ais523> I'm saying that this will not always be cross-domain in practice
16:57:56 <jix> ehird: then you might fix the wikipedia page which states it isn't a browser bug
16:57:59 <ais523> and you're assuming it is for some reason
16:58:23 <ehird> if a site causes a user to delete all the mail they host in the same site, umm, that's the site's fault
16:58:32 <ais523> yes, but it still affects the user
16:58:33 <ehird> they could easily do it by, you know, just automatically deleting them
16:58:43 <ais523> your problem seems to be that you're assuming all the websites you use are 100% perfect
16:58:46 <ais523> and on
16:58:47 <ais523> *no
16:58:57 <ais523> normally, the advertising division of a website != the content division
16:59:09 <ais523> and they both put more or less their own stuff on the same page
16:59:11 <ehird> so the advertising devision hates the mail devision
16:59:18 <ais523> the advertising division is often relatively easily tricked by outsiders
16:59:19 <ehird> and wants users to delete all their mail via their ads
16:59:28 <ais523> there were quite a few adverts spreading Storm, recently, for instance
16:59:39 <ais523> if the ad people are 100% perfect, no problem
16:59:55 <ais523> in practice, they're quite easily persuaded to do something obnoxious by $EVIL_HACKER
17:00:12 <ais523> which ends up impacting the mail website as a whole and deleting all your mail
17:00:31 <ais523> (you might say this is unlikely, but IIRC Storm spread via a combination of those methods and exploiting flaws in IE)
17:01:15 <ais523> ehird: anyway, it seems clickjacking was even used to change the Flash privacy settings to turn on webcam and microphone
17:01:30 <ais523> that isn't even XSS, or crossdomain, that's affecting local programs on the user's computer
17:01:43 <Ilari> And some sites are probably hosted on computers that are a lot better hardened than the ad servers they reference to via Javascript includes.
17:01:45 <ehird> that's a flash bug.
17:01:51 <ehird> we are talking JS.
17:01:59 <ais523> ehird: it's a combination-of-JS-and-Flash bug
17:02:27 <ehird> i disagree.
17:02:27 <ais523> hmm... can JS in a tab focus a different tab?
17:02:31 <ais523> ah yes, obviously, window.close
17:02:48 <ais523> so, an evil site can reposition your mouse pointer then close the tab just as it thinks you're about to click
17:02:59 <ais523> and you click over something dangerous on the tab you visited just before it
17:03:10 <ais523> a bit unlikely, I suppose, but stranger things have been exploited
17:03:36 <Ilari> Like those file upload control exploits?
17:03:45 <ais523> ah, yes
17:03:52 <ais523> I wasn't thinking of those, but it's a similar idea
17:03:59 <ais523> those definitely are browser bugs, though
17:04:07 <ais523> no way should a file upload box be under website control
17:04:56 <jix> is it still possible to sniff auto fill in data using JS? (i think it isn't) but that would be a browser bug too...
17:05:38 <Ilari> It isn't. IIRC, Firefox 2 is vulernable to those exploits. Firefox 3 prevents them by preventing user from editing file upload control path directly. Konqueror isn't vulernable because it prompts before uploading.
17:06:00 <Ilari> That was to ais523
17:07:07 <ehird> using auto fill-in data is probably a bug in the user.
17:07:17 <ais523> Ilari: yep, old bug, IIRC they fixed both Mozilla (and Firefox by extension) and Safari before it got publically announced
17:07:17 -!- ais523 has quit (Remote closed the connection).
17:07:24 -!- ais523 has joined.
17:07:28 <jix> ehird: it's a usefull feature and can be implemented securely
17:07:37 <ais523> jix: which feature?
17:07:37 <ehird> yes, but it should be user-triggered
17:07:43 <jix> ais523: auto form fillin
17:07:44 <ehird> instead of filling in forms just like that
17:07:51 <ehird> you should be able to click, fill in this form
17:08:04 <jix> ehird: or it could fill in the form but mark the form as auto filled and unaccesable by scripts
17:08:08 <jix> ehird: i think that is how it is done
17:08:17 <ehird> shrug :P
17:08:22 <ehird> that could also mess up JS form validation
17:08:25 <jix> at least ff 3 marks the filled in forms in yellow until you check them
17:08:33 <ais523> ehird: JS form validation is ridiculous
17:08:38 <ais523> and should be repeated server-side, at least
17:08:45 <ehird> repeated server side: no shit
17:08:50 <ehird> it should be generated from a model in both cases
17:08:52 <ais523> having it client-side to warn users slightly earlier is possibly helpful, but dubious
17:08:57 <ehird> no, it's really helpful
17:09:05 <ehird> i get it all the time, oops, I messed up that field, so I fix it
17:09:07 <ehird> instead of doing the whole form
17:09:09 <ehird> submitting
17:09:11 <ehird> and getting 10 errors
17:09:13 <ehird> fixing them
17:09:16 <ehird> oh, now I have 3 errors
17:09:20 <ehird> oh, now it works
17:09:26 <ais523> and really, if you're auto-filling invalid data
17:09:38 <ais523> then you have a problem, and the extra 2 seconds it takes for server-side validation won't really hurt you
17:09:40 <ehird> no, you're auto-filling data that is probably valid
17:09:44 <ehird> websites may disagree.
17:11:56 <ais523> then they can disagree server-side
17:12:01 <ais523> rather than messing up your UI
17:12:07 <ais523> it's not as if that happens very often
17:12:10 <ehird> 'messing up your ui', wtf
17:12:14 <ais523> even better, have an HTTP response code
17:12:18 <ehird> i'm ending this conversation because it's ridiculous.
17:12:20 <ehird> thx
17:12:23 <ais523> which means "this data is invalid"
17:12:31 <ais523> so the browser knows something went wrong with the auto-fill
17:12:34 <ehird> that is outside of http's jurisdiction.
17:12:37 <ehird> i'm ending this conversation because it's ridiculous.
17:12:38 <ais523> ehird: I'm not so sure
17:12:42 <ehird> i'm ending this conversation because it's ridiculous.
17:13:04 <ais523> ehird: you've been doing a lot of arbitrarily declaring things ridiculous recently
17:13:31 <ehird> you're welcome. but I've never convinced you of anything, and vice-versa
17:14:17 <oklopol> ooooo
17:14:24 <ais523> okoko
17:22:57 <ais523> ehird: http://secunia.com/advisories/search/?search=javascript is a list of JS-related security bugs that have been found, btw
17:23:05 <ais523> some more serious and more JS-related than others, obviously
17:23:09 <ehird> software has bugs
17:23:12 <ehird> this is unsurprising
17:23:20 <ais523> yes
17:23:23 -!- MigoMipo has joined.
17:23:39 <ais523> I'm just surprised that you claim that JS-blocking isn't a good idea, as a result
17:50:03 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:51:03 -!- ais523 has joined.
18:02:31 <Slereah_> Guys
18:02:48 <ais523> hi Slereah_
18:02:50 <Slereah_> How old is the oldest machine, theoretical or otherwise, with stacks?
18:03:06 <Slereah_> I am in a wondery mood
18:03:39 * ais523 wonders if it's before or after the Turing Machine
18:03:54 <ais523> I suppose steam engines had cooling stacks, but that probably isn't what you meant
18:04:00 <Slereah_> Yeah.
18:04:15 <Slereah_> Also there prolly isn't a lot before the TM.
18:04:21 <bsmntbombdood> oldest machine?
18:04:28 <ais523> bsmntbombdood: oldest machine with stacks
18:04:38 <ais523> arguably the TM had two, but it wasn't described like that
18:04:41 <bsmntbombdood> a tm isn't a machine
18:04:43 <ais523> and besides, pushing one popped the other
18:05:04 <ais523> bsmntbombdood: it's a theoretical machine
18:05:04 <ais523> which Slereah_ specifically allowed
18:05:05 <bsmntbombdood> anyway, it's a stupid question
18:05:08 <Slereah_> bsmntbombdood : Yes it is
18:05:10 <Slereah_> It's right in the name!
18:05:38 <ehird> how come every finn uses iki.fi
18:05:47 <ais523> maybe because it's a good server?
18:05:47 <Slereah_> Communism.
18:05:52 <Slereah_> They only have one ISP.
18:06:07 <ehird> no
18:06:10 <ehird> its not an isp
18:06:14 <ehird> it forwards URLs and emails
18:06:21 <ehird> i.e. iki.fi/deewiant goes to users.tkk.fi/blahblahblah
18:08:20 <ais523> query AnMaster
18:08:26 <ais523> umm...
18:08:33 <ehird> query fbi
18:08:35 <ehird> disregard that
18:08:42 -!- Corun has joined.
18:08:42 <ehird> xdcc send horse_porn.avi
18:08:43 <ehird> whoops
18:08:46 <ais523> I was trying to open a /query with AnMaster to look at my /query logs with him
18:09:19 <AnMaster> ais523, ?
18:09:24 <AnMaster> ah
18:09:30 <ais523> AnMaster: checking what that rsync command was
18:09:38 <AnMaster> right
18:13:35 <ais523> well, seems the C-INTERCAL repo is back in business
18:13:38 <ais523> http://envbot.kuonet.org/~ais523/c-intercal/_darcs/pristine/ for the file tree
18:13:45 <ais523> http://envbot.kuonet.org/~ais523/c-intercal/ for darcs download
18:25:28 <Ilari> Hmm... Wonder what kind of class would language with no backward jumps allowed, only looping linear in values and with bignums plus builtin hyper operator present...
18:25:39 <ehird> Ilari: like?
18:26:04 <Ilari> I don't know any examples of such language. It would be obiviously sub-TC...
18:26:15 <ehird> in moar practical terms? :D
18:27:07 <ais523> Ilari: isn't that BLooP-class?
18:27:29 <ehird> it'd be nice to have a bloop-alike, without the explicit specification
18:29:14 <Ilari> Plus of course associative tables for storing data during processing.
18:29:46 <Ilari> ais523: Got URL? Googling turns up lots of unrelated links...
18:30:53 <ehird> http://en.wikipedia.org/wiki/BlooP_and_FlooP
18:30:58 <ehird> from Gödel, Escher, Bach
18:31:28 <Ilari> Such language could express function that would have f(1) = 1, f(2) = 4, f(3) = g64 <Graham's number>, f(4) = <Something that makes even Graham's number look small>
18:31:50 <ehird> f(4) = A(g64,g64)
18:31:51 <ehird> :P
18:32:56 <Ilari> ehird: I don't know how f(4) and A(g64,g64) relate to each other and which is bigger. But one thing is sure: They are both really huge even compared to g64.
18:33:08 <ehird> what is this f?
18:33:28 <Slereah_> Isn't any function theoretically able to be defined like that?
18:33:38 <Slereah_> I mean, you could just define it as a primitive
18:35:41 <ehird> What's all this, you ask? We like weasels. You like weasels. Everyone likes weasels. Our mission: to send weasels wherever people like weasels. And that means everywhere.
18:35:41 <ehird> Weasel Trek has shipped fifteen plush weasels to hosts all over the world to be photographed, given a taste of local culture, and then sent on to another who shares the weasel way.
18:35:44 <ehird> http://weaseltrek.com/
18:36:57 <Slereah_> ...
18:37:01 <Slereah_> I want one :(
18:37:14 <ehird> I didn't notice the plush at first
18:37:26 <ehird> and reading their about I was thinking, wtf, you can buy weasels from ikea? What?
18:37:53 <Ilari> 64 times recursed Conway arrow with variable values on sides, starting from four arrows. With x=3, it produces Graham's number.
18:37:58 <ehird> http://uk.youtube.com/watch?v=pW7opOMStZk Skydiving weasel
18:38:04 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
18:45:47 <Ilari> Actually, that language would be more powerful than BlooP, as BlooP expresses functions that are primitive-recursive, but that language could express A(m,n), which is not primitive recursive.
18:53:47 -!- olsner has joined.
19:11:30 -!- Hiato has joined.
19:25:17 -!- Slereah has joined.
19:38:44 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
19:40:44 <ehird> nowhere docs the pcm format :(
19:42:50 <oklopol> hiiiiiiii
19:44:59 <ehird> register int *esp __asm__("%esp");
19:45:01 <ehird> that actually works
19:45:02 <ehird> how cool is that?
19:50:27 -!- Corun has quit ("This computer has gone to sleep").
19:53:33 <MizardX> ehird: http://www.wotsit.org/list.asp?search=pcm
19:54:11 <ehird> I like the part where neitherresult was the right one
19:54:28 <MizardX> pcm seems to be part of riff
19:55:07 <MizardX> Pulse Code Modulation (PCM) Format
19:55:21 <MizardX> line 3489 of the first document
19:55:34 <Deewiant> ehird: iki.fi also offers DNS so that the address of your site can be foo.iki.fi
19:55:46 <ehird> Deewiant: why does everyone use it?
19:55:54 <Deewiant> ehird: it works?
19:56:04 <fizzie> Also: because there are no monthly/yearly payments.
19:56:06 <Deewiant> and no, not "everyone" uses it :-P
19:56:11 <fizzie> Just the initial joiningment thing.
19:56:14 <ehird> umm, why not just link to a uri like the rest of the world.
19:56:21 <ehird> instead of PAYING for a url redirection service
19:56:25 <Deewiant> ehird: because if your stuff moves your old URLs don't work.
19:56:40 <ehird> the rest of the world solves that by, um, not doing that.
19:56:41 <Deewiant> ehird: 'iki' is search for 'ikuinen' meaning 'permanent'
19:56:44 <ehird> crazy sedes.
19:56:46 <ehird> *swedes
19:56:50 <Deewiant> ehird: if you change your ISP, what're you going to do
19:56:53 <ehird> ok, technically we have purl.org
19:56:56 <ehird> Deewiant: not host pages on my isp
19:57:04 <Deewiant> ehird: damn straight
19:57:10 <Deewiant> ehird: what if I have no other hosting option
19:57:12 <Deewiant> ehird: +free
19:57:19 <ehird> stop being a cheap bum :)
19:57:20 <ehird> :D
19:57:41 <Deewiant> fuck that
19:57:43 <ehird> corth.c:12: warning: ‘noreturn’ function does return
19:57:45 <ehird> oh shut up gcc
19:58:03 <ehird> by "noreturn" i mean DON'T GENERATE A FREAKING "ret" INSTRUCTION
19:58:22 <Deewiant> put assert (false) at the end
19:58:29 <ehird> does that work? ha
19:58:36 <Deewiant> I don't know
19:58:37 <Deewiant> worth a try
19:58:47 <Deewiant> it's specced to work in D where assert is a language construct :-P
19:58:59 <ehird> Deewiant: well, it makes sense for gcc to be complaining because i'm trying to tell it main() doesn't return
19:59:18 <ehird> (I clobber the stack in this program so I use the genius solution of "Don't ever, ever return, or call functions")
19:59:50 <ehird> lol, it still buts a ret in there but doesn't complain
19:59:56 * ehird tries asm("hlt") instead
20:00:03 <Deewiant> ehird: even with -O2?
20:00:08 <Deewiant> /3
20:00:20 <ehird> -Os would be more likely to do something ther
20:00:39 <ehird> hlt
20:00:39 <ehird> popl %ebp
20:00:40 <Deewiant> I always forget that one exists :-P
20:00:41 <ehird> ret
20:00:43 <ehird> Gcc fail
20:00:50 <Deewiant> switch to D
20:00:51 <ehird> zsh: illegal hardware instruction ./a.out
20:00:54 <ehird> 8-)
20:00:59 <ehird> Deewiant: I'm writing a forth. That would be dumb :D
20:01:03 <ehird> register int *esp asm("%esp");
20:01:03 <ehird> #define PUSHL(x) asm("pushl %0" : : "r"(x) : "%esp")
20:01:08 <Deewiant> why would it be dumb? :-P
20:01:09 <ehird> this is CRAZY LAND
20:01:21 <Deewiant> register, heh
20:01:29 <Deewiant> I wonder if GCC ignores that
20:03:22 <bsmntbombdood> ehird: why use the hardware stack?
20:03:26 <bsmntbombdood> allocate your own on the heap
20:03:28 <bsmntbombdood> please
20:03:42 <ehird> bsmntbombdood: is that BLAZING FAST and CRAZY?!
20:03:43 <ehird> NO
20:03:55 <bsmntbombdood> why are you writing it in C even?
20:05:01 <ehird> bsmntbombdood: because I'm too incompetent to write asm
20:05:09 <bsmntbombdood> but you are using asm
20:05:13 <ehird> only partly :P
20:05:19 <bsmntbombdood> yuck
20:05:30 <ehird> cool, you get a bus error if you don't ret
20:05:32 <ehird> from main
20:05:47 <bsmntbombdood> and really, how much slower can your own stack be?
20:05:58 <ehird> 0.01ms
20:06:12 <bsmntbombdood> less
20:06:34 <ehird> 0.00001ms
20:06:47 <bsmntbombdood> like, 2 cycles
20:07:02 <bsmntbombdood> maybe 3
20:07:14 <ehird> exactly
20:07:21 <ehird> utterly unacceptable
20:08:13 <Deewiant> that's less than 0.00001 ms :-P
20:08:22 <ehird> 0.0000000000000000000000001ms
20:08:23 <ehird> utterly unacceptable
20:08:31 <Deewiant> it's more than that though
20:08:39 <ehird> 1 planck time
20:08:41 <ehird> utterly unacceptable
20:09:25 <ehird> god, calling library functions is so ugly in C
20:09:29 <ehird> well, in asm :P
20:09:30 <bsmntbombdood> ?
20:09:46 <bsmntbombdood> 1.5 × 10**-9 seconds at 2 ghz
20:10:53 <ehird> so 0.0000015ms
20:10:56 <ehird> utterly unacceptable
20:12:15 <bsmntbombdood> uhuh
20:12:21 <bsmntbombdood> i should write a forth
20:12:25 <bsmntbombdood> it'll be faster than yours
20:13:16 <ehird> <__<
20:16:13 <bsmntbombdood> oooh i should write a dc
20:16:32 <bsmntbombdood> i love dc
20:21:35 <bsmntbombdood> would using gmp be cheating?
20:30:01 <ehird> yes
20:30:08 <ehird> write it as a string manipulation routine
20:32:06 <bsmntbombdood> no
20:32:12 -!- Hiato has quit ("Leaving.").
20:42:36 -!- KingOfKarlsruhe has quit ("Konversation terminated!").
20:43:32 -!- jix has quit ("...").
20:44:55 -!- jix has joined.
21:04:22 -!- MigoMipo has left (?).
22:16:43 <ehird> 22:11 <[TEHb]> Guys, help me pls :-)
22:16:43 <ehird> 22:11 <[TEHb]> I need help
22:16:45 <ehird> 22:12 <[TEHb]> I have not eaten for three days
22:16:50 <ehird> IRC is the correct place for advice on this matter
22:17:15 <lament> it's time to learn postscript!
22:17:20 <lament> anyone know a good tutorial?
22:17:56 <bsmntbombdood> hey guys i just wrote a goto
22:17:59 <bsmntbombdood> is this bad y/n
22:18:01 <ehird> n
22:18:06 <lament> y
22:18:14 <flexo> y
22:18:15 <lament> it's bad if you have to ask.
22:18:27 <flexo> exactly
22:18:27 <ehird> gotos are _awesome_
22:18:33 <flexo> well
22:18:38 <flexo> computed gotos are awesome
22:18:44 <flexo> you know, gcc supports them
22:18:56 <bsmntbombdood> flexo: how do computed gotos work?
22:19:06 <flexo> i'll show you
22:19:07 <ehird> bsmntbombdood: you can pass around goto pointers.
22:19:08 <ehird> and go to them.
22:19:21 <flexo> well
22:19:24 <flexo> it's not really a computed goto
22:19:27 <flexo> :
22:19:29 <flexo> but i still rock:
22:19:31 <flexo> http://pastebin.com/m32bb5f
22:19:40 <bsmntbombdood> why is that awesome?
22:19:50 <flexo> i suppose this might only work on 32bit x86
22:20:29 <ehird> flexo: that's not a computed goto.
22:20:37 <ehird> although that IS confusing as fuck
22:20:46 <flexo> thanks
22:20:48 <bsmntbombdood> uhhh
22:20:54 <bsmntbombdood> how did you get those constants in the array?
22:21:03 <ehird> I think they're x86 machine code
22:21:27 <flexo> nawothnig@perez:~$ ./leet
22:21:27 <flexo> 98 9e 37 d5 31 14 30 c3
22:21:31 <flexo> it's kind of a quine. somewhat.
22:21:45 <ehird> endianquine
22:21:46 <flexo> (byteorder is reversed)
22:24:59 <flexo> bsmntbombdood: so, unless your program looks like mine you should restructure it
22:28:04 <bsmntbombdood> now i can't figure out this bug
22:28:25 <flexo> packets are beinng lost again
22:28:25 <flexo> :/
22:28:49 <flexo> will finally get my own line on tuesday
22:31:21 <bsmntbombdood> i hate bugs
22:57:03 -!- oerjan has joined.
23:07:16 -!- FireFly has quit ("Later").
23:12:09 <lament> how do i exponentiate in postscript?
23:15:58 <ehird> with luv
23:19:01 <oerjan> <Ilari> Actually, that language would be more powerful than BlooP, as BlooP expresses functions that are primitive-recursive, but that language could express A(m,n), which is not primitive recursive.
23:19:09 <oerjan> sort of BlooP with oracle...
23:21:48 -!- olsner has quit ("Leaving").
23:24:46 -!- bsmntbombdood has quit (Read error: 110 (Connection timed out)).
23:25:49 -!- bsmntbombdood has joined.
23:41:30 -!- jix has quit ("...").
23:50:36 <Ilari> Even one that could be implemented on Turing machine to run in "finite" time... :-)
2009-01-16
00:22:50 <bsmntbombdood> i must have missed soemthing
00:23:38 <oerjan> nope
00:23:42 <ehird> 23:19 <oerjan> <Ilari> Actually, that language would be more powerful than BlooP, as BlooP expresses functions that are primitive-recursive, but that language could express A(m,n), which is not primitive recursive.
00:23:43 <ehird> 23:19 <oerjan> sort of BlooP with oracle...
00:23:45 <ehird> 23:50 <Ilari> Even one that could be implemented on Turing machine to run in "finite" time... :-)
01:35:00 -!- GreaseMonkey has joined.
04:18:49 -!- ehird has quit (kornbluth.freenode.net irc.freenode.net).
04:18:49 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
04:19:10 -!- ehird has joined.
04:19:10 -!- GregorR has joined.
04:23:45 -!- ehird has quit (kornbluth.freenode.net irc.freenode.net).
04:23:45 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
04:25:44 -!- ehird has joined.
04:25:44 -!- GregorR has joined.
04:42:16 <bsmntbombdood> teh buz
04:42:19 <bsmntbombdood> *bugz
04:42:48 <oerjan> ^ul ((*BUZZ* )S:^):^
04:42:48 <fungot> *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *BUZZ* *B ...too much output!
04:52:51 <bsmntbombdood> yay unexplained segfault
04:56:24 <oerjan> ^ul (KH)(A)(:*)(:*)::**^^(N)**S
04:56:24 <fungot> KHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN
04:56:50 <Slereah> :D
04:57:27 <oerjan> http://www.khaaan.com/
05:14:11 <bsmntbombdood> Segmentation fault (core dumped)
05:22:49 -!- Corun has joined.
05:29:23 -!- oerjan has quit ("Bus").
05:37:40 <bsmntbombdood> haha!
05:37:45 <bsmntbombdood> my dc is waaaay faster than gnu dc
05:38:43 <Slereah> It's not the speed of your dick that matters, bsmnt_bot
05:39:02 <bsmntbombdood> dc(1), loser
05:39:31 <Slereah> I don't know what that is.
05:40:40 <bsmntbombdood> http://www.openbsd.org/cgi-bin/man.cgi?query=dc&apropos=0&sektion=0&manpath=OpenBSD%20Current&arch=i386&format=html
07:13:14 -!- olsner has joined.
07:50:37 -!- GregorR has quit (Read error: 110 (Connection timed out)).
07:51:06 <psygnisfive> rip ricardo montalban indeed
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:06:21 -!- olsner has quit ("Leaving").
08:31:37 <AnMaster> <ehird> crazy sedes. <ehird> *swedes <-- no Finns. Not Swedes.
08:34:13 <AnMaster> <bsmntbombdood> 1.5 × 10**-9 seconds at 2 ghz <-- not sure about that, some CPUs execute more than one instruction per cycle iirc. Though I'm not sure if x86 does that.
08:35:16 -!- GreaseMonkey has quit ("Client Excited").
08:36:35 <AnMaster> <bsmntbombdood> hey guys i just wrote a goto <bsmntbombdood> is this bad y/n <-- well depends a lot on language, how it is used and so on.
08:36:53 <AnMaster> like, C doesn't have break; for more than one level at a time
08:37:08 <AnMaster> using goto to break two levels is the cleanest solution there
08:38:02 <AnMaster> also sometimes in functions that can error out at several points and need to do common cleanup for all the error paths, goto error; and putting an error: block at the end may be the cleanest code.
08:38:20 <AnMaster> some file reading functions or such would fit into that category
08:38:38 <AnMaster> also I think it is often ok in _generated_ C code
08:44:22 <psygnisfive> anmaster
08:44:34 <psygnisfive> do you know anything about the properties of rewriting systems?
08:49:00 <AnMaster> psygnisfive, like Thue?
08:49:19 <psygnisfive> no no i mean the formal properties of such systems in general
08:49:48 <AnMaster> psygnisfive, not much really.
08:49:55 <psygnisfive> ok
09:38:54 -!- Corun has quit ("This computer has gone to sleep").
10:12:14 -!- Slereah_ has joined.
10:24:15 -!- Slereah has quit (Read error: 110 (Connection timed out)).
10:24:32 -!- Slereah has joined.
10:32:47 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
13:06:57 -!- oerjan has joined.
13:08:36 -!- Hiato has joined.
13:10:22 <oerjan> <psygnisfive> do you know anything about the properties of rewriting systems?
13:10:45 <oerjan> if it's string rewriting then you have the Chomsky hierarchy at least
13:30:26 -!- Hiato has quit (Read error: 104 (Connection reset by peer)).
13:31:35 -!- Hiato has joined.
13:59:14 <oklopol> oerjan: YOU'RE NOT FOOLING ANYONE :DDDDDDDDDDD
14:00:42 <oklopol> i misread "eurocreme" was on the clipboard and not the topic (shown next to each other), thought i had sleep googled for gay porn again
14:01:08 <oklopol> well that was actually complete bullshit, i just wanted to use the term sleep googling in some context.
14:01:25 <oerjan> fooling anyone about what?
14:01:32 <oklopol> oerjan: nothing in general
14:01:42 <oerjan> hm...
14:01:44 <oerjan> scary
14:01:52 <oklopol> is it now?
14:02:04 <oerjan> you regularly sleep google for gay porn?
14:02:43 * oerjan realizes responding to comments before reading the next line is more fun
14:03:09 <oklopol> well yeah i'm not sure why i said that bullshit comment
14:03:24 <oklopol> i mean it's all about choice, i honestly don't know whether i actually did think it was on the clipboard.
14:03:59 <oerjan> yeah i often don't know what i'm thinking either
14:04:18 <oklopol> i do know i don't sleep google for gay porn (afaik), but that is fun as a joke, so there's no need to be honest; then again if i say i misraed something, and i'm lying, there's no excuse.
14:04:21 <oklopol> but often i don't know
14:04:26 <oklopol> *misread
14:04:47 <oklopol> oooooooooooooooooooooooooooo
14:04:48 <oerjan> i misread that as misraped
14:04:50 <oklopol> oooooooooooooooooooooooooo
14:04:56 <oklopol> xD
14:05:01 * oerjan has no excuse
14:05:01 <oklopol> what's misraping
14:05:15 <oerjan> let's try to never find out
14:05:17 <oklopol> like, to accidentally someone?
14:05:19 <fizzie> I think it's just like rape, except you're doing it wrong.
14:05:26 <oklopol> oh.
14:05:27 <oerjan> deep.
14:05:33 <oklopol> there's probably like a comic about that
14:06:14 <oerjan> you misrape what you sow
14:07:04 <fizzie> One of the only three google hits of "misrape" (quoted) sounds like it's just a case of applying the procedure to the wrong person: "... bust into someone’s house and terrorize them, i suggest you keep detailed records of your victims so you don’t misrape any innocent bystanders. ..."
14:07:29 <oerjan> i think i should stop now, i just noticed it anagrams to "spermia"
14:07:40 <oklopol> Sperm AI
14:08:32 <oklopol> so cummon down south park and meet some frendsa mineeeee
14:08:36 <fizzie> Also "ram pies".
14:09:05 <oklopol> SimRape
14:09:18 <oerjan> rim peas
14:09:19 <oklopol> i'd play it.
14:09:33 <oerjan> prim sea
14:09:42 <fizzie> "ear imps".
14:09:45 <oklopol> simrape would probably need sperm ai.
14:09:55 <oklopol> but i hope there wouldn't be any ram pies
14:10:13 <oklopol> oh
14:10:32 <oklopol> almost prime ass, like that bear has
14:12:22 <oerjan> ip smear
14:12:29 <fizzie> Also maybe related: seam rip.
14:13:00 <oklopol> this is kinda getting outta hand ppl.
14:14:58 <Ilari> g66 = 3 !g65-1! (3 !g65-1! 3) > 3 !g65-1! (g64 + 3) = 3 -> (g64 + 3) -> (g65 - 1) > (2 -> (g64 + 3) -> (g64 - 2)) - 3 = A(g64,g64)... :->
14:17:27 <Ilari> => g66 > A(g64,g64)...
14:27:57 <Ilari> Heh: 'g64 -> g64 -> g64 -> g64'. That should be fairly BIG.
14:28:10 <Slereah> A million is already fairly big.
14:29:21 -!- Hiato has quit ("Leaving.").
14:34:11 <Ilari> g1 is already really really HUGE number. 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 iterated base-10 logarithms would barely do a minor dent to it. g2 is MUCH bigger than g1, etc...
14:35:04 <Slereah> Isn't g1 just 3^3^3?
14:35:05 <Slereah> Or something
14:36:31 <Ilari> g1 is 3 !!!! 3 = 3 !!! (3 !!! 3) = 3 !!! (3 !! (3 !! 3)) = 3 !!! (3 !! (3 ^ 3 ^ 3)) = 3 !!! (3 !! 7625597484987) = ...
14:37:52 <Ilari> = 3 !!! (3 ^ 3 ^ 3 ^ ... ^ 3) [7625597484986 '^'s]...
14:38:59 <fizzie> Your definition of "minor dent" is interesting, if you look at how large a fraction of the original number is left after that many logarithms. I'm not saying it wouldn't still be a rather large number, but if you consider a chunk of rock, take a similarly proportioned amount of it away, it doesn't really look like a "minor dent" at that point.
14:40:54 <Ilari> These numbers are so huge you can't even use power tower scale... And iterated logarithm operates in that scale...
14:43:40 <oklopol> power tower scale?
14:44:00 <oklopol> i agree, minor dent is a weird term
14:48:43 <Ilari> "Power tower scale" essentially measures how many times you (approximately) have to apply logarithm to get into small numbers..
14:50:47 <oerjan> which is just the fourth step of the ackermann function
14:51:18 <oerjan> A(4,n) = 2^2^...n times - 3 or something like that
14:53:13 <oklopol> Ilari: k right. still i agree with fizzie
14:56:11 <fizzie> Yes, well, in my viewpoint it's just a matter of what the word "dent" means; it doesn't seem right to me to call something a "dent" if over, say, half of the original thing is gone, no matter how large the dented thing is.
15:07:03 -!- Slereah_ has joined.
15:15:40 -!- Slereah has quit (Read error: 110 (Connection timed out)).
15:37:36 -!- ehird has left (?).
15:37:39 -!- ehird has joined.
15:37:54 -!- ehird has left (?).
15:37:57 -!- ehird has joined.
15:38:44 <ehird> 08:31 <AnMaster> <ehird> crazy sedes. <ehird> *swedes <-- no Finns. Not Swedes.
15:38:46 <ehird> no
15:38:48 <ehird> finns are sane
15:39:09 <fizzie> Completely Finn-sane.
15:39:31 <oerjan> ehird: you show a complete misunderstanding of nordic stereotypes
15:39:41 <ehird> good :D
15:51:14 <AnMaster> ehird, you were talking about that iki.fi thing then
15:51:22 <AnMaster> Swedes aren't related to that
15:51:24 <AnMaster> afk
15:51:29 <ehird> meh, iki.fi makes some sense
15:51:36 <ehird> it's just odd that finns are the only ones who use such a thing
15:57:29 <oerjan> i assume the japanese do to, it's just that we never know because they are speaking in japanese.
15:57:42 <oerjan> *too
15:58:21 <oerjan> oh and the north koreans with internet access also do so. both of them.
16:00:33 <ehird> to be honest I don't exist
16:00:45 <oklopol> duh.
16:00:50 <oerjan> i had suspected that.
16:01:22 <oerjan> but then i thought: figments of imagination are people too!
16:01:37 <oerjan> in fact they're the only people
16:09:37 -!- dbc has quit (Read error: 110 (Connection timed out)).
16:36:36 <ehird> http://lost-theory.org/realultimatepower/ The Official Jeff Atwood Homepage
16:36:59 <Slereah_> How terribly lame
16:37:11 <ehird> it's a parody.
16:37:14 <Slereah_> Yes
16:37:15 <Slereah_> I know
16:37:19 <Slereah_> I have the book
16:37:36 <ehird> I guess you also have to hate jeff atwood to find it funny :P
16:37:50 <Slereah_> Who's Jeff Atwood?
16:38:00 <ehird> Idiot extraordinaire.
16:38:18 <ehird> So idiotic that _Joel Spolsky_ teaches him something on a weekly basis. http://www.codinghorror.com/blog/
16:38:20 <Deewiant> codinghorror.com
16:38:33 <ehird> jeffatwoodhorror.com
16:38:49 <Slereah_> Coding horror
16:38:53 <Slereah_> I hope I'm not on there :o
16:40:49 <ehird> http://www.reddit.com/r/WTF/comments/7q2rj/google_search_results_for_khaxn_for_x1_to_100/c072mvj
16:41:12 <ehird> eliezer's reply is so. perfectly. timed.
16:41:38 <psygnisfive> ehird: not infact all that odd
16:41:47 <ehird> shut up. it's humour.
16:41:48 <ehird> it's funny.
16:41:54 <psygnisfive> you can find two dimensional graphs of ARGH
16:42:01 <ehird> um
16:42:03 <ehird> im not talking about that
16:42:07 <ehird> im talking about the specific comment thread linked
16:42:15 <ehird> psygnisfive: clicking links since 2009
16:42:21 <psygnisfive> thats nice.
16:42:29 <psygnisfive> im commenting on the content of the link.
16:42:29 <psygnisfive> :P
16:42:55 <oerjan> Don't joke about this. He's dead, Jim.
16:42:56 <ehird> the link I posted selects one comment thread in the comments for that link.
16:43:13 <psygnisfive> ah well, it doesnt do anything special for me, ehird. dunno why.
16:43:23 <ehird> yes. it does.
16:43:24 <ehird> scrolld own.
16:43:27 <ehird> past the link.
16:43:28 <ehird> http://www.reddit.com/r/WTF/comments/7q2rj/google_search_results_for_khaxn_for_x1_to_100/c072mvj
16:43:36 <psygnisfive> yeah it doesnt do anything for me dude
16:43:37 <ehird> The yellow-backgrounded comment.
16:43:42 <ehird> And Eliezer Yudkowsky's reply.
16:43:47 <psygnisfive> ah, ok.
16:43:53 <ehird> fail
16:44:18 <psygnisfive> i didnt realize that it was only showing one thread
16:44:25 <psygnisfive> as for yudkowsky, heh.
16:44:55 <psygnisfive> i wonder if he just stumbled across that thread or if he has An Algo
16:45:42 <oerjan> hm he really _must_ have come by google, it's a month since his last post :D
16:46:18 <ehird> (Context: qgyh2 is the person on reddit with the most submission & comments points, over 100,000 or sth)
16:46:28 <psygnisfive> lol
16:49:46 <oklopol> so.
16:50:15 <oklopol> did you know the turku university specializes in discrete math, and there's a lot of research in mathematical esolangs?
16:50:29 <oklopol> you didn't. my point is i think i know what i'm gonna be when i grow up.
16:52:09 <psygnisfive> i should learn hoare logic
16:52:20 <psygnisfive> mathematical esolangs??
16:52:38 <Slereah_> Like -recursive functions? :o
16:53:31 <oklopol> WHORE LOGIC YOU SAY :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
16:53:51 <oklopol> psygnisfive: reductions from all kindsa constructs into turing machines.
16:53:58 <Slereah_> With the whore operator
16:53:59 <psygnisfive> example?
16:54:06 <oklopol> talked to this prof who does cellular automata stuff today
16:54:31 <oklopol> i was instructed to meet him after mentioning i was thinking switching university.
16:54:43 <ehird> lol
16:54:50 <ehird> "im leaving, you guys are too practical"
16:54:54 <ehird> "HERE IS A CRAZY-ASS GUY"
16:54:59 <ehird> *crazy ass-guy
16:55:27 <Slereah_> More like ASS-GUY
16:55:39 <psygnisfive> too slow, slereah_
16:55:50 <ehird> yeah I was just doing that to shut up the fucking xkcd fans
16:55:52 <Slereah_> :(
16:56:02 <Slereah_> I'm just a fan of asses.
16:57:03 <oerjan> fucking-xkcd fans are scary.
16:57:43 <psygnisfive> i dont know many people who are fans of fucking xkcd
16:58:19 <ehird> 16:57 <niukas> HEJ PEOPLES HELP -TELL AROUND THE WORLD WHAT WE DIEING STOP MAKE DEATH STOP KILL ANIMALS PLANTS WATER METALL ANOTHER PEOPLES BAD PEOPLES MAKE THIS WORLD WE CAN LIVE FOREVER WIT NATURE WITH GOD WITH UNIVERSE PIECE
16:58:20 <ehird> 16:57 <niukas> STOP KILL STOP DEATH
16:58:22 <Slereah_> Is this fucking xkcd? http://d.furaffinity.net/art/seaweedprincess/1232091972.seaweedprincess_xkcd34.jpg
16:58:22 <ehird> -- #haskell
16:58:35 <ehird> Slereah_: I did not need to see that.
16:58:43 <Slereah_> ehird : Yes.
16:58:44 <Slereah_> Yes you did.
16:58:49 <Slereah_> Now you are complete.
16:58:54 <ehird> No, I... really didn't
16:59:10 <Slereah_> You'll thank me one day.
17:00:24 <oerjan> ehird: see, it's the swedes that are crazy
17:00:30 <psygnisfive> thats a totally inappropriate fake xkcd, slereah_
17:00:37 <psygnisfive> there's no alt text!
17:00:53 <ehird> oerjan: I know :P
17:00:59 <Slereah_> Yes there is
17:01:05 <ehird> finns and norway-yians are cool
17:01:08 <Slereah_> It's "Raptors on Hoverboards are Offscreen"
17:01:10 <oerjan> oh wait
17:01:14 <psygnisfive> ahhh
17:01:15 <Slereah_> But I posted the pix directly
17:01:15 <psygnisfive> good one
17:01:23 <Slereah_> Since you butts don't have FA accounts
17:01:27 <psygnisfive> μYou?
17:01:35 <psygnisfive> i have an FA account
17:01:47 <Slereah_> Yes
17:01:51 <Slereah_> But not the rest.
17:01:51 <oerjan> what the heck is an FA account.
17:01:54 <Slereah_> Unless...
17:02:01 <psygnisfive> fur affinity, oerjan
17:02:02 <Slereah_> IS ANYONE A CLOSET FURRY HERE
17:02:06 <ehird> the picture is on furaffinity.net, which is a shithole full of retarded furries.
17:02:07 <oerjan> ah
17:02:07 <psygnisfive> deviant art for furries
17:02:11 <ehird> and the associated porn.
17:02:39 <Slereah_> it's a fun thing, really
17:02:41 <oerjan> Slereah_: yes iirc. not me though.
17:02:59 <Slereah_> Ever since DA was created, furries have migrated from sites to sites
17:03:03 <Slereah_> Until FA was thar.
17:03:05 <ehird> wait, how can you know if someone is a closet furry
17:03:08 -!- kar8nga has joined.
17:03:15 <Slereah_> HERE'S ONE!
17:03:16 <ehird> that doesn't make sense
17:03:17 <Slereah_> GET HIM!
17:03:18 * Asztal is a cute b/w wolf
17:03:27 -!- ehird has set topic: No furries allowed.
17:04:03 <Slereah_> Hey >:|
17:04:06 <Slereah_> You forgot the logs!
17:04:14 <ehird> Furries don't deserve logs
17:04:22 <oerjan> he must have thought they looked furry
17:04:30 <oerjan> ehird: it's just moss!
17:04:40 <oerjan> and lichen!
17:06:31 -!- oerjan has set topic: No smurfing.
17:07:07 -!- ehird has set topic: No furries allowed.
17:07:32 -!- oerjan has set topic: No smurfing furries allowed.
17:10:03 <Slereah_> Hey psygnisfive
17:10:06 <Slereah_> Want to smurf?
17:11:02 <oklopol> :O
17:11:08 <oklopol> TOO MUCH REQUESTING INFORMATION
17:11:27 <Slereah_> I'll request allright.
17:11:31 <Slereah_> REQUEST A REACH AROUND
17:14:33 <oklopol> xD
17:15:18 <oklopol> blah, i don't feel like reading, i feel like running around naked and eating doors.
17:15:32 <oklopol> but, i guess i have little choice.
17:15:34 <oklopol> wish me luck ->
17:15:42 <Slereah_> Delicious door
17:16:27 -!- FireFly has joined.
17:16:39 <AnMaster> argh
17:16:41 <AnMaster> where are the logs?
17:16:53 <AnMaster> the link in topic is GONE!
17:17:16 <Slereah_> It's all ehird's fault
17:17:21 <Slereah_> Him and his fursecution!
17:17:28 <oklopol> that maniac
17:17:30 <ehird> AnMaster: bookmarks
17:17:33 <ehird> do you know how to use them?
17:17:35 <oklopol> optbot!!!!!!!!!!!!!
17:17:46 <oklopol> why use bookmarks when the topic has the logs
17:17:59 -!- Slereah_ has set topic: butt | http://tunes.org/~nef/logs/esoteric.
17:18:20 <AnMaster> ehird, yes you place them in books to remember where you should continue reading.
17:18:31 <ehird> Ha. Ha. Ha.
17:19:07 * ehird writes cat(1) program in Python because why not.
17:19:12 <ehird> #!/usr/bin/env python
17:19:12 <ehird> import sys
17:19:12 <oerjan> i bet if i had said it ehird wouldn't have laughed. oh wait.
17:19:13 <ehird> for filename in sys.argv:
17:19:16 <ehird> file = sys.stdin if filename == '-' else open(filename)
17:19:18 <ehird> while not file.closed:
17:19:20 <ehird> sys.stdout.write(file.read(1))
17:19:29 <ehird> oerjan: no, I wouldn't have :P
17:19:44 <AnMaster> oerjan, yes, but not in such a sarcastic manner
17:20:58 <oerjan> ehird: you are missing _several_ POSIX options.
17:21:06 <ehird> isn't there just -u?
17:21:15 * oerjan has no idea really :D
17:21:16 <ehird> yep
17:21:20 <ehird> -u
17:21:21 <ehird> Write bytes from the input file to the standard output without delay as each is read.
17:21:22 <ehird> which I already do
17:21:25 <ehird> and nobody uses that anyway
17:21:38 <ehird> mine misses stdin on no args through
17:21:44 <ehird> s/sys.argv/sys.argv or ['-']/
17:21:44 <oerjan> ok how many GNU options are there...
17:21:49 <ehird> oerjan: 5 bajillion
17:21:56 <ehird> i don't believe in gnu tools
17:22:16 <oklopol> so, you know how i like stuff right?
17:22:35 <oerjan> oklopol: eww
17:22:59 <oklopol> oerjan: i bet if i had said it ehird wouldn't have laughed. oh wait. <<< you would never say that
17:23:07 <ehird> well exactly.
17:23:34 <oerjan> i could have made a similar joke. in fact i must have done so.
17:23:48 <oklopol> oerjan: you would've made a joke based on the same thing, yes
17:23:55 <oklopol> the point is you would've made it less direct
17:24:19 <oerjan> you mean like remote library loan?
17:24:47 <oklopol> see that's what you would've said. something so complicated i don't get it
17:24:57 <oklopol> plz explain i want to laugh.
17:25:16 <oerjan> less direct + books = remote library loan
17:26:05 <oklopol> hmm
17:26:14 <oklopol> THAT'S NOT FUNNY.
17:26:28 <oerjan> NEITHER IS YOUR MOTHER.
17:26:55 <oklopol> FUCK YOU, MY MOTHER IS OUTRIGHT RIDICULOUS!!
17:27:11 <oerjan> also, i was obviously trying to make the joke even less direct than usual, it's a meta thing
17:27:20 -!- ais523 has joined.
17:27:23 <oerjan> and you know i never *hit by anvil*
17:27:27 <oklopol> yes, i think i get it.
17:28:05 <ehird> http://pastie.org/362562.txt?key=r1mvwcrozo1c5mcrklic8w
17:28:09 <oklopol> oerjan: trying to balance it out... or is that your new swatter replacement?
17:28:09 <ehird> Now it does rot13 too.
17:28:19 <ehird> because cat is _exactly_ the place for it
17:28:23 <oklopol> *are you trying
17:28:34 <oklopol> balance directness out that is
17:28:37 <oerjan> i don't think i can make a 1-line anvil. hm.
17:28:42 <ehird> python is fun.
17:28:45 <oerjan> _T_
17:28:46 <ais523> ehird: I was thinking about the UNIX philosophy
17:28:53 <ehird> ais523: heh, nice timing
17:28:55 <oerjan> _||_
17:29:01 * ehird breaks oerjan's anvil with lines
17:29:06 <ais523> and actually, I decided find | grep is more unixy than either find -name blah or ls -R | grep
17:29:14 <oklopol> i think that was it, ehird.
17:29:19 <ais523> you can tell you're being properly UNIXy if you don't need command-line options
17:29:25 <oerjan> ehird: those were two anvils
17:29:31 <ehird> ais523: that makes sense to a degree
17:29:39 <ehird> some command line options just change how it operates, not fundamentally what it does
17:29:45 <ehird> ls -R changes fundamentally what it does, however
17:29:51 <ehird> so you're right in that case
17:29:52 <ais523> yes
17:30:19 <ehird> uh oh, my cat has a bug
17:30:20 <ehird> XD
17:30:26 <ais523> the fact that so many commands have recursion options implies that find is definitely a unixy command, when you don't use its options yourself
17:30:27 <ais523> ehird: what lang?
17:30:33 <ehird> ais523: http://pastie.org/362562.txt?key=r1mvwcrozo1c5mcrklic8w
17:30:34 <ais523> buggy cats normally imply some pretty difficult lang
17:30:39 <ehird> I wrote cat in python for no reason, but then added rot13
17:30:42 <ehird> for no reason
17:30:49 <ehird> ais523: no, just buggy logic for detecting EOF
17:30:55 <ais523> ah, EOF
17:31:00 <oerjan> ehird: use a flea collar
17:31:05 <ehird> btw, one instruction that more languages need
17:31:08 <ehird> is pipe
17:31:10 <ehird> basicall
17:31:11 <ehird> y
17:31:19 <ehird> in python
17:31:34 <ehird> pipe(lambda: file.read(1), lambda a: sys.stdout.write(transformer(a)))
17:31:38 <ehird> is equivalent to
17:31:46 <ehird> (pseudo-python, you can't assign in whiles in reality):
17:31:54 <ehird> while a = file.read(1): sys.stdout.write(transformer(a))
17:31:57 <ehird> it's such a common idiom
17:31:59 <ehird> something like
17:32:17 <ehird> pipe file.read(1) as a: sys.stdout.write(transformer(a))
17:32:21 <ehird> would be great
17:32:23 <ais523> incidentally, I read somewhere that Python lambdas were syntactic sugar
17:32:28 <ais523> what do they expand to?
17:32:36 <ehird> foo(lambda x: x)
17:32:36 <ehird> could be
17:32:44 <ehird> def bar(x): return x
17:32:45 <ehird> foo(bar)
17:32:58 <ais523> oh, you can declare named functions in inner scopes in Python?
17:33:02 <ehird> yes
17:33:08 <ais523> that would explain it
17:33:37 <ehird> python is a bit verbose, unfortunately
17:33:43 <ehird> so using it for scripting is a bit annoying
17:33:51 <ehird> but it's nicer than writing shell script...
17:34:04 <ais523> it depends on how long the scripts are
17:34:14 <ehird> even trivial things in shell can be a pain
17:34:32 <ehird> if I get beyond one for loop over something like * in a shell, it instantly goes to hell
17:34:36 <ehird> and I switch to a real language :P
17:36:43 <ehird> but it'd be nice if python was, you know, shorter
17:36:57 <ehird> I'm pretty sure that cat is the not much shorter than it would be in C
17:37:00 * ehird writes it in C to find out
17:38:39 <ehird> hm
17:38:39 <ehird> uppercase = code >= ord('A') and code <= ord('Z')
17:38:41 <ehird> lowercase = code >= ord('a') and code <= ord('z')
17:38:43 <ehird> ->
17:38:45 <ehird> uppercase = char.islower()
17:38:47 <ehird> err
17:38:49 <ehird> isupper
17:38:54 <ehird> lowercase = char.islower()
17:38:54 <ehird> :P
17:43:13 <ehird> c version: 55 lines
17:43:18 <ehird> so, python is quite a bit shorter
17:43:24 <ehird> the programs essentially look the same, though.
17:43:40 <ehird> http://pastie.org/362584.txt?key=bm06tagczdoiybatmth9q
17:44:24 <ehird> err, that transformer assignment needs to be lower
17:44:25 <ehird> whatever
17:46:37 <ehird> am I connected?
17:46:37 <ehird> ping.
17:47:00 <ehird> amusingly, this python
17:47:00 <ehird> shifted = (((ord(char.lower()) - ord('a')) + 13) % 26) + ord('a')
17:47:05 <ehird> is more verbose than this c
17:47:05 <ehird> shifted = (((tolower(c) - 'a') + 13) % 26) + 'a';
17:48:03 <ehird> incidentally, C only does so well at this program because it involves no dynamic allocation whatsoever.
17:48:15 -!- kar8nga has left (?).
17:49:39 <ehird> also, my stdin check fails
17:49:42 <ehird> as I forgot to use strcmp.
17:49:50 <ais523> heh, comparing pointers?
17:49:55 <ehird> conclusion: python is better but sometimes uglier.
17:51:25 <psygnisfive> slereah: no.
17:52:07 <ehird> I should now write some code that actually does anything.
17:52:12 * ais523 looks at the Wiki recent changes
17:52:19 <ais523> oh no, not yet /another/ BF derivative
17:52:51 <oklopol> linkkkkk
17:53:25 <ehird> proposal: bf derivatives are banned
17:53:38 <oklopol> but what about continuous brainfuck
17:53:49 <oklopol> it's gonna be awesome.
17:53:54 <ehird> ais523: I like the syntax, though
17:53:55 <ehird> the swirling dna
17:54:13 <ais523> yes
17:54:23 <ais523> also, the notion of BF derivatives isn't bad as a whole
17:54:27 <ais523> just, they ought to be interesting
17:54:35 <ais523> and most of the ones that people come up with aren't
17:55:17 <ehird> I wonder if I will ever use 25GB of mail storage.
17:55:48 <ehird> (My current gmail account, which I made in 2006 and only started using heavily in around 2008, is using "744MB (10%) of your 7285MB.")
17:55:57 <ehird> (Which is a lot for such a little time I've used it heavily.)
17:57:11 <ehird> I don't think I'm connected.
17:57:48 <ehird> ais523: ping.
17:58:39 <ais523> pong
17:59:09 <ehird> "Why buy a dedicated fart app AND a flashlight, when you can have BOTH, and get a TWITTER CLIENT along with it!"
17:59:14 <oerjan> pyng
17:59:20 <ehird> This person has got the iPhone appstore 100% figured out.
17:59:46 <ais523> heh
17:59:51 <ais523> is that one of the adverts?
18:00:06 <ehird> http://www.atebits.com/pee/
18:00:25 <ehird> they actually sell it :D
18:01:07 <Slereah_> WHAT IS PEE
18:01:11 <Slereah_> I wonder as well!
18:01:34 <psygnisfive> http://atebits.cachefly.net/pee/wow.jpg
18:01:44 <psygnisfive> this looks like a stock photo
18:01:56 -!- puzzlet has quit (Remote closed the connection).
18:02:00 <psygnisfive> but it's odd. i wonder what the photographers were thinking when they planned/took this photo.
18:02:01 -!- puzzlet has joined.
18:02:28 <ehird> psygnisfive: it's from a recent advert bought on reddit
18:02:31 <ehird> advertising viagra or something
18:02:40 <psygnisfive> aha
18:02:46 <ehird> the ad is now gone due to complaints and there are tons of ads on reddit using the same image but advertising things like subreddits.
18:02:53 <psygnisfive> so they were thinking "we should make her look like she'
18:03:04 <ehird> yes, I don't think you have to elaborate psygnisfive.
18:03:05 <psygnisfive> s amazed at the size of the adviewer's engorged penis"
18:03:24 <psygnisfive> well ehird its important to be clear!
18:03:27 <ehird> The Bush Boom: How a Misunderestimated President Fixed a Broken Economy
18:03:28 <ehird> worst
18:03:28 <ehird> book
18:03:30 <ehird> EVAR
18:03:31 <ehird> http://www.amazon.com/Bush-Boom-Misunderestimated-President-Economy/dp/1594670870?ie=UTF8&s=books&qid=1232115413&sr=8-1
18:03:49 <psygnisfive> if i wasnt, you might've thought i meant, "she's amazed at the low low prices of viagra that we're selling"
18:04:05 <psygnisfive> and i wouldnt want you to have wrong assumptions about my perspective on advertisements for viagra
18:05:29 <oklopol> oooooooooo
18:07:48 <ehird> hmm
18:07:51 <ehird> you know what would be cool?
18:07:58 <ehird> an irc server specifically designed for things like bitlbee
18:07:59 <ehird> that is
18:08:03 <ehird> clients can do things like
18:08:07 <ehird> MAKEDUMMY foobarbaz
18:08:11 <ehird> ASDUMMY foobarbaz JOIN #mychannel
18:08:17 <ehird> ASDUMMY foobarbaz PRIVMSG #mychannel :I am totally a real person
18:10:04 <ais523> what is bitlbee?
18:10:55 <ehird> bitlbee is a gateway that lets you use MSN/AIM/Jabber/etc through irc
18:11:03 <ehird> you connect to a special server and your contacts become irc users in a room
18:11:06 <ehird> you can just /msg them and stuff
18:11:29 <ehird> there's plenty of good things that could do with an "IRC interface" with that, I'm just thinking about a server that would make it as easy as writing an irc bot
18:11:34 <ehird> with some special commands to control fake users
18:14:50 <ehird> so. yes.
18:18:46 -!- MigoMipo has joined.
18:21:23 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
18:22:26 -!- ais523 has joined.
18:31:24 -!- ais523 has quit (Client Quit).
18:34:17 <ehird> http://www.noteflight.com/scores/view/2177201ae448ab894682b16d557f5544fb678e7b
18:34:21 -!- puzzlet has quit (Remote closed the connection).
18:34:28 -!- puzzlet has joined.
18:36:00 -!- ais523 has joined.
18:36:26 <ehird> 18:34 puzzlet has joined (n=puzzlet@147.46.241.231)
18:36:26 <ehird> 18:36 ais523 has joined (n=ais523@147.188.254.127)
18:36:28 <ehird> puzzlet == ais523
18:36:42 <ais523> meh, 147 is massive
18:36:49 <ais523> 147.188 is Birmingham University
18:36:59 <ais523> therefore my guess is that puzzlet's on the UK academic network or something connected to it
18:37:03 <ais523> but not in Birmingham
18:37:53 <ehird> umm, puzzlet is chinese I'm prety sure
18:38:07 <ehird> oops. korean
18:38:14 <ais523> interesting
18:38:18 <ehird> (Puzzlet Chung lives in the Republic of Korea. He is one of the administrators of the Korean Wikipedia and the Korean Wikiquote.
18:38:18 <ehird> --http://en.wikipedia.org/wiki/User:PuzzletChung
18:38:21 <ais523> in that case, 147 stretches a long way
18:38:33 <ais523> there are only 256 /8s, and they aren't all used
18:38:43 <ais523> so it's not surprising that some of them go all over the world, I suppose
18:39:19 <ehird> also,http://kiwi.cabal.fi/home/aki/misc/cons-ceremony.txt
18:44:25 <ehird> Hmm. Oh dear. I think I have my editor committed to muscle memory.
18:45:01 <ais523> which editor?
18:45:07 <ais523> both vi and emacs are pretty quick to type
18:45:14 <ehird> I mean, the editor commands.
18:45:18 <ais523> and I have most common words committed to muscle memory, not just editors
18:45:25 <ehird> As in, switching to another editor for daily use would involve a lot of unlearning.
18:45:30 <ais523> and yes, editor commands seems reasonable
18:45:51 <ehird> (it's textmate, FWIW)
18:45:59 -!- BeholdMyGlory has joined.
18:47:40 <lament> i use a 7-string vi in drop-D tuning
18:49:29 -!- Hiato has joined.
19:08:13 <AnMaster> grr
19:08:32 <AnMaster> mysql docs doesn't even say when some sql syntax is non-standard
19:08:39 <ais523> AnMaster: that's easy enough
19:08:43 <AnMaster> postgresql manuals documents it all the time
19:08:45 <AnMaster> clearly
19:08:46 <ais523> /all/ sql syntax is nonstandard
19:08:59 <AnMaster> ais523, for example it seems using LIMIT with UPDATE is non-standard
19:09:08 <AnMaster> I'm porting a program from mysql to postgresql btw
19:09:16 <ais523> AnMaster: LIMIT isn't standard at all
19:09:21 <ais523> although it's certainly useful
19:09:36 <AnMaster> ais523, well, postgresql supports it with SELECT, but nothing else
19:09:54 <ais523> the SQL standard doesn't even have LIMIT as a keyword
19:10:46 <AnMaster> ais523, interestingly, the worst problems so far has been 1) postgresql has bytea, but no blob 2) postgresql wants "" around column names that happens to be keywords, mysql wants ``
19:10:49 <oerjan> an unLIMITed standard
19:10:59 <AnMaster> oerjan, heh
19:11:10 <ais523> AnMaster: yep, quoting is really inconsistent between the DB engines
19:11:12 <oerjan> hey, even i wasn't laughing
19:11:15 <ais523> surely they must have standardised that
19:11:33 <ais523> so why aren't DB engines staying consistent about it?
19:11:48 <AnMaster> ais523, well since I need to support both (eww) I wrote a small wrapper quote_for_stupid_db
19:11:55 <AnMaster> that quotes one word as a column name
19:12:34 <AnMaster> apart from column names and table names the code uses prepared statements everywhere
19:13:36 -!- sebbu has quit (Read error: 104 (Connection reset by peer)).
19:14:01 -!- sebbu has joined.
19:14:57 <AnMaster> ais523, anyway what is worse in this case (which is horrible php code), is that while pdo is supposed to be an abstraction layer, it is kind of useless when it returns mysql blobs as strings and postgresql bytea as streams
19:19:00 -!- KingOfKarlsruhe has joined.
19:20:27 <ehird> ooh, a syntax highlighting program that actually parses textmate theme files to work.
19:20:28 <ehird> nice.
19:21:19 * Hiato hates to interrupt but is concerned that his NASM OS compiles with FASM, yet causes kernel panics randomly
19:21:28 <ehird> #osdev? :P
19:21:35 * Hiato and is wondering what the compiler differences are
19:21:39 <Hiato> :P
19:21:42 <Hiato> roger
19:21:42 <Hiato> thanks
19:21:52 <ehird> Hiato: you have an os?
19:22:09 <Hiato> indeedy
19:22:43 <Hiato> was in NASM, then I started porting it to FASM today so that I could port FASM to it. It's 16bit, real-time mono-tasking (for now)
19:23:01 <ehird> http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=%2Fnetahtml%2FPTO%2Fsrchnum.htm&r=1&f=G&l=50&s1=7,475,086.PN.&OS=PN/7,475,086&RS=PN/7,475,086
19:23:03 <ehird> Patent fail
19:23:11 <ehird> thx ibm
19:23:51 <AnMaster> ehird, err
19:23:58 <AnMaster> ehird, prior art
19:24:08 <ehird> Lol! You think the US patent system cares?
19:24:11 <ehird> Oh, what a comedian
19:24:55 <AnMaster> ehird, this sounds like the definition of the CHAR(n) type...
19:25:06 <ehird> no, it's the definition of TRIM()
19:25:29 <AnMaster> well, using TRIM() in a trigger rather?
19:26:27 <ehird> perhaps.
19:29:32 -!- Zetro has joined.
19:30:41 -!- Mony has joined.
19:33:03 <Mony> plop
19:33:10 <ais523> blob
19:33:18 <oerjan> kablam!
19:45:14 <AnMaster> argh, mysql auto increment NEEDS a NULL in INSERT, it must be listed. PostgreSQL's equivalent requires the column to not be listed
19:45:14 <AnMaster> :(
19:49:46 <ais523> AnMaster: autoincrement is different between all sorts of db engines
19:49:52 <AnMaster> ais523, yes
19:50:31 <AnMaster> ais523, do you know any sort of true DB abstraction layer? A "anti-quirk middleware"
19:50:33 <AnMaster> an*
19:50:37 <ais523> I don't know of one
19:50:39 <ais523> they must exist, though
19:50:46 <ehird> DBI.
19:50:53 <AnMaster> ehird, for (ewwwww) php
19:50:55 <ais523> ehird: that isn't a true abstraction layer
19:51:03 <ais523> it requires you to write the SQL yourself
19:51:12 <ehird> AnMaster: that was not specified. ais523: It translates the SQL to the correct dialect, I believe.
19:51:12 <ais523> in a syntax that the target DB engine understands
19:51:17 <ais523> ehird: no it doesn't, IIRC
19:51:22 <ehird> yes it does, IIRC>
19:51:46 <AnMaster> ehird, well true
19:52:12 <AnMaster> but I'm not using perl, no way I'm rewriting an existing software in perl
19:52:29 <AnMaster> at least this php program has all the DB calls in a single file
19:52:34 <ehird> then tough shit.
19:53:05 <AnMaster> ehird, ais523: also does DBI rewrite or not?
19:53:13 <ais523> Dates and times are returned as character strings in the current
19:53:15 <ais523> default format of the corresponding database engine. Time zone effects
19:53:15 <ehird> 19:51 <ais523> ehird: no it doesn't, IIRC
19:53:16 <ehird> 19:51 <ehird> yes it does, IIRC>
19:53:16 <ais523> are database/driver dependent.
19:53:23 <ais523> from the DBI docs
19:53:25 <ais523> I haven't found a definitive answer to the original question yet
19:53:25 <ehird> I am talking about SQL syntax, ais523.
19:53:26 <ais523> but that's a clue
19:53:58 <AnMaster> ehird, and I'm waiting for you two to make up your mind
19:54:01 <ais523> The DBI itself does not mandate or require any particular language to
19:54:03 <ais523> be used; it is language independent. In ODBC terms, the DBI is in
19:54:04 <ais523> "pass-thru" mode, although individual drivers might not be. The only
19:54:06 <ais523> requirement is that queries and other statements must be expressed as a
19:54:07 <ais523> single string of characters passed as the first argument to the
19:54:09 <ais523> "prepare" or "do" methods.
19:54:12 <ais523> it doesn't even require SQL!
19:54:16 -!- MigoMipo has changed nick to PrepareForMigol0.
19:54:17 <AnMaster> hah
19:54:21 <ehird> k
19:54:35 <AnMaster> ais523, what is ODBC btw? I have seen the term a lot, but never understood what it was
19:54:43 -!- PrepareForMigol0 has changed nick to Migol09.
19:54:44 <ais523> I think it's a DB driver, not sure though
19:54:48 <ehird> letmegooglethatforyou.com/?q=ODBC
19:54:51 <ais523> it's probably something DB-related, anyway
19:54:57 <ais523> ehird: does that site need JavaScript?
19:55:00 <ehird> yes.
19:55:06 <ehird> enable it, it's worth it
19:55:08 <ais523> then it's considerably worse than just linking to Google
19:55:16 <ais523> <ehird> enable it, it's worth it <--- no it isn't
19:55:22 <ehird> ais523: it's a sarcastic insult.
19:55:32 <ehird> if I wanted to be helpful I wouldn't link to it.
19:56:14 <AnMaster> ehird, I have javascript off too
19:56:21 <AnMaster> and not about to turn it on
19:56:24 <ehird> care level: 0
19:56:48 <AnMaster> "In computing, Open Database Connectivity (ODBC) provides a standard software API method for using database management systems (DBMS). The designers of ODBC aimed to make it independent of programming languages, database systems, and operating systems."
19:56:49 <AnMaster> interesting
19:58:00 * AnMaster forces ehird to use MS Query with the Microsoft Excel backend for his databases
20:04:40 -!- oerjan has quit ("Good night").
20:14:29 -!- Zetro has quit (Read error: 104 (Connection reset by peer)).
20:14:49 -!- Zetro has joined.
20:18:16 -!- Migol09 has changed nick to JohnWins.
20:23:06 -!- Judofyr has joined.
20:26:47 -!- BeholdMyGlory has changed nick to ThisIsAReallyLon.
20:27:08 -!- ThisIsAReallyLon has changed nick to BeholdMyGlory.
20:28:15 <ehird> cool, the IRC interface I was thinking about exists
20:29:17 -!- Zetro has left (?).
20:34:05 <AnMaster> ehird, and what is that interface?
20:34:16 <ehird> you have 3 guesses
20:34:55 <AnMaster> not file system based since we talked about that before, not integrated in to zsh since we also talked about that before
20:34:57 <AnMaster> hm
20:35:15 <AnMaster> ehird, are you talking about a client or some server side feature?
20:35:26 <AnMaster> like say, a jabber<->irc proxy
20:35:36 <ehird> IRC interface: an IRC server that provides an interface to another service.
20:35:37 <AnMaster> (that exists yes)
20:35:44 <ehird> For example, bitlbee is an IRC interface for IM services.
20:35:47 <AnMaster> indeed
20:35:59 <AnMaster> but it isn't bitlbee?
20:36:01 <AnMaster> hm
20:36:11 <AnMaster> ehird, is it related to IM?
20:36:17 <ehird> Sort of.
20:36:37 <AnMaster> related to web browser? (like, say cgi::irc but in server)
20:37:04 <AnMaster> ehird, ?
20:37:07 <ehird> nope.
20:37:10 <AnMaster> hm
20:37:54 <AnMaster> ehird, is it for translating between different IRCD procotols?
20:37:56 <AnMaster> protocols*
20:37:59 <ehird> nope.
20:38:02 <AnMaster> ah
20:38:03 <AnMaster> hm
20:38:04 <ehird> brb, feel free to guess while I'm brbing
20:38:18 <AnMaster> ehird, well if it isn't bitlbee I'm out of ideas.
20:38:41 <AnMaster> brb too
20:43:27 <AnMaster> back
20:44:22 -!- Corun has joined.
20:48:33 -!- Mony has quit ("Quit").
20:52:32 -!- Hiato has quit ("Leaving.").
20:54:08 <lament> bass fretboard showing the c major scale:
20:54:08 <lament> O O O O O O O O O O O O O O O
20:54:08 <lament> O O O O O O O O O O O O O O O
20:54:08 <lament> O O O O O O O O O O O O O O O
20:54:08 <lament> O O O O O O O O O O O O O O O
20:54:11 <lament> . . . . : . . . . :
20:55:08 <AnMaster> UNI(mirror N)UN(mirror N)I
20:55:10 <AnMaster> ?
20:55:20 <AnMaster> lament, nice ASCII art!
20:55:32 <lament> it does look pretty
20:55:39 <lament> it looks like a punch tape
20:55:43 <AnMaster> lament, apart from the mirrored N
20:56:00 <AnMaster> hm have you seen that javascript punch card library?
20:56:13 * AnMaster looks for url
20:56:26 <AnMaster> ah yes lament: http://www.outstandingelephant.com/jcquard/
20:56:58 <lament> hehehe
21:00:33 <ais523> yay, this VHDL synthesizer actually seems half-decent
21:00:39 <AnMaster> ais523, nice
21:00:40 <ais523> it gave me several screenfuls of optimiser warnings
21:00:42 <AnMaster> ais523, what one?
21:00:54 <ais523> Synplify Pro, it seems
21:00:55 <lament> AnMaster: that mirror N, could it be a lambda?
21:01:02 <ais523> must be a for-pay expensive one
21:01:06 <ais523> because there are no free ones
21:01:15 <AnMaster> ais523, and you have a copy?
21:01:17 <ais523> which are at all good, and even the rubbish ones are closed-source
21:01:20 <ais523> AnMaster: no, at University
21:01:33 <AnMaster> heh
21:01:45 <AnMaster> lament, hm upper case or lower case?
21:01:56 <ais523> pretty much only companies and universities can afford good VHDL synthesizers
21:01:59 <lament> hard to say
21:02:05 <ais523> I'm amused at the way that anything optimisable is considered a warning, though
21:02:12 <ais523> in VHDL, you're supposed to write optimal code yourself
21:02:13 <AnMaster> lament, don't think so
21:02:17 <lament> ais523: hah
21:02:26 <lament> AnMaster: oh well
21:02:26 <ais523> anything suboptimal is bad style
21:02:33 <ais523> good thing the compiler's catching it for me
21:02:53 <ais523> in my case, I'm doing all sorts of suboptimal things like not using all the codepaths in a function every time I use it
21:03:07 <AnMaster> ais523, eh, how do you then branch?
21:03:08 <ais523> or not running all the commands in a loop every iteration
21:03:18 <ais523> AnMaster: via loop unrolling and constant folding
21:03:33 <ais523> in VHDL, all functions are inlined and all loops are unrolled by the compiler anyway
21:03:46 <ais523> luckily, I trust it to do that job a lot more reliably than I trust me to do it
21:03:48 <lament> so it isn't turing-complete?
21:03:56 <ais523> no
21:03:58 <ais523> finite storage
21:04:08 <ais523> although there are non-loop ways to get infinite repitition
21:04:12 <lament> o_O
21:04:16 <ais523> *repetition
21:04:23 <lament> penrose tilings??
21:04:26 <AnMaster> ais523, how does that work?
21:04:27 <ais523> lament: a <= not b; b <= a
21:04:36 <ais523> causes infinite repetition in VHDL
21:04:38 <ais523> despite not being a loop
21:04:51 <lament> brain explodes
21:04:59 <lament> lazy evaluation?
21:05:39 <ais523> behavioral evaluation
21:05:42 <ais523> not exactly lazy
21:05:49 <ais523> if you don't want the loop to be a tight loop and block your program
21:05:57 <ais523> you can write a <= not a after 10 ns;
21:06:08 <ais523> then the loop only changes once every 10 nanoseconds, and you're fine
21:06:35 <AnMaster> ais523, nice
21:06:44 * AnMaster waits for lament comments on that
21:06:50 <AnMaster> lament's*
21:06:56 <lament> i don't get it :)
21:07:05 <AnMaster> lament, VHDL compiles to hardware
21:07:08 <AnMaster> so timing matters
21:07:15 <lament> but what does a <= not a do?
21:07:27 <AnMaster> well, I guess toggle a
21:07:29 <AnMaster> ?
21:07:34 <AnMaster> is that correct ais523?
21:07:45 <ais523> yes
21:07:57 <AnMaster> ais523, VHDL is event driven right?
21:07:58 <lament> what does <= mean?
21:08:02 <AnMaster> also how does Verilog differs
21:08:07 <ais523> lament: delayed action assignment
21:08:19 <AnMaster> differ*
21:08:25 <ais523> writing a <= b; b <= c; is equivalent to b <= c; a <= b;
21:08:40 <ais523> the assignments all happen at the end of the program/process
21:08:54 <ais523> immediate assignment is := but you aren't allowed to use it, except as local shorthand
21:08:58 <ais523> sort-of like #define
21:09:04 <AnMaster> ais523, huh
21:09:16 <ais523> VHDL has lots of features that can't be synthesized into hardware
21:09:23 <ais523> they're fine on simulators, but you have to avoid them for synthesis
21:09:25 <AnMaster> oh ok
21:09:32 <ais523> this is why I think a VHDL->VHDL compiler would actually be highly useful
21:09:36 <ehird> back
21:10:03 <AnMaster> ehird, so what one was it?
21:10:38 <ais523> heh, this is amusing
21:10:48 <ais523> the compiler warned me that it generated 6 copies of one of my variables
21:10:56 <AnMaster> ais523, I checked their website, it seems to be "contact for price"
21:10:56 <ais523> if you use a variable too much in VHDL, it overheats
21:11:07 <ais523> AnMaster: yep, if you have to ask, you can't afford it
21:11:07 <AnMaster> ais523, wow, sounds like an esolang
21:11:24 <ais523> so the compiler generated extra copies to spread the load around
21:11:27 <ehird> yeah, ask for price = this is too expensive for you
21:11:28 <ehird> :-)
21:11:49 <AnMaster> ehird, indeed
21:13:43 <AnMaster> ais523, and there seems to be an even more advanced product "Synplify Premier", which can handle ASIC too
21:14:05 <ais523> AnMaster: if you have any reason to be doing ASIC synthesis, then you can afford it
21:14:10 <ehird> I like the idea of using a variable too much overheating the "executable" :-)
21:14:12 <AnMaster> ais523, exactly
21:15:04 <ais523> now let's see if this insane design fits on the processor
21:15:10 <ehird> see, I think vhdl synthesizers costing a lot makes sense
21:15:23 <ehird> it's a niche product and making it is extremely difficult
21:15:31 <AnMaster> "ESL synthesis" <-- don't know what that is, seems related to DSPs though
21:15:39 <ehird> and despite being niche, the people who need it really do need it
21:15:45 <ais523> you should try to implement mergesort using nothing but nested FOR loops sometime
21:15:52 <ais523> and no array indexes that can't be hard-coded
21:15:58 <ais523> after the loop's unrolled
21:16:01 <AnMaster> ais523, ouch
21:16:14 <AnMaster> ais523, can't you use a sorting network if it is hardware?
21:16:28 <ais523> AnMaster: that's what it is
21:16:32 <AnMaster> ais523, oh
21:16:34 <ais523> this is the code for generating one
21:16:38 <AnMaster> right
21:16:42 <ais523> and ugh, it seems my design is too complex to fit on the chip
21:16:50 <AnMaster> ouch
21:17:14 <ais523> looks like I'll just have to cut down on some of the PRNGs
21:17:29 <ais523> I have sixteen 32-bit multipliers in there to provide test case data
21:17:35 <ais523> they must be taking up most of the chip, I reckon
21:17:35 <ehird> what are you doing
21:17:35 <AnMaster> ah
21:17:44 <ais523> ehird: project for University
21:17:50 <AnMaster> ehird, what irc gateway was it btw?
21:18:01 <ehird> ais523: what is it?
21:18:05 <ehird> AnMaster: I /msg'd the answer
21:18:09 <AnMaster> oh right
21:18:12 <ehird> don't want to spoil anyone else's guessing :P
21:18:12 <AnMaster> didn't see the tab
21:26:00 <ehird> ais523: would Verilog be easier?
21:26:02 <ais523> yay, Total Number 4 input LUTs: 2600 out of 3840
21:26:09 <ais523> and that was just deleting half the multipliers
21:26:12 <ais523> ehird: no
21:26:20 <ais523> nowadays, VHDL and Verilog are the same lang with different syntax
21:26:24 <ais523> they started out very different
21:26:25 <ehird> ah
21:26:30 <ais523> but all features in one got added to the other, and vice versa
21:32:05 <ais523> Verilog wasn't even intended for synthesis, in the first place
21:32:11 <ais523> but for the construction of verifier testbenches
21:33:38 <ais523> and yay, the design wasn't too difficult to place in the end
21:33:45 <ais523> it only took the compiler 1 minute 47 seconds
21:33:52 <ais523> I've heard cases of it taking days
21:34:51 <ehird> ais523: does this like, actually print to hardware?
21:34:57 <ais523> it will do
21:35:02 <ais523> although I don't have a JTAG cable on me atm
21:35:09 <ais523> nor a reprogrammable logic chip
21:35:14 <ais523> we can only book those out in working hours
21:35:23 <ehird> ais523: oh, so it just reprograms a generic thing?
21:35:24 <ehird> lame
21:35:31 <ehird> i want a CHIP PRINTER :|
21:35:39 <ais523> ehird: that's the ASIC stuff that AnMaster suggested
21:35:41 <ais523> it exists
21:35:47 <ehird> i want it
21:35:49 <ehird> <_<
21:35:51 <ais523> but the typical price is about a million dollars setup cost
21:35:57 <ais523> plus 10 cents for each identical chip you make
21:36:07 <ais523> or up to maybe about 50 cents for complex ones
21:36:14 <ais523> if you make even a single change, that's another million dollars
21:36:34 <ehird> ais523: ... :(
21:36:40 <ehird> I want it, cheaper <_<
21:36:53 <ehird> ... but seriously
21:36:56 <ehird> a million dollars? Whaat
21:37:01 <ais523> there is some progress towards being able to generate arbitrary electronic components
21:37:05 <ehird> Do they do cold fusion or something?
21:37:06 <ais523> ehird: that's how much it costs to retool the factory
21:37:13 <ehird> Sheesh.
21:37:28 <ais523> I've heard there's progress towards printers which you fill with plastic n-type and p-type ink
21:37:33 <ais523> that can print transistors
21:37:40 <ais523> so maybe your wish will be fulfilled in the end
21:37:47 <ais523> at a rather higher unit price, but rather lower setup cost
21:38:26 <ehird> One day it shall be free :<
21:40:17 -!- Corun has quit ("This computer has gone to sleep").
21:42:44 <ais523> next problem: trying to figure out why a program for showing where everything was placed would trigger the firewall on the Windows computers here
21:46:04 <AnMaster> ais523, "report home mode"?
21:46:55 <ais523> maybe
21:47:01 <ais523> or some sort of automatic updates
21:47:13 <AnMaster> ais523, did it work anyway?
21:48:49 <AnMaster> <ais523> ehird: that's how much it costs to retool the factory <-- what does a retool include?
21:48:59 <ehird> also, how big is this factory?
21:49:13 <ais523> ehird: I'm not sure
21:49:19 <ehird> i mean
21:49:21 <ehird> is it a machine
21:49:23 <ehird> or a warehouse
21:49:24 <ehird> :D
21:49:25 <ais523> I think they have massive foundries, but they produce more than one product at a time
21:49:36 <ais523> because you need a big assembly-line-type process
21:53:40 <AnMaster> ais523, but why does it cost 1 million, I mean...
21:53:56 <ehird> AnMaster: because you're making an actual chip.
21:53:58 <ehird> i mean, carbon and shit.
21:54:00 <ehird> silicon.
21:54:01 <AnMaster> ehird, well true
21:54:02 <ehird> melting.
21:54:03 <ehird> and stuff.
21:54:24 <AnMaster> but is it making some sort of "master" copies or something that cost?
21:54:34 -!- Judofyr has quit (Remote closed the connection).
21:55:07 <AnMaster> I mean, a lot of the actual tools wouldn't differ would they?
21:55:17 <ais523> AnMaster: yes, I think so
21:55:24 <ais523> the problem is trying to get all the photomasks into place
21:55:29 <AnMaster> aha
21:55:57 <AnMaster> ais523, how was it done back in the 1980s or so, because you wouldn't have as large batches back then
21:56:19 <AnMaster> smaller markets
21:56:33 <ais523> AnMaster: my guess is much the same way, and the chips ended up more expensive as a result
21:56:44 <AnMaster> ais523, yet they were able to produce C64 and such?
21:56:53 <AnMaster> even though market was smaller
21:57:38 <AnMaster> just consider the sound chipset for it, to a modern sound chipset, surely the modern one has been produced in lot more copies
22:01:37 <ais523> heh, this is great
22:01:44 <ais523> I get a massively big circuit diagram I can look at
22:02:03 <ais523> and I can double click on a component, and it highlights a single instance of the word "if" in the source code, for instance
22:03:32 <ehird> ha
22:12:20 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
22:12:48 -!- puzzlet has joined.
22:13:45 -!- JohnWins has changed nick to MigoMipo.
22:20:04 -!- ais523_ has joined.
22:21:12 -!- olsner has joined.
22:22:08 -!- MigoMipo has left (?).
22:23:53 <ehird> ▁▇▅▄█▃▄▁▂▆
22:24:02 <ais523_> ehird: that's an interesting Unicode-art graph
22:24:07 <ehird> it's a unicode sparkline
22:24:12 <ais523_> btw, ohw do people here think Unicode art compares to ASCII art?
22:24:16 <ehird> ▁▁▂▃▄▄▅▆▇█
22:24:21 <ehird> % 1 to 10
22:24:22 <ehird> *^
22:24:23 <ais523_> and what's a sparkline?
22:24:30 <ehird> http://en.wikipedia.org/wiki/Sparkline
22:24:39 <ehird> in this case, essentially a mini graph
22:25:08 <ais523_> yep
22:25:19 <ehird> the unicode blocks are a bit ugly, but there you go
22:25:22 <ehird> i wrote a program to do it
22:25:51 <Deewiant> █▉▊▋▌▍▎
22:26:59 <ais523_> heh, I just decompiled the resulting circuit into VHDL
22:27:01 <ais523_> it's an utter mess
22:27:13 <ais523_> with variable names like un75_prng_1_s_8_n_XORG
22:27:14 <Deewiant>
22:27:14 <Deewiant> ▗▟
22:27:56 <ehird> whee, now it accepts input from stdin too
22:28:03 <ehird> lovely little 40-line hack.
22:28:33 <ehird> of course, unicode sparklines were someone elses idea and my script is almost identical to their(mozilla ubiquity)'s but there's not that many ways to implement this :P
22:28:50 <ehird> % seq 1 10 | sparkline
22:28:50 <ehird> ▁▁▂▃▄▄▅▆▇█
22:29:00 <ehird> now to make it scale M values into N values
22:29:05 <ehird> i.e., you can compress 1000 data points into 10
22:29:13 <ehird> not hard
22:29:21 <ehird> just split the list every M values, and mean it up
22:29:27 <ehird> hmm, maybe that should go into another program
22:29:27 <ehird> like
22:29:41 <ehird> % seq 1 1000 | squish 10 | sparkline
22:29:43 <ehird> thoughts?
22:30:15 <ais523_> what does squish do?
22:30:25 <ais523_> ah, skips every nth element?
22:30:29 <ehird> ais523_: no
22:30:34 <ais523_> oh, averages blocks of n elements
22:30:38 <ehird> pretty much, yep
22:30:46 <ehird> hrmph, squish requires me to duplicate this code
22:30:47 <ehird> if sys.argv[1:]:
22:30:48 <ehird> input = sys.argv[1:]
22:30:50 <ehird> else:
22:30:52 <ehird> input = re.split(r'\s+', sys.stdin.read().strip())
22:30:54 <ehird> numbers = map(float, input)
22:30:56 <ehird> :-)
22:30:58 <ehird> well, almost
22:31:00 <ehird> sys.argv[2:]
22:31:07 <ehird> since first arg is number to squish too
22:31:08 <ehird> *to
22:33:56 <ais523_> we should so make an esolang based on VHDL
22:34:01 <ais523_> even though it's arguably an esolang itself
22:34:58 -!- ais523 has quit (Read error: 110 (Connection timed out)).
22:39:31 -!- ais523_ has changed nick to ais523.
22:41:00 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
22:41:04 -!- puzzlet has joined.
22:42:23 <ais523> hmm... since when did <i> become a block element on Slashdot?
22:42:30 <ais523> OK, I get that it's unsemantic
22:42:41 <lament> my gtalk status line: Azure a Flatus volant Or
22:42:45 <ais523> but still...
22:42:57 <ais523> lament: looks like a coat of arms description
22:43:08 <lament> yeah, it's a blazon
22:47:06 <ehird> ais523: do you think squish(1) should expand values too?
22:47:07 <ehird> e.g.
22:47:11 <ehird> squish 3 1 2
22:47:13 <ehird> would become
22:47:14 <ehird> 1 1.5 2
22:48:14 <ais523> may as well
22:48:19 <ais523> also, wouldn't the 1 2 be on stdin
22:48:21 <ehird> that's harder though :-)
22:48:23 <ehird> ais523: can be
22:48:24 <ais523> or can it take from stdin or arguments?
22:48:27 <ehird> if you omit the arguments, it reads from stdin
22:48:32 <ehird> same with sparkline(1)
22:48:39 * ehird tries to figure out how to do expansion easily
22:50:36 <ehird> uh oh
22:50:37 <ehird> % squish 3 1 2 3 4 | xargs echo
22:50:38 <ehird> 1 2 3 4
22:50:40 <ehird> I hate off by one errors
22:52:25 <ehird> yay, fixed
22:52:41 <ehird> ok, who has a bunchload of numbers they want turned into a sparkline?
22:52:51 -!- BeholdMyGlory has quit ("bye").
22:53:28 <ehird> hmm?
22:54:52 <AnMaster> jm
22:54:54 <AnMaster> hm*
22:54:54 <AnMaster> idea
22:55:00 <AnMaster> I just had a great idea...
22:55:04 <AnMaster> that netbsd toaster
22:55:08 <Deewiant> ehird: http://www.eveandersson.com/pi/digits/1000000
22:55:08 <AnMaster> it should have transactions
22:55:15 <AnMaster> so if you cancel the toast
22:55:20 <AnMaster> they aren't burnt!
22:55:33 <AnMaster> no idea how to implement it :(
22:55:53 <ehird> Deewiant: hee, sure
22:56:14 <Deewiant> and then http://antwrp.gsfc.nasa.gov/htmltest/gifcity/e.1mil
22:59:17 <AnMaster> http://filebin.ca/nastsa/pi_data.txt (16 million)
23:00:26 <AnMaster> http://ja0hxv.calico.jp/pai/epivalue.html <-- 100 billion... split over multiple files
23:00:35 <ehird> initial testing:
23:00:36 <ehird> % curl http://www.eveandersson.com/pi/digits/1000000 2>/dev/null | python -c 'from BeautifulSoup import BeautifulSoup; import sys; print " ".join(list(BeautifulSoup(sys.stdin).pre.renderContents().replace("\n", "").replace("3.", "")))' | wc -w
23:00:38 <ehird> 1000000
23:00:40 <ehird> good
23:00:45 <ehird> ok, now to | squish 100 | sparkline
23:01:05 <ehird> % curl http://www.eveandersson.com/pi/digits/1000000 2>/dev/null | python -c 'from BeautifulSoup import BeautifulSoup; import sys; print " ".join(list(BeautifulSoup(sys.stdin).pre.renderContents().replace("\n", "").replace("3.", "")))' | squish 100 | sparkline
23:01:07 <ehird> ▄▆▄▆▄▃▄▃▂▅▄▅▁▅▄▅▅▅▆▅▂▄▄▄▆▅▇▅▅▅▅▅▄▇▆▅▂▁▄▂▄▆▄▇▄▅▇▇▆▅▂▆▇▆▆▂▆▆▂▅▅▃▄▂▃▅▆▃▃▇▃▄█▅▄▂▆▆▄▇▃▅▄▇▅▆▂▆▆▄▄▃▂▆▆▆▅▃▁▄
23:01:11 <AnMaster> http://ja0hxv.calico.jp/pai/ee1value.html <-- e to 100 billion digits, again multiple files
23:01:11 <ehird> Deewiant: you're welcome.
23:01:15 <ehird> that python invocation is really ugly though.
23:01:17 <AnMaster> ehird, wtf is that?
23:01:26 <AnMaster> some bars in unicode?
23:01:26 <Deewiant> ehird: :-)
23:01:26 <ehird> AnMaster: that's the first million digits of pi, graphed as a sparkline
23:01:30 <ehird> you know, what we've been discussing.
23:01:36 <AnMaster> ehird, I was afk
23:01:39 <ehird> ah.
23:01:46 <ehird> Deewiant: conclusion: pi is random :P
23:01:46 <Deewiant> ehird: so how does that come out to less than a million characters
23:01:56 <ehird> Deewiant: | squish 100 |
23:01:56 <Deewiant> i.e. what does the squishing do
23:02:10 <Deewiant> ehird: yeah, but what's the transformation
23:02:11 <ehird> Deewiant: basically, it divides the input into the right amount of segments
23:02:16 <ehird> and runs mean on them
23:02:30 <ehird> % squish 5 1 2 3 4 5 6 7 8 9 10 | xargs echo
23:02:30 <ehird> 1.5 3.5 5.5 7.5 9.5
23:02:43 <ehird> (first arg is result length)
23:03:01 <AnMaster> ehird, links for these programs?
23:03:12 <Deewiant> right, so you preserve the arithmetic mean
23:03:13 <ehird> AnMaster: ~ehird/bin/{squish,sparkline}
23:03:21 <AnMaster> ehird, care to pastebin them?
23:03:23 <AnMaster> :)
23:03:28 <ehird> AnMaster: sure, after I've processed e
23:03:34 <AnMaster> ehird, right :)
23:04:34 <ehird> the python invocation is ugly, but html scraping is ugly.
23:04:43 <AnMaster> <ehird> % squish 3 1 2 3 4 | xargs echo
23:04:43 <AnMaster> <ehird> 1 2 3 4 <-- why the xargs echo?
23:04:48 <ehird> AnMaster: because it outputs one per line
23:04:52 <AnMaster> ah
23:04:54 <ehird> since that's the unixy standard
23:05:00 <AnMaster> true
23:05:23 <AnMaster> ehird, would you say sendmail is unixy?
23:05:41 <ehird> it doesn't exactly do one thing, and it doesn't exactly do it well.
23:05:43 <ehird> so... no.
23:05:54 <AnMaster> ehird, it is however traditional unix software
23:05:55 <AnMaster> :)
23:06:04 <AnMaster> so unix isn't unixy
23:06:15 <ehird> correct.
23:06:22 <AnMaster> what about dd?
23:06:25 <ehird> plan 9 is the first system applying the unix philosophy to a reasonable degree
23:06:27 <AnMaster> I don't think it is unixy
23:06:34 <ehird> AnMaster: it's a swiss army knife, and it's inconsistent with hte rest of the system
23:06:35 <ehird> -> not unixy
23:06:44 <ehird> Deewiant: here comes yer e sparkline
23:06:46 <AnMaster> ehird, indeed, command line argument format is weird
23:06:52 <ehird> % curl http://antwrp.gsfc.nasa.gov/htmltest/gifcity/e.1mil 2>/dev/null | python -c 'from BeautifulSoup import BeautifulSoup; import sys; print " ".join(list(BeautifulSoup(sys.stdin).hr.nextSibling.replace("e =", "").replace(" ", "").replace("\n", "").replace("2.", "")))' | squish 100 | sparkline
23:06:53 <ehird> ▄▂▃▄▄▁▁▄▄▄▄▂▃▄▄▁▂▃▂▆▂▃▅▄▇▄▂▅▅▅▃▄▃▂▅▃▂▃▄▅▄▁█▅▃▂▄▅▁▄▄▄▄▄▃▃▁▄▄▅▃▃▅▆▄▃▄▄▅▄▂▂▃▄▄▄▃▄▂▅▂▄▄▇▅▅▄▅▄▆▃▄▆▄▄▃▃▃▅▅
23:06:57 <ehird> conclusion: e is also random.
23:07:21 <ehird> interestingly,
23:07:27 <ehird> squish gives _all_ 4s
23:07:29 <ehird> i.e.
23:07:32 <ehird> 4.5119 4.4689 4.481 4.5036 4.5132 4.4527 4.4554 4.5137 4.5147 (...)
23:07:39 <ehird> I wonder why? that's very odd.
23:07:46 <AnMaster> ehird, did it do so for pi too?
23:07:51 <ehird> I'll check
23:08:09 <ehird> ... yes.
23:08:13 <AnMaster> ehird, a bug?
23:08:26 <AnMaster> anyway please pastebin sparkline?
23:08:32 <ehird> I don't think it's a bug, % seq 1 1000 | squish 100 works fine
23:08:37 <ehird> I guess it's just an odd numerical property o_O
23:08:40 <Deewiant> rather obvious?
23:08:42 <ehird> AnMaster: yes, I will in a bit
23:08:46 <ehird> Deewiant: is it? elaborate :P
23:08:47 <Deewiant> ehird: it's around 9/2
23:08:52 <ehird> ah
23:09:03 <Deewiant> and we've got stuff in the range 0-9 randomly distributed
23:09:13 <ehird> of course
23:09:14 <AnMaster> ah I see
23:09:21 <ehird> one thing that saddens me about squish/sparkline
23:09:26 <AnMaster> ?
23:09:29 <ehird> is that there's one piece of almost identical code in them :P
23:09:35 <ehird> sparkline:
23:09:37 <ehird> if sys.argv[1:]:
23:09:37 <ehird> input = sys.argv[1:]
23:09:38 <Deewiant> ehird: make a library out of it
23:09:39 <ehird> else:
23:09:41 <ehird> input = filter(None, re.split(r'\s+', sys.stdin.read().strip())) or [0]
23:09:43 <ehird> numbers = map(float, input)
23:09:45 <ehird> squish:
23:09:47 <ehird> if sys.argv[2:]:
23:09:49 <ehird> input = sys.argv[2:]
23:09:50 <AnMaster> ehird, command line parsing you mean
23:09:51 <ehird> else:
23:09:53 <ehird> input = filter(None, re.split(r'\s+', sys.stdin.read().strip()))
23:09:55 <ehird> numbers = map(float, input)
23:09:57 <ehird> Deewiant: surely too small for that
23:09:59 <ehird> I don't want to tell people "Also, download this lib."
23:10:01 <ehird> AnMaster: not really
23:10:02 <Deewiant> ehird: surely not
23:10:03 <ehird> just "give me inputs from arguments or stdin"
23:10:22 <Deewiant> ehird: doesn't python have some kind of magical library installation tool
23:10:23 <ehird> Deewiant: % curl http://blahblah -O blah; blah
23:10:28 <ehird> is fast
23:10:28 <Deewiant> like CPAN, cabal, DSSS, etc
23:10:29 <ehird> Deewiant: yes
23:10:37 <ehird> but tbh
23:10:39 <ehird> it's 5 SLOC
23:10:40 <ehird> who cares
23:10:50 <MizardX> re.split(r'\s+', sys.stdin.read().strip()) == sys.stdin.read().strip().split()
23:10:54 <Deewiant> 5 SLOC times 100 projects is 500 SLOC
23:11:13 <ehird> MizardX: does that split on all whitespace?
23:11:16 <MizardX> yes
23:11:19 <ehird> okay then
23:11:33 <ehird> MizardX: what about the filter(None, ) ugliness?
23:11:39 <ehird> it's to stop empty inputs giving ['']
23:13:13 <MizardX> (w for w in sys.stdin.read().strip().split() if w) ... maybe better with filter
23:13:31 <ehird> yeah, I'll just put it in a library if I ever expand it
23:13:41 <ehird> % wc -l sparkline
23:13:42 <ehird> 38 sparkline
23:13:43 <ehird> % wc -l squish
23:13:45 <ehird> 52 squish
23:13:47 <ehird> not bad.
23:13:51 <ehird> I should probably run slocc or something on them instead.
23:14:11 <MizardX> [ float(w) for w in sys.stdin.read().strip().split() if w ]
23:14:30 <ehird> nah, the float mapping is after to not duplicate it per input source
23:14:54 <AnMaster> ehird, download link? going brb in a sec
23:15:00 <AnMaster> brb
23:15:08 <ehird> AnMaster: sheesh, be patient
23:16:18 <MizardX> strip().split() does not leave any empty elements
23:16:27 <ehird> oh, nice
23:16:43 <ehird> there, that's better
23:17:00 <ehird> % squish 3 1
23:17:00 <ehird> Fewer numbers (1) than the target amount (3)!
23:17:13 <ehird> I probably need a squap or something to expand.
23:17:21 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
23:18:12 -!- puzzlet has joined.
23:18:35 <MizardX> What's the first argument for?
23:19:02 <ehird> MizardX: target numbers
23:19:12 <ehird> squish N means "squish the values I give you into N values"
23:19:22 <ehird> % seq 1 100 | squish 10 | xargs echo
23:19:22 <ehird> 5.5 15.5 25.5 35.5 45.5 55.5 65.5 75.5 85.5 95.5
23:20:29 <MizardX> oh, {ehird} (first arg is result length)
23:21:03 <MizardX> I was confused by % squish 5 1 2 3 4 5 6 7 8 9 10 | xargs echo -> 1.5 3.5 5.5 7.5 9.5
23:21:09 <ehird> :)
23:21:17 <ehird> mostly you'll give it stuff via stdin
23:21:37 <ais523> ehird: xargs echo? that's clever
23:21:41 <ehird> yes
23:21:42 <ais523> normally I do that using tr
23:22:10 <ais523> seems like an utter abuse of xargs
23:22:16 <ehird> actually
23:22:18 <ehird> just xargs works
23:22:25 <ehird> % seq 1 100 | squish 10 | xargs
23:22:25 <ehird> 5.5 15.5 25.5 35.5 45.5 55.5 65.5 75.5 85.5 95.5
23:22:27 <ehird> who'dathunkit?
23:23:14 <ais523> it's still an abuse
23:23:21 <MizardX> xargs = print sys.stdin.read().strip().split() :)
23:23:32 <ehird> err, no
23:23:35 <ais523> on DJGPP, xargs does weird stuff to avoid ever passing the arguments directly
23:23:40 <ais523> due to the command-line length limit
23:23:43 <ehird> xargs = print ' '.join(sys.stdin.read().strip().split('\n'))
23:23:50 <ehird> or rather, xargs echo
23:23:53 <ehird> ais523: it's not an abuse
23:23:56 <MizardX> ah, forgot join
23:24:03 <ehird> we have values on multiple lines, and we want to give them as arguments to one command - echo
23:24:07 <ehird> that is what xargs is for
23:24:08 <ais523> well, I suppose so
23:24:12 <ehird> xargs defaulting to echo is just even more convenient
23:24:19 <ehird> MizardX: and splitting on '\n'
23:24:21 <ais523> I see xargs as passing file lists to things, specifically
23:24:26 <AnMaster> back
23:24:33 <ehird> ais523: then you see wrong
23:24:37 <ehird> NAME
23:24:37 <ehird> xargs -- construct argument list(s) and execute utility
23:24:39 <AnMaster> ais523, nah, you use -exec to find
23:24:44 <AnMaster> ais523, much safer
23:24:44 <ehird> MizardX: hmm actually xargs splits on all whitespace
23:24:50 <AnMaster> considering newlines in filenames
23:24:53 <AnMaster> and so on
23:25:00 <ehird> yeah I put newlines in my filenames all the time.
23:25:13 <ais523> ehird: does `printf "ab cd\nef gh" | xargs ls` list the files "ab cd" and "ef gh"
23:25:17 <AnMaster> ehird, if I want to run a script as root to clean out /tmp
23:25:19 <ais523> or the 4 files ab cd ef gh?
23:25:27 <ehird> ais523: latter
23:25:35 <ais523> ehird: something's wrong, then
23:25:35 <AnMaster> well
23:25:39 <AnMaster> unusable to me then
23:25:40 <ehird> ais523: why?
23:25:43 <ehird> it splits on all whitespace
23:25:50 <AnMaster> since I often need to work on files with spaces in them
23:26:04 <ehird> AnMaster: sure.
23:26:05 <ais523> ehird: so why are you explicitly splitting on \n in your program above
23:26:15 <ais523> AnMaster: so do I, mostly trying to deal with Windows program URLs via Wine
23:26:16 <ehird> ais523: 23:24 <ehird> MizardX: hmm actually xargs splits on all whitespace
23:26:26 <ais523> anyway, I have to go now
23:26:32 <ais523> or I'll miss the last bus
23:26:33 <AnMaster> ais523, cya
23:26:39 -!- ais523 has quit.
23:26:39 <AnMaster> afk again
23:27:59 <ehird> Deewiant: any other numbers you want graphed?
23:28:13 <ehird> ooh, I should graph the size of the IRC logs in #esoteric
23:31:26 <ehird> from 03.01.17 to 08.10.31:
23:31:27 <ehird> % wc -c *.*.* | head -n -1 | perl -pe's/\s+(\d+).*/$1/' | squish 100 | sparkline
23:31:28 <ehird> ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▁▂▂▂▂▂▃▁▁▁▂▂▁▁▁▁▂▁▁▃▃▂▂▂▁▁▄▃▂▂▃▂▁▂▂▄▅▄▃▂▃▃▂▃▄▄▃▆▅▄▃▄▆▇▇▆▆█
23:31:39 <ehird> conclusion: this place only gets more active over time.
23:32:16 <ehird> tl;dr 10-length version: ▁▁▁▁▂▂▃▄▄█
23:33:23 <ehird> tl;dr 2-length comedy version: ▁█
23:38:02 <FireFly> :D
23:38:31 <MizardX> def chunked(iterable,size): return itertools.izip(*[iter(iterable)]*size) ... print ' '.join(str(1.0 * sum(chk) / len(chk)) for chk in chunked((float(x) for x in sys.argv[2:] or sys.stdin.read().strip().split()),int(sys.argv[1])))
23:38:32 <ehird> whoaaaa ,this looks awesome: http://pastie.org/362943.txt
23:38:39 <ehird> MizardX: ok, and ? :
23:38:40 <ehird> :P
23:38:48 <ehird> your chunking fails
23:38:53 <ehird> as it doesn'taccount non-divisible lengths
23:39:14 <ehird> so... mine is more elegant, works better, and is probably faster :-P
23:41:17 <ehird> p.s. i generated that arrow like this
23:41:17 <ehird> for i in `seq 20`; do (seq $i; seq $i | tac) | sparkline; done; for i in `seq 20 | tac`; do (seq $i; seq $i | tac) | sparkline; done
23:51:40 <ehird> Deewiant: i just read one of your reddit comments!
23:51:43 <ehird> everyone should stop internet-stalking me
23:51:54 <psygnisfive> ehird
23:52:00 <psygnisfive> what on earth are you doing there
23:52:19 <ehird> i'd tell you, but it'd be annoyingly tedious and you wouldn't understand.
23:53:41 <psygnisfive> i get that you're graphing channel activity
23:53:47 <psygnisfive> i was more nterested in what you're using to do it
23:54:00 <ehird> wc(1), squish(1) and sparkline(1)
23:54:15 <ehird> the latter two I wrote myself
23:54:28 <ehird> also, the pastie link I gave is just to some random arty thing I made with it
23:54:30 <ehird> not channel activity
23:55:42 <ehird> http://www.noteflight.com/scores/view/2177201ae448ab894682b16d557f5544fb678e7b
23:56:35 <olsner> kioskmongo! </random>
23:58:55 <psygnisfive> and i presume wc, squish, and sparkline are run in the shell?
23:59:15 <AnMaster> ehird, so link?
23:59:22 <AnMaster> if not I'm going to bed in a second
2009-01-17
00:02:06 <ehird> naw.
00:02:08 <ehird> psygnisfive: no shit
00:02:53 <psygnisfive> ok. i was just curious.
00:03:01 <psygnisfive> so! ehird, how do you make your ircbots?
00:03:08 <ehird> by hand.
00:03:13 <psygnisfive> yes :P
00:03:22 <psygnisfive> i mean what languages/tools do you use to achieve it
00:03:23 <AnMaster> ehird, no download?
00:03:51 <ehird> AnMaster: not yet :D
00:04:00 <ehird> psygnisfive: Python or whatever.
00:04:08 <AnMaster> ehird, well can you paste it in /msg so I can read it tomorrow then?
00:04:13 <AnMaster> since I'm going to bed now
00:04:18 <ehird> what, you can't read the logs? :P
00:04:24 <AnMaster> and I usually run out of logs
00:04:24 <ehird> fine
00:04:29 <AnMaster> thanks a lot ehird
00:04:41 <psygnisfive> if you use python, how do you hook into IRC?
00:04:44 * AnMaster need to go to buy some more logs at the mall tomorrow
00:04:52 <AnMaster> needs*
00:06:58 <AnMaster> night all!
00:07:07 <ehird> psygnisfive: a network connection.
00:07:13 <ehird> do you know anything about programming...?
00:09:15 -!- KingOfKarlsruhe has quit (Remote closed the connection).
00:09:27 <psygnisfive> yes, ehird, i know plenty about programming. :P
00:09:32 <ehird> evidently.
00:09:41 <psygnisfive> i DONT know about using python to connect to an IRC server
00:09:50 <ehird> learn about network programming.
00:09:53 <ehird> then, learn the irc protocol.
00:09:56 <ehird> then put the two together.
00:10:26 <psygnisfive> an appropriate answer from you would be something more like "I use the so and so class to handle the communication with the server"
00:10:26 <psygnisfive> :P
00:10:27 <ehird> psygnisfive: do you know how to IRC over telnet?
00:10:34 <ehird> also, I don't.
00:10:47 <ehird> I write/read the IRC protocol to a socket because it's trivial and wrapping irc only leads to pain along the line.
00:11:09 <psygnisfive> ok.
00:11:25 <ehird> psygnisfive: do you know how to irc over telnet?
00:11:31 <psygnisfive> no
00:11:48 <ehird> psygnisfive: open a shell.
00:11:48 <ehird> telnet irc.freenode.net 6667
00:11:48 <ehird> type this in:
00:11:59 <ehird> USER blahblah * * :foo baz
00:12:03 <ehird> NICK blahblahfoo
00:12:05 <ehird> JOIN #esoteric
00:12:10 <ehird> PRIVMSG #esoteric :HELLO
00:13:13 <psygnisfive> connection timed out :(
00:13:25 <ehird> psygnisfive: at which part?
00:13:59 <psygnisfive> NOTICE AUTH :*** Looking up your hostname...
00:14:00 <psygnisfive> NOTICE AUTH :*** Checking ident
00:14:01 <psygnisfive> NOTICE AUTH :*** Found your hostname
00:14:03 <psygnisfive> NOTICE AUTH :*** No identd (auth) response
00:14:05 <psygnisfive> ERROR :Closing Link: 127.0.0.1 (Connection Timed Out)
00:14:07 <psygnisfive> Connection closed by foreign host.
00:14:17 <ehird> psygnisfive: you typed too slowly
00:14:19 <ehird> type the USER/NICK lines faster
00:14:26 <ehird> the login procedure is timed
00:14:28 <ehird> the rest isn't though
00:14:36 <psygnisfive> oh i didnt realize that that was the "prompt" so to speak.
00:14:41 <ehird> yes.
00:14:43 <psygnisfive> it was just a blank line. hah.
00:14:44 <psygnisfive> ok.
00:15:11 <FireFly> Heh
00:15:12 <psygnisfive> what are the parts of USER blah blah * * :foo baz?
00:15:19 <ehird> err
00:15:22 <ehird> it's USER blahblah * * :foo baz
00:15:27 <ehird> psygnisfive: do it first, then you'll se
00:15:28 <ehird> e
00:15:32 <psygnisfive> :P
00:16:24 <ehird> psygnisfive: well?
00:16:32 <psygnisfive> same thing.
00:16:46 <psygnisfive> NOTICE AUTH :*** Looking up your hostname...
00:16:46 <psygnisfive> NOTICE AUTH :*** Found your hostname, welcome back
00:16:47 <ehird> psygnisfive: copy the shell session and paste it here
00:16:48 <psygnisfive> NOTICE AUTH :*** Checking ident
00:16:50 <psygnisfive> NOTICE AUTH :*** No identd (auth) response
00:16:52 <psygnisfive> USER blahblah * * :foo baz
00:16:52 <ehird> ok
00:16:54 <psygnisfive> ERROR :Closing Link: 127.0.0.1 (Connection Timed Out)
00:16:56 <psygnisfive> Connection closed by foreign host.
00:17:02 <ehird> psygnisfive: start typing as soon as you hit enter on the telnet
00:17:05 <ehird> you don't have to wait for the server lines
00:17:08 <psygnisfive> ok.
00:17:25 -!- blahblahfoo has joined.
00:17:28 <blahblahfoo> HELLO
00:17:34 <ehird> blahblahfoo: HELLO TO YOU TOO
00:17:55 <ehird> psygnisfive: do a /whois blahblahfoo in your regular client
00:17:57 <blahblahfoo> ... I'm anmaster... look it works, same lines you pasted ehird. So well
00:18:07 <ehird> wut
00:18:13 <AnMaster> blahblahfoo == PEBKAC
00:18:14 <psygnisfive> he's saying that its not me
00:18:15 <AnMaster> err
00:18:15 <psygnisfive> cause its not
00:18:18 <AnMaster> psygnisfive
00:18:23 <AnMaster> is having PEBKAC
00:18:26 <AnMaster> if he fails to connect
00:18:34 <ehird> he just succeeded, dumbass
00:18:36 <ehird> see above
00:18:37 -!- blahblahfoo has quit (Client Quit).
00:18:41 <psygnisfive> that was anmaster
00:18:46 <ehird> oh.
00:18:46 <AnMaster> ehird, that was me yes
00:18:49 <AnMaster> * blahblahfoo (n=blahblah@d90-130-2-10.cust.tele2.se) has joined #esoteric
00:18:53 <AnMaster> .cust.tele2.se
00:18:53 <psygnisfive> <blahblahfoo> ... I'm anmaster
00:19:05 <ehird> sooo, psygnisfive try again: P
00:19:10 <AnMaster> psygnisfive, also if you fail at it you are pasting too fast or too slow
00:19:23 <ehird> shut up AnMaster
00:19:32 <ehird> being condescending is not helpful, unless you're microsoft.
00:19:55 <psygnisfive> darryl-mcadamss-macbook-pro-15:~ darrylmcadams$ telnet irc.freenode.net 6667
00:19:56 <psygnisfive> Trying 209.177.146.34...
00:19:57 <psygnisfive> USER blahblah * * :foo bazConnected to chat.freenode.net.
00:19:59 <psygnisfive> Escape character is '^]'.
00:20:00 <AnMaster> ehird, how it is helpful if you are MS?
00:20:01 <psygnisfive> USER blahblah * * :foo bazNOTICE AUTH :*** Looking up your hostname...
00:20:03 <psygnisfive> NOTICE AUTH :*** Found your hostname, welcome back
00:20:05 <psygnisfive> NOTICE AUTH :*** Checking ident
00:20:07 <psygnisfive> NOTICE AUTH :*** No identd (auth) response
00:20:09 <psygnisfive> ERROR :Closing Link: 127.0.0.1 (Connection Timed Out)
00:20:11 <psygnisfive> Connection closed by foreign host.
00:20:12 <ehird> psygnisfive: where's the NICK line.
00:20:17 <AnMaster> yes indeed
00:20:24 <psygnisfive> oops. :D
00:20:29 <ehird> 00:11 <ehird> type this in:
00:20:29 <ehird> 00:12 <ehird> USER blahblah * * :foo baz
00:20:30 <ehird> 00:12 <ehird> NICK blahblahfoo
00:20:32 <ehird> 00:12 <ehird> JOIN #esoteric
00:20:34 <ehird> 00:12 <ehird> PRIVMSG #esoteric :HELLO
00:21:06 <psygnisfive> theeere we do.
00:21:19 <ehird> i see no blahblahfoo in here.
00:21:21 <ehird> have you done the other lines?
00:21:22 <AnMaster> psygnisfive, also read RFC 1459, though no one obey it
00:21:25 <ehird> no.
00:21:26 <psygnisfive> hold on you
00:21:28 <ehird> don't read rfc 1459.
00:21:30 <ehird> it's worthless
00:21:33 <AnMaster> ehird, better than nothing
00:21:39 <ehird> not really.
00:21:45 -!- augur_ has joined.
00:21:56 <ehird> hi augur_
00:22:10 <AnMaster> heh
00:22:10 <ehird> oi, augur_
00:22:13 <AnMaster> nice
00:22:16 <ehird> do a PRIVMSG
00:22:28 <augur_> x.x
00:22:29 <AnMaster> though he fails to type when his input seems to get overwritten I bet
00:22:43 <ehird> AnMaster: fuck off if you're just going to talk about how much of an idiot he is, please
00:22:52 <AnMaster> ehird, well I fail at it
00:22:55 <AnMaster> so..
00:22:59 <augur_> yeah
00:23:00 <AnMaster> no I'm not saying that
00:23:03 <ehird> k
00:23:06 <AnMaster> it takes getting used to
00:23:20 <psygnisfive> shit does get overwritten
00:23:24 <AnMaster> hm did I part and join?
00:23:32 <ehird> psygnisfive: so, now you've seen:
00:23:33 <psygnisfive> and ignoring the overwrite doesnt suffice
00:23:33 <ehird> how to connect
00:23:35 <ehird> how to join
00:23:38 <ehird> how to send a message
00:23:39 * AnMaster is testing his bnc "don't part channel ever"
00:23:40 <ehird> and
00:23:40 <AnMaster> ehird, ^
00:23:42 <psygnisfive> so i have, sir, so i have!
00:23:44 <ehird> what received messages look like
00:23:47 <ehird> AnMaster: nope, you didn't
00:23:53 <ehird> psygnisfive: so.
00:23:53 <AnMaster> ehird, great it works finally _D
00:23:54 <AnMaster> :D*
00:24:02 <ehird> psygnisfive: open a tcp socket to irc.freenode.net, port 6667
00:24:09 -!- augur_ has quit (Remote closed the connection).
00:24:10 <ehird> print the connection lines, including a join
00:24:18 <ehird> then just use a regexp to match the incoming message lines as you see
00:24:22 <ehird> and react with matching privmsgs
00:24:26 <psygnisfive> yep. thank you sir :D
00:24:28 <ehird> btw, it's USER ident * * :realname
00:24:35 <ehird> is what the USER command does
00:24:37 <AnMaster> ehird, those * have meaning though
00:24:40 <psygnisfive> ok
00:24:41 <ehird> AnMaster: not really
00:24:45 <ehird> in the newer irc rfc, yes.
00:24:49 <ehird> in the older one, everyone ignores them.
00:24:52 <AnMaster> <username> <hostname> <servername> <realname>
00:24:55 <ehird> net result is it's best to leave them as *
00:25:03 <ehird> but you value standards over things that actually work, I realise
00:25:06 <AnMaster> ehird, true
00:25:13 <AnMaster> no one use them
00:25:14 <psygnisfive> if i get around to coding my little language, i will create a bot for it
00:25:20 <AnMaster> I was just pointing out that they have meaning
00:25:29 <psygnisfive> so youz guys can play with it
00:25:32 <psygnisfive> if you want
00:25:34 <ehird> cool.
00:25:41 <ehird> make sure to pick an obscure bot prefix :P
00:25:46 <ehird> say, $$ or something
00:25:47 <ehird> $$ code
00:25:52 <psygnisfive> i need a name for the language first tho
00:26:03 <ehird> psygnisfive: fgsfds
00:26:07 <psygnisfive> BRILLIANT
00:26:42 <ehird> % (seq 10 | tac; seq 10) | sparkline
00:26:42 <ehird> █▇▆▅▄▄▃▂▁▁▁▁▂▃▄▄▅▆▇█
00:26:43 <ehird> wheeeeeeeeeee
00:26:57 <psygnisfive> i find it mildly humorous that theres a book on tree-based automata called "tata"
00:27:20 <AnMaster> ehird: (for i in 1 2 3; do seq 10 | tac; seq 10; done) | sparkline
00:27:27 <AnMaster> should be fun
00:27:33 <AnMaster> maybe you need 9 at the end
00:27:34 <AnMaster> not sure
00:27:56 <ehird> AnMaster: ok, now make it cycle around and do a clear each time :-)
00:27:57 <ehird> so you get waves
00:28:12 <AnMaster> ehird, well pastebin the result?
00:28:23 <ehird> hm?
00:28:27 <ehird> % (for i in 1 2 3; do seq 10 | tac; seq 10; done) | sparkline
00:28:28 <ehird> █▇▆▅▄▄▃▂▁▁▁▁▂▃▄▄▅▆▇██▇▆▅▄▄▃▂▁▁▁▁▂▃▄▄▅▆▇██▇▆▅▄▄▃▂▁▁▁▁▂▃▄▄▅▆▇█
00:28:32 <AnMaster> right
00:28:37 <AnMaster> ehird, as for waves hm...
00:28:39 <ehird> just making that cycle around + clear should make waves
00:28:46 <AnMaster> can you start somewhere else?
00:28:53 <psygnisfive> rolling hills!
00:28:56 <AnMaster> as in 1..10..1
00:28:58 <AnMaster> and so on
00:28:59 <AnMaster> err
00:29:03 <ehird> AnMaster: using seq,
00:29:05 <ehird> seq START END
00:29:10 <ehird> (seq END is seq 1 END)
00:29:22 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)).
00:29:26 <AnMaster> ehird, you need to move the start/end one to the left each time
00:29:29 <AnMaster> before the clear
00:29:32 <ehird> yes
00:29:36 * ehird tries
00:29:52 <AnMaster> well I won't try write it unless you paste your sparkline program
00:30:11 <AnMaster> pastebin*
00:30:27 -!- bsmntbombdood has joined.
00:30:41 <AnMaster> so night really now, I need to sleep
00:30:46 <ehird> % j=1;while true; do (for i in 1 2 3; do seq $j $((j+10)) | tac; seq $j $((j+10)); done) | sparkline; j=$((j+1)); done
00:30:47 <ehird> doesn't work
00:30:52 <ehird> since it just outputs the same thing all the time
00:31:06 <AnMaster> ehird, can't help you debug it without the script
00:31:08 <AnMaster> ;P
00:31:20 <ehird> the script has defined behaviour that you already know, so no you don't nede the script :P
00:31:30 <AnMaster> ehird, also I pasted the irc log example in another channel, they thought it was really cool
00:31:45 <AnMaster> if you put it up you should reddit!
00:31:50 <ehird> you mean ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▁▂▂▂▂▂▃▁▁▁▂▂▁▁▁▁▂▁▁▃▃▂▂▂▁▁▄▃▂▂▃▂▁▂▂▄▅▄▃▂▃▃▂▃▄▄▃▆▅▄▃▄▆▇▇▆▆█?
00:31:52 <ehird> yeah, that one looks nice
00:31:59 <AnMaster> ehird, yeah think it was that one
00:32:04 <ehird> :)
00:32:08 <ehird> which channel btw?
00:32:11 <AnMaster> <~Spaz> wtf?
00:32:11 <AnMaster> <~Spaz> that's really cool
00:32:11 <AnMaster> <~Spaz> unicode graphs
00:32:11 <AnMaster> <~Lapper> That is pretty damn cool.
00:32:14 <ehird> hee
00:32:18 <AnMaster> ehird, private channel on another network
00:32:26 <AnMaster> ehird, invite only, by owner
00:32:40 <ehird> i visited one of them once, till i realised i didn't like anyone there
00:32:57 <AnMaster> ehird, one of those persons?
00:33:04 <ehird> hm?
00:33:05 <AnMaster> or "such a channel"?
00:33:11 <ehird> such a channel yeah
00:33:15 <AnMaster> ah
00:33:19 <ehird> except anyone there is allowed to invite anyone else
00:33:19 <AnMaster> well, I like that one
00:33:23 <ehird> one problem with sparkline(1) is that, well, you only have 8 different heights of bar
00:33:26 <ehird> due to unicode only having that many
00:33:31 <AnMaster> well true
00:33:34 <AnMaster> the full bar
00:33:36 <ehird> i might make it so that it can stack them
00:33:38 <ehird> i.e. use multiple lines
00:33:40 <AnMaster> exactly
00:33:44 <AnMaster> what I was going to say
00:33:46 <ehird> so it doubles per line :P
00:34:03 <AnMaster> ehird, as in a NxM grid
00:34:11 <ehird> it'll just be something like
00:34:24 <ehird> sparkline -l 3
00:34:24 <AnMaster> -w 100 -h 5
00:34:25 <AnMaster> or so
00:34:26 <ehird> for 3 lines max
00:34:33 <AnMaster> ah wait
00:34:37 <AnMaster> ehird, yes ok
00:34:38 <ehird> AnMaster: for width just use squish on the values first
00:34:43 <AnMaster> right
00:34:44 <ehird> :)
00:34:54 <AnMaster> ehird, now can I try the current version please?
00:34:58 <AnMaster> why is it so secret!?
00:35:05 <ehird> sheesh, fine I'll link you a paste in privmsg :D
00:35:11 <ehird> (and it's secret because it's fun being secret :D)
00:35:11 <AnMaster> thanks :D
00:35:16 <FireFly> :<
00:35:25 <AnMaster> ehird, I hate xmas because everyone is secret
00:35:29 <ehird> lol
00:49:02 <psygnisfive> guys!
00:49:14 <psygnisfive> a friend has said something about this: http://www.99-bottles-of-beer.net/language-malbolge-995.html
00:49:32 <psygnisfive> namely, that the odd striations look like a 1D CA's evolution
00:49:49 <ehird> okay
00:49:55 <ehird> it's just coincidence though
00:49:58 <psygnisfive> sure
00:50:00 <ehird> just how malbolge works
00:50:10 <ehird> This pattern (diagonal lines of characters roughly parallel to y = -x) is not a feature of the code.
00:50:11 <ehird> My programming method uses many "NOP" intructions,
00:50:13 <ehird> that is why the pattern will occur corresponding to the specification of Malbolge.
00:50:28 <psygnisfive> but... i challenge you to design a 1D CA who's time evolution infact generates valid malbolge code. :D
00:50:29 -!- adimit has joined.
00:50:32 <psygnisfive> or BF code or something.
00:50:38 <psygnisfive> there he is
00:50:44 <adimit> haha.
00:51:01 <ehird> hi adimit
00:51:27 <psygnisfive> cmon ehird, you know you wanna do it
00:51:27 <adimit> I think BF might be easier/more natural to a CA though. Malbogle has too many characters, and CAs actually only have two 'characters'
00:51:33 <adimit> hi ehird :-)
00:51:36 <psygnisfive> ok BF then
00:51:48 <psygnisfive> and CA's dont need just two cell states
00:52:19 <adimit> right, but having a CA with that many cell states might prove... well, more difficult.
00:52:42 <psygnisfive> adimit, this is #esoteric. more difficult is half the fun!
00:54:25 <adimit> sorry, I'm new to the game :-)
00:54:56 <psygnisfive> ehird whats your favorite esolang?
00:55:07 <psygnisfive> or which esolang do you write the most code in
00:55:22 <ehird> favourite: Underload or Unlambda, probably
00:55:28 <ehird> most written: probably underload with fungot here
00:55:29 <fungot> ehird: come, come to an endangered species... both of us... it'd be sad about? you don't have anywhere or anyone to go to work, back to life at some time...
00:55:55 <psygnisfive> fungot's a regular postmodernist poet
00:55:55 <fungot> psygnisfive: right, cloud.... too? with super glue? oh, i'm pissed! i doubt shinra will attack now.
00:56:10 <ehird> ^style
00:56:10 <fungot> Available: agora alice darwin discworld europarl ff7* fisher ic irc lovecraft pa speeches ss wp
00:56:11 <psygnisfive> i think i understand him better than i do finnegans wake
00:56:15 <ehird> ^style fisher
00:56:15 <fungot> Selected style: fisher (Fisher corpus of transcribed telephone conversations)
00:56:23 <ehird> psygnisfive: oh man. fizzie: PUT FINNEGAN'S WAKE INTO FUNGOT!
00:56:25 <ehird> fungot: hi
00:56:26 <fungot> ehird: you know for yourself whatever and i said this is what i heard as well
00:56:32 <psygnisfive> ehird dont
00:56:34 <psygnisfive> dont do it
00:56:38 <psygnisfive> you'll kill fizzie
00:56:38 <ehird> :DD
00:56:57 <ehird> adimit: btw, here's your initiation goat, sacrifice it: http://zem.fi/~fis/fungot.b98.txt
00:56:58 <fungot> ehird: i'm in kentucky my name is rhea noise yeah
00:57:00 <ehird> (that's the source to fungot)
00:57:01 <fungot> ehird: and that's it and um they're back in school and everything i i'm sure glad i don't live like where my parents live in pittsburgh but i live in
00:57:21 <ehird> ^ul (it also interprets underload)S
00:57:21 <fungot> it also interprets underload
00:57:25 <ehird> ^bf ,[.,]!and bf!
00:57:25 <fungot> and bf!
00:57:53 <psygnisfive> did fizzie really code all of that?
00:57:54 <psygnisfive> man..
00:57:58 <ehird> yes
00:58:04 <psygnisfive> you see what i mean, adimit?
00:58:05 <ehird> i take it you haven't seen mycology
00:58:20 <ehird> psygnisfive: http://users.tkk.fi/~mniemenm/files/befunge/mycology/mycology.zip
00:58:23 <ehird> open mycology.b98
00:58:28 <ehird> and gape in awe at Deewiant's insanity
00:58:48 <psygnisfive> whats mycology?? is that one of his esolangs?
00:58:52 <adimit> ehird: what? is? that?
00:59:01 <ehird> psygnisfive: mycology is a test suite for befunge 98, same language fungot is written in
00:59:02 <fungot> ehird: it would drive me absolutely nuts i could never move anywhere the traffic would drive me crazy but uh uh
00:59:04 <ehird> it tests just about everything
00:59:06 <ehird> it is crazy
00:59:13 <ehird> adimit: the befunge-98 source code to the fungot irc bot!
00:59:22 <ehird> ^help
00:59:22 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
00:59:37 <ehird> ^ul str:N
00:59:37 <fungot> ...bad insn!
00:59:43 <ehird> heh, guess he never got that working
01:00:09 <adimit> nice :-)
01:00:33 <adimit> I was actually writing an IRC bot in Prolog once, but that's not nearly half as fun as this thing...
01:00:47 <adimit> the prolog source was actually readable.
01:00:50 <ehird> i tried to write one in forth, but then I killed myself
01:00:51 <psygnisfive> holy shit ehird...
01:00:54 <psygnisfive> mycology wtf
01:01:30 <psygnisfive> x_x
01:02:20 <adimit> I actually didn't pull through the prolog project either. The threading stuff was quite weird. But I started from scratch again, maybe I'll finish it someday. ##compling needs a better bot.
01:03:05 <psygnisfive> compling needs a bot that doesnt mention chomsky being cunnilingual every time you say "syntax"
01:03:06 <psygnisfive> :P
01:03:23 <psygnisfive> whats the purpose of the compling bot anyway
01:03:49 <adimit> well, DrNI just put it online sometime. It doesn't have a purpose. I regularly kick it out if it gets on my nerves.
01:04:14 <adimit> I was going to write one in Haskell, but there already is one..
01:05:05 <adimit> does fungot have BF interpreter?
01:05:05 <fungot> adimit: yeah there here in arkansas it was the classics you know there were no
01:05:41 <adimit> fungot: that sounds an awful lot like Mr. Markov spinning in his grave...
01:05:41 <fungot> adimit: great great great while um i even did weightlifting for a while i like a lot
01:09:57 <psygnisfive> i once made a markov chain word generator that would take a sample test and use it the analyze the form of words with parameterized length of the string of letters that's used to predict the next letter in the word.
01:10:16 <psygnisfive> occasionally it'd reinvent an existing word that wasn't in its input data.
01:10:21 <psygnisfive> i was mildly happy when i saw that.
01:10:30 <psygnisfive> sample text*
01:29:58 -!- FireFly has quit ("Later").
01:41:13 -!- wkqwl has joined.
01:41:26 -!- wkqwl has set topic: tune into buttplugs and shitty ass languages!.
01:41:36 <wkqwl> HEYYYYYYYYYYYYYY
01:41:37 <wkqwl> i'm back!
01:41:44 -!- wkqwl has changed nick to wkqlqw.
01:42:46 -!- wkqlqw has changed nick to dviakawe.
01:42:52 <psygnisfive> dviakawe
01:42:54 <psygnisfive> hello
01:42:59 <dviakawe> yessssssss
01:43:00 <dviakawe> hello
01:43:06 <psygnisfive> please change the topic back to include the link to the logs.
01:43:16 <dviakawe> i wont
01:43:17 <dviakawe> fuck you
01:43:24 <psygnisfive> ehird
01:43:28 <psygnisfive> he removed the link to the logs
01:43:33 <psygnisfive> D:
01:44:06 <psygnisfive> dviakawe, are you randomly following me? lol
01:44:20 <dviakawe> yes
01:44:25 <dviakawe> looking for channels without +t
01:44:27 <dviakawe> HEHEHE
01:44:31 <dviakawe> go check the emacs topic
01:44:35 <bsmntbombdood> it works!
01:44:37 <bsmntbombdood> finally
01:44:44 <dviakawe> your mom works
01:44:45 <psygnisfive> what does
01:44:45 <dviakawe> stfu cunt
01:44:55 <dviakawe> #emacs
01:44:57 <dviakawe> hsi mom works
01:45:33 <psygnisfive> dont we have ops?
01:45:50 <dviakawe> NOPE
01:45:57 <dviakawe> why would you
01:46:56 <bsmntbombdood> hahahahaha
01:47:03 <bsmntbombdood> my dc is sooo much faster than gnu's
01:47:10 <bsmntbombdood> time echo "0sa1[la1+dsa*la10000>b]dsbx"|./a.out
01:47:17 <bsmntbombdood> user 0m0.128s
01:47:25 <psygnisfive> o.o;
01:47:31 <bsmntbombdood> time echo "0sa1[la1+dsa*la10000>b]dsbx"|dc
01:47:35 <bsmntbombdood> user 0m5.420s
01:48:02 <bsmntbombdood> only 40 times faster
02:00:26 -!- dviakawe has quit (Connection reset by peer).
02:01:32 <bsmntbombdood> i think it's because gnu dc 1) doesn't optimize tail-recursion, and 2) doesn't use the hardware stack for recursion
03:40:19 -!- puzzlet has quit (Remote closed the connection).
03:40:27 -!- puzzlet has joined.
04:05:41 -!- puzzlet has quit (Remote closed the connection).
04:05:49 -!- puzzlet has joined.
04:07:54 -!- Corun has joined.
04:57:35 -!- Corun has quit ("This computer has gone to sleep").
05:24:31 <bsmntbombdood> hey guys optimize this function: http://pastebin.ca/1310636
05:25:46 <kerlo> I don't like optimizing code that isn't referentially transparent.
05:26:40 <bsmntbombdood> it's pointless to optimize code that's referentially transparent.
05:26:53 <bsmntbombdood> because interpreting it is going to be slow as hell anywa
05:27:23 <kerlo> Isn't that why you compile it instead?
05:27:49 <bsmntbombdood> same deal
05:58:29 -!- puzzlet has quit (Remote closed the connection).
05:58:37 -!- puzzlet has joined.
06:11:45 <MizardX> bsmntbombdood: Does mpz_init_set_str need a '\0'? Does it modify the input? Otherwise you could just give it *input.
06:13:05 <bsmntbombdood> yeah that's a possiblity
06:14:33 <MizardX> bsmntbombdood: If mpz_init_set_str does need a '\0', I'd change it to need a length-argument instead. Then you'd just need to calculate how long the number is...
06:15:23 <bsmntbombdood> mpz_init_set_str does need the '\0', but i think putting the '\0' in input would be ok
06:15:47 <MizardX> Was going to suggest that as a last possibility :P
06:26:25 <bsmntbombdood> ok i'm dumb
06:26:32 <bsmntbombdood> modifying input won't work
06:31:41 <MizardX> Even if you change it back when you're done?
06:35:00 <MizardX> Is mpz_init_set_str your own function? Maybe create a new mpz_init_set_strn(mpz_t* obj, char* str, int len, int base) ?
06:36:04 <bsmntbombdood> not my function
06:37:41 <MizardX> How about you count the number of digits, allocate just that amount (+1 for '\0'), and use strncpy?
06:37:45 -!- oerjan has joined.
06:39:09 <bsmntbombdood> MizardX: tried that already, it's slower
06:39:22 <MizardX> What does GETC do except *(*x++) ?
06:39:41 <MizardX> or something like that
06:40:09 <bsmntbombdood> it's just that
06:44:02 <bsmntbombdood> anyway, bed
06:44:10 <MizardX> shower and breakfast
06:46:43 <oerjan> *munch*
06:47:26 <oerjan> i mean hi
06:54:08 <oerjan> <AnMaster> it should have transactions
06:57:25 <oerjan> "Ristet brød er nemt at lave, blot man vil erindre, at når det oser, skal det have to minutter mindre." - Piet Hein
06:58:05 * oerjan wishes the web could agree with itself on how to spell that quote
07:02:37 <oerjan> remove "at", i think
07:08:56 <oerjan> <ehird> everyone should stop internet-stalking me
07:09:01 <oerjan> but that's no fun!
07:10:01 -!- Slereah_ has quit.
07:10:09 <oerjan> <ehird> by hand.
07:10:42 <oerjan> finest handcrafted wooden irc bots
07:31:23 -!- Slereah has joined.
07:41:09 -!- puzzlet has quit (Remote closed the connection).
07:41:16 -!- puzzlet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:14:33 -!- MigoMipo has joined.
08:40:14 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
08:42:10 -!- puzzlet has joined.
08:57:44 -!- Mony has joined.
08:57:59 <AnMaster> morning
08:58:09 <AnMaster> hi ehird
08:58:23 <AnMaster> <oerjan> "Ristet brød er nemt at lave, blot man vil erindre, at når det oser, skal det have to minutter mindre." - Piet Hein <-- translation?
08:58:36 * AnMaster is too sleepy to be able to parse Norwegian
08:59:43 <AnMaster> rosen bread is "nemt at lave", but we want to remind, when it "oser", it shall have two minutes less?
08:59:46 <AnMaster> that makes no sense
08:59:53 <AnMaster> at this time in the morning
09:00:00 <Mony> plop
09:08:09 -!- MigoMipo has left (?).
09:09:18 -!- moozilla has joined.
09:21:58 -!- qwertyxxxxllll has joined.
09:32:38 <oerjan> AnMaster: actually it's danish
09:33:08 <AnMaster> oerjan, ah
09:33:12 <AnMaster> oerjan, and translation?
09:33:23 <oerjan> toast is easy to make, as long as you remember, when it's smoking, it needs two minutes less
09:33:39 <AnMaster> aha
09:34:39 <oerjan> bus, or possibly haircut ->
09:34:43 -!- oerjan has quit ("leaving").
09:35:04 <AnMaster> hey
09:35:30 <AnMaster> he can't use "->", he isn't from .fi...
09:35:40 <Slereah> Racist
09:37:53 <AnMaster> Slereah, hm, nop, it is more like if someone would ask (in German) for directions to Trafalgar Square while being located in Paris.
09:38:43 <Slereah> Hey, this is the internet.
09:38:48 <Slereah> We've got international flavor.
09:42:06 <AnMaster> Slereah, you don't think it would be a good idea to ask that in Paris?
09:42:07 -!- bsmntbombdood has quit (Read error: 113 (No route to host)).
09:42:35 <Slereah> Only because people would not understand
09:42:41 <Slereah> But here, we totally understand
09:43:11 <AnMaster> Slereah, what about "as above, but 2 years after the end of the second world war"?
09:43:41 <Slereah> Was there an internet war here?
09:43:42 -!- oklopol has quit (Read error: 54 (Connection reset by peer)).
09:44:03 <AnMaster> Slereah, true there wasn't
09:44:06 -!- oklopol has joined.
09:45:55 <Slereah> AnMaster, remember the wisdom of VIP quality :
09:45:56 <Slereah> http://membres.lycos.fr/bewulf/Divers7/Take%20it%20easy.jpg
09:46:22 -!- M0ny has joined.
09:46:42 <AnMaster> Slereah, interesting pic, but I fail to see what the figures are supposed to be
09:47:03 <Slereah> Four kittens at a table.
09:47:15 <AnMaster> that makes no sense then heh
09:47:19 <Slereah> Don't you know the 2channel kittens?
09:47:28 <AnMaster> no
09:47:32 <Slereah> http://membres.lycos.fr/bewulf/Divers7/50GET.jpg
09:47:34 <AnMaster> what is 2channel?
09:47:34 <Slereah> YOU SHOULD
09:47:42 <Slereah> Do you know 4chan, AnMaster?
09:47:49 <AnMaster> I have heard of it.
09:48:05 <Slereah> 2channel is sort of the grandfather of 4chan.
09:48:15 <Slereah> It's an anonymous BBS is Japan.
09:48:25 <Slereah> And the biggest motherfucking forum in the world :o
09:48:30 <Slereah> in Japan*
09:48:32 <AnMaster> I have run into /b/tards on irc. Horrible.
09:48:41 <Slereah> Am I horrible? :(
09:48:59 <AnMaster> you are an /b/tard? In that case I have seen much worse
09:49:04 <AnMaster> a*
09:50:38 <Slereah> Since 2channel was a textboard, the memes could not be in pictures.
09:50:56 <Slereah> So there's a shitload of ASCII (or, more accurately, SJIS) art for it.
09:51:29 <AnMaster> heh
09:51:56 <Slereah> Such as this little fellow here : http://membres.lycos.fr/bewulf/Divers7/Shii.jpg
09:52:22 <Slereah> You may remember her from this : http://www.albinoblacksheep.com/flash/shii
09:52:34 <Slereah> I sure do, 'cause it was my first contact with chan culture :o
09:52:54 <AnMaster> Slereah, from "missing plugin"?
09:53:08 <Slereah> Get flash negro
09:53:15 <AnMaster> Slereah, I'm not going to
09:53:22 <Slereah> Damn you!
09:53:57 <Slereah> You can get a .mp4 here : http://keepvid.com/save-video.mp4?http%3A%2F%2Fwww.youtube.com%2Fget_video%3Fvideo_id%3DirF5fEMixng%26t%3DOEgsToPDskJ7hZfQUZ2c0P1OfX12Ahra%26fmt%3D18
09:54:39 <AnMaster> well a youtube link I could play anyway. There is no need for flash for that. You can use mplayer if you know how.
09:55:03 <Slereah> Well, it's the .mp4 of a youtube video
09:55:45 <AnMaster> no sound?
09:55:59 <Slereah> There should be!
09:56:04 <AnMaster> there isn't
09:56:20 <Slereah> Youtube link is : http://fr.youtube.com/watch?v=irF5fEMixng
09:56:21 <AnMaster> VIDEO: [avc1] 320x240 24bpp 29.970 fps 0.0 kbps ( 0.0 kbyte/s)
09:56:22 <AnMaster> Audio: no sound
09:57:13 <AnMaster> Slereah, btw isn't that the awful "hello kitten" thing? It looks very similar anyway.
09:57:20 <Slereah> Nah.
09:57:43 <Slereah> It's just how it was rendered from the bunch of characters that makes up the original
09:58:07 <AnMaster> Slereah, hm?
09:58:13 <Slereah> That's why you'll see one with a russian D for a mouth.
10:00:02 <AnMaster> russian D?
10:00:40 <Slereah> http://en.wikipedia.org/wiki/De_(Cyrillic)
10:03:13 <AnMaster> mhm
10:04:08 -!- Mony has quit (Read error: 110 (Connection timed out)).
10:04:49 -!- M0ny has changed nick to Mony.
10:09:26 -!- puzzlet has quit (Remote closed the connection).
10:09:30 -!- puzzlet has joined.
10:16:37 <Slereah> Hm.
10:16:49 <Slereah> Is there a good free program to screencap videos?
10:17:01 <Slereah> Because I know there's none for flash to video
10:24:59 <oklopol> ooooooooooooooooooooo
10:25:06 <oklopol> so.
10:25:08 <oklopol> oooooooooooo
10:25:09 <oklopol> oooooooooooooooooooo
10:25:10 <oklopol> ooooooooooooooo
10:25:11 <oklopol> oooooooooooo
10:25:12 <oklopol> oooooooooooooooooooooooooooo
10:25:14 <oklopol> oooooooooooooooooooo
10:25:14 <oklopol> ooooooooooooo
10:25:16 <oklopol> ooooooooooooooooooo
10:25:17 <oklopol> oooooooooooooo
10:25:19 <oklopol> oooooooooooooooooooooooo
10:25:20 <Slereah> ko
10:25:21 <oklopol> oooooooooooooooooooo
10:25:23 <oklopol> oooooooooooooooooooooooooooo
10:25:25 <oklopol> that is all
10:25:51 <Slereah> Man, I got a video out, but no sound :(
10:27:04 <oklopol> link to logs to the topic plz.
10:27:28 -!- Mony has quit ("reboot xchat").
10:28:12 -!- Mony has joined.
10:28:25 -!- Mony has quit (Read error: 104 (Connection reset by peer)).
10:34:32 -!- Mony has joined.
10:36:30 -!- Mony has quit (Client Quit).
10:37:38 -!- Mony has joined.
10:37:50 -!- Mony has quit (Read error: 104 (Connection reset by peer)).
10:38:58 -!- Mony has joined.
10:45:36 -!- KingOfKarlsruhe has joined.
10:46:58 -!- puzzlet has quit (Remote closed the connection).
10:47:05 -!- puzzlet has joined.
10:51:55 -!- Mony has quit ("Quit").
10:52:50 -!- Mony has joined.
10:59:17 -!- Mony has quit ("Quit").
11:00:25 -!- FireFly has joined.
11:00:56 -!- Mony has joined.
11:10:15 <AnMaster> bah
11:10:25 <AnMaster> I can't get google to convert australian dollars
11:10:52 <AnMaster> USD -> SEK works, but AUD doesn't
11:11:22 <oklopol> ooooooooooooooo
11:12:05 <AnMaster> ah now it works
11:12:06 <AnMaster> strange
11:12:17 <AnMaster> oklopol, hi
11:13:41 <oklopol> hi
11:17:55 <moozilla> is oklopol a bot
11:25:57 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
11:26:53 <AnMaster> moozilla, no
11:29:06 <moozilla> ah
11:29:07 <moozilla> kik
11:29:09 <moozilla> lol*
11:37:17 -!- Judofyr has joined.
11:44:59 -!- qwertyxxxxllll has left (?).
12:00:11 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
12:00:16 -!- puzzlet has joined.
13:13:44 <oklopol> was fun talking to you, but now shoppe time ->
13:15:28 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
13:15:44 -!- decipher has joined.
13:17:50 -!- moozilla has quit (Read error: 110 (Connection timed out)).
13:57:52 <Deewiant> woot, Language::Befunge now runs mycology in 18 seconds!! http://jquelin.blogspot.com/2009/01/how-to-shave-10-speed.html
14:05:57 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
14:18:37 <olsner> so what's the mycology speed record?
14:23:12 * oklopol considers running it manually
14:23:19 <oklopol> that might be a fun week
14:23:23 <oklopol> how long is it?
14:23:25 * oklopol checks source
14:23:39 <olsner> oklopol: make sure you pass the test suite first
14:23:55 <olsner> would be a shame to waste that week doing it all wrong
14:28:57 <oklopol> well i ran sanity.bf already
14:29:21 <oklopol> i wanna make a befunge interp now :<
14:29:28 * oklopol DEMANDS more time
14:36:41 <oklopol> '
14:40:03 <Asztal> there's a part of mycology where it invokes the 'y' instruction 675 times (to test the timer fingerprint)
14:40:17 <Asztal> I bet that would get old quickly
14:40:48 <olsner> hmm, so what happens if you forget a couple of hundred 'y's?
14:41:53 <Asztal> hmm
14:42:08 <Asztal> apparently it just discards the values that y pushes
14:42:38 <Asztal> I guess if you were doing it by hand you could optimise it :)
14:50:48 -!- sebbu2 has joined.
14:56:13 -!- oerjan has joined.
15:02:44 <oklopol> ¨ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
15:02:47 <oklopol> ...
15:02:54 <oklopol> sorry that wasn't me.
15:03:05 <AnMaster> Ä,,?
15:03:14 <AnMaster> hm „?
15:03:21 <AnMaster> oklopol, is that a double-comma?
15:03:25 <oklopol> i don't know what character that was.
15:03:31 <AnMaster> how did you make it?
15:04:15 <oklopol> i didn't. it wasn't me. it was my blanket.
15:05:44 <MizardX> Ä (A umlaut), encoded in utf-8 as à + „
15:06:49 <oerjan> so that was a blanket statement?
15:07:07 -!- sebbu has quit (Connection timed out).
15:08:01 -!- oklopol has set topic: tune in for buttplugs and other aspects of esoteric programming.
15:09:52 <oklopol> no wait.
15:09:54 -!- oklopol has set topic: tune into buttplugs and shitty aSS languages!.
15:10:03 <MizardX> :)
15:10:08 <oerjan> truth in advertising!
15:10:15 <oerjan> but still no logs
15:10:32 <oklopol> yes someone should make like a bot that puts logs into topic
15:10:32 <oklopol> ...
15:11:40 <oerjan> should be possible with bsmnt_bot
15:11:50 <Asztal> stupid unicode breaking my (irssi|screen|PuTTY)!
15:12:11 <oerjan> breaking?
15:12:21 <MizardX> url: http://tunes.org/~nef/logs/esoteric
15:12:37 -!- MizardX has set topic: tune into buttplugs and shitty aSS languages! | http://tunes.org/~nef/logs/esoteric.
15:12:49 <Asztal> irssi does... odd things... when people talk in unicode
15:13:01 <Asztal> the status bar disappears, that sort of thing
15:13:11 <MizardX> :P
15:14:05 <oerjan> Asztal: try setting some of the recode options
15:14:48 -!- Judofyr has joined.
15:14:52 <oerjan> 16:13 recode_autodetect_utf8 = ON
15:14:52 <oerjan> 16:13 recode_fallback = CP1252
15:14:52 <oerjan> 16:13 recode = ON
15:14:52 <oerjan> 16:13 recode_out_default_charset = utf8
15:14:52 <oerjan> 16:13 recode_transliterate = ON
15:14:55 <Asztal> hmm
15:15:11 <Asztal> it shouldn't be necessary though, all three are set to support unicode
15:15:21 <oerjan> oh
15:15:33 <oerjan> i'm using latin-1 still
15:16:18 -!- puzzlet has quit (Remote closed the connection).
15:16:22 -!- puzzlet has joined.
15:17:23 <oerjan> but maybe it's screen, i'm not using that
15:22:47 -!- Asztal_ has joined.
15:23:12 -!- Azstal has joined.
15:24:21 <Azstal> ☃!
15:24:33 <Asztal_> :(
15:33:59 <AnMaster> Azstal, hm it is snowing and you don't like it?
15:36:52 <Asztal> in this SSH client, I see an a with a hat
15:36:59 <Asztal> in PuTTY, I just saw a box
15:38:13 <oerjan> in the logs, i saw a cat
15:39:41 <Asztal> but in either SSH client, that big line of funny As has turned into a diagonal line in irssi
15:39:44 <Asztal> very odd :(
15:45:58 -!- Asztal_ has quit ("leaving").
15:46:35 -!- Asztal_ has joined.
15:53:11 -!- Asztal_ has quit ("leaving").
15:53:24 -!- Asztal has quit ("leaving").
15:55:22 -!- Asztal has joined.
15:57:01 -!- join has joined.
15:57:10 -!- bsmntbombdood has joined.
16:04:13 -!- Asztal has quit ("leaving").
16:04:27 -!- Asztal has joined.
16:06:10 -!- Slereah has quit (Read error: 110 (Connection timed out)).
16:06:22 -!- Azstal has quit (".").
16:10:46 -!- Corun has joined.
16:28:23 <MizardX> Hmm... A hollow sphere with the same mass as earth (but larger radius to compensate for the interior). How would gravity behave on the inside? Would you fall towards the centre? Would you be weight-less? Would you fall outwards towards the crust?
16:28:59 <oerjan> weight-less, with newtonian gravity
16:29:01 <Asztal> you'd fall to the centre, still
16:29:01 <join> MizardX : You would fall at the center.
16:29:19 <join> Although you would oscillate once there
16:29:23 <oerjan> weight-less, with newtonian gravity. i remember this.
16:30:07 <oklopol> it isn't exactly that hard to show, is it.
16:30:25 <oerjan> well i don't remember the exact derivation
16:32:54 <oklopol> umm how's gravity between two points calculated? i know 0 about physics
16:33:10 <oerjan> F = G m1 m2 / r^2
16:33:12 <oklopol> well i could probably just think for a sec and see it
16:33:17 <oklopol> right ofc.
16:34:36 <oerjan> also the gravity from a sphere on the _outside_ is exactly the same as from the equivalent mass at the center of the sphere
16:35:12 <oerjan> s/at/squeezed into a point at/
16:38:31 * kerlo thinks
16:40:20 <oerjan> i assume both of these things can be shown by integration, but i don't remember if there was any simplifying trick involved.
16:42:34 <oerjan> at least the second had something to do with gauss's theorem, i think
16:43:42 <kerlo> Hmm, density...
16:44:05 <kerlo> Aha!
16:47:07 <oerjan> hm actually i think they both follow from Gauss's theorem
16:48:40 <oerjan> basically, integrating density over the volume inside (that what you are thinking of kerlo?) gives the same result as integrating the normal part of the force at the boundary. simplify this with symmetry.
16:49:11 <kerlo> Just a moment, I almost have an integral here.
16:49:24 <oerjan> (symmetry gives that the force at the boundary _is_ normal, so the normal part is all of it)
16:49:45 <kerlo> I just need to add how to find the horizontal component of a vector of a certain length in a certain direction...
16:49:49 <oerjan> also, the same all over the sphere
16:50:46 <kerlo> x = r cos(theta), theta = arctan(y/x), so x = r cos(arctan(y/x)), aye?
16:51:37 <kerlo> Prove: for all c between -1 and 1, integral from -1 to 1 of cos(arctan(sqrt(1-x^2)/(x-c)))*sqrt(1-x^2)/((1-x^2)+(x-c)^2) = 0.
16:51:58 <kerlo> There's probably a better way to write cos(arctan(y/x))...
16:52:23 <oerjan> ouch
16:52:41 <kerlo> Now I'll stick that whole big thing into a Mathematica integrator. I'm not good at taking integrals without manipulating them symbolically.
16:54:26 <kerlo> http://integrals.wolfram.com/index.jsp?expr=Cos(ArcTan(Sqrt(1-x^2)%2F(x-c)))*Sqrt(1-x^2)%2F((1-x^2)%2B(x-c)^2)&random=false
16:55:17 <kerlo> It's huge.
16:55:52 <oklopol> holy fuck that's pretty :D
16:56:01 <kerlo> That's what I get for assuming that two-dimensional things are simpler than three-dimensional things.
16:56:42 <oklopol> i doubt gravity works the same way in both dimensions
16:56:51 <oklopol> it definitely doesn't work in one dimension
16:56:55 <oklopol> or wait does it
16:57:06 <kerlo> Objection dismissed. :-P
16:57:38 <oklopol> it doesn't, i think it corresponds to having to points and the guy near one of them |_guy______________|
16:58:00 <oklopol> two points one guy
16:58:25 -!- Corun has quit ("Leaving").
16:58:27 <oerjan> i think in two dimensions you want gravitation to go as 1/r rather than 1/r^2 to keep it a conservative force
16:58:27 <kerlo> Okay, prove that the integral for x^2+y^2+z^2 = 1 of 1/((x-a)^2+(y-b)^2+(z-c)^2) = 0 for all a^2+b^2+c^2 < 1.
16:58:57 -!- psygnisfive has joined.
16:59:09 <kerlo> A two-dimensional thing *is* a three-dimensional thing.
16:59:18 <kerlo> It's just one that is contained entirely within a plane.
16:59:31 <oerjan> this is very misleading for gravity
16:59:47 <psygnisfive> kerlo: i suppose that depends on what you mean by three-dimensional :P
17:00:01 <oerjan> because how many dimensions gravity has to escape in determines how fast it weakens with distance
17:00:33 <kerlo> Gravity still has to escape in three dimensions here.
17:01:06 <oerjan> if you say so
17:01:06 -!- ehird has left (?).
17:01:45 <Asztal> I think you need to divide by r^2 to get the result in the correct units
17:02:18 <kerlo> The only thing two-dimensional about my circle-whose-density-at-a-point-is-proportional-to-that-point's-distance-to-the-diameter is that it's contained entirely within a plane. It's an infinitesimal piece of a three-dimensional sphere.
17:02:30 <oerjan> there is a constant G there, its units could change with a different number of dimensions
17:02:31 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
17:02:36 -!- ehird has joined.
17:02:39 <oerjan> so it's easy to adapt
17:02:59 <ehird> reading slereah explain chan culture to anmaster was the highlight of my day
17:03:43 <oerjan> ehird: i think i shall not ponder that idea lest my head explode
17:03:45 * kerlo ponders how to integrate over a set
17:03:51 <ehird> oerjan: http://tunes.org/~nef/logs/esoteric/09.01.17
17:03:54 <psygnisfive> guys why doesnt you email neil degrasse tyson or brian green or michio kaku and ask them these things for certain
17:03:55 <join> ehird : I wanted to show him this : http://astrange.ithinksw.net/shii/view?url=hammer&name=vip.show
17:03:59 -!- join has changed nick to Slereah.
17:04:02 <oerjan> i've already browsed the logs
17:04:07 <Slereah> But bum's got no flash player
17:04:47 <oerjan> ah i guess my head already exploded then
17:05:08 <kerlo> Use a cross section, I guess.
17:05:14 <AnMaster> I think I have a bad cold. Might be kind of less active for a few days
17:05:15 -!- ehird has set topic: A secret area of VIP quality. Colon right-parenthesis. http://tunes.org/~nef/logs/esoteric/.
17:05:18 <AnMaster> :/
17:05:53 <oerjan> there is influenza going around, i assume sweden has it too
17:05:54 <oklopol> you'd think you'd be more active.
17:06:01 <ehird> 05:57:52 <Deewiant> woot, Language::Befunge now runs mycology in 18 seconds!! http://jquelin.blogspot.com/2009/01/how-to-shave-10-speed.html
17:06:04 <ehird> how fast :P
17:06:10 <ehird> 06:18:37 <olsner> so what's the mycology speed record?
17:06:12 <ehird> like 0.3ms
17:06:14 <oerjan> but i seem to have escaped it so far
17:06:19 <ehird> because AnMaster does no thing but optimise cfunge
17:06:28 <kerlo> Okay, let's simplify my fancy integral.
17:06:36 <oklopol> isn't that what diseases do, make you do less, and irc more
17:06:48 <kerlo> Prove: for all c between -1 and 1, integral from -1 to 1 of cos(arctan(sqrt(1-x^2)/(x-c)))/((1-x^2)+(x-c)^2) = 0.
17:06:54 <oerjan> kerlo: i still recommend a gauss's law approach
17:06:56 <AnMaster> oerjan, this may or may not be the infulenza
17:06:57 <AnMaster> not sure
17:07:04 <ehird> ~exec self
17:07:08 <ehird> ~exec sys.stdout(self)
17:07:08 <bsmnt_bot> <__main__.IRCbot instance at 0xf7c7e6ec>
17:07:12 <ehird> ~exec sys.stdout(dir(self))
17:07:13 <bsmnt_bot> ['COMMAND_CHAR', 'THREADING', '__doc__', '__init__', '__module__', 'ban', 'ban_file', 'banlist', 'chan', 'commands_running', 'commands_running_lock', 'connect', 'connected', 'disconnect', 'do_callbacks', 'do_ctcp', 'do_exec', 'do_kill', 'do_ps', 'do_quit', 'do_raw', 'error_in_chan', 'errorchan', 'exec_execer', 'get_message', 'handle_callback', 'host', 'ident', 'listen', 'l
17:07:13 <bsmnt_bot> oad_callbacks', 'locals', 'message_re', 'nick', 'owner', 'pong', 'port', 'print_callbacks', 'raw', 'raw_regex_queue', 'read_bans', 'realname', 'register_raw', 'save_callbacks', 'socket', 'sockfile', 'unban', 'verbose', 'write_bans']
17:07:17 <oklopol> o
17:07:26 <ehird> ~exec sys.stdout(self.raw_regex_queue)
17:07:26 <bsmnt_bot> [(<_sre.SRE_Pattern object at 0xf7cf2c98>, <bound method IRCbot.pong of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80e0ce0>, <bound method IRCbot.do_quit of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80dc828>, <bound method IRCbot.do_raw of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object
17:07:27 <bsmnt_bot> at 0x80dc628>, <bound method IRCbot.do_ctcp of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80dcc98>, <bound method IRCbot.do_exec of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80dd188>, <bound method IRCbot.do_exec of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80b9190>, <bound me
17:07:27 <bsmnt_bot> thod IRCbot.do_ps of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80dd460>, <bound method IRCbot.do_kill of <__main__.IRCbot instance at 0xf7c7e6ec>>), (<_sre.SRE_Pattern object at 0x80e2cd0>, <function <lambda> at 0xf7c7d72c>)]
17:07:28 <AnMaster> <ehird> 05:57:52 <Deewiant> woot, Language::Befunge now runs mycology in 18 seconds!! http://jquelin.blogspot.com/2009/01/how-to-shave-10-speed.html <-- well it is in perl iirc, not a compiled language?
17:07:38 <ehird> ~exec self.register_raw
17:07:42 <ehird> ~exec sys.stdout(dir(self.register_raw))
17:07:43 <bsmnt_bot> ['__call__', '__class__', '__cmp__', '__delattr__', '__doc__', '__get__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__str__', 'im_class', 'im_func', 'im_self']
17:07:44 <kerlo> This is *much* simpler: http://integrals.wolfram.com/index.jsp?expr=Cos(ArcTan(Sqrt(1-x^2)%2F(x-c)))%2F((1-x^2)%2B(x-c)^2)&random=false
17:08:24 <ehird> ~exec self.raw
17:08:31 <ehird> ~exec sys.stdout(self.raw)
17:08:31 <bsmnt_bot> <bound method IRCbot.raw of <__main__.IRCbot instance at 0xf7c7e6ec>>
17:08:49 <Slereah> ehird
17:08:51 <Slereah> Let us boon
17:08:54 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % (m.group(1),))))
17:08:55 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
17:08:57 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % (m.group(1),)))))
17:09:01 <bsmnt_bot> SyntaxError: invalid syntax
17:09:02 -!- ehird has set topic: a.
17:09:04 <ehird> dammit
17:09:06 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % (m.group(1),))))
17:09:19 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % (m.group(1),))
17:09:21 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
17:09:34 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % (m.group(1),)))
17:09:39 <bsmnt_bot> SyntaxError: unexpected EOF while parsing
17:09:49 <ehird> ~exec self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: self.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % m.group(1) ))
17:10:00 -!- ehird has set topic: I am green.
17:10:00 <bsmnt_bot> NameError: global name 'self' is not defined
17:10:03 <ehird> Fail
17:10:14 <ehird> ~exec (lambda this: self.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: this.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % m.group(1) )))(self)
17:10:15 <bsmnt_bot> NameError: global name 'self' is not defined
17:10:20 <oerjan> self = bot usually
17:10:23 <ehird> ~exec (lambda this: this.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: this.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % m.group(1) )))(self)
17:10:29 -!- ehird has set topic: aa.
17:10:33 <bsmnt_bot> NameError: global name 'self' is not defined
17:10:37 <ehird> ~exec sys.exit(0)
17:10:43 -!- bsmnt_bot has quit (Excess Flood).
17:10:46 -!- bsmnt_bot has joined.
17:10:47 <ehird> o_O
17:10:55 <ehird> ~exec (lambda this: this.register_raw(r':[^ ]+ TOPIC #esoteric :(.*)', lambda m: this.raw('TOPIC #esoteric :%s | http://tunes.org/~nef/logs/esoteric' % m.group(1) )))(self)
17:10:58 <kerlo> oerjan: that seems to contain a surface integral.
17:10:59 <oklopol> ._o
17:11:03 -!- ehird has set topic: I am a big butt and who doesn't care.
17:11:03 <bsmnt_bot> AttributeError: 'str' object has no attribute 'group'
17:11:20 <ehird> ~exec sys.exit(0)
17:11:36 <oklopol> ehird: put logs to topic
17:11:43 <oklopol> right now
17:11:44 <oerjan> kerlo: yes, it comes out to integrating the force around the sphere
17:11:47 <ehird> oklopol: dude im writing a bot to do that
17:11:48 <ehird> can't you see
17:11:51 <oklopol> ehird: i know
17:11:59 <ehird> ~quit
17:12:11 <kerlo> I don't know how to take a surface integral without using cross sections or something similarly silly.
17:12:12 <oklopol> but i'm more interested in local optimization than global
17:12:38 <oklopol> kerlo: no one cares about calculus
17:13:01 <oerjan> kerlo: it's over a sphere, and the value should be constant by symmetry, so just area * constant iirc
17:14:06 <kerlo> Mm.
17:16:05 <kerlo> If you find anything, let me know.
17:16:19 <AnMaster> hm anyone here is good at css?
17:16:24 <AnMaster> ehird maybe
17:16:26 <AnMaster> ?
17:16:29 <ehird> yes
17:16:33 <oerjan> um i'm not looking
17:17:02 <AnMaster> ehird, I'm confused does: h1.foo { ... } and h1 .foo { ... } differ in meaning?
17:17:07 <ehird> Yes.
17:17:10 <AnMaster> aha
17:17:21 <ehird> h1.foo is a h1 with class foo, h1 .foo is an element with class foo somewhere beneath an h1.
17:17:31 <AnMaster> aha
17:17:36 <ehird> aha
17:17:43 <oklopol> aha
17:17:47 <AnMaster> well that explains a lot
17:17:48 <AnMaster> thanks ehird
17:18:28 <AnMaster> ehird, oh also, foo,.bar and foo, .bar are the same aren't they?
17:18:38 <ehird> yes
17:18:43 <ehird> but you should use the latter
17:19:38 <AnMaster> ehird, wouldn't a reduced size version be better if bw is an issue, of course the master copy will be kept readable, but the copy on the website would have unneeded spaces removed
17:20:00 <ehird> The difference will be nelegible unless you're Google.
17:20:22 <AnMaster> ehird, about 700 MB / month based on the output from webalizer.
17:20:35 <AnMaster> when all unneeded whitespaces are removed
17:20:41 <ehird> Um, what site is this?
17:20:51 <ehird> I think that's bullshit unless it's a really huge site.
17:20:52 <AnMaster> shared hosting so I can't add mod_compress or such :(
17:20:59 -!- Slereah has set topic: I am a big butt and who doesn't care http://tunes.org/~nef/logs/esoteric/.
17:20:59 <bsmnt_bot> AttributeError: 'str' object has no attribute 'group'
17:21:07 <AnMaster> ehird, supertux website, the mediawiki css files
17:21:29 <ehird> There's no way you're saving 700MB on the supertux website just by removing whitespace.
17:21:34 <AnMaster> ehird, the main css for mediawiki alone generate several GB of traffic per month
17:21:44 <AnMaster> ehird, and newlines and uneeded ; before }
17:21:49 <ehird> Why arey ou using mediawiki?
17:21:56 <ehird> Don't.
17:22:09 <AnMaster> ehird, before I joined the project
17:22:19 <ehird> And?...
17:22:24 <ehird> Mediawiki is a huge hog, it's beyond belief
17:22:29 <AnMaster> agreed
17:22:36 <AnMaster> got any drop in alternative?
17:22:52 <ehird> No, but I doubt you're using many of the advanced mediawiki features...
17:23:19 <AnMaster> varies, some yes, some no.
17:23:30 <ehird> Try DokuWiki or something.
17:23:37 <ehird> That's quite fullfeatured but non-hoggy.
17:23:57 <ehird> The gains will likely be much larger than removing whitespace from a css file...
17:25:04 <oerjan> ~exec bot.raw("QUIT")
17:25:04 -!- bsmnt_bot has quit.
17:25:06 <ehird> AnMaster: is this an open wiki?
17:25:07 -!- bsmnt_bot has joined.
17:25:22 <ehird> oerjan: can't touch this! pythontime.
17:25:35 <AnMaster> ehird, yes, some pages are "only devs can edit" though
17:25:50 <AnMaster> like the ones with download links for last version and so on
17:25:53 <oerjan> i just wanted to get rid of the broken code
17:25:54 <ehird> AnMaster: ok, I was thinking making it a static site rendered into a layout with a script but that's obviously not appropriate in this case
17:25:57 <ehird> oerjan: ah
17:26:15 <ehird> AnMaster: hmm, idea
17:26:28 <AnMaster> ehird, ah static has been rejected except for the front page and a few other pages due to "too much work to update" by several devs
17:26:31 <ehird> AnMaster: supertux players are tech-savvy right? I mean, they use linux :-P
17:26:42 <ehird> also, i don't mean hand-writing html
17:26:45 <ehird> but, anyway
17:26:46 <ehird> right?
17:26:56 <AnMaster> ehird, yes they are, but they prefer to code on the game rather than mess with website
17:27:06 <ehird> i said players
17:27:12 <ehird> i'm just thinking
17:27:19 <AnMaster> ehird, oh players? no, not really
17:27:22 <AnMaster> we get lots of noobs too
17:27:23 <ehird> mm
17:27:38 -!- Corun has joined.
17:27:43 <ehird> because you could do a static wiki by having an open git/darcs/hg/etc repository that anyone can push to
17:27:47 <ehird> and a post-push hook that renders the site
17:27:50 <AnMaster> in fact more than average of Ubuntutards and wintards
17:27:53 <ehird> but, then, users have to use that version system
17:28:00 <ehird> AnMaster: Windows? Seriously?
17:28:07 <AnMaster> ehird, yes...
17:28:29 <ehird> AnMaster: That... doesn't make too much sense.
17:28:35 <ehird> Super *tux*.
17:28:41 <AnMaster> I agree
17:28:46 <AnMaster> and I don't know why
17:29:32 <ehird> well, if your users are incompetent you'll always have to sacrifice performance for them
17:29:44 <ehird> that applies to everything :P
17:30:46 <ehird> AnMaster: but try dokuwiki
17:30:55 <ehird> it's way less bloated and much less resource intensive
17:31:08 <ehird> and the html/css it outputs is learner
17:31:15 <ehird> so that could help a lot
17:31:43 <AnMaster> hm will take a look, of course I need to get the other devs (especially the project leader) to agree
17:31:59 <ehird> Teams suck.
17:32:21 <ehird> This follows on from the axiom "other people suck".
17:32:22 <oerjan> s/performance for //
17:32:42 <ehird> oerjan: indeed.
17:33:12 <ehird> oerjan let's go on a murder spree
17:33:19 <ehird> so that people die
17:33:25 <AnMaster> ehird, yes they have downsides, but also some good points, like how long would it take *one* person to write something like, uh, blender or firefox or whatever, Compared to how long it would take a team
17:33:49 <ehird> Well, i dislike firefox because it's bloated. :P
17:33:59 <ehird> I don't have a use for Blender but knowing me I'd probably say the same for it.
17:34:16 <ehird> Although for collaboration I prefer the linus torvalds model.
17:34:26 <ehird> It's still one person's projects, but you can send stuff along and he might take it.
17:34:39 <ehird> s/(project)s/$1/
17:34:43 <AnMaster> ehird, well there are sure other good (but large) software
17:34:46 <AnMaster> like the linux kernel
17:35:02 <ehird> The kernel isn't large for what it does, though.
17:35:14 <AnMaster> ehird, also it isn't one persons project if that person isn't around any more, then it works on a team basis suddenly
17:35:20 <ehird> Sometimes things are complex because they do complex things and it wouldn't be possible to do something much simpler.
17:35:29 <ehird> AnMaster: and deteriorates. Better would be to pass down the torch.
17:35:39 <ehird> BDFL doesn't sound "open source"y, but it's practical.
17:35:47 <AnMaster> um BDFL?
17:36:12 <ehird> Benevolent Dictator For Life
17:36:16 <AnMaster> ah right
17:36:20 <ehird> examples:
17:36:28 <ehird> linus torvalds, guido van rossum, larry wall, ETC
17:36:51 <AnMaster> Theo de Radt(sp?) ?
17:37:15 <AnMaster> Raadt*
17:37:38 <AnMaster> or maybe not a good example ;P
17:37:39 <ehird> Um, very benevolent :-P
17:37:47 <AnMaster> ehird, agreed
17:37:58 <ehird> Although I agree with him in most cases.
17:38:20 <AnMaster> also one downside with open source for games: getting good artists is very very hard.
17:38:41 <ehird> Also, plot writers. :P
17:38:57 <ehird> (SuperTux's intro is cringeworthy...)
17:39:08 <AnMaster> agreed
17:39:30 <AnMaster> however, supertux is jump and run, you don't need that much plot, compared to for example a RPG
17:39:36 <ehird> Well, it _is_ a carbon copy of Super Mario's plot.
17:39:41 <ehird> So I guess a lot of the blame lies on Nintendo. :P
17:39:44 <AnMaster> ehird, "based on"
17:39:45 <AnMaster> ;P
17:39:52 <ehird> quite.
17:40:30 <oerjan> how _dare_ you force us to steal your crap
17:40:41 * oerjan ducks
17:40:52 <ehird> groan
17:41:06 <oerjan> wait, there was a pun in there?
17:41:14 <ehird> no, it was just stupid :D
17:41:23 <AnMaster> err
17:41:33 <AnMaster> apache mod_deflate doesn't cache the compressed copy?
17:41:49 <ehird> AnMaster: don't you want to use gzip?
17:42:03 <ehird> Answer: yes
17:42:08 <ehird> also, AnMaster
17:42:12 <ehird> it won't cache dynamic content
17:42:13 <ehird> duh
17:42:14 <AnMaster> ehird, well yes, but what module?
17:42:16 <AnMaster> and indeed
17:42:27 <ehird> also, there's quite a few, iirc mod_gzip is one
17:42:40 <ehird> AnMaster: you'll need a separate caching module
17:42:41 <ehird> probably
17:42:53 <ehird> i guess you can't choose that with a shared host.
17:43:01 <ehird> why not move it onto something non-shared :P
17:43:03 <AnMaster> ehird, shared hosting, I will have to do with what I can do in .htaccess
17:43:17 <AnMaster> and it is apache 2.0.x
17:44:25 <AnMaster> in fact I'm not certain I can do this from .htaccess at all
17:44:28 * AnMaster experiments
17:45:31 <AnMaster> oh maybe mod_gzip is third party?
17:45:42 <AnMaster> since I can't find it in apache docs
17:46:27 <ehird> yes.
17:47:24 * ehird considers writing a lisp. Because what more productive things exist?
17:47:34 <ehird> Eventful times, these.
17:47:49 <AnMaster> eventful? in what way?
17:48:01 <ehird> In a sarcastic way.
17:48:03 <AnMaster> ah
17:48:59 <AnMaster> ehird, well that spark wave, I started on it, but it is a bit complex since you need to possibly get a bit of next wave before clearing, so it is currently a quite complex script not yet done
17:49:10 <AnMaster> partway done
17:49:22 <ehird> Surely you just need to tweak the numbers you pass to sparkline...
17:50:08 <AnMaster> ehird, not exactly, as you said you need to clear the line to be able to cause the wave effect, that is goto start of line and overwrite it.
17:50:18 <ehird> AnMaster: Er, i meant clear(1).
17:50:31 <ehird> But, um, can't you just do that with \r
17:50:35 <ehird> i.e., carriage return?
17:50:35 <AnMaster> ehird, oh I'm using tput to do it
17:51:05 <kerlo> Lisps! Everyone loves those!
17:51:11 <ehird> kerlo: just do
17:51:14 <ehird> err
17:51:14 <ehird> AnMaster:
17:51:16 <ehird> echo -ne '\r'
17:51:23 <ehird> and echo -n everything else
17:51:37 <MizardX> ~exec sys.stdout(', '.join([m.__name__ for m in dir(self) if callable(m)]))
17:51:45 * kerlo finds that GHCi is conspicuously absent on this computer
17:51:54 <AnMaster> hm?
17:51:57 <AnMaster> hm
17:52:48 <MizardX> ~exec sys.stdout(', '.join([getattr(self,m).__name__ for m in dir(self) if callable(getattr(self,m))]))
17:52:48 <bsmnt_bot> __init__, ban, connect, disconnect, do_callbacks, do_ctcp, do_exec, do_kill, do_ps, do_quit, do_raw, exec_execer, get_message, handle_callback, listen, load_callbacks, pong, print_callbacks, raw, read_bans, register_raw, save_callbacks, unban, write_bans
18:04:07 <ehird> r5rs is a wonderful language
18:04:19 <AnMaster> ah almost working
18:07:25 <ehird> how can the committee that authored R5RS produce something as awful as r6rs
18:12:51 <AnMaster> UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-19: ordinal not in range(128)
18:12:52 <AnMaster> huh?
18:13:22 <ehird> AnMaster: Use unicode strings.
18:13:28 <ehird> You're trying to do unicode stuff with normal stirngs.
18:13:30 <ehird> don't.
18:13:40 <AnMaster> ehird, well sparkline said that
18:13:51 <ehird> AnMaster: what data are you passing it?
18:14:08 <AnMaster> ehird, I believe it may have received a terminal control code by mistake
18:14:16 <ehird> That is probably it.
18:14:39 <AnMaster> assuming "trap 'tput cvvis; exit' INT TERM" while inside a piped function cause things to go to the pipe
18:14:45 <AnMaster> instead of real stdout
18:14:53 <ehird> Almost certainly.
18:15:09 <AnMaster> ehird, anyway here it is:
18:15:12 <AnMaster> http://rafb.net/p/oVd5cO49.html
18:15:15 <AnMaster> not perfect
18:15:17 <AnMaster> bbiab
18:15:51 <ehird> By AnMater
18:16:14 <ehird> | python ~/irc/sparkline
18:16:17 <ehird> Or, you know, | sparkline
18:16:21 <ehird> :P
18:16:54 <ehird> AnMaster: It kind of works... but, I'm sure you could base waves on that for i in 1 2 3 thing you did yesterday
18:17:00 <ehird> I think that could work better
18:18:57 <AnMaster> ehird, except it wasn't chmod +x and not in path
18:19:05 <ehird> Should be >:D
18:19:18 <ehird> people don't give ~/bin enough luv
18:19:19 <AnMaster> ehird, also yes it was a quick hack
18:19:27 <ehird> yeah, it stutters at one point
18:19:36 <AnMaster> well I have around 10 scripts in ~/bin
18:19:37 <oerjan> AlmaMater
18:19:41 <AnMaster> ehird, it stutters?
18:19:43 <AnMaster> doesn't here
18:19:44 <AnMaster> huh
18:19:51 <AnMaster> oh wait
18:19:52 <ehird> AnMaster: as in
18:19:53 <AnMaster> right
18:19:55 <ehird> it makse a jerky movement
18:20:03 <AnMaster> yes a mis calculation I believe
18:20:30 * AnMaster fixes
18:20:34 <ehird> "If Jobs had realized the margins behind selling software and ported MacOS to Intel"
18:20:40 <ehird> Umm, who wants to tell him?
18:21:01 <ehird> (For the idiots: 1. Steve Jobs is not a programmer 2. OS X _does_ run on Intel...)
18:21:08 <AnMaster> indeed
18:21:42 <AnMaster> ehird, funny thing:
18:21:48 <AnMaster> change the off=$(( line
18:21:48 <AnMaster> to
18:21:50 <AnMaster> off=$(( (off + 1) % 20 ))
18:21:53 <AnMaster> it is fun to watch
18:21:57 <AnMaster> though hardly correct
18:22:02 <ehird> haha
18:22:13 <ehird> AnMaster: you coulds imulate game of life with this.
18:22:14 <ehird> O_O
18:22:15 * AnMaster was trying to fix the jerk
18:22:23 <ehird> Fixing jerks is difficult
18:22:29 <AnMaster> "imulate"?
18:22:53 <ehird> coulds imulate
18:22:55 <ehird> could simulate
18:22:58 <AnMaster> ah
18:23:39 <MizardX> ~exec sys.stdout(sys.version)
18:23:40 <bsmnt_bot> 2.4.3 (#1, Oct 25 2006, 21:45:16)
18:23:40 <bsmnt_bot> [GCC 4.1.1 (Gentoo 4.1.1)]
18:23:53 <MizardX> ~exec sys.stdout(callable(sys.stdout))
18:23:53 <bsmnt_bot> True
18:23:56 <ehird> ...
18:23:57 <ehird> Gentoo?
18:24:03 <ehird> Ohh
18:24:07 <ehird> bsmnt_bot is in a chroot
18:24:10 <ehird> Presumably built on gentoo
18:24:12 <ehird> by bsmnt_bot
18:24:13 <ehird> err
18:24:14 <ehird> by bsmntbombdood
18:24:15 <ehird> right
18:24:33 <ehird> It actually runs on ewwbuntu :D
18:24:40 <Slereah> Buns too
18:24:47 <ehird> Eww, buns too.
18:24:53 <Slereah> Delicious buns
18:25:09 <MizardX> ~exec self.print_callbacks(sys.stdout)
18:25:09 <bsmnt_bot> [('^PING (.*)$', 'pong'),
18:25:09 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG \\S* :~quit ?(.*)', 'do_quit'),
18:25:09 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG \\S* :~raw (.*)', 'do_raw'),
18:25:10 <bsmnt_bot> ('^\\S+ PRIVMSG \\S+ :~ctcp (\\S+) (.+)', 'do_ctcp'),
18:25:11 <bsmnt_bot> ('^:bsmntbombdood!\\S*gavin@\\S* PRIVMSG (\\S*) :~pexec (.*)', 'do_exec'),
18:25:12 <bsmnt_bot> ('\\S+ PRIVMSG (#esoteric|#baadf00d|#esoteric-blah|#bsmnt_bot_errors) :~exec (.*)',
18:25:12 <oerjan> eww, bunnies
18:25:13 <bsmnt_bot> 'do_exec'),
18:25:14 <bsmnt_bot> ('\\S+ PRIVMSG \\S+ :~ps', 'do_ps'),
18:25:15 <ehird> Dammit MizardX
18:25:16 <bsmnt_bot> ('^\\S+ PRIVMSG (#esoteric|#baadf00d|#esoteric-blah|#bsmnt_bot_errors) :~kill (.*)',
18:25:18 <bsmnt_bot> 'do_kill'),
18:25:20 <bsmnt_bot> ('^ERROR :Closing Link:.*', '<lambda>')]
18:25:20 <ehird> BAD BOY.
18:25:26 <MizardX> :P
18:26:24 <MizardX> ~exec sys.stdout(', '.join([getattr(self,m).__name__ for m in dir(self) if isinstance(getattr(self,m),list)]))
18:26:24 <bsmnt_bot> AttributeError: 'list' object has no attribute '__name__'
18:26:34 <MizardX> ~exec sys.stdout(', '.join([m for m in dir(self) if isinstance(getattr(self,m),list)]))
18:26:35 <bsmnt_bot> banlist, chan, commands_running, raw_regex_queue
18:26:40 <ehird> MizardX: you know,
18:26:45 <ehird> you can just get it to post its code to a pastebin
18:27:00 <ehird> how do you listdir in python again?
18:27:03 <ehird> os.path.listdir?
18:27:08 <MizardX> os.listdir
18:27:19 <ehird> ~exec import os; sys.stdout(os.listdir('.'))
18:27:19 <bsmnt_bot> ['bin', 'bot', 'etc', 'lib', 'usr']
18:27:26 <ehird> yes, it lives in /bot
18:27:29 <ehird> XD
18:27:31 <ehird> ~exec import os; sys.stdout(os.listdir('bot'))
18:27:31 <bsmnt_bot> ['files.img', 'a.out', 'scripts', 'betterbot.py', 'test.pickle', 'foo.py~', 'ski_repl.py', 'foo.py', 'ircbot.py~', 'start.sh', 'better.sh', 'start.sh~', 'ircbot.py', 'keep_running']
18:27:38 <ehird> It _isn't_ betterbot.
18:27:51 <ehird> It's ircbot.py.
18:28:04 <ehird> Now to figure out how to make a paste to a pastebin
18:28:07 <MizardX> ~exec import __main__; sys.stdout(__main__.__file__)
18:28:07 <bsmnt_bot> /bot/ircbot.py
18:28:11 <AnMaster> aha
18:28:25 <ehird> Hmm, dpaste has a restful paste API.
18:28:26 <ehird> I'll go with that.
18:28:39 <ehird> ~exec sys.stdout(__import__('urllib2'))
18:28:41 <bsmnt_bot> <module 'urllib2' from '/usr/lib/python2.4/urllib2.py'>
18:28:45 <ehird> Kick. Ass.
18:28:51 <ehird> ~exec import urllib2
18:28:57 * ehird waits for dpaste docs to load
18:29:01 <AnMaster> found it I think
18:29:32 <MizardX> ~exec a=3
18:29:34 <MizardX> ~exec a
18:29:34 <bsmnt_bot> NameError: name 'a' is not defined
18:29:45 <ehird> MizardX: try assigning to bot
18:29:53 <MizardX> ~exec bot.a=3
18:29:54 <MizardX> ~exec bot.a
18:30:09 <MizardX> ~exec self.a=3
18:30:12 <MizardX> ~exec self.a
18:30:18 <ehird> sys.stdout
18:30:19 <MizardX> ~exec sys.stdout(self.a)
18:30:19 <bsmnt_bot> 3
18:30:19 <ehird> dummy
18:30:27 <MizardX> >_>
18:30:28 <ehird> ~exec bot._vars = {}; bot.assign = lambda self, k, v: self._vars.__setitem__(k,v); bot.get = lambda self, k: self._vars.__getitem__(k)
18:30:34 <ehird> ~exec assign('a',2)
18:30:34 <bsmnt_bot> NameError: name 'assign' is not defined
18:30:37 <ehird> oops
18:30:39 <ehird> ~exec bot.assign('a',2)
18:30:39 <bsmnt_bot> TypeError: <lambda>() takes exactly 3 arguments (2 given)
18:30:50 <ehird> ~exec bot._vars = {}; bot.assign = lambda k, v: bot._vars.__setitem__(k,v); bot.get = lambda k: bot._vars.__getitem__(k)
18:30:52 <ehird> ~exec bot.assign('a',2)
18:30:57 <ehird> ~exec sys.stdout(bot.get('a'))
18:30:57 <bsmnt_bot> 2
18:31:00 <ehird> Tada
18:31:26 <ehird> ~exec open('ircbot.py').read()[:15]
18:31:27 <bsmnt_bot> IOError: [Errno 2] No such file or directory: 'ircbot.py'
18:31:31 <ehird> ~exec open('/bot/ircbot.py').read()[:15]
18:31:39 <ehird> ~exec coed=open('/bot/ircbot.py').read()
18:31:46 <ehird> ~exec self.assign('koed',open('/bot/ircbot.py').read())
18:31:53 <ehird> ~exec sys.stdout(bot.get('koed'))
18:31:54 <bsmnt_bot> #! /usr/bin/python
18:31:54 <bsmnt_bot> import socket
18:31:54 <bsmnt_bot> import re
18:31:54 <bsmnt_bot> import sys
18:31:55 <bsmnt_bot> import traceback
18:31:56 <bsmnt_bot> import thread
18:31:57 <ehird> FUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
18:31:57 <bsmnt_bot> import pprint
18:31:59 <bsmnt_bot> import inspect
18:31:59 <MizardX> :P
18:32:01 <bsmnt_bot> import time
18:32:03 <bsmnt_bot> import os
18:32:05 <bsmnt_bot> import threading
18:32:07 <bsmnt_bot> import copy
18:32:08 <ehird> ~exec bot.raw('QUIT')
18:32:09 <bsmnt_bot> import pickle
18:32:11 -!- bsmnt_bot has quit.
18:32:13 -!- bsmnt_bot has joined.
18:32:14 <ehird> ~exec self.assign('koed',open('/bot/ircbot.py').read())
18:32:15 <bsmnt_bot> AttributeError: IRCbot instance has no attribute 'assign'
18:32:19 <ehird> FUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
18:32:30 <ehird> ~exec sys.stdout(open('/bot/ircbot.py').read()[:15])
18:32:31 <bsmnt_bot> #! /usr/bin/pyt
18:32:43 <ehird> Good. Okay.
18:32:46 <MizardX> ~exec sys.stdout(len(bot.get('koed')))
18:32:46 <bsmnt_bot> AttributeError: IRCbot instance has no attribute 'get'
18:33:00 <ehird> no persistence, its broken
18:33:13 <MizardX> ~exec sys.stdout(repr(bot))
18:33:14 <bsmnt_bot> <__main__.IRCbot instance at 0xf7caa6ec>
18:33:20 <MizardX> ~exec sys.stdout(repr(self))
18:33:20 <bsmnt_bot> <__main__.IRCbot instance at 0xf7caa6ec>
18:33:36 <ehird> ok, think ive realised how to paste it
18:33:37 <ehird> :DD
18:35:44 <MizardX> ~exec sys.stdout(re)
18:35:44 <bsmnt_bot> <module 're' from '/usr/lib/python2.4/re.pyc'>
18:35:47 <AnMaster> ehird, http://rafb.net/p/554io037.html
18:35:57 <ehird> ~exec import urllib2; sys.stdout(urllib2.urlopen('http://dpaste.com/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read()).info()['Location'])
18:35:58 <bsmnt_bot> URLError: <urlopen error (-2, 'Name or service not known')>
18:36:08 <ehird> AnMaster: AnMater
18:36:11 <AnMaster> yes?
18:36:12 <ehird> shit, it can't do networking
18:36:12 <ehird> whatn ow
18:36:14 <AnMaster> crazy code yes
18:36:16 <ehird> AnMaster: AnMater
18:36:22 <AnMaster> .
18:36:23 <ehird> By AnMater
18:36:28 <ehird> # By AnMater
18:36:30 <AnMaster> ah
18:36:31 <AnMaster> typo
18:36:31 <ehird> 2 # By AnMater
18:36:38 <oerjan> istr there was no dns when last we were fooling around with it
18:36:48 <ehird> well, that makes sense
18:36:51 * ehird looks up dpaste.com
18:36:55 <AnMaster> ehird, http://rafb.net/p/YW5JPt53.html
18:37:05 <ehird> ~exec import urllib2; sys.stdout(urllib2.urlopen('http://69.55.225.29/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read()).info()['Location'])
18:37:06 <bsmnt_bot> HTTPError: HTTP Error 404: Not Found
18:37:15 <ehird> oh, we need a host header
18:37:41 <AnMaster> ehird, well does the script work for you?
18:37:48 <ehird> AnMaster: will try in a bit
18:37:52 <AnMaster> after fixing sparkline path
18:37:53 <AnMaster> of course
18:38:39 -!- Judofyr has joined.
18:38:51 <ehird> ~exec import urllib2; sys.stdout(urllib2.open(urllib2.Request('http://69.55.225.29/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read(), {'Host': 'dpaste.com'})).info()['Location'])
18:38:51 <bsmnt_bot> AttributeError: 'module' object has no attribute 'open'
18:38:58 <ehird> ~exec import urllib2; sys.stdout(urllib2.urlopen(urllib2.Request('http://69.55.225.29/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read(), {'Host': 'dpaste.com'})).info()['Location'])
18:38:59 <bsmnt_bot> URLError: <urlopen error (-2, 'Name or service not known')>
18:39:06 <ehird> ;_____________________________________;
18:39:12 <oerjan> i suppose there must be something you could put in the chroot to _get_ dns?
18:39:20 <ehird> nah, im doing without dns :DD
18:39:22 <ehird> ~exec import urllib2; sys.stdout(urllib2.urlopen(urllib2.Request('http://69.55.225.29/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read(), {'Host': 'dpaste.com'})).info()['Location'])
18:39:32 <bsmnt_bot> URLError: <urlopen error (-2, 'Name or service not known')>
18:40:29 <ehird> Hm.
18:40:36 <ehird> ~exec import urllib2; sys.stdout(urllib2.urlopen(urllib2.Request('http://69.55.225.29/api/v1/', 'content=%s&language=Python&hold=1' % open('/bot/ircbot.py').read(), {})).info()['Location'])
18:40:46 <bsmnt_bot> HTTPError: HTTP Error 404: Not Found
18:40:49 <ehird> MizardX: wtf?!
18:40:58 <ehird> Is urllib doing some sort of dns lookup when its given Host?
18:41:21 <oerjan> that was my question too
18:42:01 <ehird> meh, ill just use sockets
18:43:02 <AnMaster> hm ~exec exec perl?
18:43:06 <ehird> python.
18:43:06 <AnMaster> j/k
18:43:16 <AnMaster> ehird, yes should replace it with perl
18:43:18 <AnMaster> ;)
18:43:32 <AnMaster> at least perl has a proper sandbox, the "safe" thing
18:43:43 <ehird> LOL
18:43:48 <ehird> that's not suitable for actually sandboxing
18:43:52 <AnMaster> well true
18:44:07 <AnMaster> there are probably ways to break out of it
18:44:17 <ehird> no, it just makes the interpreter totally useless.
18:44:21 <AnMaster> ah
18:44:28 <AnMaster> ▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅
18:44:32 <AnMaster> one thing I notice
18:44:40 <AnMaster> two of the bars are the same height
18:44:50 <AnMaster> so what values should one pass to avoid that
18:44:59 <AnMaster> as of course you can't change how unicode works
18:45:13 <MizardX> ~exec import urllib2; sys.stdout(urllib2.open('http://whatismyipaddress.com/').read()[:15])
18:45:13 <bsmnt_bot> AttributeError: 'module' object has no attribute 'open'
18:45:24 <MizardX> ~exec import urllib2; sys.stdout(urllib2.urlopen('http://whatismyipaddress.com/').read()[:15])
18:45:24 <bsmnt_bot> URLError: <urlopen error (-2, 'Name or service not known')>
18:45:26 <ehird> MizardX: ping eso-std.org
18:45:42 <ehird> ~exec import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded)); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); while True: sys.stdout(s.recv(1024))
18:45:46 <bsmnt_bot> SyntaxError: invalid syntax
18:45:47 <ehird> cmon work work work
18:45:49 <ehird> FUCK YOU
18:45:50 <ehird> :(
18:45:55 <ehird> ~exec import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); while True: sys.stdout(s.recv(1024))
18:45:58 -!- bsmnt_bot has quit (Excess Flood).
18:46:00 -!- bsmnt_bot has joined.
18:46:09 <oerjan> O_o
18:46:37 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = lambda: (sys.stdout(s.recv(1024)), time.sleep(5)) while True: foo()
18:46:38 <AnMaster> wtf
18:46:38 <bsmnt_bot> SyntaxError: invalid syntax
18:46:40 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = lambda: (sys.stdout(s.recv(1024)), time.sleep(5)); while True: foo()
18:46:43 -!- bsmnt_bot has quit (Excess Flood).
18:46:44 <AnMaster> ehird, no
18:46:45 <AnMaster> don't
18:46:46 -!- bsmnt_bot has joined.
18:46:50 <ehird> AnMaster: don't what
18:46:53 <ehird> do you even know what I'm doing?
18:46:57 <AnMaster> why do you want it to flood off?
18:47:00 <ehird> ...
18:47:02 <ehird> I don't.
18:47:05 <AnMaster> oh
18:47:23 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); sys.stdout(31+len(encoded)); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = lambda: (sys.stdout(s.recv(1024)), time.sleep(5)); while True: foo()
18:47:24 <bsmnt_bot> SyntaxError: invalid syntax
18:47:30 <AnMaster> ehird, also about putting in chroot for dns
18:47:32 <AnMaster> that is easy
18:47:39 <AnMaster> /etc/resolv.conf
18:47:39 <ehird> AnMaster: I said I didn't want to.
18:47:42 <ehird> This means I don't want to.
18:47:49 <AnMaster> ehird, ah ok
18:47:51 <AnMaster> missed that
18:48:04 * AnMaster looks in scrollback
18:48:19 <AnMaster> ah I see
18:48:38 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); sys.stdout(31+len(encoded)); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = (lambda: (sys.stdout(s.recv(1024)), time.sleep(5))); while True: foo()
18:48:38 <bsmnt_bot> SyntaxError: invalid syntax
18:48:43 <ehird> /j #bsmnt_bot_errors
18:48:51 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); sys.stdout(31+len(encoded)); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = (lambda: (sys.stdout(s.recv(1024)), time.sleep(5))); while True: foo()
18:48:55 <bsmnt_bot> SyntaxError: invalid syntax
18:49:08 <ehird> fail
18:49:12 <ehird> it pinpoints the error to... the line
18:49:12 <ehird> :D
18:49:31 <AnMaster> ehird, heh
18:49:43 <AnMaster> ehird, run it locally once to check?
18:49:45 <ehird> ~exec import time; import socket; import urllib; encoded=urllib.urlencode(open('/bot/ircbot.py').read()); sys.stdout(31+len(encoded)); s=socket.socket();s.connect(('69.55.225.29',80)); s.sendall('GET /api/v1/\r\nHost: dpaste.com\r\nContent-Length: %i\r\n\r\n' % (31+len(encoded))); s.sendall('content=%s&language=Python&hold=1\r\n' % encoded); foo = (lambda: (sys.stdout(s.recv(1024)), time.sleep(5), foo()));foo()
18:49:45 <bsmnt_bot> TypeError: not a valid non-string sequence or mapping object
18:51:27 <ehird> MizardX: w t f
18:51:51 -!- puzzlet_ has joined.
18:52:23 <AnMaster> ehird, hm are there such unicode chars except the other way around? like, their base is attached to the top of the char, not the bottom
18:52:41 <ehird> Um... Those are blocks.
18:52:52 <ehird> They don't have bases.
18:53:01 <AnMaster> um
18:53:03 <AnMaster>
18:53:06 <AnMaster> what about the same
18:53:07 <ehird> Oh.
18:53:10 <AnMaster> but from the top of the char block
18:53:12 <ehird> I don't think so.
18:53:14 <AnMaster> if you see what I mean
18:53:18 <AnMaster> flipped vertically
18:53:21 <AnMaster> ehird, ah ok
18:53:23 <AnMaster> well then
18:53:29 * AnMaster messes with inverted video
18:53:50 <ehird> what are you doing
18:54:00 <AnMaster> I will tell when it works
18:57:05 <MizardX> ~exec import pydoc; sys.stdout(pydoc.getdoc(self.do_raw))
18:57:17 <ehird> MizardX: itt: .__doc__
18:57:21 <AnMaster> yay
18:57:34 <MizardX> does not give signature
18:57:46 <MizardX> ~exec help(self.do_raw)
18:57:56 <AnMaster> ehird, http://rafb.net/p/tSfBXg37.html
18:57:57 <AnMaster> :D
18:58:12 <AnMaster> ehird, I can't show this on irc I'm afraid
18:58:14 <MizardX> ~exec self.do_raw.__doc__
18:58:23 <MizardX> ~exec sys.stdout(self.do_raw.__doc__)
18:58:24 <bsmnt_bot> None
18:58:25 <AnMaster> ehird, also rounding issues make it non-perfect
18:58:28 * AnMaster tries with 8
18:58:40 -!- M0ny has joined.
18:58:41 <MizardX> ~exec import pydoc; sys.stdout(pydoc)
18:58:42 <bsmnt_bot> <module 'pydoc' from '/usr/lib/python2.4/pydoc.pyc'>
18:58:51 <MizardX> ~exec import pydoc; sys.stdout(pydoc.getdoc('foo'))
18:58:52 <bsmnt_bot> str(object) -> string
18:58:52 <bsmnt_bot> Return a nice string representation of the object.
18:58:52 <bsmnt_bot> If the argument is a string, the return value is the same object.
18:58:59 <ehird> Traceback (most recent call last):
18:58:59 <ehird> File "/Users/ehird/bin/sparkline", line 21, in <module>
18:59:00 <ehird> Traceback (most recent call last):
18:59:03 <ehird> File "/Users/ehird/bin/sparkline", line 21, in <module>
18:59:05 <ehird> numbers = map(float, input)
18:59:07 <ehird> ValueError: invalid literal for float(): {9..0}
18:59:09 <ehird> ^CTraceback (most recent call last):
18:59:11 <ehird> File "/Users/ehird/bin/sparkline", line 21, in <module>
18:59:13 <ehird> numbers = map(float, input)
18:59:15 <ehird> ValueError: invalid literal for float(): {9..0}
18:59:16 <AnMaster> wtf
18:59:17 <ehird> Fail
18:59:20 <AnMaster> ehird, err
18:59:22 <AnMaster> not using bash?
18:59:28 <ehird> GNU bash, version 2.05b.0(1)-release (powerpc-apple-darwin8.0)
18:59:28 <ehird> Copyright (C) 2002 Free Software Foundation, Inc.
18:59:29 <AnMaster> "#!/usr/bin/env bash"
18:59:32 <AnMaster> ehird, too old
18:59:36 <AnMaster> bash 3 or later
18:59:46 <ehird> Let me know when it works with something other than bash 3
18:59:47 <AnMaster> well I could rewrite it with seq instead
18:59:53 <AnMaster> just didn't know you didn't have a modern bash
18:59:59 <ehird> seems to work with zsh.
18:59:59 <MizardX> ~exec self.do_raw()
19:00:00 <bsmnt_bot> TypeError: do_raw() takes exactly 3 arguments (1 given)
19:00:07 <ehird> AnMaster: it just flashes the bottom layer...
19:00:11 <ehird> oh
19:00:14 * ehird widens screen
19:00:15 <ehird> Awesome.
19:00:35 <AnMaster> ehird, you have a more modern bash then?
19:00:39 <ehird> MizardX: join #bsmnt_bot_errors
19:00:40 <ehird> for tracebacks
19:00:43 <ehird> AnMaster: works with zsh.
19:01:02 <AnMaster> ehird, oh I see
19:01:13 <AnMaster> ehird, anyway the bars doesn't match up perfectly
19:01:18 <AnMaster> sadly
19:01:19 <ehird> Does for me
19:01:28 <ehird> I'll dcc you a screenshot
19:01:54 <ehird> Huh, dcc is grayed out
19:02:17 <AnMaster> ▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅
19:02:17 <AnMaster> ▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃
19:02:28 <ehird> and?
19:02:30 <AnMaster> where the lower one is inverted
19:02:35 <ehird> looks like that to me
19:02:40 <AnMaster> ehird, the top doesn't perfectly match the bottom
19:02:48 <ehird> o_O
19:02:56 <AnMaster> as in, they aren't centered
19:02:59 <AnMaster> relative each other
19:03:01 <AnMaster> correctly
19:03:16 <AnMaster> I believe this is due to rounding errors
19:03:36 -!- puzzlet has quit (Connection timed out).
19:03:42 <ehird> They match up perfectly for me
19:03:54 <AnMaster> ehird, see above they didn't for me
19:04:03 <AnMaster> ok they do in zsh
19:04:05 <ehird> What is the issue?
19:04:10 <AnMaster> wait, zsh has floating point right?
19:04:11 <AnMaster> aha
19:04:14 <ehird> Ah.
19:04:16 <ehird> Yes.
19:04:18 <AnMaster> bash only has integer math
19:04:24 <AnMaster> so rounding issue
19:04:30 <ehird> AnMaster: sparkline(1) handles floats, FWIW
19:04:42 <ehird> (Obviously, since squish(1) outputs floats)
19:04:48 <AnMaster> ehird, well yes, but bash doesn't in the offset bit (see variable hl)
19:05:16 <AnMaster> huh
19:05:21 <AnMaster> hl is 30 on both
19:06:02 <ehird> ▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄
19:06:03 <ehird> ▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▃▃▂▁▁▁▂▃▃▄▅▅▆▇█▇▆▅▅▄▁
19:06:20 <AnMaster> that isn't perfect match up
19:06:28 <AnMaster> well in bash you can get perfect with:
19:06:30 <AnMaster> cycle_idx $(( off + hl + 1 )) | python ~/irc/sparkline
19:06:38 <AnMaster> adding the + 1 there
19:06:49 <AnMaster> then it is off by 1 in zsh :D
19:07:02 <ehird> zsh is superior anyway.
19:07:17 <AnMaster> wait what....
19:07:28 <AnMaster> non-reproducible success
19:07:30 <AnMaster> -_-
19:08:26 <AnMaster> ehird, wait I see.. the real issue is that screen is somehow always updated between the two sparkline calls
19:08:30 <AnMaster> meaning they are out of sync
19:08:35 <ehird> Ah.
19:08:50 <ehird> AnMaster: it'll be the inversion setting
19:08:50 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:08:53 <ehird> causing a reprint
19:08:53 <AnMaster> so this probably depends on terminal
19:09:02 <AnMaster> ehird, well I don't know...
19:09:27 <AnMaster> actually it sometimes jumps and is updated correctly instead
19:09:30 <AnMaster> huh
19:09:30 -!- bsmnt_bot has quit (Excess Flood).
19:09:32 -!- bsmnt_bot has joined.
19:09:42 <MizardX> >_>
19:09:52 <AnMaster> hm this could be due to screen refresh rate *adds sleep calls*
19:10:57 <AnMaster> wtf
19:11:04 <AnMaster> sometimes the lower line stalls for a bit
19:11:09 <AnMaster> like half a second
19:11:12 <AnMaster> while the upper one updates
19:11:24 <AnMaster> ehird, does that make any sense?
19:11:33 <ehird> Not for me.
19:11:37 <ehird> Maybe your machine sucks ;-)
19:12:12 <AnMaster> ehird, only happens with zsh for me
19:12:20 <ehird> shrug
19:12:23 <ehird> zsh is slow
19:12:30 <AnMaster> bash too
19:12:36 * AnMaster rewrites in ksh syntax
19:13:09 <AnMaster> ehird, oh and ksh accepts {}
19:13:14 <AnMaster> it doesn't accept "local" however
19:13:19 <ehird> ksh is terrible :P
19:14:51 <ehird> bsmnt_bot code: http://dpaste.com/hold/110147/
19:14:52 <ehird> (MizardX)
19:15:04 <ehird> Loads a bit slow :\
19:15:36 -!- Mony has quit (Connection timed out).
19:16:03 <ehird> Fuck it
19:16:04 <ehird> ill pastie it
19:16:30 <ehird> oh
19:16:31 <ehird> works now, heh.
19:16:33 <ehird> MizardX:
19:17:52 <AnMaster> ehird, you did all that just to get the bot's code?
19:18:00 <ehird> No.
19:18:04 <ehird> I just copied it manually from the chroot.
19:18:09 <AnMaster> ah
19:20:42 <ehird> unicode needs slimmer blocks
19:20:46 <ehird> sparklines are meant to be tiny
19:24:06 <AnMaster> ehird, cleaned up version that runs under ksh, bash3 and zsh http://rafb.net/p/LVefnN13.html
19:24:21 <ehird> python -O?
19:24:23 <ehird> No.
19:24:31 <ehird> Wasteful & pointless...
19:24:36 <ehird> Won't even gain you anything in this case.
19:24:38 <AnMaster> ehird, yes I put it there to test, didn't make any difference
19:24:42 <ehird> :P
19:24:51 <AnMaster> ehird, when does -O help?
19:24:57 <ehird> I've never used it.
19:25:02 <ehird> I don't think anyone does.
19:25:21 <AnMaster> well looking at various python programs it seems quite common in the shebang line
19:25:30 <ehird> I've never seen it.
19:25:37 <AnMaster> when it is *supposed* to help?
19:26:00 <ehird> I don't know. I think it's basically unmaintained.
19:26:49 <oklopol> it's supposed to make you realize you're not a python programmer at heart, just prints "OptionError: not a chance"
19:26:51 <AnMaster> ehird, lots of files in python's own lib dir are *.pyo
19:26:59 <AnMaster> as well as *.pyc
19:27:13 <ehird> AnMaster: You use Gentoo.
19:27:20 <AnMaster> ehird, same on freebsd
19:27:28 <ehird> I don't know.
19:27:52 <AnMaster> ehird, what about your /usr/local/lib/python2.5/ /usr/lib/python2.5/ or whatever
19:27:56 <ehird> Hmm. I wonder if I could get a scheme implementation something like 2-3x slower than C.
19:27:58 <AnMaster> any *.pyc? any *.pyo?
19:28:43 <ehird> Lots of both, interestingly/
19:28:46 <ehird> Shrug
19:28:51 <AnMaster> k
19:28:58 <AnMaster> same here indeed
19:30:32 * ehird calls his scheme something unappealing, like fatpig
19:32:32 -!- Corun has quit ("Leaving").
19:36:11 <AnMaster> floating point: when sin(pi) != 0
19:36:18 <AnMaster> > math:sin(math:pi()).
19:36:19 <AnMaster> 1.2246467991473532e-16
19:36:20 <AnMaster> ---
19:36:22 <AnMaster> -_-*
19:36:45 <ehird> Syntax highlighting is irritating. I move we outlaw syntax highlighting.
19:37:01 <AnMaster> ehird, I like basic syntax highlight
19:37:08 <AnMaster> also I vote we outlaw it for whitespace
19:37:12 <AnMaster> but only for whitespace
19:37:25 <ehird> Syntax highlighting is kind of useless for scheme, since near everything is redefinable.
19:37:39 <ehird> All you can do is dim the parentheses, and maybe bold one or two things like "define", "let" and "lambda".
19:38:20 -!- ehird has set topic: a.
19:38:23 <ehird> Fail
19:38:48 <AnMaster> ehird, matching () in matching colors help
19:38:54 <ehird> AnMaster: no
19:39:00 <ehird> parentheses matching is hideous
19:39:10 <AnMaster> why do you think that?
19:39:10 <ehird> Lisp coders read the indentational structure, not the parentheses.
19:39:21 <ehird> Thus why most of them set parentheses to a light gray, to avoid eyestrain and concentrate on the actual code.
19:39:40 <ehird> However, a mode like paredit, which does semi-structural editing on s-expressions: yes please.
19:39:48 <AnMaster> hm
19:39:59 <AnMaster> ehird, paredit?
19:40:08 <ehird> http://mumble.net/~campbell/emacs/paredit.el
19:40:24 <ehird> Explanation & documentation is in the starting comments.
19:40:30 <ehird> AnMaster: Overview: http://www.emacswiki.org/emacs/ParEdit
19:40:50 * AnMaster loads it in w3m mode
19:44:32 -!- MizardX has set topic: b.
19:44:33 <bsmnt_bot> TOPIC #esoteric :b | http://tunes.org/~nef/logs/esoteric/
19:44:50 <AnMaster> eh
19:44:54 <AnMaster> interesting
19:44:58 -!- ehird has set topic: fail.
19:44:58 <bsmnt_bot> TOPIC #esoteric :fail | http://tunes.org/~nef/logs/esoteric/
19:45:11 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric/.
19:45:12 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:13 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:17 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:17 <AnMaster> wtf
19:45:20 <AnMaster> fail too
19:45:21 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:25 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:29 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:32 <AnMaster> ...
19:45:32 <MizardX> ow
19:45:34 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/.
19:45:38 <AnMaster> ehird, fix
19:45:39 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~ne.
19:45:40 <ehird> ~exec bot.raw('QUIT')
19:45:41 <ehird> AnMaster: not my code
19:45:42 <ehird> stfu
19:45:44 <ehird> it's MizardX
19:45:50 -!- bsmnt_bot has quit.
19:45:52 -!- bsmnt_bot has joined.
19:46:06 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | WE LOVE OUR LOGS.
19:46:19 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef/logs/esoteric/ | http://tunes.org/~nef.
19:46:37 <AnMaster> why? :(
19:46:48 <ehird> as many logs as possible
19:46:49 <ehird> wait no
19:46:58 <AnMaster> the last one doesn't fit
19:46:59 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~nef/logs/esoteric http://tunes.org/~.
19:47:08 -!- ehird has set topic: Let's try this.
19:47:08 -!- bsmnt_bot has set topic: Let's try this | http://tunes.org/~nef/logs/esoteric/.
19:47:12 <ehird> Win
19:47:13 <MizardX> :D
19:47:20 -!- AnMaster has set topic: Let's try this | http://tunes.org/~nef/logs/esoteric/ | And this.
19:47:22 <ehird> MizardX: now make the command registers persist!
19:47:25 -!- AnMaster has set topic: Let's try this | http://tunes.org/~nef/logs/esotseric/ | And this.
19:47:29 <AnMaster> hm?
19:47:31 <AnMaster> fail?
19:47:32 -!- ehird has set topic: I like big butts and I cannot lie.
19:47:33 -!- bsmnt_bot has set topic: I like big butts and I cannot lie | http://tunes.org/~nef/logs/esoteric/.
19:47:53 -!- AnMaster has set topic: But why does it fail | if there is more than one section.
19:47:57 <ehird> it doesn't
19:48:03 <AnMaster> it just did?
19:48:05 <ehird> no
19:48:15 <AnMaster> so why didn't it add the logs?
19:48:17 -!- bsmnt_bot has quit (Client Quit).
19:48:19 -!- bsmnt_bot has joined.
19:48:32 -!- ehird has set topic: I like big butts and I cannot die.
19:48:36 <ehird> Phail
19:48:39 <ehird> ~exec bot.raw('QUIT')
19:48:39 -!- bsmnt_bot has quit (Client Quit).
19:48:42 -!- bsmnt_bot has joined.
19:48:47 -!- AnMaster has set topic.
19:50:35 -!- AnMaster has set topic: ..
19:50:41 <oklopol> holy fucking fuck. i'm starting to think continuous brainfuck is not entirely possible to do.
19:50:45 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric.
19:50:49 <ehird> stop it AnMaster
19:50:51 <ehird> we are debugging :|
19:50:54 <AnMaster> oklopol, continuous brainfuck?
19:50:55 <AnMaster> ehird, ok
19:50:57 <ehird> oklopol: The name is "contfuck".
19:51:03 <oklopol> ehird: well yes
19:51:13 <oklopol> i just keep using the wrong name for some reason
19:51:19 <ehird> Also, you still have to fit a u in there to perfect it.
19:51:21 * AnMaster looks
19:51:47 <AnMaster> it isn't on the wiki?
19:51:51 <AnMaster> so what is contfuck
19:51:57 <ehird> oklopol's language.
19:52:00 <oklopol> no i can't get the semantics figured out really.
19:52:11 <oklopol> well. actually the semantics are pretty simple
19:52:16 <oklopol> but i can't find a way to implement it
19:52:25 <AnMaster> oklopol, spec?
19:52:41 <ehird> AnMaster: OKLOPOL LANGUAGES DO NOT HAVE A SPEC
19:52:41 <oklopol> AnMaster: my languages rarely have specs.
19:52:43 <ehird> You've been here months
19:52:46 <ehird> get it in your head already
19:52:46 <oklopol> i'm not that structured.
19:52:48 <AnMaster> oklopol, ok
19:52:57 <AnMaster> so tell me what is special about the language
19:53:02 <AnMaster> how does it differ from bf?
19:53:09 <oklopol> +++++{--->++<}
19:53:16 <oklopol> and cell 2 would be 10/3
19:53:39 <oklopol> {...} starts a block where inc's and dec's are infinitely smaller than values on the outside
19:53:42 <AnMaster> oklopol, continuations?
19:53:48 <ehird> 19:53 <AnMaster> oklopol, continuations?
19:53:50 <ehird> What
19:53:50 <ehird> Did
19:53:51 <AnMaster> ah no
19:53:52 <ehird> The
19:53:54 <ehird> Example
19:53:54 <oklopol> numbers are represented as an infinite list of bignums
19:53:56 <ehird> He
19:53:58 <AnMaster> ehird, lag
19:53:58 <ehird> Showed
19:54:00 <ehird> Have
19:54:02 <ehird> To
19:54:03 <AnMaster> <oklopol> +++++{--->++<}
19:54:04 <ehird> Do
19:54:04 <AnMaster> <AnMaster> oklopol, continuations?
19:54:06 <ehird> With
19:54:06 <AnMaster> <oklopol> and cell 2 would be 10/3
19:54:08 <ehird> Continuatoins
19:54:10 <ehird> o
19:54:12 <ehird> AnMaster: your network connection sux
19:54:16 <AnMaster> ehird, yes it does
19:54:19 <AnMaster> huge lag spikes atm
19:54:20 <ehird> :D
19:54:27 <AnMaster> ehird, all ISPs sucks
19:54:31 <AnMaster> except xs4all
19:54:42 <oklopol> where the ith bignum is kinda a "differential" of all bignums before index i, and {...} step one deeper in this infinite list of nested differentials
19:54:49 <ehird> Yeah, I only hear good things about xs4all.
19:55:08 -!- oerjan has quit ("Good night").
19:55:13 -!- CakeProphet has joined.
19:55:21 <ehird> New plan: Move to the Netherlands, perform hostile takeover of XS4ALL, ???, world domination
19:55:34 <oklopol> AnMaster: and no has nothing to do with continuations, but continuity
19:55:57 <AnMaster> right
19:56:05 <oklopol> oh actually, the cells aren't bignums, they are rationals
19:56:16 <oklopol> or maybe general reals, but i hope that isn't needed...
19:56:17 <AnMaster> bf with continuations would be cool though
19:56:24 <ehird> itt: jumpfuck
19:56:29 <oklopol> maybe, but much less innovative
19:56:36 <AnMaster> aha
19:56:44 <oklopol> continuations are so retro
19:56:53 -!- CakeProphet has quit (Remote closed the connection).
19:57:05 <ehird> I made bf+continuations in july 2007
19:57:08 <ehird> http://esolangs.org/wiki/JumpFuck
19:57:15 <ehird> weird, it got implemented
19:57:22 <oklopol> so did you know you can make a turing machine with affine transformations
19:58:04 -!- CakeProphet has joined.
19:58:25 <oklopol> the turku university is like #esoteric^2, the prof i talked to knows tons more about esolanging than i do, i mean, the mathematical aspects of it
19:59:14 <oklopol> also he's encoded turing machines in tiling infinite planes afaiu
19:59:21 <ehird> oklopol: Get him in here
19:59:22 * oklopol wants summa dat
20:00:03 <oklopol> i'm not sure he'd be at home here
20:00:15 <oklopol> much older than oerjan (i think)
20:00:23 <oklopol> (i can't really assess that, just assume)
20:00:29 <ehird> meh, we can just create #esoteric-sans-gay-sex
20:00:54 <Slereah> No one is here, ehird
20:01:04 <Slereah> I guess it's not really esoteric without gay sex
20:03:14 <oklopol> o
20:03:15 <oklopol> o
20:03:15 <oklopol> o
20:03:15 <oklopol> o
20:03:15 <oklopol> o
20:03:16 <oklopol> o
20:03:18 <oklopol> o
20:03:20 <oklopol> o
20:03:28 <ehird> o
20:03:28 <ehird> o
20:03:30 <ehird> o
20:03:32 <ehird> o
20:03:34 <ehird> o
20:03:36 <ehird> o
20:03:38 <ehird> o
20:03:40 <ehird> o
20:03:42 <ehird> o
20:03:44 <ehird> o
20:03:45 <Judofyr> o
20:03:49 <Judofyr> :o
20:04:00 <oklopol> ::o
20:05:07 -!- MigoMipo has joined.
20:13:34 -!- Corun has joined.
20:18:29 -!- bsmnt_bot has quit.
20:18:31 -!- bsmnt_bot has joined.
20:18:37 -!- ehird has set topic: Epic win time.
20:18:38 -!- bsmnt_bot has set topic: Epic win time | http://tunes.org/~nef/logs/esoteric.
20:18:58 <ehird> 8)
20:19:18 <oklopol> :DDDDDDDDDDDDDDDDDDD
20:19:28 <ehird> http://tunes.org/~nef/logs/eurocreme
20:19:29 <ehird> er
20:19:31 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:19:37 <ehird> . . . . .
20:19:40 <ehird> HALP
20:19:48 -!- ehird has set topic: ?.
20:19:48 -!- bsmnt_bot has set topic: ? | http://tunes.org/~nef/logs/esoteric.
20:19:51 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:19:55 <ehird> WTFAIL
20:20:05 -!- ehird has set topic: tunes.org.
20:20:05 -!- bsmnt_bot has set topic: tunes.org | http://tunes.org/~nef/logs/esoteric.
20:20:05 <Slereah> Aw, the link does not exist :(
20:20:16 -!- ehird has set topic: http://tunes.org/~nef/logs.
20:20:17 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs | http://tunes.org/~nef/logs/esoteric.
20:20:20 -!- Slereah has set topic: goatse.cx | tunes.org | http://tunes.org/~nef/logs/esoteric.
20:20:22 -!- ehird has set topic: http://tunes.org/~nef/logs/esocreme.
20:20:22 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esocreme | http://tunes.org/~nef/logs/esoteric.
20:20:26 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:20:30 <ehird> Wow.
20:20:33 <ehird> Only eurocreme breaks it.
20:20:36 <ehird> That is amazing.
20:23:08 <oklopol> lol
20:23:26 -!- ehird has set topic: eurocreme.
20:23:27 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:23:34 -!- ehird has set topic: http://tunes.org/~nef/logs/esocreme.
20:23:34 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/esocreme | http://tunes.org/~nef/logs/esoteric.
20:23:37 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:23:38 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/eurocreme | http://tunes.org/~nef/logs/esoteric.
20:23:40 <ehird> ...
20:23:40 <ehird> O
20:23:42 <ehird> MizardX: it works now
20:24:29 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:25:32 -!- ehird has set topic: a.
20:25:33 -!- bsmnt_bot has set topic: a | http://tunes.org/~nef/logs/esoteric.
20:25:41 -!- ehird has set topic: http://tunes.org/~nef/logs/eurocreme.
20:25:46 <ehird> MizardX: :|
20:26:15 -!- MizardX has set topic: b.
20:26:21 -!- MizardX has set topic: b c.
20:26:28 -!- MizardX has set topic: b c :.
20:29:43 -!- MizardX has set topic: b.
20:29:43 -!- bsmnt_bot has set topic: b | http://tunes.org/~nef/logs/esoteric.
20:29:50 -!- MizardX has set topic: b c.
20:29:50 -!- bsmnt_bot has set topic: b c | http://tunes.org/~nef/logs/esoteric.
20:29:54 -!- MizardX has set topic: b c ://.
20:29:55 -!- bsmnt_bot has set topic: b c :// | http://tunes.org/~nef/logs/esoteric.
20:30:10 -!- MizardX has set topic: http://tunes.org/~nef/logs/eurocreme.
20:30:11 -!- bsmnt_bot has set topic: http://tunes.org/~nef/logs/eurocreme | http://tunes.org/~nef/logs/esoteric.
20:30:34 -!- MizardX has set topic: spamplex.
20:30:41 <MizardX> ...
20:30:49 <ehird> ...
20:31:12 <oklopol> ;;;)
20:31:35 <MizardX> it always works a few times, then stops
20:31:35 <oklopol> so am i to understand you have a bug in a bot written in python?
20:35:27 -!- ehird has set topic: eurocreme.
20:35:27 <ehird> bsmnt_bot:
20:35:31 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:36:04 -!- ehird has set topic: eurocreme.
20:37:03 <MizardX> ... it works sometimes. Now I need some food
20:37:05 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
20:37:19 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:37:21 -!- ehird has set topic: eurocreme.
20:37:22 -!- Judofyr has joined.
20:37:24 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:37:25 -!- ehird has set topic: eurocreme.
20:37:28 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:37:31 <ehird> MizardX: ...
20:37:33 <ehird> it works odd times
20:37:38 <ehird> or even, w/e
20:39:15 <oklopol> well isn't that pretty awesome?
20:39:41 -!- ehird has set topic: eurocreme.
20:39:41 <ehird> ...
20:39:44 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:39:53 -!- ehird has set topic: eurocreme.
20:39:53 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:39:56 -!- ehird has set topic: eurocreme.
20:39:56 -!- bsmnt_bot has set topic: eurocreme | http://tunes.org/~nef/logs/esoteric.
20:39:58 <ehird> o.o
20:39:59 -!- ehird has set topic: eurocreme.
20:40:00 <oklopol> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
20:40:59 -!- Slereah has set topic: If you were to die tomorrow in a table-related accident, I wouldn't give a rat's ass because I would be sitting on my table..
20:41:00 -!- bsmnt_bot has set topic: If you were to die tomorrow in a table-related accident, I wouldn't give a rat's ass because I would be sitting on my table. | http://tunes.org/~nef/logs/esoteric.
20:48:10 <kerlo> It works only at times?
20:48:17 <kerlo> Maybe it waits for the next message or something.
21:15:45 -!- AnMaster has set topic: Hm What?.
21:15:49 <AnMaster> or?
21:15:52 <AnMaster> indeed
21:16:18 -!- AnMaster has set topic: Odd..
21:16:18 -!- bsmnt_bot has set topic: Odd. | http://tunes.org/~nef/logs/esoteric.
21:16:23 <AnMaster> ok. Very odd.
21:16:30 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric.
21:16:36 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric | test.
21:16:39 <AnMaster> hm?
21:16:52 -!- AnMaster has set topic: test | test.
21:16:53 -!- bsmnt_bot has set topic: test | test | http://tunes.org/~nef/logs/esoteric.
21:16:59 -!- AnMaster has set topic: test | test | http://tunes.org/~nef/logs/esotaeric.
21:17:03 <AnMaster> hm?
21:17:12 <AnMaster> ehird, why does it only work sometimes?
21:17:17 -!- AnMaster has set topic: test | test | http://tunes.org/~nef/logs/esotaeric | any idea?.
21:17:18 -!- bsmnt_bot has set topic: test | test | http://tunes.org/~nef/logs/esotaeric | any idea? | http://tunes.org/~nef/logs/esoteric.
21:17:32 -!- AnMaster has set topic: Topic goes here | http://tunes.org/~nef/logs/esoteric.
21:19:17 -!- Slereah has set topic: Cock goes here | http://tunes.org/~nef/logs/esoteric.
21:38:31 <ehird> r5rs is so cool
21:43:27 <ehird> folklore.org is down :<
21:48:13 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric.
21:55:52 <psygnisfive> ehird, have you read r6rs?
21:55:57 <ehird> yes.
21:56:02 <ehird> it sucks shit
21:56:06 <psygnisfive> i once started reading it, and i wansn't really sure how i felt
22:03:37 -!- |MigoMipo| has joined.
22:09:27 -!- |MigoMipo| has quit ("QuitIRCException: MigoMipo out of IRC").
22:20:32 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
22:31:04 <AnMaster> ehird, English language question
22:31:24 <AnMaster> would "Please don't hotlink images" work as a text to replace externally hotlinked images with?
22:31:53 <AnMaster> (It isn't fun when someone hotlinks a full size screenshot and display it as a thumbnail.)
22:32:03 <MizardX> + "from this site"
22:32:10 <ehird> AnMaster: I recommend goatse.
22:32:15 <MizardX> haha
22:32:18 <ehird> Or, perhaps, "Hello! I am the owner of this site. I suck dicks!"
22:32:25 <ehird> But yes, what MizardX said
22:32:32 <AnMaster> ehird, not appropriate for this type of site
22:32:37 <AnMaster> MizardX, hm ok
22:32:42 <ehird> goatse is _always_ appropriate.
22:32:46 <AnMaster> "Please don't hotlink images from this site"
22:32:47 <AnMaster> right
22:32:48 <ehird> Family gathering? Goatse!
22:33:10 <Slereah> It's the party trick that brightens ever family event
22:33:25 <Slereah> I wonder if Kirk Johnson knows of his fame
22:36:10 -!- BeholdMyGlory has joined.
22:41:44 <oklopol> "this always happens to me in family scrabble games"
22:43:20 <ehird> hahahah
22:43:29 <ehird> "what letters do you have?"
22:43:38 <ehird> "D, I, S, T, E, N, D, E, D, BLANK, A, N, U, S"
22:43:47 -!- M0ny has left (?).
22:44:59 <kerlo> Who's Kirk Johnson?
22:45:07 <ehird> goatse man
22:48:55 <Slereah> The man behind the anus
22:49:55 <ehird> in front of.
22:50:44 <ehird> "And not all languages can do the same as all others.. as you seem to claim."
22:50:49 <flexo> what
22:50:54 <flexo> no msg from christel
22:50:54 <ehird> => "What is turing completeness?"
22:50:56 <flexo> :'(
22:51:06 <ehird> flexo: she doesn't love you any more.
22:51:09 <ehird> we all got messages from her.
22:51:13 <flexo> :(
22:51:45 -!- CakeProphet has quit ("lol").
23:06:45 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
23:07:08 -!- decipher has joined.
23:08:07 -!- decipher_ has joined.
23:08:08 -!- decipher has quit (Read error: 104 (Connection reset by peer)).
23:10:06 -!- Judofyr has quit (Remote closed the connection).
23:10:41 <kerlo> ehird: who said not all language can do the same as all others?
23:10:48 <ehird> a reddit commenter
23:11:17 <kerlo> Well, he's right, if "all" means "all".
23:11:25 <ehird> Which it doesn't in context :P
23:12:40 <FireFly> [23:41:44] <oklopol> "this always happens to me in family scrabble games"
23:12:43 <FireFly> ^ xkcd?
23:13:16 <oklopol> yes
23:14:24 <flexo> ofcourse
2009-01-18
00:00:00 -!- BeholdMyBot has joined.
00:00:19 <FireFly> Mwahaha
00:00:31 <FireFly> [00:59:58] <@FireFly> ^bf +++++++++++++.-----[->++++++++>++++>++++++++++++<<<]>++++++++++.+++++.------.+++++.>.+++.>+++++.++++++++++++++.----.+++++.---------------.+++++++++++++.---------.------.
00:00:41 <FireFly> = [CR]JOIN #esoteric
00:00:45 -!- BeholdMyBot has left (?).
00:03:32 <Deewiant> ehird: I just released Coadjute, in case you're interested.
00:03:37 <ehird> link
00:03:42 <Deewiant> And with that, I'm off to sleep ->
00:03:54 <Deewiant> iki.fi/matti.niemenmaa/coadjute
00:04:12 <ehird> thx
00:04:12 <ehird> :)
00:08:56 <oklopol> www.iki.fi/matti.niemenmaa/coadjute
00:09:32 <ehird> oklopol: wut?
00:09:38 <ehird> oh, for clickability?
00:13:33 <BeholdMyGlory> ^bf ,[.,]!Hello World!
00:13:33 <fungot> Hello World!
00:13:41 <BeholdMyGlory> ^bf +++++++++++++.---[>++++++<-]>+++++<+++++[>+++<-]>.<+++++[>---<-]>.<+++++[>+++<-]>++.++.>+++++++[>+++++<-]>---.+++.<+++[<+++++>-]<++.++++++++++++++.----.+++++.---------------.+++++++++++++.---------.------.
00:13:41 <fungot> .PART #esoteric
00:13:54 <BeholdMyGlory> damn :P
00:13:58 <oklopol> ehird: yes.
00:15:51 -!- moozilla has joined.
00:28:21 <ehird> Holy shit kottke.org redesigned and it looks so ugly
00:30:40 <ehird> well, ok, only the STUPID BLUE BORDER looks ugly
00:43:21 <flexo> yea
00:43:25 <flexo> it started looking all fine
00:43:32 <flexo> until loading the images finished
00:44:02 * ehird sees if he can block that image ;-)
00:55:10 -!- BeholdMyGlory has quit ("bye").
00:57:51 -!- FireFly has quit ("Later").
01:59:38 <oklopol> o
01:59:39 <oklopol> o
02:07:26 <kerlo> Great, I have a functioning Lispoid. It has only one primitive: lambda.
02:07:56 <kerlo> I don't want to figure out how it works, so you guys tell me what expressions to evaluate.
02:08:41 -!- GregorR has joined.
02:09:01 <kerlo> Hi, GregorR. I'm a LISP bot now.
02:09:44 -!- GregorR has quit (Remote closed the connection).
02:09:58 <kerlo> I guess I was too scary.
02:11:05 <bsmntbombdood> WHO HIGHLIGHTED BSMNT_BOT
02:11:13 <kerlo> *Lisp> evaluate . read $ "((lambda a (a a)) (3 4))"
02:11:13 <kerlo> ((3 4) (3 4))
02:11:47 <kerlo> Hey, I got it to go into an actual infinite loop.
02:11:55 <kerlo> As opposed to those fake infinite loops you see on TV.
02:12:33 <bsmntbombdood> ...not suprising
02:15:25 <kerlo> *Lisp> evaluate . read $ "((lambda s ((lambda k s) (lambda x (lambda y x)))) (la
02:15:29 <kerlo> mbda x (lambda y (lambda z ((x z) (y z))))))"
02:15:31 <kerlo> [lambda x (lambda y (lambda z ((x z) (y z))))]
02:15:36 <kerlo> Phear.
02:16:13 <kerlo> Replacing that inner thing with (s k) gives this: [lambda y (lambda z (((lambda x (lambda y x)) z) (y z)))]
02:18:05 <kerlo> ((s k) a) gives this: [lambda z (((lambda x (lambda a x)) z) (a z))]
02:18:16 <kerlo> (((s k) a) b), surprisingly, gives this: b
02:18:46 <kerlo> Wait, no, that's actually correct.
02:20:13 <kerlo> I'd be surprised if this could actually handle big expressions correctly.
02:30:36 * kerlo makes s, k and i built-ins
02:32:47 <kerlo> Now the only things we need are foldr and equality testing.
02:38:46 <kerlo> And both have now been implemented.
02:42:31 <kerlo> All we need to do now is make it an IRC bot!
02:47:18 <MizardX> Lambda is just one greek character. Why need 6 characters to encode it?
02:47:38 <kerlo> It would be shorter to just use L.
02:48:22 <MizardX> or some non-alphanumeric one, such as \, which resembles lambda
02:48:49 <MizardX> ((\s ((\k s) (\x (\y x)))) (\x (\y (\z ((x z) (y z))))))
02:54:47 <adimit> Yi actually has a built-in feature (in haskell mode) that translates '\' directly to the unicode-character 'lambda' in the right context.
02:55:10 <adimit> tremendously useful for my sore eyes :-)
02:57:59 <MizardX> ((λs ((λk s) (λx λy x))) (λx λy λz x z (y z)))
03:02:04 <kerlo> I think my Lispy IRC bot is ready.
03:02:19 <kerlo> There's a small problem, though, in that any parse error in your expression will cause it to disconnect.
03:02:22 <kerlo> Oh well.
03:02:26 -!- kerlobot has joined.
03:02:36 <kerlo> #eval s
03:02:49 <kerlo> Oh, darn.
03:03:43 <kerlo> CREAMPUFF!
03:03:44 -!- kerlobot has quit (Remote closed the connection).
03:03:51 <kerlo> Cool, that made it quit.
03:10:08 <kerlo> So, I'm stealing someone else's IRC code.
03:18:18 -!- kerlobot has joined.
03:18:25 <kerlo> #eval s
03:18:25 <kerlobot> [l x (l y (l z ((x z) (y z))))]
03:18:29 <kerlo> Woot!
03:18:39 <kerlo> #eval This is a syntax error: ]]]]]
03:18:40 -!- kerlobot has quit (Remote closed the connection).
03:18:47 <kerlo> Wow.
03:21:39 -!- kerlobot has joined.
03:21:44 <kerlo> #eval s
03:21:44 <kerlobot> [l x (l y (l z ((x z) (y z))))]
03:21:50 <kerlo> #eval This is a syntax error: ]]]]]
03:21:51 <kerlobot> Syntax error
03:22:06 <kerlo> Lovely.
03:22:53 <kerlo> #eval (((s i) i) ((s i) i))
03:23:03 <kerlo> #eval I'm waiting...
03:23:19 <kerlo> Yeah, that's never going to finish.
03:23:22 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
03:29:43 -!- puzzlet_ has quit (Read error: 104 (Connection reset by peer)).
03:29:49 -!- puzzlet has joined.
03:34:16 -!- kerlobot has joined.
03:34:20 <kerlo> #eval 3
03:34:20 <kerlobot> 3
03:34:30 <kerlo> #eval This is probably a syntax error.
03:34:31 <kerlobot> Syntax error
03:34:42 <MizardX> #eval "test"
03:34:43 <kerlobot> "test"
03:34:48 <MizardX> #eval "test" + "test"
03:34:49 <kerlobot> Syntax error
03:34:49 <kerlo> #temp This is probably a syntax error.
03:34:50 <kerlobot> Syntax error
03:34:59 <kerlo> #temp muahaha
03:35:02 <kerlo> #eval "test"
03:35:02 <kerlobot> muahaha
03:35:05 <kerlo> #eval s
03:35:05 <kerlobot> muahaha
03:35:10 <kerlo> #temp input
03:35:14 <kerlo> #eval "test"
03:35:15 <kerlobot> "test"
03:35:41 <MizardX> #eval (+ "a" "b")
03:35:42 <kerlobot> (+ "a" "b")
03:35:46 <kerlo> Built-in functions: s, k, i, l, f, e
03:36:03 <kerlo> So one thing it can do is evaluate SKI calculus.
03:36:32 <MizardX> #eval ["a" "b"]
03:36:33 <kerlobot> Syntax error
03:36:50 <MizardX> no way to concatenate strings?
03:36:55 <kerlo> Nope.
03:37:07 <kerlo> You might be able to figure out a way to concatenate lists, though.
03:37:24 <MizardX> #eval (+ [1 2] [3 4])
03:37:24 <kerlobot> Syntax error
03:37:27 <kerlo> f is the foldr function.
03:37:45 -!- puzzlet has quit (Remote closed the connection).
03:37:46 <MizardX> #eval [1, 2]
03:37:47 <kerlobot> Syntax error
03:37:49 -!- puzzlet has joined.
03:38:16 <kerlo> #eval (((l x (l y (list x y))) 1) 2)
03:38:16 <kerlobot> (list 1 2)
03:38:48 <kerlo> Obvious improvement: make l take a list of arguments, not just one.
03:39:45 <MizardX> #eval ((l list (list x)) y)
03:39:46 <kerlobot> (y x)
03:39:58 <MizardX> so how is list different from any other value?
03:40:03 <kerlo> It isn't.
03:40:16 <MizardX> numbers, strings and tuples
03:40:38 <kerlo> My lisp has three types: atom, list, and lambda function.
03:41:00 <MizardX> #eval "xy
03:41:00 <kerlobot> "xy
03:41:02 <MizardX> oh
03:41:04 <kerlo> "foo" is an atom. "(blah blah blah)" is a list. "[l x y]" is a lambda function.
03:41:37 <kerlo> If you don't have any parentheses or brackets, you won't have any lists or lambda functions.
03:42:08 <MizardX> I know. Since you didn't mention strings, I had to test the function of "
03:42:15 * kerlo nods
03:42:40 <kerlo> " is not a special character in any way; only parentheses, brackets and whitespace are different from letters.
03:42:56 <kerlo> CREAMPUFF!
03:42:56 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
03:43:07 <MizardX> :P
03:43:29 -!- kerlobot has joined.
03:43:33 <kerlo> Now it's better.
03:43:52 <kerlo> #temp (the answer is input)
03:43:55 <kerlo> #eval (s k)
03:43:56 <kerlobot> (the answer is (s k))
03:44:05 <kerlo> Oh, that's not the answer at all.
03:44:07 <kerlo> #reset
03:44:10 <kerlo> #eval (s k)
03:44:10 <kerlobot> [l y (l z ((k z) (y z)))]
03:44:42 <MizardX> #temp (x y)
03:44:46 <MizardX> #eval (x y)
03:44:46 <kerlobot> (x y)
03:44:56 <kerlo> Now everything will evaluate to (x y).
03:45:02 <MizardX> #eval (x y input)
03:45:03 <kerlobot> (x y)
03:45:06 <MizardX> #temp (x y input)
03:45:08 <MizardX> #eval (x y)
03:45:08 <kerlobot> (x y)
03:45:24 <kerlo> The bot stores a template, which is by default "input".
03:45:49 <kerlo> The #temp and #eval commands substitute their input for the word "input" in the template, then do something with the results.
03:46:04 <MizardX> #reset
03:46:06 <kerlo> #temp sets the the template to it; #eval evaluates it and outputs the result.
03:46:06 <kerlobot> Syntax error
03:46:14 <kerlo> Now the template is "input" again.
03:47:11 <kerlo> #eval s
03:47:11 <kerlobot> [l x (l y (l z ((x z) (y z))))]
03:47:13 <kerlo> #eval k
03:47:14 <kerlobot> [l x (l y x)]
03:47:15 <kerlo> #eval i
03:47:15 <kerlobot> [l x x]
03:47:28 <kerlo> #eval (e 3 3)
03:47:28 <kerlobot> (e 3 3)
03:47:32 <kerlo> Oops.
03:47:38 <kerlo> #eval (e 3 3 yes no)
03:47:38 <kerlobot> yes
03:47:40 <kerlo> #eval (e 3 4 yes no)
03:47:41 <kerlobot> no
03:47:59 <kerlo> #eval (f one two (1 2 3))
03:48:00 <kerlobot> (one 1 (f one two (2 3)))
03:48:08 <kerlo> #eval (f one two ())
03:48:08 <kerlobot> two
03:48:49 <kerlo> #temp ((l foo (How useful!)) input)
03:49:00 <kerlo> #eval (one fish two fish red fish foo fish)
03:49:00 <kerlobot> (How useful!)
03:49:08 <kerlo> Oops, wrong way around.
03:49:09 <kerlo> #reset
03:49:21 <kerlo> #temp ((l foo input) (How useful!))
03:49:23 <kerlo> #eval (one fish two fish red fish foo fish)
03:49:24 <kerlobot> (one fish two fish red fish (How useful!) fish)
03:49:43 <kerlo> #temp ((l red input) (Not.))
03:49:45 <kerlo> #eval (one fish two fish red fish foo fish)
03:49:45 <kerlobot> (one fish two fish (Not.) fish (How useful!) fish)
03:50:03 <kerlo> #temp ((l fish input) (Look, they stack! foo foo foo))
03:50:07 <kerlo> #eval (one fish two fish red fish foo fish)
03:50:07 <kerlobot> (one (Look, they stack! (How useful!) (How useful!) (How useful!)) two (Look, they stack! (How useful!) (How useful!) (How useful!)) (Not.) (Look, they stack! (How useful!) (How useful!) (How useful!)) (How useful!) (Look, they stack! (How useful!) (How useful!) (How useful!)))
03:50:19 <kerlo> #reset
03:50:22 <kerlo> And that's how you set things.
03:56:30 <kerlo> CREAMPUFF!
03:56:30 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
03:56:36 -!- kerlobot has joined.
03:56:48 <kerlo> Now it should behave intelligently if you apply a function to too many arguments.
03:57:00 <kerlo> #eval (s x y z)
03:57:00 <kerlobot> ([l x (l y (l z ((x z) (y z))))] x y z)
03:57:12 <kerlo> Nope.
03:57:53 <kerlo> Did I do something silly, like forget to reload?
03:57:57 <kerlo> CREAMPUFF!
03:57:58 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
03:58:10 -!- kerlobot has joined.
03:58:14 <kerlo> #eval (s x y z)
03:58:15 <kerlobot> ((x z) (y z))
03:58:19 <kerlo> Much better.
03:58:32 <kerlo> #eval (one fish two fish red fish blue fish)
03:58:32 <kerlobot> (((((((one fish) two) fish) red) fish) blue) fish)
03:58:42 <kerlo> Look how intelligent that is!
04:00:11 -!- CakeProphet has joined.
04:02:07 <kerlo> Now to figure out how to concatenate two lists using this thing.
04:03:41 <kerlo> Okay, here are the guts of this bot: http://pastebin.ca/1311359
04:04:00 <kerlo> If I figure out how to access the wiki, I might write a little spec for this language and put it there.
04:05:17 <psygnisfive> what are you kids doing
04:05:21 <psygnisfive> kerlo whats this kerlobot thing
04:05:37 <kerlo> It's an esolang bot, I guess.
04:06:16 <psygnisfive> what lang
04:06:26 <kerlo> It's something resembling Lisp.
04:06:33 <psygnisfive> i see
04:06:37 <psygnisfive> and written ins haskell!
04:06:41 <kerlo> Yep.
04:07:07 <psygnisfive> only 53 lines for the whole bot?
04:07:31 <kerlo> The whole bot is 152 lines. The guts of the interpreter are just 53, though, I guess.
04:07:52 <psygnisfive> ah ok.
04:07:58 <psygnisfive> i was wondering why i didnt see io stuff there :p
04:09:11 <kerlo> CREAMPUFF!
04:09:11 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:09:19 -!- kerlobot has joined.
04:09:26 <kerlo> #eval (cons 1 (2 3))
04:09:27 <kerlobot> ((cons 1) (2 3))
04:09:34 <kerlo> #eval (c 1 (2 3))
04:09:34 <kerlobot> (1 2 3)
04:09:38 <kerlo> There we go.
04:09:56 <kerlo> That's wrong, though. :-P
04:10:27 <kerlo> CREAMPUFF!
04:10:27 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:10:35 -!- kerlobot has joined.
04:10:40 <kerlo> #eval (a 1 (2 3))
04:10:40 <kerlobot> ((1 2) 3)
04:10:49 <psygnisfive> CREAMPUFF!
04:10:54 <psygnisfive> ahh very smart
04:10:55 <psygnisfive> :)
04:10:57 <kerlo> CREAMPUFF! doesn't actually do anything.
04:11:01 <psygnisfive> oh
04:11:03 <psygnisfive> darn
04:11:11 <psygnisfive> and here i thought it was your special restart command
04:11:11 <kerlo> I mean, it doesn't do anything that, say, "There we go." wouldn't.
04:11:12 <psygnisfive> haha
04:11:40 <kerlo> I assure you that this is all part of my evil plan.
04:11:48 <kerlo> #eval (list (1 2 3))
04:11:48 <kerlobot> (list (1 2 3))
04:11:49 <psygnisfive> :P
04:12:20 <bsmntbombdood> oh, ski
04:12:22 <bsmntbombdood> i like ski
04:12:37 <kerlo> Do some ski, bsmntbombdood!
04:14:55 <MizardX> #eval f
04:14:56 <kerlobot> f
04:15:31 <MizardX> #eval (l x (l y (x y)) a b
04:15:36 -!- kerlobot has quit (Remote closed the connection).
04:15:38 <MizardX> :P
04:15:43 <kerlo> Wow.
04:16:50 <kerlo> Let me fix the parser, then...
04:17:01 <bsmntbombdood> heh
04:17:24 -!- kerlobot has joined.
04:17:28 <MizardX> #eval (l x (l y (x y)) a b
04:17:29 <kerlo> #eval (l x (l y (x y)) a b
04:17:29 <kerlobot> Syntax error
04:17:29 <kerlobot> Syntax error
04:17:33 <kerlo> Jinx.
04:17:40 <MizardX> #eval ((l x (l y (x y)) a b)
04:17:40 <kerlobot> Syntax error
04:17:54 <kerlo> Match your parentheses, my friend.
04:17:57 <MizardX> lambdas can only take one argument?
04:17:59 <bsmntbombdood> kerlo: that was quick
04:18:08 <kerlo> Lambdas can only take one argument, inded.
04:18:13 <kerlo> That was quick, indeed.
04:18:14 <bsmntbombdood> shouldn't it take longer than 3 seconds to make that change?
04:18:22 <kerlo> Well, I just added the line readsPrecLisp' n [] = []
04:18:39 <MizardX> #eval (l (x y) (z (x y))) (1 2)
04:18:39 <kerlobot> Syntax error
04:18:45 <MizardX> #eval ((l (x y) (z (x y))) (1 2))
04:18:45 <kerlobot> (((l (x y)) (z (x y))) (1 2))
04:18:47 <bsmntbombdood> stupid haskell
04:18:59 <kerlo> Meaning "if you're waiting for a close bracket and there's nothing there, there are no parses."
04:19:21 <kerlo> #eval ((l x (l y (x y))) a b)
04:19:21 <kerlobot> (a b)
04:19:44 <kerlo> #eval (this is the input)
04:19:44 <kerlobot> (((this is) the) input)
04:19:54 <kerlo> Boring.
04:20:01 <kerlo> #temp (input input input)
04:20:01 <kerlo> #temp (input input input)
04:20:02 <kerlo> #temp (input input input)
04:20:04 <kerlo> #eval 3
04:20:05 <kerlobot> ((((((3 3) 3) (3 3 3)) (3 3 3)) ((3 3 3) (3 3 3) (3 3 3))) ((3 3 3) (3 3 3) (3 3 3)))
04:20:10 <kerlo> #reset
04:20:46 <MizardX> #eval (l x (e x 3)) 4
04:20:47 <kerlobot> Syntax error
04:21:10 <kerlo> Lists must be enclosed in parentheses.
04:21:17 <kerlo> #eval ((l x (e x 3)) 4)
04:21:17 <kerlobot> ((e 4) 3)
04:21:50 <MizardX> wasn't e = equals?
04:21:59 <kerlo> Yes, but it takes four arguments.
04:22:12 <MizardX> #eval (l x (e 0 1 x 3)) 4
04:22:12 <kerlobot> Syntax error
04:22:16 <MizardX> #eval ((l x (e 0 1 x 3)) 4)
04:22:16 <kerlo> Returns the third if the first and second are equal, the fourth otherwise.
04:22:17 <kerlobot> 3
04:22:28 <MizardX> #eval ((l x (e x 3 0 1)) 4)
04:22:28 <kerlobot> 1
04:22:41 <MizardX> #eval ((l x (e x 3 1 0)) 3)
04:22:41 <kerlobot> 1
04:23:03 <kerlo> I'm still waiting for someone to figure out a function for concatenating two lists. :-)
04:23:08 <kerlo> Might not be possible; I dunno.
04:23:53 <MizardX> nothing I could think of. foldr works for breaking up a list, but not putting it back together
04:24:23 <MizardX> you need car and cdr :P
04:24:29 <MizardX> and cons
04:24:44 <kerlo> #eval (a (does this look like) (cons to you?))
04:24:45 <kerlobot> ((((does this look like) cons) to) you?)
04:25:01 <kerlo> What we need is...
04:25:37 <kerlo> ...CREAMPUFF!
04:25:37 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:26:01 -!- kerlobot has joined.
04:26:06 <kerlo> What we need is v!
04:26:20 <kerlo> #eval (v test (a (does this look like) (cons to you?)))
04:26:20 <kerlobot> (test ((((does this look like) cons) to) you?))
04:26:29 <kerlo> I think that's wrong.
04:26:36 <bsmntbombdood> what's v?
04:26:38 <MizardX> #eval (v (1 2 3) (4 5 6))
04:26:38 <kerlobot> (((1 2) 3) ((4 5) 6))
04:26:42 <kerlo> apply (Atom "v") (x:xs) = evaluate (List (x : map evaluate xs))
04:27:07 <bsmntbombdood> what's the point of that?
04:27:13 <kerlo> Good question!
04:27:40 <kerlo> It was intended to circumvent this: apply f (x1:x2:xs) = apply (apply f [x1]) (x2:xs)
04:27:55 <MizardX> #eval (a x (1 2 3))
04:27:55 -!- GregorR has joined.
04:27:55 <kerlobot> (((x 1) 2) 3)
04:28:00 <kerlo> But that line sucks, so I've removed both. Creampuff.
04:28:01 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:28:13 -!- kerlobot has joined.
04:28:18 <kerlo> #eval (1 2 3)
04:28:18 <kerlobot> (1 2 3)
04:28:23 <bsmntbombdood> ugh, haskell
04:28:26 <kerlo> #eval (a x (1 2 3))
04:28:26 <kerlobot> (x 1 2 3)
04:28:30 <bsmntbombdood> tryin to be all elegant 'n shit
04:28:35 <kerlo> Now it's starting to look like cons, eh?
04:29:00 <MizardX> #eval (a (1 2 3) (4 5 6))
04:29:01 <kerlobot> ((1 2 3) 4 5 6)
04:30:14 <MizardX> #eval (f a () ((1 2 3) (4 5 6)))
04:30:15 <kerlobot> ((1 2 3) f a () ((4 5 6)))
04:30:44 <kerlo> I'm sure something looked like a good idea at the time.
04:31:05 <MizardX> #eval (f a x ((1 2 3) (4 5 6)))
04:31:05 <kerlobot> ((1 2 3) f a x ((4 5 6)))
04:31:07 <kerlo> Let me make it better.
04:31:32 <MizardX> #eval (f one two (1 2 3))
04:31:32 <kerlobot> (one 1 (f one two (2 3)))
04:31:59 <kerlo> Cream.
04:32:00 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:32:06 -!- kerlobot has joined.
04:32:10 <MizardX> #eval (f one two (1 2 3))
04:32:11 <kerlobot> (one 1 (one 2 (one 3 two)))
04:32:17 <MizardX> #eval (f a x ((1 2 3) (4 5 6)))
04:32:18 <kerlobot> ((1 2 3) a (4 5 6) x)
04:32:21 <MizardX> ...
04:32:27 <kerlo> Strange.
04:32:35 <kerlo> #eval (f a () ((1 2 3) (4 5 6)))
04:32:36 <kerlobot> ((1 2 3) (4 5 6))
04:32:41 <kerlo> Less strange.
04:32:57 <MizardX> #eval (f one two ((1 2 3) (4 5 6)))
04:32:57 <kerlobot> (one (1 2 3) (one (4 5 6) two))
04:33:22 <MizardX> #eval (f (a x) () ((1 2 3) (4 5 6)))
04:33:22 <kerlobot> ((a x) (1 2 3) ((a x) (4 5 6) ()))
04:33:45 <kerlo> #eval (f (a x ()) () ((1 2 3) (4 5 6)))
04:33:45 <kerlobot> ((a x ()) (1 2 3) ((a x ()) (4 5 6) ()))
04:34:18 <MizardX> it should re-evaluate it until it can't any more
04:34:32 <kerlo> #eval ((a x ()) (1 2 3) ((a x ()) (4 5 6) ()))
04:34:32 <kerlobot> ((x) (1 2 3) ((a x ()) (4 5 6) ()))
04:34:38 <kerlo> Yeah, that's broken.
04:35:16 <kerlo> Puff.
04:35:16 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:35:22 -!- kerlobot has joined.
04:35:29 <kerlo> #eval (f (a x) () ((1 2 3) (4 5 6)))
04:35:30 <kerlobot> ((a x) (1 2 3) ((a x) (4 5 6) ()))
04:35:39 <kerlo> #eval (f (a x ()) () ((1 2 3) (4 5 6)))
04:35:39 <kerlobot> ((x) (1 2 3) ((x) (4 5 6) ()))
04:35:57 <MizardX> doesn't seem to recognize (a x) as a partial application of a
04:36:07 <kerlo> Nope.
04:38:37 <MizardX> #eval (f (l z (a x z)) () ((1 2 3) (4 5 6)))
04:38:38 <kerlobot> ([l z (a x z)] (1 2 3) ([l z (a x z)] (4 5 6) ()))
04:39:01 * kerlo ponders how a head or tail function might be made
04:39:47 <kerlo> A variable-argument lambda would be very nice.
04:40:02 <MizardX> #eval (f (l a (l b a)) (1 2 3) (4 5 6))
04:40:03 <kerlobot> ([l a (l b a)] 4 ([l a (l b a)] 5 ([l a (l b a)] 6 (1 2 3))))
04:40:10 <kerlo> A bit difficult, though.
04:40:28 <MizardX> #eval (f (l x (l y (a x y))) (1 2 3) (4 5 6))
04:40:29 <kerlobot> ([l x (l y (a x y))] 4 ([l x (l y (a x y))] 5 ([l x (l y (a x y))] 6 (1 2 3))))
04:40:55 <kerlo> #eval (1 2 3]
04:40:55 <kerlobot> (1 2 3)
04:41:09 <kerlo> Closing brackets don't seem to matter.
04:41:10 <MizardX> why doesn't that work? --^
04:41:26 <MizardX> #eval ([l x (l y (a x y))] 4 ([l x (l y (a x y))] 5 ([l x (l y (a x y))] 6 (1 2 3))))
04:41:26 <kerlobot> ([l x (l y (a x y))] 4 ([l x (l y (a x y))] 5 ([l x (l y (a x y))] 6 (1 2 3))))
04:41:39 <kerlo> Wait a bit, let me write the new lambdas.
04:41:41 <MizardX> #eval ((l x (l y (a x y))) 4 ((l x (l y (a x y))) 5 ((l x (l y (a x y))) 6 (1 2 3))))
04:41:41 <kerlobot> ([l x (l y (a x y))] 4 ((l x (l y (a x y))) 5 ((l x (l y (a x y))) 6 (1 2 3))))
04:44:26 <MizardX> #eval ((l x 1) 3)
04:44:26 <kerlobot> 1
04:44:42 <MizardX> #eval ((l x (l y x)) 3 4)
04:44:43 <kerlobot> ([l x (l y x)] 3 4)
04:44:50 <MizardX> #eval (((l x (l y x)) 3) 4)
04:44:50 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
04:45:09 <MizardX> :P
04:51:01 -!- kerlobot has joined.
04:51:13 <MizardX> #eval (((l x (l y x)) 3) 4)
04:51:13 <kerlobot> (((l x (l y x)) 3) 4)
04:51:22 <MizardX> #eval ((l x (l y x)) 3 4)
04:51:23 <kerlobot> ((l x (l y x)) 3 4)
04:51:25 <MizardX> ...
04:51:32 <kerlo> #eval ((l (x y z) (they are x y z z y)) 1 2 3)
04:51:33 <kerlobot> (they are 1 2 3 3 2)
04:52:40 <MizardX> #eval ((l (x) (l (y) x)) 3 4)
04:52:41 <kerlobot> ([l (x) (l (y) x)] 3 4)
04:52:50 <MizardX> #eval (((l (x) (l (y) x)) 3) 4)
04:52:50 <kerlobot> 3
04:52:54 -!- puzzlet has quit (Remote closed the connection).
04:53:02 -!- puzzlet has joined.
04:53:27 <MizardX> #eval (((l (x) (l (x) x)) 3) 4)
04:53:28 <kerlobot> 4
04:54:52 <MizardX> #eval ((l (left right) (f a right left)) (1 2 3) (4 5 6))
04:54:53 <kerlobot> (1 2 3 4 5 6)
04:54:56 <MizardX> woot
04:55:53 <MizardX> #eval (e 1 2 3 4)
04:55:53 <kerlobot> 4
04:56:02 <MizardX> #eval (e 1 2 3 4 5)
04:56:02 <kerlobot> (e 1 2 3 4 5)
04:57:34 <MizardX> #eval (f (l (x y) x) (1 2 3))
04:57:35 <kerlobot> (f (l (x y) x) (1 2 3))
04:57:42 <MizardX> #eval (f (l (x y) x) r (1 2 3))
04:57:42 <kerlobot> 1
04:57:51 <MizardX> #eval (f (l (x y) x) x (1 2 3))
04:57:52 <kerlobot> 1
04:58:04 <MizardX> #eval (f (l (x y) x) x (this is a list))
04:58:05 <kerlobot> this
04:58:15 <kerlo> Congratulations, you've implemented head.
04:59:02 <kerlo> #temp ((lambda (l) input) (f (l (x y) x) (error: empty list) l))
04:59:06 <kerlo> #eval (head (1 2 3))
04:59:06 <kerlobot> ((lambda (l) (head (1 2 3))) (f (l (x y) x) (error: empty list) l))
04:59:10 <kerlo> Darn.
04:59:21 <kerlo> #reset
05:00:47 <kerlo> #temp ((lambda (head) input) (f (l (x y) x) (error: empty list) l))
05:00:51 <kerlo> #eval (head (1 2 3))
05:00:51 <kerlobot> ((lambda (head) (head (1 2 3))) (f (l (x y) x) (error: empty list) l))
05:01:02 <MizardX> :P
05:01:10 <kerlo> Why isn't that evaluating...
05:01:25 <MizardX> lambda?
05:01:30 <kerlo> D'oh.
05:01:34 <kerlo> #reset
05:01:43 <kerlo> #temp ((l (head) input) (f (l (x y) x) (error: empty list) l))
05:01:47 <kerlo> #eval (head (1 2 3))
05:01:47 <kerlobot> ((f (l (x y) x) (error: empty list) l) (1 2 3))
05:02:10 <MizardX> a little better
05:02:15 <kerlo> True.
05:02:42 <kerlo> #reset
05:03:14 <kerlo> #temp ((l (head) input) (lambda (list) (f (l (x y) x) (error: empty list) list)))
05:03:21 <kerlo> #eval (head (1 2 3))
05:03:21 <kerlobot> ((lambda (list) (f (l (x y) x) (error: empty list) list)) (1 2 3))
05:03:48 <kerlo> #reset
05:03:55 <kerlo> #temp ((l (head) input) (l (list) (f (l (x y) x) (error: empty list) list)))
05:03:57 <kerlo> #eval (head (1 2 3))
05:03:58 <kerlobot> 1
05:04:00 <kerlo> Finally.
05:04:08 <MizardX> #eval (head ())
05:04:09 <kerlobot> (error: empty ())
05:04:21 <kerlo> Oh, that's silly.
05:04:27 <kerlo> #reset
05:04:40 <kerlo> #temp ((l (head) input) (l (ls) (f (l (x y) x) (error: empty list) ls)))
05:04:44 <kerlo> #eval (head ())
05:04:45 <kerlobot> (error: empty list)
05:04:57 <MizardX> #eval input
05:04:57 <kerlobot> input
05:05:30 <kerlo> #eval (error: empty head)
05:05:30 <kerlobot> (error: empty (l (ls) (f (l (x y) x) (error: empty list) ls)))
05:06:42 <MizardX> #eval s
05:06:42 -!- kerlobot has quit (Remote closed the connection).
05:06:48 <MizardX> ...
05:07:10 <kerlo> Hum.
05:07:16 -!- kerlobot has joined.
05:07:19 <kerlo> #eval s
05:07:20 -!- kerlobot has quit (Remote closed the connection).
05:07:32 <kerlo> Right, the definition of s is now broken.
05:07:57 -!- kerlobot has joined.
05:08:00 <kerlo> #eval
05:08:05 <kerlo> #eval s
05:08:06 <kerlobot> [l (x) (l (y) (l (z) ((x z) (y z))))]
05:08:13 <kerlo> That's the new definition of s.
05:08:37 <MizardX> #eval (s x y z)
05:08:37 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] x y z)
05:08:55 <MizardX> #eval (((s x) y) z)
05:08:55 <kerlobot> ((x z) (y z))
05:09:31 <kerlo> #temp ((l (s) input) lol)
05:09:36 <kerlo> #eval (((s x) y) z)
05:09:36 <kerlobot> (((lol x) y) z)
05:09:41 <kerlo> #reset
05:09:47 <MizardX> #eval k
05:09:48 <kerlobot> [l (x) (l (y) x)]
05:10:26 <MizardX> #eval (((l (x y) x) 1) 2)
05:10:26 <kerlobot> (([l (x y) x] 1) 2)
05:10:33 <MizardX> #eval ((l (x y) x) 1 2)
05:10:33 <kerlobot> 1
05:10:45 <MizardX> no partial application
05:11:00 <kerlo> Correct.
05:11:00 <MizardX> of multi-var lambdas
05:11:27 <MizardX> #eval i
05:11:28 <kerlobot> [l (x) x]
05:11:28 <kerlo> It's like Haskell, I guess. You have to explicitly uncurry them.
05:11:45 <kerlo> Explicitly curry them, rather.
05:12:02 <kerlo> It's just that Haskell pretty much uses curry by default.
05:13:18 <MizardX> #eval (a i (1 2 3))
05:13:19 <kerlobot> ([l (x) x] 1 2 3)
05:14:31 <kerlo> Fun fact: a evaluates its first argument.
05:15:51 <MizardX> I should sleep...
05:17:17 <MizardX> yesterday: «07:43:59» {MizardX} shower and breakfast
05:17:30 <MizardX> now: «06:17:16»
06:07:17 -!- metazilla has joined.
06:30:08 -!- moozilla has quit (Connection timed out).
06:41:08 -!- moozilla has joined.
06:54:16 -!- metazilla has quit (Connection timed out).
07:43:16 -!- moozilla has quit (K-lined).
07:56:01 -!- Corun has quit ("This computer has gone to sleep").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:56:58 -!- puzzlet_ has joined.
08:57:46 -!- puzzlet has quit (Remote closed the connection).
09:29:03 <AnMaster> huh, not a single spam message since yesterday? How strange, usually there are around 10-20 new spams after a night.
09:51:30 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
10:21:01 -!- FireFly has joined.
10:35:32 -!- MigoMipo has joined.
10:41:27 -!- FireFly has quit ("Later").
10:52:58 -!- oklopol has joined.
10:53:34 -!- BeholdMyGlory has joined.
11:16:38 -!- Judofyr has joined.
11:21:56 -!- BeholdMyGlory has quit (Read error: 104 (Connection reset by peer)).
11:32:08 -!- KingOfKarlsruhe has joined.
12:14:11 -!- Mony has joined.
12:15:45 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
12:49:30 -!- sebbu2 has quit (No route to host).
13:04:56 -!- sebbu has joined.
13:16:21 -!- Judofyr has joined.
13:44:22 -!- ehird has left (?).
13:44:24 -!- ehird has joined.
13:46:52 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
13:47:57 -!- MigoMipo has joined.
13:49:23 -!- Corun has joined.
14:11:49 -!- BeholdMyGlory has joined.
14:12:32 <ehird> optimising scheme is hard, you can't even constant-fold (+ 1 1) because you can redefine + at any point
14:12:44 <ehird> including e.g. EVAL on user input
14:15:06 <oklopol> you can constant-fold it, and have a global trigger system, attaching a lambda to unfold the constant when + is changed
14:15:28 <oklopol> essentially just a hack to get over the theoretical possibility of being fucked in the ass by a smart-ass user.
14:15:33 <ehird> oklopol: that's not much of an optimization :-P
14:15:50 <oklopol> ehird: why not? you get the same speed as with just constant folding
14:15:57 <ehird> oklopol:
14:16:00 <oklopol> you just need to do a few more lookups when defining functions
14:16:02 <ehird> (define old+ +)
14:16:07 <ehird> (set! + (lambda (a b) 0))
14:16:11 <ehird> [stuff]
14:16:11 <ehird> (set! + old+)
14:16:26 <ehird> then it does exactly the same as constant-folded, but slowly
14:16:29 <ehird> and that's not very consistent
14:17:22 <oklopol> err.
14:18:35 <oklopol> i'm not sure what you mean
14:18:48 <ehird> :D
14:18:56 <ehird> http://www.schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-9.html#%_sec_6.4 <-- god, scroll down to dynamic-wind
14:18:59 <ehird> that shit is crazy
14:21:14 <oklopol> there isn't a subchapter on it, i would have to read the surrounding of the term
14:21:27 <oklopol> i've read that, so err what's its point?
14:21:53 * oklopol is too lazy to read more than absolutely necessary :<
14:22:03 <oklopol> maybe because i read about 10 hours yesterday
14:22:31 <ehird> oklopol: it lets you detect call/cc, pretty much
14:22:40 <ehird> i.e., if we call/cc out of the thunk thing, we call the after thing first
14:22:46 <ehird> kind of
14:24:09 <oklopol> oh i remember. weird ordering shit and thunk stuff.
14:24:26 <oklopol> my brain is kinda mush atm :<
14:24:44 <ehird> oklopol: basically i'm thinking about writing a super-mega-fast scheme implementation
14:25:01 <ehird> and things like dynamic-wind piss me off because they throw my whole model around :<
14:25:57 <oklopol> ehird: well, the gist of compiling uncompilable things is to make the frequent case fast, that is, assume things happen the normal way and do somekinda hack around the fact they might not. this is a trivial idea of course, just that you might not want to do that because it's not fun to implement.
14:26:12 <ehird> oklopol: not schemey though is it
14:26:25 <oklopol> ehird: well it's more schemey than say befungey.
14:26:29 <ehird> schemey would be finding a fast way to implement everything without any special cases
14:26:41 <oklopol> in scheme you rarely, for instance, swap the meaning of + all the time for no reason.
14:26:42 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
14:26:50 <oklopol> ehird: well i'm not talking about dynamic-wind
14:26:53 <ehird> i know
14:26:53 <oklopol> you should make that fast
14:27:04 <oklopol> i'm talking about the weirder stuff.
14:27:04 <ehird> just, i mean, i don't like the idea of having your program being slower or whatever just because you used one particular featur
14:27:05 <ehird> e
14:27:22 <ehird> it feels like someone saying, you know, "don't do this", but it's part of scheme, and you should be able to do it and stay as fast
14:27:51 <oklopol> well of course not, i just don't think redefining on the fly is really a feature; dynamic-wind i have a hard time commenting, because i'd have to think about it first :P
14:27:55 <ehird> oklopol: you have to understand that i'm going for crazy-ass speed
14:28:12 <ehird> like, first interpreter, I'm gonna aim for like 5-6x slower than c, or so
14:28:16 <ehird> i mean, that's really fast for an interpreter
14:28:27 <ehird> then I think I'll make it a compiler/jit and write it totally in scheme and stuff
14:28:34 <ehird> and I want to eventually get it ~2x slower than c
14:28:42 <ehird> which will be awesome because I'll never have to write c again.
14:28:49 <oklopol> ehird: i'll assume you're compiling a recursive fibonacci definition into a closed-form expression.
14:29:04 <oklopol> and something equally awesome for everything else too.
14:29:34 <oklopol> oh you're just going for c speed
14:29:35 <ehird> oklopol: a goal for the compiler is to get the generated asm be as compact as hand-written :DD
14:29:46 <ehird> well, c is pretty fast :D
14:29:47 <oklopol> i was thinking like faster than assembly.
14:29:53 <oklopol> faster than theoretically possible
14:29:58 <ehird> lol
14:30:01 <oklopol> i don't want to underestimate you see.
14:30:12 <ehird> well it could be faster than c
14:30:22 <ehird> because, I mean, it's compiling to machine code, pretty much
14:30:33 <ehird> so you could probably write a program faster than the equivalent in c
14:30:49 <oklopol> so have you read computer architecture - a quantitative approach?
14:31:05 <oklopol> i'll just assume you have
14:31:14 <oklopol> so what's the first chapter's idea
14:31:15 <oklopol> i mean
14:31:26 <oklopol> 50 pages of fucking random charts about speeds of random processors and shit
14:31:48 <ehird> oklopol: i haven't, but
14:31:48 <oklopol> before getting to scheduling algorithms and other *content*
14:31:49 <ehird> that sounds awesome
14:32:13 <Corun> I'll have you guys know
14:32:20 <Corun> That I just copied a bit of your conversation
14:32:23 <Corun> In to another conversation
14:32:25 <oklopol> i mean i understand they want to include statistics and history and shit so people feel like they're reading about something that has practical significance.
14:32:32 <Corun> To show an example usage of the word lol
14:32:37 <Corun> Congratulations
14:32:40 <Corun> You're THE INTERNET.
14:32:59 <oklopol> but what about us weirdos who can't skip the reading of the useless parts :|
14:33:18 <ehird> Corun: ooh, which part
14:34:28 <Corun> The bit with the lol in...
14:34:33 <Corun> <oklopol> i was thinking like faster than assembly.
14:34:33 <Corun> <oklopol> faster than theoretically possible
14:34:33 <Corun> <ehird> lol
14:34:33 <Corun> <oklopol> i don't want to underestimate you see.
14:34:46 <ehird> :D
14:35:13 -!- ais523 has joined.
14:35:21 <oklopol> hi ais523
14:35:31 <ais523> hi oklopol
14:35:36 <oklopol> i had something to say to you at some point. just fyi, i already forgot what :P
14:35:39 <ais523> wow, I'm so busy in RL
14:35:45 <ais523> that explains why I'm here on Sunday
14:35:45 <oklopol> me too. kinda.
14:35:52 <ehird> lol
14:36:06 <ais523> ehird: me in #esoteric = me online
14:36:18 <ehird> maybe I could optimize scheme by requiring a Proof of Fastness, which is the same program written in assembly
14:36:21 <ehird> and it just uses that assembly
14:36:30 <ais523> so there's more chance of me being here when busy, than there is of me being here when not busy
14:36:41 <ais523> ehird: it would have to prove the two programs were equivalent, or there's be no point
14:36:55 -!- Corun has quit ("This computer has gone to sleep").
14:36:58 <ehird> no
14:37:05 <ehird> if you want to mislead people, that's OK
14:37:14 <ehird> it won't try and force its philosophy on you.
14:37:19 <ais523> undefined behaviour if the two programs are different?
14:37:28 <ais523> that way, it is in fact implementing the Scheme
14:38:06 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
14:38:16 <AnMaster> hello ais523
14:38:21 <ais523> hi
14:38:51 <ehird> ais523: yes, exactly!
14:39:19 <ais523> this is annoying, my mouse wheel seems confused
14:39:19 <oklopol> ...hey
14:39:25 <oklopol> so have you read computer architecture - a quantitative approach?
14:39:27 <ais523> when I turn it downwards, it sometimes scrolls upwards, and vice versa
14:39:28 <ais523> oklopol: no
14:39:29 <AnMaster> ehird, that means you end up having to write asm instead of C
14:39:34 <AnMaster> that is like, even worse
14:39:37 <oklopol> ais523: oh. you could have, maybe.
14:39:45 <ais523> AnMaster: meh, just write C that's the same as the Scheme, and compile it into asm
14:39:52 <AnMaster> <ais523> when I turn it downwards, it sometimes scrolls upwards, and vice versa <-- that happened to be once
14:39:55 <ais523> or, fwiw, write INTERCAL that's the same as the Scheme, and compile /that/ into asm
14:40:04 <ehird> IRC client extension idea: detects when you make a joke and ignores AnMaster for 5 minutes so you don't have to hear it flying over his head.
14:40:09 <AnMaster> ais523, what worked was taking the several old mouse apart, and cleaning it
14:40:16 <ehird> Wouldn't that be great?
14:40:20 <ais523> this one seems to be impossible to take apart
14:40:32 <ais523> I agree it probably needs cleaning, but there's no obvious method for it
14:40:40 <AnMaster> ais523, look under any stickers or such
14:41:06 <ais523> there's one screw on the bottom of the mouse
14:41:24 <ais523> but it has a big feel of "THIS IS AN OPTICAL MOUSE SO YOU DON'T NEED TO CLEAN IT SO WE AREN'T EVEN GOING TO LET YOU CLEAN IT, OK?"
14:41:50 <AnMaster> ais523, if it has some kind of "pads" in the corners the screws are probably hidden under them
14:41:56 <AnMaster> note that they can be hard to reattach
14:42:31 * ehird has a mouse that's like an optical mouse, except it doesn't suck and works on just about every surface. Also, no light on the bottom.
14:42:40 <ais523> the corner pads fell off on my mouse before this one, and there wasn't anything underneath them
14:42:40 <AnMaster> ais523, MS dumbm^Wintellimouse?
14:42:40 <ehird> (The comedy option you're about to pick isn't correct.)
14:42:46 <ais523> AnMaster: no, this one's by Toshiba
14:42:50 <AnMaster> hm ok
14:43:05 <ais523> I have an intellitrackball at home, I think
14:43:11 <AnMaster> ais523, on ms mice they tend to be hidden under those corner pads
14:43:16 <ais523> we got it for the desktop computer when mice kept falling off the table
14:43:22 <ais523> but that one is cleanable, and I have to clean it lots
14:43:37 <AnMaster> oh?
14:43:45 <AnMaster> well I want a simple to clean mouse
14:43:49 <AnMaster> preferably washable
14:44:07 <AnMaster> same for keyboard
14:44:25 <ais523> it's pretty hard to get decent mice nowadays
14:44:36 <ais523> the retailer I bought this one from has since gone bankrupt
14:44:38 <AnMaster> ais523, well yes, and hard to get large enough ones
14:44:54 <ais523> that's not so much of a problem for me, I'm OK with small mice
14:45:03 <AnMaster> ms mice actually tend to be the only ones that work for me when it comes to size
14:45:08 <AnMaster> and even then only barely
14:45:31 <ehird> things are too big for me.
14:45:45 <ehird> i don't use certain features of programs because hte keyboard shortcuts are too hard for me to hit.
14:45:47 <AnMaster> bbl food
14:45:47 <ehird> because i have tiny hands.
14:45:54 <oklopol> ehird: so you mean it's *not* a bit clown nose?
14:46:07 <ehird> also, it's hard to hold a mouse correctly when it's bigger than your hand
14:46:12 <ais523> ehird: get a smaller keyboard?
14:46:14 <ehird> oklopol: haha
14:46:17 <ehird> ais523: this one _is_ small
14:46:39 <oklopol> oh dear. that joke was so oerjan.
14:46:50 <ais523> ehird: you can always get a smaller one
14:46:53 <oklopol> i seriously think i'm slowly oerjanizing.
14:46:58 <ais523> there must be some way to use an Eee PC as a keyboard, for instance
14:47:04 <ehird> ais523: unlikely, in this case
14:47:13 <ehird> and no way am I paying that much for a keyboard
14:47:14 <ehird> also
14:47:19 <ehird> the eee pc keyboard isn't much smaller than this i think
14:48:19 <ehird> can't find any measurements of this kb on the internetwebs unfortunately
14:49:36 <ais523> ehird: you can measure it with a ruler easily enough
14:49:42 <ais523> if it's physically there in front of you
14:49:46 <ais523> and if it isn't, how are you typing?
14:49:48 <ehird> well, yeah, but that's _cheating_
14:51:10 * ehird compiles an in-head list of things R5RS Scheme is missing to be able to write programs in
14:51:18 <ehird> (it's surprisingly short, 5-6 or so elements)
14:51:47 <ais523> could you add them to it easily?
14:52:31 <ehird> Quite easily. Some are easier than others.
14:52:42 <ehird> I don't think any of them break backwards compatibility, either.
14:53:05 <ehird> (i.e., they don't change the semantics of any R5RS-correct programs, just define some R5RS-incorrect programs to be extended-R5RS-correct)
14:53:43 <ehird> ais523: i'm going to write a Scheme implementation you see
14:53:50 <ais523> in what?
14:53:55 <ehird> to start with, C
14:54:01 <ais523> Scheme's good for writing Scheme impls, but you have a chicken-and-egg problem there
14:54:03 <ehird> then, for the next version, Scheme
14:54:07 <ehird> ais523: what I
14:54:12 <ehird> 'm going to do is:
14:54:15 <ehird> first version - interpreter
14:54:23 <ehird> second version - compiler & JIT
14:54:31 <ehird> one of my main goals for both is to be stinking fast
14:54:39 <ehird> the first version I'm aiming for something like 5x slower than c
14:54:47 <ehird> second version? hopefully, competitive with C
14:54:56 <ais523> 5x slower, in an /interpreter/?
14:54:58 <ais523> good luck
14:55:03 <ehird> ais523: ok, that was an exaggeration :-)
14:55:12 <ehird> i meant like 10x, I was just being hopeful
14:55:22 <ehird> i'm pretty sure 10x would be possible.
14:55:53 <ehird> ais523: but indeed, chicken and the egg for version 2
14:56:02 <ehird> one solution is to keep maintaining version 1 alongside it
14:56:05 <ehird> so you can run version 2
14:56:13 <ehird> but that kind of defeats the point of rewriting it in scheme
14:56:43 <ehird> i don't like ghc's solution of "compile with the previous version, then just hold on tight to that binary"
14:56:46 <ehird> it's fragile
14:56:47 -!- ais523 has quit (Client Quit).
14:56:55 <ehird> bye.
14:56:57 -!- ais523 has joined.
14:56:59 <ehird> wb.
14:57:03 <AnMaster> ehird, hm when version 2 can bootstrap itself...
14:57:04 <ehird> what did you miss?
14:57:10 <ehird> AnMaster: how?
14:57:16 <ehird> You need to run it initially.
14:57:22 <ais523> ehird: how should I know what I missed?
14:57:26 <ais523> <ehird> one solution is to keep maintaining version 1 alongside it
14:57:30 <AnMaster> ehird, you said compiler/jit?
14:57:30 <ais523> is the last thing I didn't miss
14:57:34 <ehird> 14:56 <ehird> so you can run version 2
14:57:34 <ehird> 14:56 <ehird> but that kind of defeats the point of rewriting it in scheme
14:57:35 <ehird> 14:56 <ehird> i don't like ghc's solution of "compile with the previous version, then just hold on tight to that binary"
14:57:38 <ehird> 14:56 <ehird> it's fragile
14:57:40 <ehird> AnMaster: yes, written in Scheme.
14:57:40 <AnMaster> ehird, true
14:57:50 <ehird> and it will likely use its own extensions.
14:57:53 <ehird> so you need it to compile it.
14:57:55 <ais523> ehird: it isn't fragile if you hang on to past binaries
14:58:01 <ehird> yeah, it is
14:58:04 <ehird> you shouldn't rely on a binary like that
14:58:07 <ehird> it's too closed up
14:58:13 <ais523> ehird: CLC-INTERCAL works like that
14:58:14 <AnMaster> ehird, so well what about "statically compile if the code uses this subset" or something
14:58:21 <ehird> ais523: it's CLC-INTERCAL.
14:58:22 <AnMaster> instead of jit
14:58:24 <ais523> and besides, it isn't closed up, you have the source and can regenerate it from the binary
14:58:31 <ehird> AnMaster: sorry, I can only answer coherent questions
14:58:46 <AnMaster> ehird, fair point
14:59:01 <ehird> if you rephrase that coherently I'll answer :p
14:59:06 <AnMaster> ehird, basically: will it jit or be able to compile stand alone binaries?
14:59:10 <ehird> both
14:59:17 <AnMaster> right
14:59:32 <AnMaster> ehird, what about compiling to C as a different backend?
14:59:42 <ehird> chicken and the egg
14:59:42 <AnMaster> that would solve the issue
14:59:45 <ehird> how do you run it to compile it to C?
15:00:04 <AnMaster> ehird, well you boot strap it, in the future you can use the C source to compile it
15:00:07 <ais523> AnMaster: that is the ghc solution for porting
15:00:22 <ais523> but the resulting C program is more or less illegible, despite being portable
15:00:35 <ehird> AnMaster: I dislike that solution
15:00:38 <AnMaster> ais523, interesting, but wouldn't you need more for porting ghc, like adding asm output backend
15:00:44 <ehird> because you don't have a way to get it going just from itself
15:00:49 <ehird> you need to hang on to the one compilation
15:00:53 <ais523> ghc compiles via C--, IIRC
15:01:04 <ais523> so yes, you'd need a new C-- to asm backend
15:01:08 <AnMaster> ehird, wasn't the original lisp hand compiled?
15:01:08 <ehird> so
15:01:17 <ehird> AnMaster: Yes. The original lisp was also trivially useless.
15:01:44 <AnMaster> ehird, so maintain an interpreter that is portable
15:01:46 <AnMaster> like gcc does
15:01:49 <AnMaster> multiple stages
15:01:56 <ehird> AnMaster:
15:01:57 <ehird> 14:56 <ehird> one solution is to keep maintaining version 1 alongside it
15:01:58 <ehird> 14:56 <ehird> so you can run version 2
15:02:00 <ehird> 14:56 <ehird> but that kind of defeats the point of rewriting it in scheme
15:02:06 <ehird> I love it when I can just copy and paste past messages to answer people.
15:02:16 <ais523> actually, compiling gcc on a really old compiler needs a multi-stage bootstrap nowadays
15:02:18 <AnMaster> ehird, well not exactly. Since version 1 could be written in portable scheme?
15:02:20 <ais523> via older versions of gcc
15:02:35 <ais523> AnMaster: now ehird will tell you there's no such thing as portable scheme
15:02:36 <AnMaster> ais523, I'm pretty sure you can use a non-gcc for stage1?
15:02:43 <ehird> AnMaster: no, it couldn't, because that's like raping myself.
15:02:43 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
15:02:44 <ais523> AnMaster: you can, but only if it's relatively modern
15:03:04 <AnMaster> ais523, well C89 is ok to expect of course
15:03:07 -!- kerlobot has joined.
15:03:08 <ais523> for instance, there are no compilers for DOS that can bootstrap DJGPP
15:03:18 <AnMaster> ais523, you could cross compile it
15:03:21 <kerlo> #what
15:03:22 <ais523> the only way to get a workign DJGPP impl starting from something else is to cross-compile
15:03:22 <kerlobot> input
15:04:32 <AnMaster> ais523, shouldn't a standard following C89 compiler be enough for gcc stage1?
15:04:44 <ais523> I don't think so
15:04:45 <AnMaster> well yes you need make, sh and so on
15:04:50 <ais523> for instance, I'm pretty sure it also needs a 32-bit int
15:05:02 <ais523> which is not a requirement of a C89 compiler
15:05:08 <AnMaster> interesting
15:08:39 <kerlo> #eval ((l (x y) (f a y x)) (1 2 3) (4 5 6))
15:08:39 <kerlobot> (1 2 3 4 5 6)
15:08:47 <ais523> #help
15:08:54 <ais523> kerlo: what does your bot do?
15:09:03 <kerlo> It evaluates this Lisp-like language.
15:09:23 <kerlo> The most important command is #eval, obviously.
15:09:28 <ais523> lisp with different primitives
15:09:30 <ais523> ?
15:09:34 <kerlo> I guess.
15:09:38 <AnMaster> kerlo, specs for this lisp-like language?
15:09:51 -!- Mony has quit ("Quit").
15:10:06 <kerlo> Let me pastebin the source code and also demonstrate a bit.
15:10:34 <AnMaster> since when is specs == source code
15:10:37 <kerlo> http://pastebin.ca/1311618
15:10:41 <kerlo> Since forever!
15:11:04 <AnMaster> brb phone
15:11:35 <kerlo> The primitives are l (lambda), f (foldr), e (equality testing), and a (cons or apply); the familiar s, k and i are also implemented, but are not primitives.
15:11:43 <kerlo> #eval ((s i) i)
15:11:43 <kerlobot> [l (z) ((i z) (i z))]
15:12:14 <kerlo> #eval ((l (x y) (blah y x)) (2 3))
15:12:15 <kerlobot> ([l (x y) (blah y x)] (2 3))
15:12:29 * kerlo blinks
15:12:46 <kerlo> #eval ((l (x y) (blah y x)) 2 3)
15:12:46 <kerlobot> (blah 3 2)
15:12:59 <ehird> #eval *Y&DSY*&%&5ˆ‹̄›†¢ˆ¢§ˆ¯ßˆ•þ‡̂†̄ ̑›†‡·°_‚·̀
15:13:00 <kerlobot> Syntax error
15:13:04 <ehird> BREAK DAMN YOU
15:13:07 <kerlo> #eval (f raa ree (1 2 3))
15:13:08 <kerlobot> (raa 1 (raa 2 (raa 3 ree)))
15:13:14 <ehird> <AnMaster> since when is specs == source code
15:13:23 <ehird> Since nobody cares about your need of specs to survive.
15:13:35 <kerlo> #eval (e 1 2 yes no)
15:13:36 <ehird> And since we people started using expressive languages.
15:13:36 <kerlobot> no
15:13:39 <kerlo> #eval (e 1 1 yes no)
15:13:39 <kerlobot> yes
15:13:53 <kerlo> #eval (a 1 (2 3 4))
15:13:53 <kerlobot> (1 2 3 4)
15:14:00 <kerlo> And that's it.
15:14:19 <kerlo> Well, there are also the #temp, #reset, and #what commands.
15:16:47 <ehird> Dear DYNAMIC-WIND,
15:16:51 <ehird> Please remove yourself from R5RS.
15:16:52 <ehird> Love,
15:16:53 <ehird> Elliott.
15:17:27 <ais523> #eval (((s i) i) ((s i) i))
15:17:37 <ehird> ais523: it doesn't guard that.
15:17:39 <ais523> ah, ok
15:17:40 <ehird> now kerlo will have to restart it
15:17:48 <ehird> #eval INFINITE LOOPED
15:17:57 <ais523> shouldn't be too hard to put an anti-infiniloop protection on...
15:17:57 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
15:18:21 <kerlo> ais523: not at all. I'll send you the full source code so that you can do that. :-P
15:18:25 -!- kerlobot has joined.
15:18:43 <ehird> kerlo: just;
15:18:50 <ehird> have an extra argument to the reduce-stepper
15:18:57 <ehird> put it at 1000 initially, and decrement it every time you recurse
15:19:02 <ehird> when it gets to 0, return a special atom like
15:19:05 <kerlo> Oh, that does sound easy.
15:19:10 <ehird> !looped!
15:19:36 <AnMaster> what about output length?
15:19:44 <ehird> they're symbols.
15:19:50 <ehird> you can't concatenate them.
15:19:58 <ehird> it can evaluate to a list, yes.
15:19:58 <AnMaster> ehird, I mean, could you cause excess flood
15:20:05 <ehird> since it outputs on one line, no,.
15:20:09 <AnMaster> hm ok
15:20:30 <AnMaster> you could still cause filled buffer I believe before it is split in lines
15:20:33 <kerlo> #eval (f (lambda (x y) (f a (y) x)) () (one two three))
15:20:33 <kerlobot> ((lambda (x y) (f a (y) x)) one ((lambda (x y) (f a (y) x)) two ((lambda (x y) (f a (y) x)) three ())))
15:20:36 <AnMaster> not sure about that
15:20:39 <ehird> it isn't split into lines
15:20:42 <ehird> also, nobody cares
15:20:43 <ais523> #eval ((l (x) (f a x x)) (y))
15:20:43 <kerlobot> (y y)
15:21:04 <AnMaster> ehird, yes but if you send 1 MB in one line the server is going to quit you anyway I think
15:21:10 <AnMaster> at least some ircds do that
15:21:12 <ehird> nobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody caresnobody cares
15:21:39 <ais523> #eval ((l (y z) (y (y (y (y (y z))))) (l (x) (f a x x)) (y))
15:21:39 <kerlobot> Syntax error
15:21:42 <ehird> #eval (l (f) ((l (x) (f (x x))) (l (x) (f (x x)))))
15:21:42 <kerlobot> [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))]
15:21:48 <ehird> ^ y
15:21:53 <kerlo> #eval (f (l (x y) (f a (y) x)) () (one two three))
15:21:53 <kerlobot> (f a ((f a ((f a (()) three)) two)) one)
15:21:56 <ais523> #eval ((l (y z) (y (y (y (y (y z)))))) (l (x) (f a x x)) (y))
15:21:57 <kerlobot> ([l (x) (f a x x)] ([l (x) (f a x x)] (f a [l (x) (f a x x)] [l (x) (f a x x)]) [l (x) (f a x x)] ([l (x) (f a x x)]) f a [l (x) (f a x x)] [l (x) (f a x x)]) [l (x) (f a x x)] ([l (x) (f a x x)] ([l (x) (f a x x)]) f a [l (x) (f a x x)] [l (x) (f a x x)]) [l (x) (f a x x)] (f a [l (x) (f a x x)] [l (x) (f a x x)]) [l (x) (f a x x)] ([l (x) (f a x x)]) f a [l (x) (f a x x)] [l (x) (f a x x)])
15:22:14 <ehird> ais523: oi, use my y
15:22:21 -!- Judofyr has joined.
15:22:36 <AnMaster> #eval ((l (y z) (y (y (y (y (y z)))))) (l (x) (f a x x)) (l (f) ((l (x) (f (x x))) (l (x) (f (x x))))))
15:22:36 <kerlobot> ([l (x) (f a x x)] ([l (x) (f a x x)] (l (f) a ((l (x) (f (x x))) (l (x) (f (x x)))) [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))]) [l (x) (f a x x)] [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))] l (f) a ((l (x) (f (x x))) (l (x) (f (x x)))) [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))]) [l (x) (f a x x)] ([l (x) (f a x x)] [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))] l (f) a ((l (x) (f (x x))) (l (x) (f (x x)))) [l (f) ((l (x)
15:22:39 <AnMaster> hm
15:22:42 <ais523> #eval ((l (y z) (y (y (y (y (y z)))))) (l (x) (f a x x)) (q))
15:22:43 <kerlobot> ([l (x) (f a x x)] ([l (x) (f a x x)] (q q) [l (x) (f a x x)] (q) q q) [l (x) (f a x x)] ([l (x) (f a x x)] (q) q q) [l (x) (f a x x)] (q q) [l (x) (f a x x)] (q) q q)
15:22:50 <ais523> ok, that seems to be a bug
15:22:53 <ehird> #eval (l (f) ((l (x) (f (x x))) (l (x) (f (x x)))))
15:22:54 <kerlobot> [l (f) ((l (x) (f (x x))) (l (x) (f (x x))))]
15:22:55 <ais523> lambdas don't seem to be scoping properly
15:22:57 <ehird> ais523333333333333333333333333333333333333333333
15:23:08 <ehird> ais523: it doesn't do renaming
15:23:09 <ehird> iirc
15:23:10 <kerlo> #eval (f (l (x y) (f a (x) y)) () (one two three))
15:23:10 <kerlobot> (three two one)
15:23:24 <ais523> then how can I do recursion properly?
15:23:30 <kerlo> ais523: congratulations, you've discovered the lambda bug.
15:23:43 -!- MigoMipo has joined.
15:23:51 <ais523> well, if it's a known bug, that's OK
15:23:51 <AnMaster> too many bloody (non-indented) parentheses for me to read
15:24:05 <ais523> makes it pretty hard to program in, though
15:24:08 <AnMaster> ais523, would this bug make the language sub-tc?
15:24:24 <ais523> no idea
15:24:24 <kerlo> Translate your program into SKI and see if it works.
15:24:28 <ais523> probably not, if SKI works
15:24:31 <AnMaster> ah
15:25:24 <kerlo> You might be able to circumvent it by using [l ...] instead of (l ...).
15:25:58 <ais523> what do the square brackets mean?
15:27:03 <ehird> The problem with writing a program in Scheme is that you have to write the implementation first.
15:27:19 <AnMaster> ehird, or use an existing implementation
15:27:24 <ehird> No.
15:27:28 <ehird> That does not work correctly.
15:27:33 <AnMaster> why not?
15:27:49 <kerlo> ais523: it's special syntax for a Lambda instead of a List evaluating to a Lambda.
15:28:03 <ehird> AnMaster: I'd tell you, but that would take hours because it's you
15:28:10 <ais523> AnMaster: ehird seems to think that various langs, like Scheme and Smalltalk, are inherently incapable of being portable
15:28:12 <kerlo> The insert function, which lambdas use for substitution, doesn't affect Lambdas as badly as Lists.
15:28:16 <ehird> ais523: no, I don't.
15:28:26 <AnMaster> ais523, well good thing there is R6RS then :D
15:28:28 * AnMaster ducks
15:29:13 <ehird> and FWIW I'm incredibly tired of the "AnMaster says something stupid, ais523 replies saying something untrue in the format 'oh ehird thinks this and that' in a condescending manner" pattern that happens near-daily in here
15:29:15 <AnMaster> ais523, and well, if you want non-basic stuff then R5RS is a pain.
15:30:55 <AnMaster> at least C has a large enough standard library to make it possible to write kind of portable apps that are still quite useful
15:31:21 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
15:31:26 -!- ais523 has joined.
15:31:43 <AnMaster> <AnMaster> ais523, and well, if you want non-basic stuff then R5RS is a pain.
15:32:00 <ais523> someone should invent a PSOX but for non-esoteric langs
15:32:06 <AnMaster> hah
15:32:07 <ehird> ais523: No. They shouldn't.
15:32:23 <ais523> ehird: I had to use the equivalent of C's system() a couple of times when programming in Prolog
15:32:37 <ais523> in order to do things that weren't included in its stdlib
15:32:42 <kerlo> What does system() do?
15:32:52 <AnMaster> man system
15:32:56 <ais523> kerlo: causes the implementation to behave in an implementation-defined manner
15:33:00 <ais523> but in practice, normally runs shell commands
15:33:11 <kerlo> Ah, right.
15:33:47 <ais523> system() probably has my favourite definition of any of C's standard library functions
15:33:58 <ais523> actulaly, system(NULL) is defined
15:34:08 <ais523> its return value tells you whether system() does anything or nt
15:34:09 <ais523> *not
15:34:15 <ais523> it doesn't tell you what, though, in the case where it doesn't
15:34:23 <ais523> *the case where it does
15:34:26 <ehird> s/n't$//
15:34:27 <ehird> heh
15:34:28 <AnMaster> s/n't$//
15:34:33 <ehird> fail
15:34:40 <AnMaster> ehird, argh you were half a second faster
15:34:47 <ehird> no, multiple seconds
15:34:51 <AnMaster> ehird, not here
15:34:52 <ais523> ehird: lag
15:34:57 <ehird> lag is for squares
15:35:04 <ais523> it was more like about 1 second from where I was watching
15:35:07 <ais523> from
15:35:34 <ehird> I wonder if bitshifting pointers is allowed by C89.
15:35:44 <ais523> you have to cast them to ints first
15:35:47 <AnMaster> ehird, is it in C99?
15:35:53 <ehird> AnMaster: I don't care.
15:35:56 <ais523> it works better in C99 because you have uintptr_t to cast them to
15:35:57 <AnMaster> ais523, that is undefined isn't it? casting them to int?
15:35:58 <ehird> ais523: Can you cast those ints back?
15:36:03 <ais523> AnMaster: no, implementation-defined
15:36:13 <ais523> ehird: yes in C99, no in C89 because there might not be an integer type big enough
15:36:19 <AnMaster> ais523, also uintptr_t makes no sense if function pointers have a different size
15:36:23 <ais523> well, in C99 there might not be one either, but it at least gives you a compile-time error
15:36:30 <ais523> AnMaster: yes, it's designed for data pointers
15:36:32 <ehird> ais523: I don't care about stupid languages where sizeof(int) != sizeof(void *).
15:36:40 <AnMaster> ehird, like amd64?
15:36:41 <ais523> ehird: umm...
15:36:45 <ehird> er
15:36:48 <ehird> s/languages/architechtures/
15:36:50 <ais523> lots of C implementations have sizeof(int) != sizeof(void *)
15:36:53 <ehird> AnMaster: amd64 is for squares.
15:36:58 <ehird> ais523: those implementations are for squares.
15:37:04 <ais523> unsigned long has the best chance of being the same size as void*
15:37:08 <AnMaster> ais523, indeed
15:37:13 <ais523> although it differs on DOS in certain memory models
15:37:32 * ais523 remembers the days of things like farmalloc
15:37:40 <AnMaster> farmalloc!?
15:37:45 <ehird> It allocates a farm.
15:37:54 <ehird> A farm is an old DOS concept.
15:38:01 <ehird> Basically, you can store N objects in there, where N is the size of the farm.
15:38:05 <ais523> AnMaster: it allocates memory in a different segment
15:38:07 <AnMaster> ehird, isn't it related to struct cow?
15:38:08 <ehird> It's efficient because they're grouped together in memory.
15:38:10 <ehird> ais523: Right, a farm.
15:38:16 <ais523> which means you need a special type of pointer, called a far pointer
15:38:25 <AnMaster> ais523, I see. I used mac back then
15:38:29 <AnMaster> :/
15:38:39 <ais523> there are lots of memory models
15:38:47 <ais523> basically, 4 of them allow for near/far pointers for data/code
15:39:01 <ais523> and a 5th has far pointers for data and for code, but also makes the data segment and stack segment differ
15:39:10 <AnMaster> ais523, so pointers come in several sizes? and some of these are relative current area?
15:39:15 <ais523> AnMaster: yes
15:39:22 <ais523> char __near * is 16 bits
15:39:25 <ais523> char __far * is 32 bits
15:39:37 <AnMaster> interesting
15:39:42 <ais523> and if you don't put the unportable qualifier on, it uses implementation defaults
15:39:56 <ais523> (which is legal C89, but with different sizeof() returns, in all 5 memory models)
15:40:11 <ais523> malloc gave you a data pointer
15:40:16 <AnMaster> wtf is the "unportable qualifier"?
15:40:21 <ais523> AnMaster: __near or __far
15:40:23 <AnMaster> ah
15:40:27 <ais523> are qualifiers, but obviously not portable ones
15:40:34 <AnMaster> ais523, I thought there was something like __unportable
15:40:36 <AnMaster> that you meant
15:40:40 <ais523> no, that would be ridiculous
15:40:44 <AnMaster> agreed
15:40:49 <oklopol> haha
15:40:53 <oklopol> that would be awesome
15:41:08 <oklopol> 17:40… WolfMn22: are you there
15:41:08 <oklopol> 17:40… WolfMn22: are you there
15:41:08 <oklopol> 17:40… WolfMn22: young beautiful woman
15:41:14 * oklopol has a fan
15:41:15 <AnMaster> there should be __portable too of course
15:41:18 <ais523> IIRC, most DOS compilers worked without the double-underscore, except in strict ANSI mode
15:41:21 <AnMaster> a GCC extension
15:41:30 <AnMaster> that forbids other GCC extensions :D
15:41:43 <AnMaster> (yes -ansi already does it...)
15:41:49 <ais523> AnMaster: well, nowadays in C99 we have _Pragma
15:42:03 <ais523> which is basically __attribute__ with a more official name
15:42:06 <AnMaster> ais523, well GCC actually have __extension__ iirc, for use in system headers
15:42:15 <ais523> IMO, gcc should accept it as a synonym for __attribute__
15:42:16 <ais523> and yes
15:42:17 <AnMaster> ais523, also doesn't C89 have plain #pragma?
15:42:20 <ais523> AnMaster: yes
15:42:30 <AnMaster> _Pragma is just for using in macros iirc
15:42:31 <ais523> but the gcc folks didn't like it because it couldn't be generated using macros
15:42:39 <AnMaster> indeed
15:43:31 <ais523> it's interesting to see what pragmas are used for, actually
15:43:47 <AnMaster> ais523, oh also x86_64 has several memory models, I don't know what the point is of that though
15:43:50 <ais523> my first C implementation was Borland C++, which I normally used in C++ mode because I didn't know better
15:44:01 <ais523> it had pragmas to turn compiler warnings on and off
15:44:09 <AnMaster> -mcmodel
15:44:14 <ais523> and to run things before the program started, like atexit in reverse
15:44:32 <AnMaster> <ais523> it had pragmas to turn compiler warnings on and off <-- very recent GCC has pragmas, and attributes, for that too
15:44:39 <AnMaster> and other compiler options
15:44:48 <ais523> oh, and a pragma to change its command-line options dynamically, which was fun
15:44:49 <AnMaster> like changing to -O3 for just a single function
15:44:54 <ais523> yes
15:45:09 <ais523> you should be able to change -Wl dynamically
15:45:16 <ais523> so you can have different linker options for different functions
15:45:18 <AnMaster> that would be hard
15:45:26 <ais523> then watch the poor linker try to figure out wtf you're doing
15:45:44 <AnMaster> um would require changing the object file format I think
15:45:54 <ais523> I suppose so
15:45:56 <ehird> "What's this? a JOKE?"
15:46:10 <ais523> ehird: #esoteric is where we make jokes possible
15:46:11 <AnMaster> -mcmodel=small, -mcmodel=kernel, -mcmodel=medium, -mcmodel=large
15:46:19 <ehird> ais523: and kill them seconds later..
15:46:22 <ais523> even if something is clearly absurd, it's still fun to figure out how to do it
15:46:23 <ehird> .
15:46:31 * AnMaster agrees with ais523
15:46:37 <ais523> don't let not explaining a joke get in the way of a great esoprogramming idea
15:47:37 <ehird> I'd like to think that [<AnMaster> um would require changing the object file format I think] was written with that intention,
15:47:41 <ais523> grr... this VHDL IDE has frozen
15:47:42 <ehird> but I find it incredibly difficult.
15:48:00 <ais523> ehird: well, I was thinking about it as an actual serious idea
15:48:00 <AnMaster> ehird, I was thinking about how to implement it yes
15:48:13 <ais523> not really in terms of implementation, but about what could be done with such a feature if it existed
15:48:15 <AnMaster> not all linker options could be changed that way
15:48:23 <AnMaster> but some yes
15:48:24 <ais523> in gcc-bf, for instance, you could run-length-encode certain functions
15:48:30 <ais523> or cause only certain functions to show a progress bar
15:48:38 <ais523> (more useful would be adding debug info only to certain functions)
15:48:55 <AnMaster> ais523, there are already some __attribute__s that affect linking, like the visibility one
15:49:08 <ais523> yes, so it isn't utterly implausible
15:49:30 <AnMaster> --emit-relocs sounds like it could be done per-func too
15:49:32 * ais523 gets annoyed at DRM and licence managers
15:50:01 <ehird> you've never been annoyed at DRM before?
15:50:05 <ais523> back on my laptop, I just use ghdl, it doesn't need to contact a licence server to verify I'm allowed to use it
15:50:11 <ais523> ehird: rarely, I don't normally use DRMed prorgams
15:50:16 <AnMaster> ais523, ghdl?
15:50:20 <ehird> drm is retarded, yep
15:50:28 <ais523> AnMaster: a gcc-based VHDL simulator
15:50:36 <ais523> it compiles VHDL into executables, which is crazy enough in the first place
15:50:43 <AnMaster> haha
15:50:57 <ais523> and the executables can be run as executables, but they have a huge number of debug options and switches
15:51:00 <ais523> which is what you normally end up using
15:51:04 <AnMaster> also what is wrong with the Direct Rendering Manager?
15:51:18 <ais523> possibly VHDL is the only lang more often run under a debugger than not
15:52:01 <AnMaster> I mean, DRM allows open source opengl drivers on linux
15:52:07 <AnMaster> and possibly other *nix
15:52:10 <ais523> AnMaster: I think you're taking a joke too far now
15:52:11 <AnMaster> (not sure about that)
15:52:21 <ais523> especially when it wasn't that funny in the first place
15:52:47 <AnMaster> ais523, I believe the DRM in the meaning I used existed before the copy protection crap
15:52:58 <ehird> what ais523 said
15:52:59 <ais523> possibly
15:53:07 <ais523> but TLAs are oversubscribed nowadays
15:53:09 <AnMaster> why not just call it copy protection, that is the original name
15:53:16 <ais523> and normally which one is meant is obvious from context
15:53:17 <ehird> because people call it drm
15:53:25 <ehird> language changes, it's only useful if we use the same one everyone else does
15:53:26 <ais523> AnMaster: also, DRM goes further than copy prevention mechanisms
15:53:29 <ehird> crazy, I kno.
15:53:32 <ehird> also, what ais523 said. again.
15:53:39 <AnMaster> ais523, well I have no personal experience of it
15:53:44 <AnMaster> so: possible
15:53:48 <ais523> DRMd stuff can normally be copied just fine, it's just that the resulting copies don't run
15:53:52 <ehird> 15:53 <stoned> are there good implementations of .NET for python? does it require mono?
15:53:56 <ehird> i implement .NET in python for breakfast
15:54:05 <AnMaster> ais523, interesting.
15:54:07 <ais523> but .NET is a bytecode and API, not a language
15:54:22 <ehird> ais523: congratulationsyougotthejoke.com
15:54:25 <ehird> (Someone register that)
15:54:37 <AnMaster> ais523, also there is only one copy protection that actually works. Make it all in hardware. Software can *always* be copied
15:54:45 <ais523> arguably, he might just want the API
15:54:46 <AnMaster> hardware is harder
15:54:56 <ehird> if you think hardware makes copy protection work you're deluded
15:54:56 <ais523> AnMaster: hardware can often be copied too
15:54:58 <ehird> ais523: yes, that's the idea
15:55:09 <AnMaster> ais523, yes but you need like millions to do it, you said so yourself
15:55:19 <ehird> fail
15:55:20 <ehird> digitally, if it can be consumed, it can be cloned instead
15:55:22 <ais523> AnMaster: to manufacture it, yes
15:55:28 <AnMaster> ais523, yes exactlu
15:55:30 <AnMaster> exactly*
15:55:36 <ais523> on the other hand, working out the internals and running on a simulator is a lot cheaper
15:55:38 <ais523> and often good enough
15:55:47 <kerlo> #quit
15:55:47 -!- kerlobot has quit ("Exiting").
15:55:54 -!- kerlobot has joined.
15:56:01 <ais523> kerlo: using # as a bot prefix is really confusing
15:56:06 <kerlo> True.
15:56:09 <ais523> all your kerlobot commands come out in blue and hyperlinked
15:56:10 <AnMaster> ais523, well depends on what thing you want to simulate, I mean you can simulate a SNES easily enough. But a Wii? Probably not on modern computers
15:56:12 <ehird> #esoteric
15:56:26 <ehird> umm, simulating a Wii wouldn't exactly be hard...
15:56:27 <AnMaster> you would probably end up with an expensive cluster or such to do it
15:56:28 <ehird> It's not a supercomputer...
15:56:44 <ehird> It's less powerful than home computers.
15:56:45 <ais523> ehird: you'd still have to do cross-processor virtualisation
15:56:47 <AnMaster> ehird, ok what about a Sony Playstation thingy, those used for MD5
15:56:50 <ais523> what sort of processor does the Wii have?
15:56:55 <ehird> ais523: PPC
15:57:05 <AnMaster> ehird, I believe it would be kind of slow to simulate that on most desktops
15:57:11 <ehird> http://en.wikipedia.org/wiki/Broadway_(microprocessor)
15:57:20 <ehird> AnMaster: that's just a gpu.
15:57:23 <ehird> computers can have gpus.
15:57:23 -!- Judofyr_ has joined.
15:58:04 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
15:58:39 -!- Corun has joined.
15:58:57 <ehird> Whoa, it's 4
15:59:06 <AnMaster> what is?
15:59:10 <ais523> the time in the UK
15:59:11 <ehird> The time.
15:59:15 <ais523> not quite, actually
15:59:17 <ehird> ais523: the UTC time, too.
15:59:19 <ais523> still 3:59 by my clock
15:59:23 <ehird> Yes, mine too.
15:59:28 <ehird> Well, 15:59.
15:59:31 <AnMaster> 16:59 here so 15:59 there
16:00:11 <kerlo> And now it is 16:00 according to normish.org.
16:00:19 <ais523> yes
16:00:32 <ais523> according to my NTP-synchronized clock, too
16:00:57 <AnMaster> + a few seconds when you said it kerlo
16:01:03 <AnMaster> 11 seconds late then in fact
16:01:08 <kerlo> This little clock doesn't display seconds.
16:01:09 <ais523> hmm... may as well have a look at Normish while I'm waiting for this stupid IDE to figure out what it's doing
16:01:49 <AnMaster> ais523, what IDE?
16:01:54 <AnMaster> that expensive one?
16:02:11 -!- Corun has quit (Client Quit).
16:02:30 -!- Corun has joined.
16:03:26 <AnMaster> btw, what is the difference between PPC and Cell?
16:03:33 <AnMaster> I haven't really managed to understand that
16:06:35 <kerlo> Creampuff!
16:06:36 -!- kerlobot has quit (Read error: 54 (Connection reset by peer)).
16:07:34 -!- kerlobot has joined.
16:07:40 <kerlo> %eval t
16:07:40 <kerlobot> (Just (-1000))
16:07:55 <kerlo> %eval (((s i) i) ((s i) i))
16:08:02 <kerlobot> ((loop i) (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i
16:08:14 <ehird> %eval (2 + 2)
16:08:14 <kerlobot> (2 + 2)
16:08:18 <kerlo> Wow.
16:08:22 <ehird> Damn, I was hoping for haskelleramation.
16:08:26 <ehird> kerlobot: epic fail thar
16:09:05 <AnMaster> haskelleramation?
16:09:16 <AnMaster> yes I *did* try google
16:09:23 <AnMaster> and no I can't figure out what it means
16:09:41 <AnMaster> apart from being related to haskell
16:09:45 -!- ais523_ has joined.
16:09:54 <kerlo> Being interpreted as Haskell, or something.
16:09:54 <AnMaster> hello ais523_
16:10:00 <AnMaster> kerlo, aha
16:10:02 -!- ais523 has quit (Nick collision from services.).
16:10:10 -!- ais523_ has changed nick to ais523.
16:10:21 <AnMaster> ais523, this IDE needs to run at uni? you can't run it at home?
16:10:25 <ais523> yes
16:10:34 <ais523> expensive closed-source stuff
16:10:35 <AnMaster> hm, oh that is the DRM stuff?
16:10:49 <ais523> I'm not sure
16:10:59 <ais523> it seems to go wrong only when opening a project, not when loading hte IDE itself
16:11:18 <AnMaster> ais523, is it on your laptop or only on school computers?
16:11:29 <ehird> Okay, let's see, boolean pair symbol number char string vector port procedure continuation table.
16:11:39 <ais523> it's only on the university computers
16:11:39 <AnMaster> or s/school/uni/
16:11:44 <ehird> What else, I wonder?
16:11:44 <ais523> I'm typing this on my laptop
16:11:46 <AnMaster> well uni is a type of school
16:11:48 <ais523> which is next to the Uni computer atm
16:11:49 <AnMaster> ais523, aha
16:11:53 <ehird> That's it I think.
16:11:55 <ais523> keyboard, keyboard, mouse, mouse
16:12:11 <AnMaster> ehird, data types for your scheme?
16:12:18 <ehird> No. Fluffy bunnies.
16:13:34 <AnMaster> ehird, well if you are doing this insanely speed optimised you might want to optimise lists in some special way, to make them into arrays in some contexts, might not need a different data type
16:13:55 <ehird> Suggesting such a thing shows a severe lack of understanding of the general usage case of cons lists.
16:14:20 <AnMaster> ehird, well, true they are meant to be accessed from head to tail
16:14:34 <oklopol> ooooo
16:14:36 <ais523> you could have an array type as well as a cons list type
16:14:45 <ais523> you could even go all OCaml and have imperative types as well as functional types
16:14:48 <AnMaster> but sometimes real arrays are useful indeed
16:14:52 <ais523> which drives me mad, but is good for speed
16:14:53 <ehird> ais523: Vector.
16:15:00 <ehird> read R5RS.
16:15:09 <AnMaster> oh, I didn't know about that either...
16:15:17 * AnMaster looks
16:16:09 <ehird> I wonder how i should implement bignums.
16:16:17 <ehird> Maybe as an array of fixnums.
16:16:24 <ehird> In base MAX_FIXNUM.
16:16:45 <AnMaster> ehird, well I don't know what is fastest, but isn't gmp quite fast?
16:17:00 <ehird> I will not use gmp/
16:17:05 <ehird> s/\/$/./
16:17:16 <AnMaster> oh? what is wrong with it?
16:17:46 <kerlo> I now believe it impossible to get kerlobot to quit.
16:17:57 <AnMaster> #quit
16:18:00 <AnMaster> hm nope
16:18:18 <ais523> /kill kerlobot would work if I was a server op, but I'm not
16:18:33 <AnMaster> if I had a botnet, which I do not, a DDoS would work
16:18:45 <kerlo> And that is a dare.
16:18:45 <AnMaster> but that is rather crude
16:19:18 <AnMaster> hm
16:19:45 <ais523> we could physically go round to kerlo's computer and disconnect the network cable
16:19:52 <ais523> but that would be too expensive in plane fares, I think
16:20:02 <AnMaster> ais523, or we could fake an abuse@ to his isp?
16:20:10 <ais523> hmm... kerlo's in the same timezone as me, maybe not
16:20:26 <ais523> oh, wait
16:20:30 <AnMaster> ais523, the bot says comcast
16:20:30 <ais523> kerlo's bouncing off Normish
16:20:34 <AnMaster> which iirc is US?
16:20:35 <ais523> which runs at UTC
16:20:42 <ais523> no wonder ctcp time told me UTC
16:21:04 <AnMaster> GeoIP Country Edition: US, United States
16:21:05 <AnMaster> hm
16:21:49 <kerlo> I'm bouncing off Normish, but kerlobot is connected directly from here.
16:22:38 <AnMaster> ais523, another idea, which I admit would also be expensive: contact any local maffia, asks for the "special offer"
16:22:43 <AnMaster> mafia*
16:23:23 -!- Judofyr_ has quit (Remote closed the connection).
16:23:46 <ais523> ok, that one's insane
16:23:59 <ais523> not just expensive, you have to worry about repercussions on yourself too
16:24:04 <AnMaster> yes
16:24:15 <ehird> umm
16:24:17 <ais523> another option: bribe a Freenode staffer
16:24:24 <ais523> although we're into the realms of insanity here
16:24:25 <ehird> you know, killing kerlo doesnt kill kerlobot
16:24:26 <AnMaster> ais523, I believe social engineering on freenode staff would work better
16:24:26 <ehird> neccessarily
16:24:42 <AnMaster> ehird: <kerlo> I'm bouncing off Normish, but kerlobot is connected directly from here.
16:24:49 <ehird> And?
16:24:53 <ehird> Killing kerlo != killing his net.
16:25:01 <AnMaster> ehird, when isp doesn't get paid they will cut his connection
16:25:04 <AnMaster> yes it may take a few weeks
16:25:14 <ehird> I imagine his parents pay for the connection.
16:25:17 <ehird> As he's a teen.
16:25:26 <AnMaster> ah, didn't know that
16:25:46 <AnMaster> kerlo, anyway, does it handle connection timeout and such properly?
16:33:31 <ais523> hmm... it seems that this IDE is just very very slow today for some reason
16:33:39 <ais523> half an hour later, it shows signs of activity
16:33:49 <AnMaster> ais523, windows?
16:33:54 <ais523> yes
16:34:09 <ais523> it might be the domain timeout bug, I suppose, but I don't think so
16:34:13 <AnMaster> if yes, all the spyware installed are busy calling home, please show some consideration and wait for them to finish
16:34:21 <ais523> I doubt it's spyware
16:34:29 <ais523> mostly because these computers are reimaged every night
16:34:45 <AnMaster> idea: install a spyware on the master image
16:35:05 <ais523> there are legitimate reasons to knock and dislike Windows; please don't improve its reputation with baseless trolling that makes the legitimate complaints seem bad
16:35:21 <AnMaster> ais523, I was trying to joke
16:36:01 <ehird> protip: jokes are meant to be funny
16:36:21 <AnMaster> ehird, in that case I would ask oerjan, not you
16:37:31 -!- MigoMipo has quit (Read error: 60 (Operation timed out)).
16:37:40 <ehird> s9.c:27: error: ‘NULL’ undeclared here (not in a function)
16:37:42 <ehird> wat
16:37:51 <AnMaster> ehird, stdlib.h
16:38:06 <AnMaster> NULL isn't a keyword
16:38:06 <flexo> not stddef.h?
16:38:11 <ais523> stdlib IIRC
16:38:12 <AnMaster> flexo, oh maybe that too
16:38:20 <ais523> I don't think I've used stddef for years
16:38:26 <ehird> stdlib is included.
16:38:27 <ais523> (hmm... maybe it's included from stdlib, that would explain it)
16:38:31 <ehird> and it is not my program.
16:38:49 <AnMaster> ais523, lots of headers include it
16:39:59 <ais523> this is really annoying, this program's running massively slowly and I'm not even allowed to use a top-alike to see what's happening
16:40:13 <ehird> 'allowed'?
16:40:17 <ais523> ah yes, task manager is allowed here
16:40:21 <ais523> ehird: yep, locked-down system
16:41:48 <ehird> [[I've always hated the idea of a garbage collector. I understand why it's useful for most people, but I prefer being in control]]
16:41:59 <ais523> OK, this is insane
16:42:00 <ehird> I wonder if there's a study on the link between programmers and sadists.
16:42:04 <ais523> when I try to run the program, it waits for a whiel
16:42:07 <ehird> er, masochists
16:42:09 * ehird brainfart
16:42:17 <ehird> er, wait. both.
16:42:25 <ais523> then prints the message Process "Synthesize - Synpifly Pro" failed
16:42:30 <ais523> no error messages or warnings, but that
16:42:30 <Slereah> ehird : Do you like clothepins on your nipple
16:42:31 <Slereah> s
16:42:44 <ais523> no other output at all apart from that and a "Started" message
16:42:50 <ais523> IOW, this program is failing and won't tell me why
16:48:14 <ehird> Hm.
16:48:42 <ehird> I am becoming more and more convinced that the plain machine stack is the best way to handle function calls.
16:48:53 <ehird> It seems that copying the c stack isn't actually very hard
16:48:58 <ehird> and it is fast
16:49:45 <ehird> One issue with using the machine stack is, how do you return multiple values in C, like scheme requires? You can't
16:50:18 <ais523> it's entirely possible to return multiple values on the stack, just C doesn't provide a syntax for it
16:50:21 <ais523> people do that all the time in asm
16:50:35 <ehird> Right, but is it _possible_ to do it portably in C? No.
16:50:40 <ais523> yes: you can do the same thing by returning a struct that contains all the data you want to return
16:50:50 <ehird> DING! Wrong. That is not the "same thing".
16:50:56 <ais523> that ends up compiling to the same asm that returning multiple elements is
16:51:02 <ais523> or would be
16:51:15 <ais523> so that very is the same thing
16:51:24 <ais523> (unless you have a perverse ABI)
16:51:45 <flexo> 17:50 < ais523> it's entirely possible to return multiple values on the stack, just C doesn't provide a syntax for it
16:51:50 <flexo> as in.. returning a struct?
16:51:54 <ais523> well, yes
16:52:01 <ehird> returning a struct, in this case, is not an option
16:52:01 <ais523> returning a struct is technically speaking only returning one value
16:52:04 <ais523> but it comes to the same thing
16:52:22 <ais523> (returning a /pointer/ to a struct is different, returning the struct itself by-value isn't)
16:55:52 -!- BeholdMyGlory has quit (Excess Flood).
16:56:27 -!- BeholdMyGlory has joined.
17:00:39 -!- FireFly has joined.
17:01:57 <ehird> setjmp/longjmp are meant to be cheap, right?
17:03:04 <flexo> sure
17:03:17 <ehird> getcontext/setcontext presumably aren't :P
17:03:31 <flexo> depends on what you mean by cheap i suppose
17:03:38 <ehird> efficient
17:03:41 <flexo> ...
17:04:00 <flexo> they all work in O(1)
17:04:05 <flexo> that's efficient.
17:04:08 <ehird> no duh
17:05:17 <flexo> but setjmp/longjmp don't have to do context switching
17:05:21 <flexo> just stack unwinding
17:05:28 <ais523> ehird: setjmp/longjmp are relatively expensive, at least compared to goto
17:05:29 <flexo> so they are more cheap, yea
17:05:36 <ais523> there was an article on thedailywtf about them
17:05:41 <ais523> and lots of people went and did lots of benchmarking
17:05:53 <ehird> ais523: Craziness context: I'm considering writing my own :x
17:05:58 <ais523> and as for cheapness/expense, it depends on the processor
17:06:04 <ais523> most will have to save all the registers
17:06:16 <ais523> which is relatively cheap on an 8086 and expensive on something which has loads of registers
17:06:48 <AnMaster> ais523, wait, register starved is better?
17:06:55 <ais523> not normally
17:06:58 <AnMaster> true
17:06:59 <ais523> but it's faster at longjmps
17:07:20 <ais523> if you think about it, if you had no registers but the stack pointer a longjmp would just be assignment to the stack pointer
17:07:29 <oklopol> you guys think you're so tough at playing baseball.
17:07:31 <ais523> and the return at the end of longjmp would return to the setjmp not to where it had been called
17:07:40 <AnMaster> ais523, heh
17:07:48 <flexo> i've having serious trouble deciding for a couch
17:07:49 <flexo> i need help
17:07:50 <oklopol> well let me tell you something: a professional baseball player would beat the crap out of each and everyone of you.
17:07:51 <flexo> :(
17:07:57 <oklopol> probably even in scrabble
17:08:01 <ehird> ais523: well, yeah I'm pretty much going to do that since who cares about registers
17:08:01 <AnMaster> oklopol, um? I don't play baseball
17:08:02 <ehird> :D
17:08:08 <AnMaster> and i hate scrabble
17:08:15 <AnMaster> I fail at it all the time
17:08:38 <AnMaster> oklopol, I suck slightly less at chess, but I'm far from good at it
17:08:49 <oklopol> :D
17:08:51 <ehird> Whoosh.
17:08:56 <flexo> i think i kinda like BEDDINGE
17:09:05 <flexo> but it has no.. the... stuff.. at the sides
17:09:12 <AnMaster> eh
17:09:13 <oklopol> let me make sure i understood, you suck slightly at it, but you are far from good at it?
17:09:24 <AnMaster> flexo, an esolang?
17:09:27 <flexo> no
17:09:28 <flexo> a couch
17:09:30 <ehird> 17:07 <flexo> i've having serious trouble deciding for a couch
17:09:37 <AnMaster> beddinge? sounds like a 2D language
17:09:37 <ehird> BEDDINGE
17:09:38 <flexo> *i'm
17:09:39 <ais523> oklopol: AnMaster sucks slightly less at chess than at scrabble, but is far from good at both
17:09:40 <ehird> BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE BEDDINGE
17:09:43 <ehird> sorry I like that word
17:09:46 <AnMaster> some sort of fungoid
17:09:51 <AnMaster> ehird, oh BADGER?
17:09:53 <ehird> http://www.ikea.com/us/en/catalog/products/S49839894
17:09:53 <flexo> http://www.ikea.com/de/de/catalog/products/S29830007
17:09:54 <flexo> ...
17:09:55 <ehird> Neddomge
17:09:57 <ehird> ...
17:09:58 <ehird> lol
17:10:10 <ehird> no arms :<
17:10:11 <oklopol> ais523: lol okay i failed :P
17:10:13 <flexo> exactly
17:10:21 <ehird> gotta have arms.
17:10:26 <flexo> yea, i think so too
17:10:27 <ehird> like, to shoot things with
17:10:33 <ehird> it's in the constitution don't you know
17:10:41 <AnMaster> ais523, indeed. How was it ambiguous?
17:10:44 <flexo> not my constitution
17:11:08 <ehird> nor mine :P
17:11:12 <AnMaster> oh right
17:11:17 <AnMaster> then it makes perfect sense that name
17:11:24 <AnMaster> once you read it in Swedish
17:11:33 <AnMaster> well not perfect sense, but much more sense that in English
17:11:35 <ehird> BED BINGE
17:11:39 <ais523> AnMaster: I don't think it was, I was explaining for oklopol
17:11:47 <AnMaster> ah right ais
17:12:05 <flexo> but the other sofa beds suck
17:12:16 <flexo> no arms either
17:12:16 <oklopol> i dropped a crucial word
17:12:44 <AnMaster> I want a desksofachairtablebed
17:12:46 <AnMaster> all in one
17:13:23 <AnMaster> before anyone asks: no, I can't imagine how it would look
17:13:25 <ais523> AnMaster: I don't think that's impossible
17:13:38 <ais523> you should be able to lie in bed and use the desktable at the same time, though
17:13:42 <flexo> yea, just some huge tank with some fluid in it
17:13:46 <ais523> likewise, use the desktable at the same time as the sofa
17:14:07 <flexo> like the navigators in dune
17:14:54 <flexo> *sigh*
17:16:08 <flexo> choosing a couch online sucks
17:16:09 <ehird> ais523: thought on bignums being array-of-ints-in-base-max-int?
17:16:21 <flexo> but running around in ikea sucks even more
17:16:24 <ais523> ehird: use an existing bignum library, it can almost certainly beat you by a lot
17:16:32 <ehird> ais523: no fun
17:16:39 <ais523> that seems like a plausible implementation, though
17:16:52 <ais523> and it's the one that asm uses, if you're mad enough to do bignums in asm
17:17:48 <ehird> really?
17:18:32 <ehird> heh, one thing I can't do is track how many segments there are, since that needs to be a bignum too :)
17:18:37 <ehird> so it'll have to be NULL-terminated
17:18:52 <ehird> ais523: what about sign bits, do you think?
17:18:53 <ehird> -A,B?
17:18:55 <ehird> -A,-B?
17:19:00 <ehird> NEGATIVE + {A,B}?
17:19:34 <AnMaster> ehird, in an actual implementation it would be limited by sizeof(void*)
17:19:48 <ehird> AnMaster: I think I'll make it a linked list
17:19:56 <ais523> ehird: 2's complemetn
17:19:58 <ais523> *complement
17:19:59 <AnMaster> ehird, sounds slow, a vector would be better
17:20:12 <ehird> ais523: that's for binray
17:20:14 <ehird> binary
17:20:53 <ais523> ehird: same trick works for any power-of-2 base
17:21:08 <ehird> is the max of an unsigned long always a power of 2?
17:21:09 -!- KingOfKarlsruhe has quit (Remote closed the connection).
17:21:11 <ehird> I guess so, in modern systems.
17:21:29 <ais523> it's a power of 2 minus 1 on all C systems, I think
17:22:12 <ehird> hmm
17:22:17 <ehird> MAX_ULONG, MAX_UNSIGNED_LONG aren't defined
17:22:19 <ehird> wonder what it is
17:22:23 <ais523> ULONG_MAX
17:22:25 <ais523> IIRC
17:22:27 <ehird> o, right
17:22:31 <ehird> probably should make it unsigned long long where that's supported
17:22:34 <ais523> AnMaster will know even if I get it wrong
17:22:44 <ehird> (2147483647L * 2UL + 1UL)
17:22:47 <ais523> what about gcc? it has a type longer than long long as an extension
17:22:49 <ehird> they couldn't just give a constant...
17:22:58 <ais523> ehird: it has to be done like that, I think
17:23:16 <ais523> due to handling buggy compilers which get confused by 'negative' numbers
17:23:20 <ehird> lol
17:23:33 <ehird> so, i'm working in base 4294967295 :D
17:23:39 <ehird> except
17:23:42 <ehird> wonder what unsigned long long max is
17:23:44 <ehird> ULONGLONG_MAX?
17:23:48 <ais523> ULL_MAX
17:23:53 <ais523> and you should be working in base 4294967296
17:23:55 <ehird> ULONG_LONG_MAX also
17:24:02 <ehird> also, er, yeah
17:24:03 <ais523> because 4294967295 is the maximum possible value
17:24:09 <ehird> not ULL_MAX
17:24:09 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
17:24:13 <ehird> ULL_MAX is undefined
17:24:23 <ais523> ULLONG_MAX is actually plausible
17:24:24 -!- kerlobot has joined.
17:24:33 <kerlo> %eval (c W H A R R G A R B L)
17:24:34 <kerlobot> WHARRGARBL
17:24:38 <kerlo> Yay.
17:24:48 <ehird> ais523: ok, on this machine I'm working in base 18446744073709551614
17:24:54 <ehird> what's the gcc thing you mentioned?
17:24:59 <ais523> __uint128_t, IIRC
17:25:08 <ehird> ah. I won't bother touching it
17:25:21 <ais523> although if you don't have native 128-bit operators, it'll probably be slower
17:25:27 <ais523> fwiw, probably using unsigned longs is best
17:25:34 <ehird> why not unsigned long longs?
17:25:36 <ais523> for very big numbers
17:25:39 <ais523> ehird: because they'd have to be emulateed
17:25:46 <ehird> err, why?
17:25:53 <ehird> i'm on a 64 bit machine
17:26:13 <ais523> oh
17:26:20 <ais523> well unsigned long is 64 bits on a 64 bit machine
17:26:21 <ais523> or ought to be
17:26:34 <flexo> yea, ought to be.
17:26:36 <ehird> OS X compiles things as 32-bit by default, though.
17:26:38 <flexo> unfortunatly people suck
17:26:41 <ehird> For god knows what reason.
17:26:51 <flexo> actually
17:26:52 <ais523> ehird: then 64-bit operations will have to be emulated
17:26:58 <ais523> because they aren't available when compiling as 32 bit
17:27:00 <flexo> long should more be like 128 bit on a 64 bit machine
17:27:13 <flexo> int should be the native register size
17:27:20 <ehird> ais523: what constant is defined for 64-bit/32-bit again?
17:27:23 <ehird> i forgot..
17:27:24 <ehird> .
17:27:43 <ais523> I don't think there's a standard one
17:27:44 -!- kerlobot has quit (Read error: 131 (Connection reset by peer)).
17:27:59 <ais523> sizeof(unsigned long) is normally an easy way to check, though
17:28:00 -!- kerlobot has joined.
17:28:02 <ehird> flexo: int is 32-bit on gcc mostly even when you do -m64 though, isn't it?
17:28:06 <kerlo> %eval (h WHARRGARBL)
17:28:06 <kerlobot> (W HARRGARBL)
17:28:08 <ais523> and sizeof(int), likewise, tells you if you're on 16-bit or 32-bit
17:28:08 <flexo> ais523: doesn't work on win32 though
17:28:16 <flexo> ehird: yep
17:28:25 <kerlo> So, now you can cut symbols apart and put them together.
17:28:46 <flexo> ehird: but that's only because people suck
17:28:51 <ehird> ais523: why doesn't #error sizeof(...) work :-P
17:28:52 <flexo> and fail to write portable software
17:28:55 <ehird> it shoooooooooould
17:29:01 <ais523> ehird: because sizeof is compile-time, not preprocess-time
17:29:09 <ehird> >:::(
17:29:16 <ais523> you can mess about with limits.h, though, if you prefer
17:29:20 <ais523> or else use a static assertion
17:29:39 <flexo> i had some flaming with zhivago about that one
17:29:47 <ehird> huh ... sizeof(unsigned long) = sizeof(int) here
17:30:02 <ehird> well
17:30:11 <ehird> in 32 bit, sizeof(ul)=sizeof(int)=4
17:30:15 <flexo> sizeof(int) really should be the native register size.
17:30:15 <ehird> in 64 bit, sizeof(ul)=8; sizeof(int)=4
17:30:21 <ehird> wtfomobil
17:30:21 <ehird> e
17:30:28 <flexo> and long should preferrably larger, emulated by software if necessary
17:30:31 <ehird> i think what I can draw from this, is:
17:30:35 <ehird> use unsigned long :-P
17:30:36 <flexo> and "long long" is just silly
17:30:47 <ehird> we need a long^N specifier
17:30:53 <ehird> unsigned long^4 x;
17:30:54 <flexo> no we don't.
17:30:56 <ehird> :DDD
17:31:14 <ais523> ehird: algol actually had long long long long long int as a valid data type
17:31:16 <ais523> with any number of longs
17:31:23 <ehird> :D
17:31:30 <ais523> it had a constant, max lengths, which told you how many longs had an effect
17:31:33 <ais523> likewise, max shorths
17:31:47 <ais523> (identifiers could contain spaces in algol, which was a great way to cause confusion)
17:32:40 <ehird> [ehird:~/Code/bignum] % cc -m64 bignum.c; ./a.out
17:32:40 <ehird> 18446744073709551614
17:32:41 <ehird> [ehird:~/Code/bignum] % cc bignum.c; ./a.out
17:32:43 <ehird> 4294967294
17:32:46 <ehird> that 64-bit output is lollerific
17:32:48 <ehird> i mean
17:32:54 <ehird> how many numbers do you deal with bigger than that?
17:33:03 <ehird> typedef unsigned long bignum;
17:33:03 <ehird> :P
17:33:29 <ais523> ehird: my brother convinced me to teach him Perl, just so he could do really bignum calculations
17:33:32 <ais523> he's looking for big primes
17:33:34 <kerlo> short short short short short short int: if int is 32-bits wide and can hold any of 4294967296 values, this is half a bit wide and can hold any of sqrt(2) values.
17:33:42 <ais523> ofc, Perl isn't an ideal lang for doing that quickly, but it keeps him happy
17:33:44 <flexo> ehird: like addressing modern harddrives?
17:33:51 <ehird> ais523: lol, how old is he?
17:33:55 <ais523> younger than me
17:33:58 <ais523> I can't remember exactly how old
17:34:01 <ehird> flexo: except im using this in an implementation of Scheme :-P
17:34:09 <ehird> although theoretically you could do that
17:34:36 <flexo> hm.. i used a certain lisp-subset a lot when i was a kid
17:34:44 <flexo> anyone knows ADVSYS? :)
17:35:16 * ehird writes void bui_mod_succ(biguint n) , without knowing anything about how to actually implement stuff like this.
17:35:17 <ehird> Woohoo!
17:35:34 <ais523> ehird: how are you marking the length of the integer?
17:35:44 <ehird> ais523: {blah,blah,blah,NULL}
17:35:54 <ehird> dunno whether it'll be big endian or little endian
17:36:04 <ehird> I'm thinking little endian, so that it's easier to do things like succ
17:36:07 <ehird> without reading to the end
17:36:12 <ais523> ugh, that's a really bad way to do it
17:36:18 <ehird> is it :<
17:36:19 <ais523> IMO, it should be length-prefixed
17:36:23 <ais523> you don't want a special value
17:36:29 <ehird> umm, fail :D
17:36:30 <ais523> because then you can't use the entire range of your int, or whatever
17:36:34 <ehird> how can you do that length prefixed
17:36:38 <ehird> the length would have to be a bignum
17:36:40 <ais523> ehird: well, yes
17:36:44 <ais523> recursive bignums ftw
17:36:53 <ehird> i don't think that would work.
17:36:54 <ais523> but your method is much less efficient
17:37:18 <ehird> "that is inefficient, use this impossible method instead"
17:37:35 <ais523> ehird: you're going for speed, aren't you?
17:37:38 <ehird> ais523: not atm
17:37:41 <ehird> if I wanted efficient I'd use gmp
17:37:44 <ais523> my advice is to make length-prefixed possible
17:37:50 <ais523> I bet that's what gmp does
17:37:55 <ehird> i don't care
17:38:00 <ehird> it's simpler to implement this
17:38:04 <ehird> and it's more conceptually pure
17:38:17 <ais523> no, it isn't more pure, it's conceptually a lot dirtier
17:38:24 <ehird> i don't care :)
17:38:30 <ais523> there's nothing purer than going add/add-with-carry/add-with-carry all the way along a bignum
17:38:43 <ehird> i don't caaaaaaaaaaare :)
17:38:48 <ais523> (besides, you can just length-prefix it with a long long, the computer would run out of memory before it ran out of length prefixes)
17:39:05 <ais523> or, if you prefer, prefix with a pointer to the last element
17:39:14 <ais523> it's clearly in memory, therefore it can be pointed at
17:39:15 <ais523> problem solved
17:39:21 <ehird> i prefer to live in a world of infinite memory
17:39:34 <ais523> ehird: then you have infinite pointers
17:39:37 <ais523> problem still solve
17:39:40 <ais523> *solved
17:39:45 <ehird> meh, fine
17:40:08 <ehird> ais523: but then I have to use VLAs.
17:40:22 <ehird> v
17:40:23 <ehird> typedef struct {
17:40:23 <ehird> BLOCK_TYPE *last;
17:40:25 <ehird> BLOCK_TYPE data[];
17:40:27 <ehird> } *biguint;
17:40:45 <ais523> that's not a VLA
17:40:50 <ais523> that's the legalised struct hack
17:40:58 <ehird> oh, right
17:41:05 <ehird> ais523: that's c99 only isn't it
17:41:06 <ehird> :(
17:41:07 <ais523> and you can just put a 1 in the square brackets on C89, there's no known system on which the original struct hack doesn't work
17:41:12 <ehird> ah
17:41:16 <ais523> despite it being technically illegal
17:41:21 <ehird> I've mostly seen it as data[0]
17:41:27 <ais523> ehird: that's a gcc-ism
17:41:27 <ehird> to emphasise the hack
17:41:31 <ehird> ais523: is it? ok
17:41:39 -!- oerjan has joined.
17:41:56 <ehird> hmm
17:42:03 <ehird> wouldn't an infinite-pointer system have infinite unsigned longs too?
17:42:09 <ehird> and thus no need for bignums...
17:42:11 <ais523> probably
17:42:26 <ais523> incidentally, C fails at handling sizeof infinite data types
17:42:35 <ehird> ais523: my aversion of length counting's justification: http://jwz.livejournal.com/854482.html :P
17:42:37 <ais523> I'm really annoyed that the definition of C excludes bignums
17:42:48 <ais523> ehird: I don't like length counting for strings, normally
17:42:52 <ais523> for bignums, though, it works a lot better
17:42:52 <ehird> not for strings
17:42:54 <ehird> read the post
17:43:43 <flexo> c is a fucking macro assembler. no bigints there.
17:43:55 <ais523> ehird: classic
17:44:09 <ais523> that's just a flaw in their bignum implementation, though
17:44:13 <ehird> ais523: why?
17:44:18 <ais523> they didn't have a big enough length ehader
17:44:24 <ehird> define big enough
17:45:17 <flexo> The fifth season will commence on January 21, 2009 with a three-hour premiere consisting of a clip-show and two back-to-back new episodes.
17:45:20 <flexo> woohoo
17:45:26 <flexo> that's 3 days
17:45:45 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:45:46 <ehird> wut
17:45:49 <flexo> lost!
17:45:52 <ehird> o
17:45:56 -!- ais523 has joined.
17:46:05 <flexo> i didn't think i'd make it
17:46:12 <flexo> 3 more days
17:46:26 <ehird> lol wut
17:46:28 <flexo> and my life will have meaning again
17:46:52 <flexo> lost? you know? as in tv?
17:47:39 <ehird> yes.
17:47:40 <ehird> i know.
17:47:43 <AnMaster> I just had a crazy idea for how to implement an AI that would actually work, it is technically unfeasible though
17:47:50 <ehird> AnMaster: no, it wouldn't work
17:48:11 <AnMaster> ehird, simulate life exactly, I mean simulate evolution, from the start
17:48:18 <AnMaster> in all details
17:48:26 <flexo> that's not so much artitical
17:48:26 <AnMaster> would require huge resources though
17:48:32 <ehird> you couldn't do that
17:48:35 <ehird> because you don't know the details
17:48:36 <ais523> AnMaster: how do you know that intelligence would evolve before the extinction of life?
17:48:40 <ehird> and you don't have nature's random number generator
17:48:51 <AnMaster> ais523, you would have to do several runs of course
17:48:53 <ehird> AnMaster: what you're saying is,
17:49:01 <AnMaster> ais523, but given enough time it should work
17:49:06 <ais523> the odds against intelligence may be incredibly high
17:49:08 <ehird> "Here's an easy way to simulate intelligence: simulate everything!"
17:49:18 <AnMaster> ais523, I said "technically unfeasible"
17:49:19 <ais523> the fact that intelligence evolved here may have been a huge fluke
17:49:22 <ehird> simulating intelligence is almost certainly easier than simulating everything
17:49:29 <ehird> thus your solution is a non-solution, even with an infinitely powerful computer
17:49:42 <ais523> but anywhere where the point will be brought up, there must be intelligences to ask the question
17:49:53 <AnMaster> ais523, indeed. I said "technically unfeasible" and "given enough time"
17:50:05 <kerlo> Indeed, I'd rather just use genetic algorithms.
17:50:05 <ehird> AnMaster: you could also brute-force intelligence.
17:50:14 <ehird> that's both way easier to implement and about as efficient.
17:50:18 <ais523> ehird: how would you detect it once you had it?
17:50:20 <AnMaster> agreed
17:50:25 <oerjan> you could probably stack the dice a bit by ensuring there was something resembling earth geologically...
17:50:32 <ehird> ais523: clone an infinite amount of people and have them talk with the iterations simultaneously
17:50:34 <ehird> forever
17:50:45 <ehird> (No harder than simulating the entire universe.)
17:50:49 <ais523> ehird: being able to clone an infinite number of people would probably mean you could just outsource your intelligence
17:50:50 <ais523> to them
17:50:57 <ehird> That would not be artificial.
17:51:15 <oerjan> plate tectonics, the right elements and the right temperature is a good start i think
17:51:34 <ais523> (recent Slashdot story: it seems some companies have been using Mechanical Turk to astroturf Amazon reviews of their products)
17:51:56 <AnMaster> oerjan, well yes, but all written in rules of basic physics
17:52:17 <AnMaster> I mean, quantum mechanics level or so, or you couldn't simulate all effects
17:52:44 <AnMaster> of course that would require as near infinite resources as it makes no practical difference that it would in fact only be finite resources
17:53:07 <oerjan> you may not need to simulate more than the biosphere to full precision
17:53:26 <AnMaster> oerjan, true, but probably not all of space
17:53:55 <ehird> d'aww, while (printf("%lu\n", *n++)); wouldn't work
17:53:58 <ehird> need to return *n
17:54:02 <AnMaster> oerjan, I mean, relativity limits speed of information
17:54:05 <ehird> while (printf("%lu\n", *n++), *n);
17:54:06 <ehird> good enough
17:54:14 <AnMaster> so only the visible universe at the end of the simulation
17:54:37 <AnMaster> oh you could probably fake it, no one would notice if the stars were made of paper ;)
17:55:50 <AnMaster> anyone, anyone up for the task of calculating much computer resources this would need?
17:56:20 <oerjan> AnMaster: er i said "you may _not_ need". did you read me backwards?
17:56:43 <AnMaster> oerjan, oh indeed I must have done
17:57:15 <oerjan> also, you could stack the dice even more, you could probably get a simple cell in there
17:57:35 <AnMaster> "stack the dice" I never heard that idiom before
17:57:53 <ais523> oerjan: stack the deck, surely?
17:57:59 <oerjan> oh
17:58:00 <ais523> anyway, going for a while, I need to get dinner
17:58:00 <oerjan> right
17:58:02 <flexo> i suppose it would be less effort to build a new biosphere than simulating one
17:58:05 -!- ais523 has quit.
17:58:11 <AnMaster> and what does "stack the deck" mean?
17:58:28 <oerjan> "to arrange something in a way that is not fair in order to achieve what you want"
17:58:38 <AnMaster> also, what a shock they would get when they realise that they are simulated
17:58:44 <flexo> as the universe is kinda efficient in "emulating" stuff in itself.
17:59:02 <oerjan> AnMaster: well maybe. _we_ could be simulated.
17:59:11 <AnMaster> oerjan, yes I was thinking about that too
17:59:23 <flexo> actually it's more likely that it's just me being simulated :)
17:59:27 <oerjan> it could be simulations all the way up :D
17:59:33 <flexo> and you all consist of paper
17:59:48 <ehird> AnMaster: they wouldn't realise they were simulated.
17:59:49 <AnMaster> oerjan, augh!
17:59:55 <ehird> you'd get religions, and atheists.
18:00:10 <ehird> and some fringe ones arguing they're all simulated, dismissed as kooks.
18:00:13 <AnMaster> ehird, what if we planted a message, like that that book, Strata
18:00:20 <AnMaster> by T. Pratchett
18:00:21 <ehird> you mean like the bible
18:00:35 <AnMaster> ehird, I mean like in Strata by T. Pratchett
18:00:45 <ehird> I have not read it./
18:00:47 <AnMaster> ah ok
18:00:57 <AnMaster> well
18:01:09 <AnMaster> since it is Pratchett, it is kind of hard to make a short plot summary
18:01:13 <AnMaster> as you surely can imagine
18:01:37 <oerjan> i'm sure there's one on wikipedia :D
18:01:45 <ehird> anyway, it'd almost certainly go on exactly as the religious situation in this world goes on.
18:01:58 <ehird> if you were extremely blatant, probably they'd die of shock, or rebel against you.
18:02:27 <oerjan> ehird: well that is assuming there _is_ no actual divine input to the world's religions.
18:02:36 <oerjan> (this world's)
18:02:53 <ehird> as is my belief :-)
18:03:09 <oerjan> yes. but that is not the same as "almost certainly".
18:03:18 <ehird> naturally.
18:03:33 <ehird> but christianity could well be truly divinely influenced, doesn't mean people take it any more seriously
18:04:32 * ehird *CONTRAVARSY*
18:05:13 <ehird> aight, I'll length count.
18:05:15 <AnMaster> <spoiler>Humans in the book have advanced to terraforming other planets and so on, to increase biodiversity. After some thousand generations before getting to space flight the emigrants tend to forget that they came from elsewhere. Something like that. However, sometimes the machine operators leave some (unauthorised) clues when terraforming. Like a fossile of a dinosaur holding a sign saying "Stop nu
18:05:15 <AnMaster> clear war".... And well in the end the protagonists find out that the universe they live in was constructed. Thanks to a clue left in it.
18:05:16 <ehird> now to incrementerament
18:05:28 <AnMaster> that clue was a flat world. This work iirc pre-dates disc world
18:05:33 <AnMaster> </spoiler>
18:05:39 * ehird shrug
18:05:43 <ehird> It's fiction.
18:05:48 <AnMaster> ehird, yes of course
18:06:01 <AnMaster> but it would be so cool if it wasn't ;P
18:09:31 <ehird> ugh, there should be a realloc that forces in-placeness
18:12:51 <ehird> :( my bui_mod_incr doesn't work
18:14:02 <kerlo> Algorithm: replace all vowels except I and Y with A.
18:14:30 <kerlo> Eh, leave silent E as well.
18:14:55 <kerlo> Actually, leave all E's.
18:15:49 <FireFly> ^bf ++++++++++>++++++++[->++++++++<]>++++++>++++++[[->+>+<<]>>[-<<+>>]<[-<<.>>]<-<<<.>>>]
18:15:50 <fungot> FFFFFF.FFFFF.FFFF.FFF.FF.F.
18:16:19 <oerjan> <kerlo> I assure you that this is all part of my evil plan.
18:16:25 <oerjan> how assuring.
18:17:02 <kerlo> GEARGE W. BASH WILL STAP BARACK ABAMA FRAM DESTRAYING AAR CAANTRY!
18:17:17 <ehird> Proto: Eliminate consonants.
18:17:58 <ehird> eoe u i o aa aa o eroyi ou ouny!
18:18:38 <oerjan> WHAT IS THE PAINT AF THIS?
18:18:52 <AnMaster> <ehird> ugh, there should be a realloc that forces in-placeness <-- that is not possible in practise since there could be other stuff allocated after
18:18:58 <ehird> who cares
18:19:00 <ehird> write over it
18:19:01 <ehird> :D
18:19:22 <AnMaster> ehird, why not just check the return value?
18:19:47 <ehird> because your face
18:20:12 <AnMaster> that made no sense, not even grammatically
18:20:29 <oerjan> neither does your face
18:20:35 <ehird> what he said
18:20:40 <AnMaster> oerjan, that made sense grammatically
18:20:43 <oklopol> because *you're* face
18:20:44 <AnMaster> so wrong
18:20:47 <kerlo> I sint re soud dsust retrace arr tonsonants ris arzeorar tonsonants.
18:20:49 <oklopol> that's a common mistake
18:21:04 <AnMaster> oklopol, heh...
18:21:13 <oerjan> arzeorar?
18:21:14 <AnMaster> that make no sense either
18:21:32 <kerlo> Alveolar.
18:21:44 <oerjan> oklopol: ssh, it's a secret that AnMaster is Mr. Potato Head
18:21:49 <AnMaster> kerlo, what is the substitution? c->t I see
18:22:01 <AnMaster> sometimes?
18:22:11 <AnMaster> oerjan, who?
18:22:29 <AnMaster> but good thing it isn't telnet at least
18:22:31 <oerjan> AnMaster: a famous face
18:22:37 <ehird> kerlo: scarily, that worked
18:22:49 * AnMaster hopes someone gets that bad pun
18:23:01 <oerjan> AnMaster: nope
18:23:06 <oklopol> i did.
18:23:08 <oerjan> oh
18:23:22 * oerjan swats AnMaster -----###
18:23:29 * AnMaster dodges
18:23:44 <kerlo> ehird: what worked?
18:23:51 <ehird> kerlo: consonant replacing
18:24:54 <oerjan> isn't l alveolar?
18:24:55 <AnMaster> ehird, anyway there might be a way to handle the realloc() issue
18:24:59 <AnMaster> if you tell me why you need it
18:25:14 <ehird> i dont
18:25:14 <ehird> :P
18:25:21 <ehird> but my increment doesnt work :(((((((
18:25:24 <AnMaster> ehird, well it seems to be linux specific anyway
18:26:26 <Ilari> Glibc specific? :->
18:27:01 <AnMaster> Ilari, linux kernel specific I think
18:27:08 <AnMaster> at least that is what the man page says
18:27:27 <Ilari> AFAIK, the memory allocation functions Linux kernel implements are brk() and mmap().
18:27:43 <AnMaster> basically: mmap with MAP_FIXED (and possibly MAP_GROWSDOWN), then mremap (possibly using MREMAP_FIXED, not 100% sure about that)
18:27:43 <Ilari> And also mremap().
18:28:06 <kerlo> P becomes T, B becomes D, T remains T, D remains D, CH becomes TS, J becomes DZ, K becomes T, hard G becomes D, F becomes S, V becomes Z, soft TH becomes S, hard TH becomes Z, S remains S, Z remains Z, SH becomes S, "zh" becomes Z, H becomes S, M becomes N, N remains N, NG becomes N, L remains L, R remains R, W becomes R, Y becomes R.
18:28:24 <kerlo> So yeah, "alveolar" becomes "alzeolar", not "arzeolar".
18:28:34 <AnMaster> kerlo, that isn't loseless, also how did you decide on this scheme?
18:28:48 <kerlo> All consonants become alveolar.
18:28:59 * AnMaster googles alveolar
18:29:25 <kerlo> Unvoiced glottal fricative becomes unvoiced alveolar fricative, voiced bilabial stop becomes voiced alveolar stop, etc.
18:29:38 <Ilari> AnMaster: Process memory maps are available, so one can check if there's gap after current allocation...
18:29:44 <oerjan> Whap aboup mapim ip wabiw imfpeab?
18:29:53 <oerjan> *wabiaw
18:30:07 <kerlo> That sounds really fun.
18:30:14 <AnMaster> kerlo, huh. I might understand that better if translated to Swedish
18:31:07 <AnMaster> <kerlo> Unvoiced glottal fricative becomes unvoiced alveolar fricative, voiced bilabial stop becomes voiced alveolar stop, etc. <- I understood the words "(un)?voiced", "stop", "becomes" and "etc" in that
18:31:20 <kerlo> Well, they're all phonetic terms.
18:31:28 <FireFly> ^bf <.
18:31:31 <AnMaster> kerlo, well I don't know much about that
18:31:35 <AnMaster> FireFly, it wraps
18:31:37 <oerjan> Ustemda glottala frikativer bliver ustemda alveolära frikativer ;D
18:31:38 <FireFly> Ah
18:31:48 <AnMaster> oerjan, no less understandable :P
18:32:04 <AnMaster> FireFly, 1000 or 10000 cells iirc
18:32:09 <AnMaster> read the source for details
18:34:28 <ehird> http://boinkor.net/misc/terrible-xml-error.png
18:34:59 <AnMaster> technomadic? NOMADS?
18:35:03 <AnMaster> ehird, and funny
18:35:11 <oerjan> *ostämda, i think
18:35:26 <AnMaster> oerjan, that is why I use an electrical piano :P
18:35:42 <oerjan> *facepalm*
18:36:10 <AnMaster> oerjan, so not so bad it is good this time? :(
18:37:22 <oerjan> it's surreal
18:37:34 <AnMaster> oerjan, oh?
18:37:41 <AnMaster> how do you mean
18:38:49 <oerjan> my brain cannot grasp how that comment leads from mine, even as a pun :D
18:38:59 <oerjan> *follows
18:39:23 <AnMaster> oerjan, you know an instrument needs to be tuned?
18:39:28 <AnMaster> well that is stämma in Swedish
18:39:38 <AnMaster> and, ostämda, would be non-tuned
18:39:42 <AnMaster> or in need of tuning
18:39:55 <AnMaster> you don't need to tune an electrical piano :P
18:40:04 * ehird evacuates the building ->
18:40:09 <AnMaster> oerjan, maybe it doesn't work in Norwegian?
18:40:10 <ehird> come on, get away from the dangerous AnMaster, everyone
18:40:16 <ehird> terrible pun situation, let's get this under control
18:40:19 <ehird> everyone out in an orderly fashion ->
18:40:21 * AnMaster joins ehird
18:40:27 <AnMaster> lets get out of here
18:40:29 <oerjan> oh it works all right. it just doesn't make sense.
18:40:30 * ehird squirts AnMaster with funny juicde
18:40:33 <ehird> *juice
18:40:37 <ehird> come on everyone ->
18:40:39 <AnMaster> tastes nice!
18:40:43 * AnMaster follows
18:40:48 * ehird bats AnMaster with a cluebat
18:40:49 <ehird> ->
18:41:02 <AnMaster> ehird, Always were a hard hat on irc
18:41:05 <AnMaster> that is what I always say
18:41:07 <AnMaster> want one too?
18:41:12 * AnMaster hands ehird a nice hard hat
18:41:16 * ehird puts AnMaster in a cage
18:41:17 <ehird> ->
18:41:40 <AnMaster> ehird, hey good thing I was Houdini in a previous life!
18:41:48 <AnMaster> (and good thing I believe in reincarnation)
18:41:55 * ehird kills AnMaster
18:41:59 <AnMaster> How?
18:42:01 <ehird> now we don't need to evacuate!
18:42:08 <AnMaster> ehird, how would you kill?
18:42:13 <AnMaster> some sort of weapon or such
18:42:13 <ehird> AnMaster: funny-clue-giving-machine
18:42:17 <ehird> you're allergic to it
18:42:30 <AnMaster> ehird, ah good thing I took the medicine this morning then
18:42:31 <AnMaster> :)
18:42:36 <ehird> no, there is no cure
18:42:39 * AnMaster walks out of the exit
18:42:43 <ehird> source: channel logs
18:42:47 <AnMaster> yay out of the building
18:42:52 <ehird> crap
18:42:56 * ehird turns on the lhc, targets at AnMaster
18:43:02 <AnMaster> now what was it that was so dangerous in there?
18:43:05 * AnMaster dodges
18:43:16 <oerjan> ehird: but you're already a black hole, remember?
18:43:18 <ehird> [black hole expands to be as big as anmaster and everywhere at once]
18:43:27 * ehird turns off LHC just as AnMaster is sunk in.
18:43:31 <ehird> only a few million casualties.
18:43:32 <AnMaster> oerjan, no I dodged fast enough
18:43:43 <AnMaster> also that was debunked, see snopes or something
18:43:57 <AnMaster> or maybe busted, in that case see mythbusters
18:44:03 <oerjan> snopes is clearly one of the men in black
18:44:14 <oerjan> don't believe everything he debunks
18:44:16 <AnMaster> oerjan, then mythbusters clearly
18:44:33 <oerjan> yes, they too
18:44:47 <AnMaster> sure about not believe, but no they aren't MIB
18:44:55 <AnMaster> the SNMP protocol would simply reject them
18:44:59 -!- sebbu2 has joined.
18:45:16 * AnMaster certainly hopes no one find that funny
18:45:26 -!- Slereah has quit (Read error: 110 (Connection timed out)).
18:45:46 <oerjan> i might be hurting you now if i knew the acronyms without looking them up
18:46:05 <AnMaster> oerjan, first hit on google is "Management information base", used in the SNMP protocol
18:46:32 <oerjan> clearly anmasterful joke
18:46:46 <AnMaster> oerjan, and yes I like making bad puns, it is like you know, the counter weight continent
18:46:56 <AnMaster> someone need to balance your good puns
18:47:06 <AnMaster> or the channel will tip over
18:47:16 <oerjan> you mean some day the bad puns will create that black hole out of sheer weight?
18:48:07 <AnMaster> oerjan, no, I mean without me you would be a white hole just throwing out more and more puns until everyone in here died of laughing, as it is I'm kind of balancing this
18:48:45 <oerjan> O_o
18:49:11 <ehird> everyone walk away from the crazy man ->
18:49:24 <oklopol> :D
18:49:38 <oerjan> which one? the channel is full of them
18:49:52 <AnMaster> oerjan, exactly
18:49:53 <ehird> AnMaster:
18:50:05 <AnMaster> ehird, well you are worse, you talked a lot about TIME CUBE
18:50:13 <ehird> shut up, stupid academic
18:50:46 <AnMaster> oh you are a bit untrained, you forgot upper case
18:51:31 <ehird> time cube is not all uppercase.
18:52:15 <AnMaster> ok true
18:52:19 <AnMaster> but it is very large font
18:53:21 <AnMaster> hm seems he updated it?
18:56:24 <oklopol> time to beat AnMaster at this joking game
18:56:25 <oklopol> "ehird: come on everyone ->"
18:56:28 <oklopol> OKAY
18:56:32 * oklopol comes on everyone
18:56:40 <ehird> bravo
18:56:42 <AnMaster> oklopol, :D
18:57:03 <ehird> wait, AnMaster going :D at a sex joke?
18:57:06 <ehird> what is the world comingt o
18:57:08 <AnMaster> ehird, sure
18:57:10 <ehird> coming to
18:57:11 <ehird> HURF HURF HURF
18:57:18 <AnMaster> aha
18:57:19 <AnMaster> yes
18:57:21 <AnMaster> ahah*
18:58:02 <ehird> by the way, this is the pinnacle achivement of mankind today: http://music.metafilter.com/2943/Runnin-With-The-Songsmith
18:58:45 -!- kar8nga has joined.
19:00:48 <AnMaster> ehird, where is the actual music on that link?
19:00:55 <ehird> enable flash :\
19:01:00 <ehird> wait
19:01:04 <ehird> an mp3 link might be in the html source
19:01:05 <ehird> let me look
19:01:12 <ehird> AnMaster: also, 'music' is a bit rich
19:01:24 <ehird> AnMaster: http://music.metafilter.com/music/DevilAudio.mp3
19:01:36 <AnMaster> ehird, well I did enable all scripts, and I don't see any such "missing plugin box"
19:01:36 <AnMaster> aha
19:01:37 <AnMaster> thanks
19:01:42 <ehird> cover your ears
19:02:02 <AnMaster> ehird, ouch
19:02:31 <AnMaster> the song sounds like it should fit some sort of rock or possibly metal music
19:02:36 <AnMaster> and that music doesn't fit
19:02:40 <AnMaster> eww
19:02:44 <ehird> read the post
19:02:46 <AnMaster> yes
19:02:50 <ehird> it's this:
19:02:56 <ehird> http://uk.youtube.com/watch?v=tpX3NhpRGdE&feature=related
19:02:57 -!- sebbu has quit (No route to host).
19:02:58 -!- sebbu2 has changed nick to sebbu.
19:03:02 <ehird> 's vocal track, put into:
19:03:10 <ehird> http://uk.youtube.com/watch?v=3oGFogwcx-E
19:03:18 <ehird> which is a hideous abominatory microsoft creation
19:03:25 <AnMaster> ARGH!
19:03:30 <ehird> AnMaster: it makes music
19:03:31 <ehird> from vocals
19:03:40 <ehird> the advert is linked to is simply hilarious
19:03:41 <AnMaster> no it doesn't
19:03:47 <AnMaster> it makes *sound* from music
19:03:47 <ehird> AnMaster: it _attempts_ to
19:03:48 <AnMaster> err
19:03:50 <ehird> :D
19:03:51 <AnMaster> sound from singing
19:03:53 <AnMaster> yes
19:03:58 <AnMaster> ehird, but I say it doesn't make music
19:04:19 <ehird> well, it arguably improves van halen.
19:04:39 <AnMaster> I haven't listened to original yet
19:04:43 <AnMaster> will do shortly
19:05:00 <ehird> i don't think anyone can listen to such an abomination all the way through
19:06:03 <AnMaster> ehird, the original is about as horrible in fact
19:06:05 <AnMaster> but in a differen
19:06:08 <AnMaster> different way
19:06:15 <ehird> okay, now watch the songsmith advert :-D
19:06:19 <ehird> unless you've already seen it
19:06:27 <AnMaster> is it same as http://music.metafilter.com/music/DevilAudio.mp3 ?
19:06:41 <ehird> no...
19:06:44 <ehird> :-P
19:06:49 <ehird> http://uk.youtube.com/watch?v=3oGFogwcx-E
19:06:53 <ehird> the official from-microsoft advert
19:06:55 <AnMaster> also how come youtube didn't remove audio from the original?
19:06:58 <AnMaster> surely that is copyrighted
19:07:12 <ehird> AnMaster: they tried to, but everyone they sent to do it died of hearing it before they could mute it
19:08:06 <AnMaster> AUGH!!!!!!!!!!!!!!!!!!
19:08:32 <ehird> don't give up!
19:08:34 <AnMaster> ehird, I can't watch more than 30 seconds of it
19:08:35 <ehird> it gets better as it goes
19:08:39 <ehird> where better means worse
19:09:37 <AnMaster> will anyone actually buy it?
19:09:42 <AnMaster> I don't think so
19:10:02 <ehird> i checked their forums, people were actually asking when it could be bought in non-US places
19:10:03 <ehird> x_x
19:10:16 <AnMaster> oh no
19:10:29 <AnMaster> ehird, I mean compared to this even rap is good
19:10:32 <ehird> in the future, all music will be made with songsmith.
19:10:37 <ehird> musicians will be obsolete.
19:10:47 <ehird> then, the vocalists for it will be replaced with Microsoft Sam text-to-speech.
19:10:53 <ehird> The lyricwriters? markov chains.
19:11:03 <AnMaster> ehird, good thing I have some good old style gramophone records with classical music on them then
19:11:12 <ehird> AnMaster: they will be outlawed.
19:11:23 <AnMaster> ehird, actually, feeding Ms Sam into that would be interesting
19:11:25 -!- ais523 has joined.
19:11:30 <AnMaster> I wonder what the result would be
19:11:32 <AnMaster> hi ais523
19:11:34 <ais523> hi AnMaster
19:11:37 <ais523> and wb me
19:11:41 <ehird> AnMaster: well, microsoft sam doesn't exactly do any intonation
19:11:53 <AnMaster> ehird, yes so what will songsmith do with it I wonder
19:12:08 <ehird> play the same chord over and over again?
19:12:14 <AnMaster> possibly
19:12:49 <AnMaster> anyway this product won't lower the overall music quality of the world. Because it doesn't count as music
19:13:00 <ais523> oh no, SongSmith?
19:13:09 <ehird> ais523: we're talking about feeding microsoft sam into songsmith.
19:13:26 <ehird> with text from markov chains.
19:13:36 <AnMaster> ehird, also how the heck does it handle when the person singing don't know how to sing properly, I mean can't "find the notes" or whatever you say in English
19:13:40 <ehird> actually, that could count as good piece of art-music, possibly. like, sarcastically.
19:13:40 <ais523> oh dear
19:13:44 <AnMaster> will it retune to a different freq on demand?
19:13:53 <ehird> AnMaster: probably it tries to correct it when making the chords
19:13:54 <ehird> most likely,
19:13:59 <ehird> it'll produce more awful crap
19:13:59 <AnMaster> ehird, oh yes modernistic music, sure it would work as that
19:14:09 <ais523> AnMaster: it just produces bad music, it does that even with people who can sing I expect
19:14:20 <ais523> SongSmith may turn out to be an even worse idea than Microsoft Bob
19:14:25 <ehird> ais523: have you seen
19:14:28 <AnMaster> ais523, someone fed some rock vocalist into it
19:14:30 <ehird> music.metafilter.com/music/DevilAudio.mp3
19:14:34 <ehird> yeah, what AnMaster said :-P
19:14:34 <AnMaster> it produced something totally different
19:14:39 <AnMaster> yeah that link
19:14:40 <ehird> van halen vocals + songsmith = http://music.metafilter.com/music/DevilAudio.mp3
19:15:01 <ehird> they didn't even set the bpm correctly, they just set the "happy" slider at full
19:15:02 <ehird> :D
19:15:19 <AnMaster> ehird, <ehird> well, it arguably improves van halen. <-- no... equally bad before and after
19:15:41 <ehird> AnMaster: i can listen to the songsmithed version all the way through, not the original
19:16:09 <AnMaster> that is because the original has video too
19:16:14 <ehird> ah. good point.
19:16:23 -!- join has joined.
19:16:24 <AnMaster> if you hide that it isn't so bad
19:16:30 <ehird> hi join
19:16:35 <ehird> where's part?
19:16:38 <ais523> someone who has it should pipe a few Fugue programs into it
19:16:41 <AnMaster> hi Slereah
19:16:49 <AnMaster> ais523, none of us has it
19:16:56 <ais523> and htf did Slereah hit on an obvious non-registered nickname?
19:16:59 <ehird> there's a 6-hour demo, AnMaster
19:17:00 <AnMaster> ais523, also what is Fugue?
19:17:09 <ais523> AnMaster: http://esolangs.org/wiki/Fugue
19:17:24 <AnMaster> ehird, of songsmith?
19:17:27 <ehird> AnMaster: yes
19:17:32 <ehird> i could boot up windows and download it, I guess.
19:17:51 <ais523> ehird: as in, you only get to use it for 6 hours?
19:17:51 <AnMaster> ehird, well not an issue since you could take a snapshot before and reset it after
19:17:55 <ehird> ais523: yes
19:18:00 <ehird> AnMaster: yes
19:18:02 <ais523> that's a ridiculously short free trial
19:18:07 <ais523> they're normally 30 days
19:18:13 <AnMaster> ais523, enough to decide "I hate this"
19:18:17 <ehird> ais523: yeah but it's songsmiht
19:18:20 <ehird> all you do is sing then listen.
19:18:41 <ais523> AnMaster: I told you about the free trial GPL program a while back, didn't I
19:18:43 <ehird> if it was any good, 3 hours of listening to it (3 hours of singing in...) would be enough to decide, probably
19:18:44 <ais523> that was really silly
19:18:52 <AnMaster> ais523, what one was it?
19:18:55 <ais523> AnMaster: a compiler
19:18:57 <ais523> based on gcc
19:19:05 <AnMaster> ais523, well sounds familiar
19:19:07 <ais523> I just looked at the source, then replaced the licence manager with hello world
19:19:11 <ehird> AnMaster: http://esoteric.voxelperfect.net/files/fugue/src/hworld.mid
19:19:19 <ais523> I wrote that
19:19:22 <ais523> and I like it
19:19:22 <AnMaster> well
19:19:26 <ehird> I like it too
19:19:28 <AnMaster> that is music, not song?
19:19:32 <ais523> if you can't play mids, I have an ogg version lying around somewhere over here
19:19:34 <AnMaster> so it wouldn't work in songsmith
19:19:40 <ehird> AnMaster: no, you can put instruments in it too
19:19:40 <AnMaster> ais523, I can, I have hardware midi
19:19:43 <ehird> and it tries to match it up
19:19:54 <ais523> AnMaster: I have software midi, it's pretty good apart from taking up 40% of my CPU
19:20:11 <ehird> someone should put a fast & complex electric guitar solo in there and see what it does t o it
19:20:11 <AnMaster> ehird, oh, I wonder what will happen if you use, say "Spring" of Vivaldi as input
19:20:21 <ehird> AnMaster: i think it kills the program.
19:20:26 <ehird> like, in an actual
19:20:26 <ehird> life
19:20:27 <ehird> killing
19:20:30 <ehird> way
19:20:36 <AnMaster> ehird, I think the result will kill anyone listening
19:20:39 -!- MigoMipo has joined.
19:20:53 <AnMaster> ais523, well I lack a good soundfont
19:21:06 <AnMaster> ais523, a340 is ok-ish as a soundfont
19:21:11 <AnMaster> but the piano really sucks
19:22:26 <AnMaster> ais523, um? D-minor?
19:22:31 <AnMaster> nah none existing one I think
19:22:45 <AnMaster> but I quite like it, some atonality there too
19:22:50 <ais523> AnMaster: it isn't in any particular key
19:23:00 <ais523> it was in fact automatically generated by a BF->Fugue compiler
19:23:09 <ais523> which was sufficiently nonportable that I believe it only runs on one computer
19:23:12 <AnMaster> ok for auto generated it isn't too bad
19:23:20 <AnMaster> ais523, oh?
19:23:32 <ais523> AnMaster: it's a crazy story, actually
19:23:59 <ais523> the compiler involved lots of different langs, including C, Prelude, Visual Basic, and a couple I invented specifically for the purpose
19:24:08 <AnMaster> ais523, hm Fugue is massively concurrent isn't it?
19:24:18 <ais523> the actual music entry was done by customizing the keyboard shortcuts of a proprietary MIDI editor
19:24:27 <ais523> then sending it keyboard events using VB's SendKeys
19:24:41 <ais523> and no, it isn't, it has a fixed number of threads which have to run in step
19:24:53 <ais523> it's more like having a lang where each command always does a large number of finite things
19:25:11 <AnMaster> ais523, was the compiler gc? (Goldberg Compiler)
19:25:29 <ais523> I wrote everything in the chain myself, except the proprietary midi editor
19:25:44 <AnMaster> ais523, why so complex
19:25:47 <ais523> I actually used to be pretty good at VB once, surprisingly
19:25:51 <ais523> but I rarely use it nowadays
19:26:02 <ais523> and why so complex? because I didn't know how to generate MIDI by hand
19:26:16 <AnMaster> um. specs?
19:26:27 <ehird> ais523 my bignum kind of doesnt work :((((((((((((((((((((((((
19:26:29 <AnMaster> or maybe this was long ago?
19:26:50 <ehird> AnMaster: post-2005
19:26:52 <ais523> it was ages ago
19:26:53 <ehird> since fugue is 2005
19:26:54 <ais523> and specs of what?
19:26:59 <AnMaster> ais523, of midi format
19:27:03 <AnMaster> or some library for it
19:27:11 <ais523> I don't know if there are any
19:27:15 <AnMaster> ais523, also how comes it isn't very concurrent? just play a chord?
19:27:15 <ehird> ais523: http://pastie.org/364042.txt?key=u3cqc6nuw91cp0cehfm5fg <-- the bui_mod_incr function doesn't work and I can't figure out why
19:27:24 <ais523> and this is back when I didn't do any programming on Internet-connected computers
19:27:29 <AnMaster> and you have a few threads, one per tone?
19:27:31 <AnMaster> or not?
19:27:43 <ais523> because I had only public terminals for that
19:27:48 <ais523> and no, it isn't exactly a thread per tone
19:28:01 <ais523> because multithreaded programs can have threads running at different rates, and doing control flow
19:28:11 <ais523> when one line of music loops, every line loops, in Fugue
19:28:18 <ais523> I don't know what that's called, but it isn't multithreading
19:28:23 <AnMaster> um
19:28:35 <AnMaster> ok
19:28:51 <ehird> :\
19:29:08 <AnMaster> ais523, anyway there are no loops in midi afaik
19:29:13 <ais523> no
19:29:17 <AnMaster> every time i export a loop it ends up being expanded
19:29:21 <ais523> there are loops in Fugue, though, because it's a programming language
19:29:28 <ais523> that's like saying there are no loops in ASCII, so C can't have loops
19:29:38 <AnMaster> ais523, right, but how would you encode it in midi
19:29:48 <AnMaster> oh a special note?
19:29:50 <ais523> AnMaster: by using the loop-start and loop-end instructions
19:30:01 <ais523> just like you encode loops in C by using while or for or goto
19:30:05 <AnMaster> ais523, did you ever do something like "play as it runs"?
19:30:12 <ais523> AnMaster: no, that wouldn't be particularly interesting
19:30:24 <ehird> :s
19:30:29 <AnMaster> ais523, oh? it would include listening to the loops
19:30:31 <ais523> you would just get the bits inside the loops again and again
19:30:36 <ais523> which are only a few notes long
19:30:39 <AnMaster> oh right
19:30:52 <ais523> and besides, due to the BF-like arithmetic the loops are going to be running around hundreds of times
19:30:57 <ais523> so it's going to get on your nerves
19:31:21 <AnMaster> oh idea: "Variations of hello world", which should keep the same output (printing hello world a few times) but sound a little different each time
19:31:35 <ais523> AnMaster: there were random numbers involved in the compiler
19:31:43 <ais523> I actually have a second hello world in Fugue, but it isn't as good
19:32:09 <AnMaster> ais523, also midi doesn't actually encode tempo? Just the length in ms or something
19:32:20 <AnMaster> so how can the interpreter know what a fifth is or such
19:32:32 <ais523> AnMaster: tempo has nothing to do with intervals
19:33:10 <ais523> actually, MIDI itself isn't a file format, but a communications format
19:33:13 <AnMaster> ais523, well, quater note = 180 or quater note = 120 would end up different in midi, and iirc midi doesn't store any "metronome values"
19:33:24 <ais523> AnMaster: quarter notes have nothing to do with fifths, the interval
19:33:36 <ais523> a fifth goes up from C to G, or C# to G#, or D to A, and so on
19:33:39 <AnMaster> hm? then I mentally mistranslate
19:33:42 <AnMaster> oh right
19:33:44 <ehird> ais523: you should look at my bignum :-D
19:33:49 <ais523> and MIDI does store some metadata, such as the time signature
19:33:51 <AnMaster> ais523, yes that would make more sense
19:34:12 <ais523> ehird: why are you using goto?
19:34:22 <ehird> eh, why no
19:34:22 <ehird> t
19:34:23 <ehird> :D
19:34:33 <ehird> i thought about the algorithm in terms of a goto, so that's how I wrote it
19:35:00 <ais523> the algorithm looks correct
19:35:07 <ais523> in what way does it fail?
19:35:18 <ehird> % cc -Wall -m64 -ansi bignum.c; ./a.out
19:35:18 <ehird> 1
19:35:19 <ehird> 18446744073709551615
19:35:21 <ehird> 1
19:35:24 <ehird> that's the full output
19:35:25 <ehird> :\
19:35:32 <ehird> chops off everything after the length and then does nothing more o_O
19:36:41 <ais523> there's something seriously wrong with that
19:36:47 <ais523> unless the IRC server clipped a newline
19:36:52 <ais523> was there a double-newline in the actual output?
19:38:33 <ehird> oh, ys
19:38:34 <ehird> yes
19:38:37 <ehird> it was my client stripping that
19:38:40 <ais523> where?
19:38:46 <ehird> before the last 1 :_)
19:38:48 <ehird> :-)
19:39:01 <ais523> that's easy enough to explain
19:39:04 <ais523> *m was 0
19:39:07 <ais523> so you broke out of the loop
19:39:12 <ais523> your print routine is incapable of printing a zero
19:39:12 <ehird> oh, duh
19:39:21 <ehird> sorry, I forgot to make it account for the length-change
19:39:25 <ehird> instead of the null-termination
19:40:27 -!- kar8nga has quit (Connection timed out).
19:41:06 <AnMaster> ehird, how comes you are using a length instead of a zero terminated one?
19:41:17 <ais523> AnMaster: I persuaded him to
19:41:18 <ehird> because ais523 argued with me about it and told me to.
19:41:23 <ehird> heh.
19:41:23 <AnMaster> ah
19:41:24 <ais523> it's a lot faster for bignums
19:41:29 <ais523> because it fits what the architecture is doing
19:41:30 <AnMaster> yes I can imagine
19:41:45 <ais523> you can add two numbers just with add/add-with-carry/add-with-carry, etc
19:41:55 <AnMaster> ais523, in a simple for loop
19:42:06 <ais523> unfortunately, C doesn't have a portable add-with-carry instruction, but given that ehird's going for speed I'm sure he won't mind rewriting that bit in asm
19:42:17 <ehird> I am not going for speed
19:42:20 <ehird> i've told you this 5000 times
19:42:20 <AnMaster> ehird, oh btw ehird, for is usually faster than while with GCC, since it can optimise it better
19:42:22 <ehird> this is just for fun
19:42:28 <AnMaster> err you said you were before
19:42:33 <ehird> yes, for the scheme impl
19:42:34 <AnMaster> I'm 100% sure you said so
19:42:36 <ehird> i'm just writing a bignum library for fun
19:42:38 <ais523> AnMaster: no, where does that rumour come from?
19:42:46 <AnMaster> ais523, oh the scheme one?
19:42:46 <ais523> for and while translate to the same thing at the RTL level
19:42:50 <ais523> as does goto, for that matter
19:42:53 <ais523> AnMaster: no, the for faster than while thing
19:43:04 <AnMaster> ais523, as in I observed it myself, profiling.
19:43:08 <ais523> rewriting a loop can make it a lot faster
19:43:11 <ais523> but not for that reason
19:43:15 <AnMaster> ais523, for example it managed to vectorise a for loop
19:43:27 <AnMaster> while not the equivalent while loop
19:43:51 <AnMaster> ais523, and it managed to unroll some for loops but not the while loops
19:43:52 <ais523> AnMaster: there is no difference apart from scoping between for(a=0; a<64; a++) {foo; } and a=0; while(a<64) {foo; a++}
19:44:08 <ais523> as long as you have no continue statements inside the loop
19:44:12 <ehird> ssh, let him have his placebo!
19:44:14 <AnMaster> ais523, I belive the loop I tried on were a bit more complex, one was CRC for example
19:44:16 <ais523> and I'm pretty sure gcc unrolls while loops
19:44:51 <ehird> 1
19:44:52 <ehird> 18446744073709551615
19:44:52 <ehird> 2
19:44:54 <ehird> 18446744073709551615
19:44:56 <ehird> 1
19:44:58 <ehird> ok, that's an odd result...
19:45:00 <ehird> should be 2, 0, 1
19:45:32 <ehird> oh
19:45:43 <AnMaster> ais523, well why they does gcc not vectorise any while loops in my experiments
19:45:47 <AnMaster> but a lot of for loops
19:45:49 -!- kar8nga has joined.
19:45:49 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:45:52 <AnMaster> I'm using gcc 4.1.2 btw
19:45:55 <ehird> yay, it works
19:46:09 <ais523> int main(void)
19:46:11 <ais523> {
19:46:11 -!- kar8nga has joined.
19:46:11 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
19:46:12 <ais523> int getchar(void);
19:46:14 <ais523> int i=getchar();
19:46:15 <ais523> int c=0;
19:46:17 <ais523> while(c<16) {i*=i; ++c;}
19:46:18 <ais523> return i;
19:46:20 <ais523> }
19:46:21 <ais523> that loop was unrolled at -O3
19:46:24 <ais523> into 16 multiply instructions
19:46:29 <ehird> http://pastie.org/364057.txt?key=zpbkykzrv0q9xax847rpbw
19:46:40 <AnMaster> ais523, and vectorised with -ftree-vectorize or whatever it is called?
19:46:47 -!- kar8nga has joined.
19:46:47 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
19:46:51 <AnMaster> maybe -fvectorize-tree
19:46:53 <AnMaster> don't remember
19:46:53 <ais523> AnMaster: just with -O3
19:47:00 -!- kar8nga has joined.
19:47:00 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:47:05 <ais523> I don't think this computer does vectorisation
19:47:10 -!- kar8nga has joined.
19:47:10 <ais523> but I'll try and see what happens
19:47:10 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
19:47:21 <AnMaster> ais523, gcc doesn't vectorize without -ftree-vectorize
19:47:27 <ais523> besides, that loop won't vectorise for obvious reasons
19:47:30 -!- kar8nga has joined.
19:47:30 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:47:31 <ais523> let me rewrite it as one that will
19:47:38 <AnMaster> ais523, see also -ftree-vectorizer-verbose
19:47:40 -!- kar8nga has joined.
19:47:40 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:47:50 <AnMaster> it will tell you why it can/can't vectorise
19:47:53 <AnMaster> -ftree-vectorizer-verbose=7
19:47:54 <AnMaster> or so
19:48:17 <AnMaster> some gcc versions segfault on that flag if too high, trying to print a null pointer
19:48:18 -!- kar8nga has joined.
19:48:18 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
19:48:32 <AnMaster> fixed in trunk
19:48:37 <AnMaster> affects gcc 4.3 at least
19:48:43 <ais523> cc1: error: unrecognized command line option "-ftree-vectorise"
19:48:49 <AnMaster> ais523, how old?
19:48:55 <AnMaster> gcc 3.x or what?
19:48:57 <ais523> gcc (Ubuntu 4.3.2-1ubuntu11) 4.3.2
19:49:01 -!- kar8nga has joined.
19:49:01 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:49:04 <AnMaster> ais523, spell it amercian
19:49:06 <AnMaster> it will help
19:49:09 -!- kar8nga has joined.
19:49:09 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
19:49:15 <AnMaster> american*
19:49:40 -!- kar8nga has joined.
19:49:40 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:49:42 <AnMaster> ais523, it helped right?
19:49:53 <ais523> yes
19:49:56 <AnMaster> wtf is up with kar8nga's connection, this is getting irritating
19:50:24 <ehird> no it's not...
19:50:27 <ehird> I haven't even noticed it
19:50:33 <ehird> nowhere near moozilla levels yet
19:50:39 <ais523> well, it didn't vectorise either the while or the for when I tested
19:50:40 -!- kar8nga has joined.
19:50:40 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:50:40 <AnMaster> ehird, a lot more often
19:50:43 <AnMaster> as you see
19:50:49 <ehird> AnMaster: no, my brain just filters it out
19:50:50 <ais523> a.c:8: note: not vectorized: no vectype for stmt: D.1209_21 = i[c_44] scalar_type: int
19:50:53 <ehird> why not ignore join/parts
19:51:01 <kerlo> "I'm irritated." "No you're not."
19:51:02 <AnMaster> ais523, yes they depend on each other I believe
19:51:05 <AnMaster> ais523, also try -march
19:51:07 <AnMaster> to correct
19:51:11 <AnMaster> like something with sse
19:51:19 <AnMaster> or at least mmx
19:51:28 * kerlo tries to find ais523's lambda scoping example
19:51:29 -!- kar8nga has joined.
19:51:29 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:51:32 <ais523> AnMaster: what do you recommend?
19:51:43 <AnMaster> ais523, well what cpu is it?
19:51:53 <ais523> I don't care, I'm not actually planning to run the program
19:51:57 <ais523> just compile to asm and read the asm
19:52:12 <AnMaster> ais523, -march=core2 then?
19:52:13 -!- kar8nga has joined.
19:52:13 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
19:52:36 <ais523> AnMaster: ah, it vectorised both of them
19:52:43 <AnMaster> ais523, anyway you can't vectorise that since all modify i
19:52:48 <ais523> yes, I rewrote the program
19:52:58 <AnMaster> ais523, it did? doesn't with older gcc
19:53:02 <AnMaster> 4.1.2 that is
19:53:20 <ais523> int main(void) {
19:53:22 <ais523> int getchar(void), i[16], c;
19:53:23 <ais523> c=0; while(c<16) {c[i]=getchar(); ++c;}
19:53:24 <ais523> c=0; while(c<16) {c[i]*=c[i]; ++c;}
19:53:26 <ais523> for(c=0; c<16; ++c) {c[i]*=c[i];}
19:53:28 <ais523> return i[getchar()];
19:53:29 <ais523> }
19:53:34 <ais523> I'm not at all surprised, because the while and the for loop are completely synonymous
19:53:44 -!- Judofyr has joined.
19:53:55 <AnMaster> how the heck could that for loop be vectorised? it includes a function call
19:54:01 <ais523> not the first one
19:54:07 <ais523> loops 2 and 3 are vectorised
19:54:08 <AnMaster> oh wait
19:54:10 <ais523> which are equivalent
19:54:10 <AnMaster> misread it
19:54:25 <ais523> loop 1 is just there to prevent gcc constant-folding
19:54:27 <ais523> by using user input
19:54:35 <ais523> also, I apologise for the declarations line
19:54:42 <ais523> that's legal C, and good for brevity, but very confusing
19:54:48 <ais523> C-INTERCAL used it a lot before I fixed that sort of thing
19:55:05 <ehird> "fix"?
19:55:06 <ehird> you mean break
19:55:12 <ais523> ehird: no, not really
19:55:20 <ais523> writing int getchar(void); inside a function is legal
19:55:21 <AnMaster> <ais523> int getchar(void), i[16], c; <-- function prototype and variables in one?
19:55:22 <ais523> but confusing
19:55:24 <ais523> AnMaster: yep
19:55:27 <AnMaster> ouch
19:55:32 <kerlo> Well, having written this silly lisp-bot, I think I'll try writing a serious one.
19:55:45 <ais523> I bet you didn't even know that you can declare library function prototypes inside a lexical scope
19:55:49 <ais523> because it's an insane thing to do
19:55:49 <AnMaster> ais523, anyway using a volatile variable would have worked too
19:56:01 <AnMaster> it is what I usually do
19:56:01 <ais523> AnMaster: I doubt it, that would prevent the compiler vectorising
19:56:04 <ais523> surely?
19:56:04 <kerlo> Is a volatile variable a variable that is capable of varying?
19:56:09 <AnMaster> ais523, depends on where
19:56:13 <AnMaster> yes for the first loop
19:56:16 <AnMaster> but not for the rest?
19:56:19 <AnMaster> if
19:56:21 <ais523> kerlo: it tells the compiler that the variable might change unpredictably without it knowing
19:56:28 <AnMaster> volatile int src;
19:56:31 <ais523> normally, because you've given a pointer to it to an interrupt handler or to some other program
19:56:33 <kerlo> Interesting.
19:56:34 <AnMaster> c=0; while(c<16) {c[i]=src; ++c;}
19:56:44 <AnMaster> ais523, how would it affect the other loops?
19:56:54 <ais523> kerlo: for instance, if you write volatile int i; i=1; i=2;
19:57:02 <ais523> then the compiler will store both 1 and 2 in memory where i is
19:57:13 <ais523> because volatile tells it not to get rid of redundant reads and writes
19:57:23 <AnMaster> yes could be DMA or whatever
19:57:33 <AnMaster> like a memory mapped char output
19:57:36 <ais523> or a memory-mapped hardware register, I've used volatile for those before
19:57:43 <AnMaster> ais523, yes exactly
19:57:57 <ais523> the other thing volatile does is to tell the compiler to definitely not store the variable in a register
19:58:01 <AnMaster> ais523, you wrote kernel stuff?
19:58:02 <ais523> which is useful when messing around with longjmp
19:58:08 <ais523> AnMaster: embedded stuff
19:58:11 <AnMaster> aha
19:58:11 <ais523> with no OS
19:58:20 <AnMaster> right
19:58:33 <ehird> volatile int eax __asm__("%eax");
19:58:38 <ehird> (actually works :-))
19:59:00 <AnMaster> ais523, actually it may still have to put it in a register, but it need to load/store it before/after
19:59:12 <AnMaster> some arches may not be able to operate on stuff not loaded in registers
19:59:19 <ais523> AnMaster: it may need to do things via registers, yes
19:59:28 <ais523> but volatile tells it to reread the value whenever it's needed
19:59:33 <ais523> ehird: yes, I know that works
19:59:38 <ais523> I've written such before, for another architecture
19:59:42 <ehird> i was talking to AnMaster before
19:59:45 <ehird> errr
19:59:46 <ehird> s/before/too/
19:59:49 -!- kar8nga has joined.
19:59:50 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
19:59:52 <AnMaster> ais523, though I think add on x86 may take memory operands?
20:00:01 <AnMaster> also
20:00:06 <ehird> ais523: also
20:00:07 <AnMaster> what does <ehird> volatile int eax __asm__("%eax"); do?
20:00:08 <ehird> if you're doing that
20:00:11 <ehird> why not just write it as __asm__
20:00:12 -!- kar8nga has joined.
20:00:12 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:00:17 <ehird> AnMaster: err that syntax is wrong
20:00:20 <ehird> should be
20:00:26 <ehird> volatile int *eax __asm__("%eax");
20:00:31 <ehird> AnMaster: then *eax reads the eax register
20:00:37 <ehird> and *eax=...; sets it
20:00:42 <ehird> (on x86)
20:00:45 <ehird> :-D
20:00:47 <AnMaster> ehird, ok, but what does volatile for it mean? that it may not be stored in a register?
20:00:59 <ehird> AnMaster: well, %eax changes all the freaking time
20:01:05 <AnMaster> yes true
20:01:05 <ehird> it's just telling gcc to not try and be clever with it...
20:01:11 <AnMaster> ah
20:01:24 <AnMaster> ehird, the "must not store in a register" bit is confusing though
20:01:26 <ais523> AnMaster: it's telling gcc that %eax might change when it does something that doesn't obviously change the variable
20:01:35 <AnMaster> right
20:02:17 <AnMaster> ais523, it obviously ignore the bit about the "not store in a register", I bet that it won't work with longjmp
20:02:33 <AnMaster> also, could you pass this pointer around?
20:02:43 <ehird> yes
20:02:45 <AnMaster> or cast the pointer to an int?
20:02:45 <ehird> also, no
20:02:47 <ais523> AnMaster: it isn't a pointer
20:02:50 <ehird> ais523: yes it is
20:02:55 <ais523> int *eax means that eax stores an int*
20:02:55 <AnMaster> it looks like that though
20:02:55 <ehird> volatile int *eax __asm__("%eax");
20:03:08 <ais523> not that you can do &eax and get a sensible value
20:03:15 <ais523> the variable has a pointer type, but it can't be pointed to
20:03:18 <ehird> ah
20:03:19 <ehird> well, yes
20:03:30 <AnMaster> yes of course it can't work like that in the machine code
20:03:35 <AnMaster> but
20:03:44 <AnMaster> memory mapped CPU registers would be fun
20:03:53 <fizzie> My GCC info pages say "5.40.2 Specifying Registers for Local Variables -- You can define a local register variable with a specified register like this: register int *foo asm ("a5");".
20:04:04 <AnMaster> I have heard of register mapped memory before
20:04:11 <ehird> isn't that an overloading of "register", fizzie?
20:04:14 <AnMaster> but the other way around, no
20:04:46 <fizzie> Well, wouldn't using "volatile int *eax __asm__("foo")" be an overloading of volatile?
20:04:54 <AnMaster> fizzie, err I think that means that the register will be reserved for that variable
20:05:05 <ehird> fizzie: no?
20:05:16 <AnMaster> fizzie, which isn't same as "lets see what is in this register anyway"
20:05:55 <fizzie> Well, that's the only sort of "explicit register names for variables" I could find in GCC docs with a quick glance.
20:06:19 <AnMaster> fizzie, but as far as I know the meaning is quite different
20:07:07 <fizzie> Well, it doesn't reserve the register for that value except for where it's live, but I guess it is a bit different.
20:07:56 -!- KingOfKarlsruhe has joined.
20:08:22 <fizzie> I just can't find in the docs any references to "here's how you declare a variable which will read whatever eax is, but not reserve eax if you store something in it".
20:08:48 <kerlo> Puff of cream.
20:08:49 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
20:09:00 <ais523> fizzie: that's not done via a variable, I think
20:09:13 <ais523> you want to give an asm command with a constraint to read eax without reserving it
20:09:33 <ais523> OTOH, if you do that, there's quite a chance that the compiler will put the variable you're trying to copy to in eax, to save a command
20:10:35 <fizzie> Yes, well, if that's the case, I don't see how that "volatile int *eax" thing is different. It sounds like it would just tell GCC to explicitly use the eax register for storing values stored in that variable.
20:10:56 <AnMaster> ais523, if you didn't do that then volatile makes no sense since it wouldn't change
20:11:14 <ais523> fizzie: the question is, really, what exactly are you trying to do?
20:11:35 <fizzie> I'm trying to understand what you are speaking of. :p
20:12:01 <fizzie> And what that "volatile int *eax" was all about, since the only similar form I'm aware of is the "register int *eax asm("eax");" thing.
20:12:19 <ais523> actually, doing it with register is more common IIRC
20:12:23 <ais523> and I think that's the form I saw
20:12:25 <ehird> hm. ok
20:12:55 <AnMaster> that would make a lot more sense
20:29:47 -!- kar8nga has joined.
20:29:47 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:30:10 -!- kar8nga has joined.
20:30:10 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:31:09 -!- kar8nga has joined.
20:31:09 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:31:26 -!- kar8nga has joined.
20:31:26 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:31:44 -!- kar8nga has joined.
20:31:44 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
20:32:23 -!- kar8nga has joined.
20:32:23 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:33:20 -!- kar8nga has joined.
20:33:20 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:33:59 -!- kar8nga has joined.
20:33:59 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:34:18 -!- kar8nga has joined.
20:34:18 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:34:59 -!- kar8nga has joined.
20:34:59 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:35:16 -!- kar8nga has joined.
20:35:16 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
20:36:04 -!- kar8nga has joined.
20:36:04 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:36:21 -!- kar8nga has joined.
20:36:21 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:36:49 -!- kar8nga has joined.
20:36:49 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:37:24 -!- kar8nga has joined.
20:37:24 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:38:02 <flexo> hmm.
20:38:10 <ais523> well, that's about 2/3 of a screenful of quitjoin spam
20:38:22 -!- kar8nga has joined.
20:38:22 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:38:28 <flexo> i suppose it depends on your screensize
20:39:00 -!- kar8nga has joined.
20:39:01 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:39:06 <oerjan> 1/1, says i
20:39:15 -!- kar8nga has joined.
20:39:15 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:39:49 -!- kar8nga has joined.
20:39:49 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
20:40:07 <ais523> a screenful now, with only 4 lines interrupting it
20:40:22 <ais523> now, banning someone for unintentional quitjoin spam is too much, I think
20:40:29 <ais523> could we reverse-ban kar8nga?
20:40:33 <ais523> to stop them parting?
20:40:35 <ais523> that would also stop the spam
20:41:11 <oerjan> it's not part, it's quit
20:41:17 <ais523> well, stop them quitting too
20:41:36 -!- kar8nga has joined.
20:41:36 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:41:37 * oerjan swats ais523 -----###
20:41:45 <ais523> ow
20:41:54 -!- kar8nga has joined.
20:41:54 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:42:08 -!- kar8nga has joined.
20:42:08 -!- kar8nga has quit (Read error: 131 (Connection reset by peer)).
20:42:17 <oerjan> i would swat kar8nga, but he isn't here long enough at a time
20:42:27 <fizzie> Reminds me of that Hotel California song. "You can /quit any time you like / but you can never leave."
20:42:33 <fizzie> The reverse-banning, that is.
20:42:50 -!- kar8nga has joined.
20:42:50 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:43:55 -!- kar8nga has joined.
20:43:55 -!- kar8nga has quit (Read error: 104 (Connection reset by peer)).
20:44:34 <fizzie> Maybe if I do a five-minute ban, his/her client will not try to rejoin after failing once.
20:44:37 -!- kar8nga has joined.
20:44:37 -!- kar8nga has quit (Read error: 54 (Connection reset by peer)).
20:44:45 -!- ChanServ has set channel mode: +o fizzie.
20:45:03 -!- fizzie has set channel mode: +b kar8nga!*@*.
20:45:26 <ehird> fizzie: shock!
20:45:28 <ehird> actual op powers!
20:45:32 <ehird> never do this again :-P
20:45:50 <join> He is all powerful
20:45:54 <join> Bow to him!
20:45:55 <join> Also
20:45:59 * ais523 is op-striken
20:45:59 -!- join has changed nick to Slereah.
20:46:01 <ais523> *stricken
20:46:08 <Slereah> *chicken
20:46:09 <ais523> Slereah: how did you end up with the nick "join", anyway?
20:46:09 <ehird> hey fizzie
20:46:11 <ehird> op me!
20:46:21 <ais523> ehird: you know how badly that went last time...
20:46:22 <oerjan> *thicken
20:46:31 <ehird> ais523: yes, I wrote a bot to keep me an op :D
20:46:34 <Slereah> ais523 : You know when your nick is registered and you connect the server?
20:46:37 <ehird> and lament de-opped it :'(
20:46:44 <Slereah> It puts "/nick" as your default line
20:46:49 <ais523> oh
20:46:56 <Slereah> And I entered /join #esoteric
20:46:59 <ais523> well, in that case I'm doubly-shocked that nobody has taken join yet
20:47:01 <ais523> besides, mine doesn't
20:47:03 <ais523> it just tries ais523_
20:47:05 <ais523> then ais523__
20:47:11 <ais523> then prompts, I think, in a dialog box
20:47:13 -!- fizzie has set channel mode: -b kar8nga!*@*.
20:47:15 <Slereah> It's different, ais523
20:47:22 <Slereah> Because I actually stay Slereah
20:47:35 <Slereah> Because Freenode doesn't actually enforce registered nickls
20:47:39 <ais523> oh, just joining with a nick registered by someone else
20:47:45 <ais523> and Freenode does, but only on request from the nick's owner
20:47:56 <ais523> you can tell NickServ to enforce your nick, but hardly anyone ever does
20:48:09 -!- fizzie has set channel mode: -o fizzie.
20:48:13 -!- Slereah has changed nick to moot.
20:48:16 <moot> :D
20:48:18 <moot> Bow!
20:48:29 <ehird> go away, little girl
20:48:30 <moot> Hell, moot is actually registered!
20:48:36 <ais523> fizzie: you deopped fizzie? What did they do wrong?
20:48:40 <oerjan> that was a moot question
20:48:47 -!- moot has changed nick to Slereah.
20:48:56 <ehird> ais523: /me recalls deopping AnMaster in #ESO because he opped me without first asking for permission from an op
20:49:04 <fizzie> ais523: Senseless banning of poor, defenseless kar8nga.
21:03:44 <AnMaster> <Slereah> It puts "/nick" as your default line <-- what client?
21:03:47 <AnMaster> mine never does that
21:04:18 <ehird> mIRC
21:04:19 <ehird> probably
21:04:23 <AnMaster> hm ok
21:04:28 <Slereah> mIRC, yeah
21:04:31 <ehird> (mIRC is actually a good IRC client, despite being Windows software)
21:05:00 <Slereah> Or use Insurgent Sysreset, if you're an /i/nsurgent :D
21:05:34 <ehird> 21:05 <Twitter> Error(404): #twitter Your message is 142 characters long. Your message was not sent.
21:05:41 <ehird> Stupid artificial restrictions
21:05:52 * AnMaster registers the nick join btw
21:05:59 <ehird> hey
21:06:01 <Slereah> Oh you
21:06:01 <ehird> that's not very nice
21:06:04 <ehird> it's Slereah's
21:06:11 <AnMaster> Slereah, he forgot to register it
21:06:15 <ehird> so?
21:06:17 <ehird> still jackassy
21:06:24 <ais523> someone needed to register it
21:06:31 <ehird> let Slereah, then
21:06:34 <AnMaster> ehird, I waited several hours
21:06:40 <AnMaster> and he didn't register it
21:06:40 <ais523> and it isn't Slereah's nick really, Slereah made it clear that it was by accident
21:06:42 <ehird> without telling him you were going to.
21:06:44 <AnMaster> so his own fault
21:06:47 <ehird> ...
21:06:50 <ehird> you're an ass.
21:06:51 <AnMaster> ehird, and?
21:06:55 <AnMaster> no I'm not you are
21:07:00 <AnMaster> you took otpbot
21:07:03 <AnMaster> without telling me
21:07:09 <ehird> ...otpbot was my name.
21:07:15 <AnMaster> ehird, no it was mine, I wanted it
21:07:20 <ais523> I didn't even realise there was an otpbot
21:07:21 <AnMaster> same logic sorry
21:07:26 <AnMaster> ais523, there isn't
21:07:27 <ehird> I came up with otpbot _before_ you did.
21:07:30 <AnMaster> he used optbot
21:07:31 <AnMaster> in the end
21:07:35 <ehird> So only "same logic" if you're an idiot.
21:07:38 <ehird> Wait a second.
21:07:42 <AnMaster> but I wanted it for otpbot as in Erlang/OTP
21:08:16 <AnMaster> 22:05 -NickServ(NickServ@services.)- 1 failed login since Jan 18 21:05:10 2009.
21:08:16 <AnMaster> 22:05 -NickServ(NickServ@services.)- Last failed attempt from: Cats!n=92825d6c@Pantheon.Kanotix.com on Jan 13 18:10:37 2009.
21:08:18 <AnMaster> interesting
21:08:25 * ais523 notes that tusho and ehird are different people according to NickServ
21:08:31 <ehird> 21:07 <AnMaster> but I wanted it for otpbot as in Erlang/OTP
21:08:35 <ehird> you wanted it _afterwards_
21:08:35 <AnMaster> (oh yes I own that nick, used it for a AYB joke)
21:08:44 <ehird> whereas you only regisered join because you saw Slereah using it
21:08:45 <AnMaster> ehird, I had plans long before
21:08:52 <ehird> uh-huh.
21:09:05 <ehird> that's about as verifiable as when i claimed I came up with the name cfunge first, AnMaster
21:09:06 -!- BeholdMyGlory has quit (Connection timed out).
21:09:19 <AnMaster> ehird, oh you admit then?
21:09:23 <AnMaster> great
21:09:25 <AnMaster> afk
21:09:36 <ehird> bye, jackass
21:10:53 <Slereah> Thank goodness, VIP is here to guide you in these troubled times :
21:10:54 <Slereah> http://membres.lycos.fr/bewulf/Divers7/Take%20it%20easy.jpg
21:11:17 <ehird> i'm not angry when I call people asses.
21:11:28 <ehird> getting angry over assholes would be counterproductive
21:12:03 <AnMaster> ehird, tell me, why are you so fond of donkeys?
21:12:15 <Slereah> Because of their huge penises
21:12:16 <oklopol> :DDDDDDDDDDDDDDDDD
21:12:19 <ehird> congratulations. you are the 1 billionth person to make that joke, AnMaster.
21:12:26 <ehird> you win £-100. pay up.
21:12:33 <AnMaster> ehird, alas no
21:12:48 <AnMaster> ehird, I'm the 1 billionth + 1 person
21:13:01 <oklopol> x'DDDDD
21:13:03 <AnMaster> you missed that one over there >>
21:13:09 <Slereah> GregorR?
21:13:17 <AnMaster> Slereah, no, in the other room
21:13:17 * ais523 wonders about making a map of UseNet
21:13:19 <ais523> *Usenet
21:13:21 <Slereah> Owait, now it points at fizzie
21:13:23 -!- MigoMipo has changed nick to QwertUiop.
21:13:32 <oklopol> Slereah: indecisive asses are the worst.
21:13:34 <ais523> after all, we know that comp.lang.c++ is two rooms down the corridor on the left from comp.lang.c
21:13:36 -!- QwertUiop has changed nick to MigoMipo2.
21:13:43 <ais523> there may be enough of those references to draw a map of the whole thing
21:13:55 <oklopol> ais523: wut?
21:14:02 <AnMaster> ais523, what like alt.porn alt.porn.makes.no.sense (I forgot the details, it was something like alt.bin.whatever.sex-something.clinton iirc)
21:14:04 -!- MigoMipo2 has changed nick to MigoMipo.
21:14:09 * oklopol wonders what this usenet is everyone keeps referring to :P
21:14:12 <AnMaster> or wait no
21:14:23 <ais523> oklopol: you've never heard of usenet?
21:14:24 <Slereah> Usenet is where you use the internet
21:14:32 <oklopol> ais523: yes, tons of times.
21:14:37 <AnMaster> ais523, alt.bin.pic.sex.parachute or such
21:14:42 <Slereah> I used to go to usenet, because the first French furry group was thar :o
21:14:43 <oklopol> because people keep referring to it
21:14:51 <Slereah> Usenet is pretty much shit, though
21:14:51 <AnMaster> ais523, make whatever sense you want of that
21:14:53 <ais523> oklopol: do you know how to access it?
21:14:56 <AnMaster> I didn't check what it was
21:14:59 <oklopol> ais523: no
21:15:03 <ais523> AnMaster: alt.binaries., surely?
21:15:05 <ehird> How come most /b/tards are furries?
21:15:07 <AnMaster> ais523, yes maybe
21:15:08 <ehird> Hypocrites :-P
21:15:12 <AnMaster> ais523, I don't use usenet a lot
21:15:16 <ais523> oklopol: you can view it via groups.google.com
21:15:21 <ais523> have a look at alt.lang.intercal some time
21:15:23 <AnMaster> ais523, not the binaries
21:15:25 <AnMaster> iirc
21:15:27 <ais523> it's the esolang group, but it isn't very active
21:15:27 <AnMaster> however
21:15:29 <Slereah> ehird : Remember the credo!
21:15:41 <Slereah> http://membres.lycos.fr/bewulf/Divers/1167175439619.gif
21:16:03 <ais523> Usenet is the last bastion of the True Spirit of the Internet
21:16:13 <ais523> even if there was that terrible accident where it got stuck in September 2003
21:16:19 <ais523> *1993
21:16:22 <Slereah> What is the true spirit of the internet, ais523?
21:16:31 <ais523> Slereah: being able to talk to other people about anything you want
21:16:35 <ais523> without problems
21:16:40 <Slereah> Define "problems"
21:16:54 <AnMaster> problems != flamewars
21:16:56 <AnMaster> :P
21:17:02 <ais523> well, you get flamewars on Usenet too
21:17:07 <Slereah> Yeah.
21:17:10 <ais523> but nobody can be blocked from it, pretty much
21:17:32 <ais523> the main tool for debate de-escalation there is the equivalent of /ignore
21:17:37 <ais523> if you don't like what someone's saying, ignore them
21:17:40 <AnMaster> ais523, btw, if you have ipv6, xs4all provides a good usenet read only server, very fast and very complete. Doesn't filter binary channels either. And it is at least available to users of the SixXS tunnel
21:17:41 <ais523> and talk to the people you do like
21:17:43 <AnMaster> not sure about other ipv6
21:17:54 <Slereah> http://encyclopediadramatica.com/Alt.tasteless
21:17:55 <ais523> AnMaster: I don't, the computer's fine but the network here can't handle it
21:18:02 <AnMaster> ais523, tunnel?
21:18:03 <Slereah> Why hello there, I am internet of the past.
21:18:10 <AnMaster> that is what I use...
21:19:14 <Slereah> "In 1993, alt.tasteless members orchestrated one of the first forum invasions, in which rec.pets.cats (a newsgroup for cat-lovers) was mercilessly trolled."
21:19:29 <ais523> before or after september/
21:19:35 <Slereah> End of august :D
21:20:23 -!- MigoMipo has left (?).
21:20:40 <AnMaster> Slereah, where does it say that?
21:21:24 <Slereah> There's a link to the thread : http://groups.google.com/group/alt.tasteless/browse_thread/thread/3f265cf9ef49d3e1
21:21:45 <AnMaster> Slereah, doesn't work for me, it refuses even when I click the 'yes i'm sure' button
21:21:55 <Slereah> That's because you are underaged
21:21:57 <Slereah> Noti boy
21:22:02 <ais523> Google have been doing a lot of archiving of Usenet
21:22:02 <AnMaster> Slereah, I'm not.
21:22:13 <ais523> they even bought up all the Usenet archives from before they started
21:22:16 <ais523> although I'm not entirely sure why
21:22:21 -!- FireFly has quit ("Later").
21:22:26 -!- KingOfKarlsruhe has quit (Remote closed the connection).
21:22:33 <ais523> hmm... deja.com still redirects to groups.google.com, after all this time
21:22:46 <AnMaster> deja.com?
21:22:50 <AnMaster> wtf would that be
21:22:53 <ais523> AnMaster: Usenet archivers
21:22:56 <AnMaster> heh
21:22:59 <ais523> they got bought out by Google
21:23:12 <AnMaster> ais523, well how much would the domain cost google? relatively speaking
21:23:19 <AnMaster> it isn't like they would notice
21:23:25 <ais523> they got the domain free with the company
21:23:30 <ais523> so they may as well maintain it, I suppose
21:23:34 <AnMaster> ais523, well they have to renew it
21:23:38 <ais523> in case anyone still wants to visit Deja's archives for some reason
21:23:57 <ais523> or in case someone also got stuck in September 1993 and has only just come out of their coma
21:23:57 <AnMaster> ais523, also I hope links still work
21:24:02 <AnMaster> permanent url you know
21:25:11 <Slereah> http://encyclopediadramatica.com/Meow_Wars
21:25:12 <Slereah> :D
21:26:58 <AnMaster> why are you linking to that horrible site all the time
21:27:18 <Slereah> You must face your demons, AnMaster
21:27:26 <AnMaster> Slereah, ?
21:27:32 <AnMaster> that sounds like a quote from something
21:28:04 -!- oerjan has quit ("Good night").
21:28:40 <Slereah> It's a stock movie quote, AnMaster
21:28:48 <Slereah> It is not a quote of anything in particular
21:29:16 <AnMaster> hm ok
21:29:19 <AnMaster> that
21:29:25 <AnMaster> *that reminds me
21:29:38 * AnMaster checks if there has been a new beta of that open source game yet
21:29:54 <AnMaster> yes!, no activity for several months before, finally a new beta
21:30:39 <AnMaster> Wait....
21:30:43 <AnMaster> That is no beta...
21:30:52 <AnMaster> that is a 1.0 release!
21:30:52 <AnMaster> :D
21:31:32 <fizzie> It is sad that the first association for any sentence of "that is no X" is the "that is no moon" thing.
21:31:45 <AnMaster> fizzie, that was intentional
21:31:57 -!- FireFly has joined.
21:31:59 <ais523> AnMaster: which game?
21:32:11 <AnMaster> ais523, blob wars: blob and conquer
21:32:16 <AnMaster> needs 3D acceleration
21:32:21 <ais523> that's a pretty ridiculous name...
21:32:29 <AnMaster> ais523, yes, but quite playable IMO
21:32:36 <ais523> what genre?
21:32:59 <AnMaster> ais523, well previous one was jump and run with guns. This one is third person shooter 3D
21:33:11 <ais523> hmm... I don't generally play shooter games
21:33:20 <AnMaster> ais523, and well if I played table top RPGs I would play Toons
21:33:21 <ais523> I used to play platform games a bit, but rarely do nowadays
21:33:34 <AnMaster> Saving to: `download.php?proj=blobAndConquer&file=blobAndConquer-1.05-1.tar.gz&type=zip'
21:33:36 <AnMaster> -_-
21:33:43 <ais523> that's quite a filename
21:33:53 <AnMaster> yes
21:34:14 <ais523> it reminds me of the dontcountme=s that used to be at the end of URLs on Wikipedia
21:34:24 <AnMaster> ais523, what? I never seen that
21:34:27 <AnMaster> also what was it for
21:34:27 <ais523> to avoid triggering the page counters, which ignored URLs ending in s because they thought it was js or css
21:34:40 <ais523> it wasn't on the actual pages, but on things that were XHRed via scripts
21:34:41 <AnMaster> ais523, err
21:34:53 <ais523> they have better counters now
21:34:57 <ais523> based on sampling the HTTP logs
21:35:16 <ais523> and JS which loads images a small percentage of the time, to avoid Wikipedia DDOSing its own servers
21:35:24 <AnMaster> ais523, oh that reminds me... the main.css is included as main.css?164
21:35:25 <AnMaster> when I look
21:35:28 <AnMaster> on a wiki I run
21:35:31 <AnMaster> any idea why?
21:35:35 <ais523> that's an anti-cache-problems tool
21:35:37 <AnMaster> since main.css is a static file
21:35:48 <AnMaster> ais523, err I like clients to cache it
21:35:50 <ais523> it may be static, but it can be changed by upgrades
21:35:52 <AnMaster> since it is using a lot of my bw
21:35:56 <ais523> clients are told to cache it aggressively
21:36:04 <ais523> but if it changes across an upgrade, the 164 changes to 165
21:36:05 <AnMaster> aha
21:36:07 <ais523> so clients will get a new copy
21:36:11 <AnMaster> right
21:36:18 <ais523> the caching information is hidden in the URL
21:36:21 <ais523> effectively
21:36:26 <AnMaster> ais523, also where are they told to cache it aggressively?
21:36:33 <ais523> in the HTTP headers, I think
21:36:36 <AnMaster> since it is a static file
21:36:41 <AnMaster> it would depend on server setup
21:36:49 <ais523> yes, it dose
21:36:51 <ais523> *does
21:36:54 <AnMaster> and since it is shared hosting I have no control over that
21:36:59 <ais523> but remember that MediaWiki was invented for Wikimedia, who do have control over that
21:37:02 <AnMaster> nor did I see anything in mediawiki manual
21:37:12 <AnMaster> ais523, I think it can be done in .htaccess
21:38:03 <AnMaster> ais523, also ehird was surprised the supertux site had around 15k hits on images *per day*
21:38:10 <AnMaster> if you know of that game
21:38:26 <ais523> I've vaguely heard of it, but no more than that
21:38:30 <ais523> don't even know what it's about
21:38:33 <ais523> but the name strongly suggests Linux
21:38:38 <AnMaster> ais523, super mario style
21:39:50 <AnMaster> ais523, and I'm a developer on it. I talked to him about image hits because I was implementing anti-hotlinking since that was using quite some bw
21:40:14 <ais523> based on referrer?
21:40:53 <AnMaster> ais523, yes, and no blocking if empty referrer of course
21:40:58 <AnMaster> and allowing google image search and so on
21:42:03 <AnMaster> ais523, some people were linking screen shots, full size and then scaling it down to thumbnail in <img> tag
21:42:21 <ais523> AnMaster: and wasting their reader's bandwidth as well as yours
21:42:29 <ais523> what's your anti-hotlink image?
21:42:52 <AnMaster> ais523, a gif animation :D
21:42:54 <AnMaster> let me link it
21:43:07 <ais523> AnMaster: oh dear
21:43:12 <ais523> I'm not sure if I want to look at it
21:43:12 <AnMaster> ais523, http://supertux.lethargik.org/errors/img/nohot.gif
21:43:15 <ais523> can you describe it?
21:43:26 <AnMaster> ais523, too slow to cause epilepsy
21:43:28 <oklopol> haha awesome
21:43:30 <AnMaster> ais523, only text
21:43:35 <ais523> what does it say?
21:43:48 <AnMaster> "Please don't hotlink\nimages from this site"
21:43:53 <ais523> simple enough
21:43:59 <ais523> so why the animation?
21:44:04 <AnMaster> ais523, check it out
21:44:16 <AnMaster> it is not shock pic
21:44:17 <AnMaster> or such
21:44:26 <AnMaster> and it won't cause epilepsy, it is too slow for that
21:44:52 <AnMaster> ais523, well?
21:45:04 <ais523> AnMaster: it's just such a pain for me to load images from IRC
21:45:15 <AnMaster> ais523, ...
21:45:17 <ais523> besides, I don't see the animation
21:45:18 <ais523> I tried
21:45:21 <AnMaster> ais523, just copy and paste to the browser
21:45:23 <ais523> but my photo viewer prorgams don't show it
21:45:24 <AnMaster> ais523, it inverts
21:45:38 <ais523> I don't really like the colour scheme either, but I suppose that's the point
21:45:40 <AnMaster> ais523, as in text and bg colors change place
21:45:46 <AnMaster> every 5000 ms or something
21:45:57 <AnMaster> err 500*
21:45:57 <oklopol> more like every second
21:45:59 <AnMaster> probably
21:46:07 <oklopol> yeah 500
21:46:11 <AnMaster> oklopol, I remember it was 5 and some zero
21:46:13 <AnMaster> zeros*
21:46:49 <AnMaster> ais523, also gimp will show both as layers
21:46:51 -!- BeholdMyGlory has joined.
21:47:39 <AnMaster> Lovely: "This game contains scenes of gore"* (* which can be switched off)
21:48:18 <ehird> unreal tournament allows you to turn off the gore
21:48:23 <ehird> like, in case you're a kid playing it or something :|
21:49:17 <ehird> <AnMaster> why are you linking to that horrible site all the time
21:49:22 <ehird> ED is useful for internet culture.
21:50:02 <AnMaster> wish it wasn't written in it
21:50:24 <FireFly> Why are you writing in that horrible language all the time?
21:50:32 <AnMaster> FireFly, ?
21:50:39 <ehird> AnMaster: What? FireFly: lol
21:50:57 <FireFly> Well, for others esolangs are pretty horrible.. I guess it's the same with ED
21:50:59 <ais523> FireFly: which lang are you thinking of?
21:51:07 <ais523> ah, I see
21:51:21 <ehird> <AnMaster> wish it wasn't written in it
21:51:24 <ehird> can I have this in coherent form
21:51:26 <AnMaster> ehird, basically ED is written in /b/tard style a lot of the time. I mean compare the language used if wikipedia would discuss "lol" and if ED would.
21:51:36 <AnMaster> I haven't looked at the articles
21:51:48 <ehird> "I WISH AN INTERNET CULTURE COMPENDIUM DIDN'T TALK IN AN INTERNET CULTURE-RELATED STYLE"
21:52:01 <AnMaster> <ehird> ED is useful for internet culture. <AnMaster> wish it {ed} wasn't written in it {the style of that}
21:52:10 <AnMaster> ehird, correct.
21:52:13 <ehird> which is the most ridiculous complaint I've ever heard.
21:52:23 <AnMaster> ehird, also all the shock pics
21:52:35 <ehird> yeah. all the vast expanses of them.
21:52:46 * ais523 wonders if Wikipedia has an article on lol
21:52:48 <ais523> I'd guess yes
21:52:54 <ehird> ais523: it redirects to internet slang
21:52:59 <ais523> makes sense
21:53:06 <ais523> although teh gets its own article, IIRC
21:53:09 <ehird> anyway, most non-nsfw-related ED articlse are sfw. Well, not safe for owrk but not offensive.
21:53:18 <AnMaster> ais523, that should redirect to "the"
21:53:22 <ais523> AnMaster: no, it doesn't
21:53:28 <ais523> although there's a disambig header
21:53:29 <AnMaster> ais523, I didn't say it did
21:53:32 <ais523> http://en.wikipedia.org/wiki/Special:Search?go=Go&search=teh
21:53:35 <AnMaster> I said it *should*
21:53:36 <ehird> the typo has enough of its life to deserve an article, AnMaster
21:53:40 <ais523> the word has too much of its own culture
21:53:50 <AnMaster> ehird, Not notable!
21:53:52 <ehird> your own view of the way Things Should Be does not mean wikipedia shouldn't reflect reality
21:53:57 <ehird> AnMaster: no, very notable
21:54:00 <ehird> what you mean to say is, "I dislike it"
21:54:00 <ais523> oh no, it has an image now
21:54:19 <AnMaster> ehird, Missing reliable sources! Reads as advertisement! Is missing references!
21:54:26 <FireFly> "A typo on a poster."
21:54:38 <AnMaster> ehird, also no
21:54:49 <AnMaster> I was just imitating the style of wp
21:55:06 <ais523> I'm not entirely convinced the image adds to the article
21:55:16 <AnMaster> ais523, or that it is true
21:55:27 <ais523> but then, it's reasonably common to drop a random vaguely-relevant image into an article in the hope of meeting GA criteria
21:55:50 <AnMaster> "This image is of a poster, and the copyright for it is most likely owned by either the publisher or the creator of the work depicted. It is believed that the use of scaled-down, low-resolution images of posters " <-- um, so you can't take a pic of a cityscape containing any posters?
21:55:54 <AnMaster> that would be fscked
21:56:19 <AnMaster> I mean, it is public space
21:56:46 <ais523> AnMaster: it depends on what it's a picture of
21:56:52 <ais523> and which jurisdiction, and all sorts of things
21:57:00 <AnMaster> ais523, like how much of the image it covers?
21:57:03 <ais523> but you can't, say, take a photo of an advert and crop out the logo of the advertiser
21:57:16 <ais523> copyright law is really complex and confusing
21:57:42 <ais523> anyway, the general reasoning is to, on Wikipedia, avoid images which contain even a small amount of copyvio stuff, unless it's covered by fair use
21:57:52 <ais523> because purely free-licensed images are fine
21:57:56 <fizzie> Heh, "purpose of use" field in the fair use rationale blob: "The spelling error in the image is unique and it depictures the Teh article's subject."
21:58:03 <fizzie> Yes, it is an unique spelling error.
21:58:16 <ais523> a free-licensed image which depends on fair use for a few pixels is more debatable
21:58:25 <ais523> because there are ways in which it can't be modified
21:58:36 <ais523> fizzie: what's your opinion on "a unique" vs. "an unique"?
21:58:45 <ehird> it's a unique...
21:58:53 <ais523> I normally use "a unique", because the pronunciation of "unique" starts with a consonant, even though the word itself doesn't
21:59:06 <ehird> an unique is incorrect, i've never heard anyone say that
21:59:14 <ais523> I hear it quite a bit
21:59:49 <fizzie> My opinon is that I shouldn't have an opinion, being so very non-native speaker. And I would write it as "a unique", it's just that I caught myself only after the newline.
21:59:57 -!- GreaseMonkey has joined.
22:01:30 <oklopol> "a unique"
22:02:32 <ehird> oklopol: i want oklotalk - - bot ;-)
22:02:35 <ehird> in here ;-)
22:02:37 <ehird> tonight ;-)
22:02:38 <ehird> now ;-)
22:02:47 <fizzie> I blame the Finnish pronunciation where 'u' always sounds the same, and is always a vowel.
22:02:48 <ais523> preferably written in something stupid
22:02:52 <ehird> no
22:02:55 <ehird> it already exists
22:02:55 <ehird> :3
22:03:11 <ais523> fizzie: most languages are more logical than English
22:03:13 -!- ehird has set topic: IRC IRC IRC.
22:03:14 -!- bsmnt_bot has set topic: IRC IRC IRC | http://tunes.org/~nef/logs/esoteric.
22:03:18 <ais523> maybe that's why English does so well...
22:03:21 <ehird> ais523: do you like our auto-topic-setting?
22:03:27 <ais523> yes, very much
22:03:38 <ehird> it's the work of mizardx and I :D
22:03:43 -!- ais523 has set topic: IRC IRC IRC | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:03:53 * ais523 wonders if bsmnt_bot will add another
22:03:55 <ehird> it doesn't do anything if the logs are already in the topic
22:03:57 <ais523> apparantly not, though
22:04:03 <ais523> that would have made for a really amusing botloop
22:04:03 <bsmntbombdood> wut
22:04:05 -!- ehird has set topic: http://tunes.org/~nef/logs/esoteric ** so you can do arty things like this.
22:04:12 <ehird> bsmntbombdood: we taught bsmnt_bot to do this:
22:04:13 -!- ehird has set topic: aaaaaaa.
22:04:14 -!- bsmnt_bot has set topic: aaaaaaa | http://tunes.org/~nef/logs/esoteric.
22:04:21 <bsmntbombdood> oh
22:04:22 <ais523> bsmntbombdood: your bot has found itself a new usefulness
22:04:27 <ais523> ^bf ,[.,]!Test
22:04:27 <fungot> Test
22:04:28 -!- GreaseMonkey has set topic: aaaaaaa | http://tunes.org/~nef/logs/esoteric/penis.
22:04:46 <ais523> hmm... we'll have to dig the BF-in-bsmnt_bot out of the logs
22:04:46 <bsmntbombdood> so much for useful
22:04:53 <GreaseMonkey> ^ aren't you glad you don't use a tinyurl one?
22:05:03 <ehird> GreaseMonkey: ?
22:05:08 <ais523> I have a copy, but all the whitespace got corrupted
22:05:16 <ais523> and I don't think there's a way to automatically reconstruct it
22:05:17 <GreaseMonkey> because someone could always append to it and hijack it
22:05:28 <ais523> this, incidentally, is what caused my hatred of Python
22:05:29 <ehird> GreaseMonkey: ... what?
22:05:48 -!- ais523 has set topic: (a(:^)*S):^.
22:05:48 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric.
22:05:50 <ehird> ais523: unsurprisingly, Python is not optimized for entering code over IRC.
22:05:54 <GreaseMonkey> e.g if you had tinyurl.com/esolog and someone managed to take /esologs for something then yeah
22:05:58 <ehird> crazy I know.
22:06:03 <ehird> GreaseMonkey: how about they could just change the topic...
22:06:22 <ais523> ^ul (a(:^)*S):^
22:06:23 <fungot> (a(:^)*S):^
22:06:24 <GreaseMonkey> what if there were a bot?
22:06:30 <ehird> GreaseMonkey: what?
22:06:37 <ais523> ~bf ,[.,]!Test
22:06:50 <GreaseMonkey> like, a bot to autoappend some crap?
22:07:02 <ehird> then we kick it.
22:07:38 <ais523> ^bf >,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]!>,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:07:38 <fungot> ,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:07:44 <ais523> hmm...
22:08:02 <ais523> ^bf >,[.>,]<[<]+++++++++++++++++++++++++++++++++.>[.>]!>,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:08:03 <fungot> >,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]!>,[>,.]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:08:09 <ais523> ^bf >,[.>,]<[<]+++++++++++++++++++++++++++++++++.>[.>]!>,[.>,]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:08:09 <fungot> >,[.>,]<[<]+++++++++++++++++++++++++++++++++.>[.>]!>,[.>,]<[<]+++++++++++++++++++++++++++++++++.>[.>]
22:08:12 <ais523> that's better
22:08:20 <ais523> even though it's cheating, really
22:10:31 <AnMaster> <ais523> that would have made for a really amusing botloop3 <-- happened yesterday
22:10:37 <AnMaster> before they had it working
22:10:51 <fizzie> ehird: I think the point here was that since you can add any suffix to the log URL, if the bot it set to keep "tinyurl/foo" in the topic always it fails if someone gets "tinyurl/foobar" and sets that as the topic, without the bot adding the real URL. If you "just change the topic" you won't get rid of the real log URL.
22:11:08 <ehird> oh.
22:11:14 <ehird> well who cares, it's just for setting the topic easily
22:12:20 <fizzie> ChanServ could have a auto-append/prepend channel variables for that; there are 'topicappend' and 'topicprepend' commands, after all.
22:12:51 -!- MizardX has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo.
22:12:52 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric.
22:12:54 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:12:58 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:12:59 <MizardX> geh... again
22:13:01 <ehird> ...
22:13:02 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:13:06 <ehird> sigh
22:13:06 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:13:07 <ehird> MizardX
22:13:09 <ehird> why did you eff with it :P
22:13:11 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:13:13 <ehird> ~raw QUIT
22:13:16 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric.
22:13:16 <ehird> ~exec self.raw("QUIT")
22:13:20 <ehird> ~exec self.raw("QUIT")
22:13:21 -!- bsmnt_bot has set topic: (a(:^)*S):^ | http://tunes.org/~nef/logs/esoteric/foo | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes.org/~nef/logs/esoteric | http://tunes..
22:13:22 -!- ChanServ has set channel mode: +o fizzie.
22:13:23 -!- fizzie has set channel mode: +t.
22:13:24 -!- ChanServ has set channel mode: -t.
22:13:27 -!- bsmnt_bot has quit.
22:13:29 <ehird> fizzie: it'll stop
22:13:30 -!- bsmnt_bot has joined.
22:13:30 <ehird> there we go
22:13:47 <fizzie> Well, +t would've been quicker, maybe. Except that chanserv removed it since it's in the mlock.
22:13:55 -!- bsmnt_bot has quit (Client Quit).
22:13:59 <ais523> it's intereseting to have a channel mlocked at -t
22:14:02 <ais523> *interesting
22:14:07 <ehird> ... come back, bsmnt_bot
22:14:09 <ehird> ...
22:14:20 <ehird> ... shit
22:14:42 <oklopol> fizzie: can i call you overlord while you're op?
22:14:59 <fizzie> oklopol: You can call me overlord whenever you want, I don't mind.
22:15:01 -!- fizzie has set topic: (a(:^)*S):^.
22:15:13 <oklopol> fizzie: i'll keep that in mind.
22:15:23 <fizzie> I just have to test that chanserv topicprepend thing, I want to see if it adds a separator or something.
22:15:41 -!- ChanServ has set topic: fancy! | (a(:^)*S):^.
22:15:43 <ehird> bots are always the correct solution
22:15:48 -!- ehird has set topic: aa.
22:15:52 <ehird> Failure
22:15:53 <fizzie> Heh, yes, it added that | there.
22:16:39 <fizzie> It's not an auto-append, though. I'm not sure what it is for, really.
22:17:43 <ais523> fizzie: changing the topic when you aren't opped and the channel is +t
22:17:59 <fizzie> Right, I guess there's that.
22:18:14 <ehird> hey, who wants to fix bsmnt_bot
22:18:18 <bsmntbombdood> not i
22:18:27 <ehird> :<
22:18:30 <bsmntbombdood> i'm writing a irc bot wrapper in awk
22:18:32 <bsmntbombdood> :P
22:18:35 <ehird> ouch
22:20:11 -!- GreaseMonkey has quit ("Client Excited").
22:21:48 <fizzie> Heh, interesting typo: "/frop gizzie"
22:21:51 -!- fizzie has set channel mode: -o fizzie.
22:22:10 -!- AnMaster has set topic: http://tunes.org/~nef/logs/esoteric.
22:22:19 <ais523> fizzie: your hand was too far to the right
22:22:30 <AnMaster> also
22:22:34 <AnMaster> why this
22:22:45 <AnMaster> I mean how hard could it be
22:22:54 <ehird> ?
22:23:04 <fizzie> ais523: Maybe my keyboard was just too far to the left. It's not always my fault!
22:23:05 <AnMaster> if (!substr(topic, "http://tunes.org/~nef/logs/esoteric") topic += "| http://tunes.org/~nef/logs/esoteric"
22:23:06 <AnMaster> basically
22:23:08 <AnMaster> well a space too
22:23:15 <ehird> AnMaster: because we have to write it one line in python
22:23:21 <ais523> ehird: that's easy enough
22:23:22 <ehird> also, MizardX effed up the disconnection logic
22:23:27 <AnMaster> right
22:23:27 <ehird> so it's sitting there using up cycles
22:23:30 <ehird> instead of reconnecting
22:23:41 <AnMaster> ehird, kill it and restart it clean?
22:23:49 <ehird> well k
22:23:55 -!- bsmntbombdood__ has joined.
22:24:00 <ais523> just use the exec("""if !substr(topic, "http://tunes.org/~nef/logs/esoteric"):\n topic += "| http://tunes.org/~nef/logs/esoteric"\n""") trick
22:24:11 <bsmntbombdood__> dc is the best irc client EVAR
22:24:14 <ais523> that's how I wrote the BF interp in the first place
22:24:25 <ais523> bsmntbombdood: dc the reverse-polish-notation calculator?
22:24:33 <bsmntbombdood> lol
22:24:47 <bsmntbombdood__> i mean to say nc
22:24:52 <ehird> hey bsmntbombdood__
22:24:56 <ehird> how do you start bsmnt_bot again
22:25:01 <bsmntbombdood> run start.sh
22:25:02 <bsmntbombdood> lol
22:25:08 <ehird> does that start the chroot
22:25:15 <bsmntbombdood> iirc
22:25:30 <ehird> ah, yep
22:25:47 -!- bsmnt_bot has joined.
22:27:17 <fizzie> I have in my logs a whitespace-fixed version of that bsmnt_bot brainfuck. Will test.
22:27:33 <fizzie> ~exec self.bf3="def bfarg(x,y):\n p=y.group(2)\n a=y.group(3)+unichr(0)\n o=''\n p=p+'!'\n t=[0]*30000\n i=0\n l=0\n while p[i]!='!':\n if p[i]=='[' and t[l]==0:\n c=1\n while c>0:\n i=i+1\n if p[i]=='[': c=c+1\n if p[i]==']': c=c-1\n if p[i]==']' and t[l]!=0:\n c=1\n while c>0:\n i=i-1\n if p[i]==']': c=c+1\n if p[i]=='[': c=c-1\n"
22:27:46 <fizzie> ~exec self.bf4=" if p[i]=='+': t[l]=t[l]+1\n if p[i]=='-': t[l]=t[l]-1\n if p[i]=='<': l=l-1\n if p[i]=='>': l=l+1\n if p[i]=='.': o=o+unichr(t[l])\n if p[i]==',':\n t[l]=ord(a[0])\n a=a[1:]\n i=i+1\n sys.stdout(o)\nself.register_raw(r'\S+ PRIVMSG (\S+) :~bf ([^!]*)!?(.*)',bfarg)"
22:27:53 <fizzie> ~exec exec(self.bf3+self.bf4)
22:27:54 <ehird> where is bf1-2
22:27:59 <fizzie> ~bf ++++++[->++++++<]>.
22:27:59 <bsmnt_bot> $
22:28:06 <ehird> ~bf ++++++++++++++++++++++++++++++++++++++++++++++.
22:28:06 <bsmnt_bot> .
22:28:12 <ehird> ~bf +++++++++++++++++++.
22:28:12 <bsmnt_bot>
22:28:21 <ehird> ok, who wants to make it \nQUIT? :P
22:28:27 <ehird> although you can easily do that with ~exec
22:28:28 <ais523> ~bf ,[.,]!Hello, world!
22:28:29 <bsmnt_bot> Hello, world!
22:28:32 <ehird> hey, someone make the callbacks persist
22:28:35 <ehird> its irritating having them not
22:29:03 <ais523> wow, one-line non-lambda based Python is really weird to read
22:29:06 <ais523> even when I wrote it...
22:29:12 <ais523> all those varying amounts of spaces
22:29:24 * ais523 thinks this is the only legitimate use-case they've ever seen for one-space indentation
22:30:45 <ehird> what bsmnt_bot needs is bracism
22:30:57 <ehird> def bfarg(x,y): { p = y.group(2); ... }
22:32:00 * ais523 wonders what a Python purist would say if they were watching this discussion
22:32:10 <ais523> couldn't you just start with from __future__ import braces; ?
22:32:19 <ais523> if it worked quickly enough, you wouldn't even need the newline after it
22:32:25 <ais523> just a semicolon
22:32:42 <ehird> :D
22:32:50 <ehird> ais523: Pythoners are generally an assholish lot.
22:32:55 <ehird> So are Schemers.
22:33:04 <ehird> And Lispers in general; #lisp is awful.
22:33:38 <ais523> use ACME::Pythonic; requires the one last semicolon after the statement, unfortunately
22:33:43 <ais523> but you don't need any semicolons from then on
22:34:03 <ehird> anyway, bracism is a nice little hack. I think I will now reimplement it.
22:34:07 <AnMaster> <ehird> ais523: Pythoners are generally an assholish lot. <ehird> So are Schemers. <ehird> And Lispers in general; #lisp is awful. <-- what about perlers?
22:34:21 <AnMaster> I noticed the less sane the language is the nicer the people are in the support channels
22:34:23 <ehird> AnMaster: Perlers are bathshit insane, but very friendly, apart from in #perl, where they keep the assholes.
22:34:37 <ais523> AnMaster: and the INTERCAL support channel is very friendl
22:34:39 <ais523> *y
22:34:42 <ais523> even though it's mostly just me
22:34:42 <AnMaster> ehird, we are all insane in here
22:34:49 <AnMaster> and very friendly 99% of the time
22:34:59 <ehird> Yeah, #esoteric is the nicest channel on IRC.
22:35:06 <ehird> #haskell is about equal, though.
22:35:11 <AnMaster> ais523, also you missed some awful puns I made today
22:35:13 <ehird> I think that says something about Haskell.
22:35:21 <AnMaster> ehird, haha
22:35:36 <ais523> ehird: yep, I think Haskell is pretty insane too by common-language standards
22:35:41 <ais523> but insane in a "wow, that's so elegant" way
22:35:54 <ehird> Scheme is pretty esoteric, too.
22:35:54 <AnMaster> ais523, yes, but lisp is kind of like that too IMO
22:35:55 <AnMaster> :/
22:35:59 <ehird> Well.
22:36:03 * ais523 joins #vhdl, to see what they're like
22:36:04 <ehird> Common Lisp is kind of unelegant.
22:36:08 <AnMaster> ais523, tell us
22:36:10 <ehird> *inelegant
22:36:12 <ais523> however, it seems to be a mostly idle channel
22:36:13 <AnMaster> ehird, that is true
22:36:19 <AnMaster> ehird, elisp vs. clisp
22:36:21 <AnMaster> which is worst?
22:36:22 <ais523> I'm going to ask a question to see how they react
22:36:25 <ehird> AnMaster: elisp
22:36:27 <ehird> ais523: "Verilog questions possibly answered but only if we get a cookie (Remillard will answer Verilog questions for a Chipotle burrito.) "
22:36:29 <ehird> sounds friendly
22:36:30 <AnMaster> hm ok
22:36:43 <bsmntbombdood> ergh i can't figure out what i'm doing wrong
22:37:25 <ehird> AnMaster: elisp is _dynamically scoped_
22:37:28 <ehird> that's hard to beat.
22:37:37 <AnMaster> ehird, ok, but isn't bf too=
22:37:37 <AnMaster> ?
22:37:40 <ais523> I've asked a question which is "I'm doing insane thing X, what should I do instead?"
22:37:43 <AnMaster> of course it got no scope
22:38:03 <AnMaster> ais523, what is this insane thing?
22:38:14 <ais523> AnMaster: using a for loop with one iteration to define a temporary variable
22:38:21 <AnMaster> ais523, oh
22:39:16 <ehird> A colon followed by whitespace followed by { opens a new block, unless we're in a {} block that wasn't a bracism block
22:39:20 <ehird> (to allow {'foo': {...}})
22:39:33 <ehird> } ends a block if we're in a block and not a {} that isn't a block.
22:39:38 <ehird> ; is newline-and-indent.
22:39:41 <ehird> Hokay.
22:39:44 <AnMaster> ehird, in what language?
22:39:50 <ehird> Python.
22:39:53 <ehird> It's for writing one-line python.
22:39:56 <AnMaster> oh the source filter
22:39:58 <ehird> no
22:40:00 <ehird> just a library
22:40:02 <AnMaster> no?
22:40:03 <ehird> a bot in here used to have it
22:40:05 <ehird> one I wrote
22:40:06 <AnMaster> oh ok
22:40:11 <ehird> it was great for irc
22:40:28 <ais523> the basic rule is { is newline and increase indentation, } is newline and decrease indentation, ; is newline and maintain indentation
22:40:29 <ais523> or should be
22:40:34 <ehird> ais523: yes
22:40:36 <ais523> but you have to detect when those characters are used for other things
22:40:38 <ehird> but you have to deal with dictionaries
22:40:40 <ehird> which are {...}
22:40:46 <ais523> and semicolons inside strings?
22:40:50 <ehird> yes
22:40:51 <ais523> luckily, Python is easy to parse
22:40:52 <ehird> thus my above rules
22:40:53 <bsmntbombdood> nc irc.freenode.net 6667 < /tmp/fifo | command > /tmp/fifo
22:40:56 <bsmntbombdood> why isn't that working?
22:40:56 <ehird> ais523: you don't have to parse it much
22:41:01 <ehird> bsmntbombdood: dunno :-D
22:41:12 <AnMaster> bsmntbombdood, simple
22:41:19 <AnMaster> bsmntbombdood, ETOOLITTLEINFO
22:41:22 <AnMaster> :)
22:41:31 <ehird> unfortunately, bracism parsing is more complex than a regex.
22:41:35 <ais523> bsmntbombdood: there's an option to nc to do that automatically
22:41:49 <AnMaster> ais523, I would recommend socat
22:41:49 <ais523> nc irc.freenode.net 6667 -e 'command', IIRC
22:41:58 <AnMaster> ais523, doesn't that listen?
22:42:07 <ehird> AnMaster: yes, you would recommend socat.
22:42:13 <ehird> this is a reason why you are unhelpful
22:42:15 <AnMaster> ehird, what is wrong with socat!?
22:42:19 <AnMaster> tell me
22:42:23 <ais523> AnMaster: I may have used the wrong option
22:42:28 <ehird> "How can I do X with this tool?"
22:42:30 <ehird> "Use another tool"
22:42:36 <ehird> => very unhelpful unless all other situations have been covered.
22:43:21 <ais523> well, I'm going to declare #vhdl Helpful and Not At All Snarky
22:43:42 <fizzie> So it gets the coveted HNAAS award.
22:43:42 <ehird> ais523: is VHDL, I mean, good?
22:43:49 <ehird> or is it sucky
22:43:54 <ais523> ehird: it's a language which is good for what it's designed for
22:43:56 <ehird> whoa, kragen sitaker
22:43:59 <ehird> that guy gets everywhere
22:44:07 <ais523> if inspired slightly (well, far) too much by ADA
22:44:23 <ais523> you need to get used to writing lots of boilerplate to write VHDL
22:44:28 <ais523> but luckily Emacs has it all memorised
22:44:44 <ais523> anyway, I'd better go home now, or I'll never get any work done
22:44:47 <ehird> bye
22:44:51 <ais523> bye everyone
22:44:53 -!- ais523 has quit (Client Quit).
22:45:37 <bsmntbombdood> it still doesn't work
22:45:38 <bsmntbombdood> grrr
22:48:47 <bsmntbombdood> http://pastebin.ca/1312016
22:49:06 <bsmntbombdood> that does work when it is run with nc -e
22:49:22 <bsmntbombdood> s/does/does not/
22:49:26 <AnMaster> err
22:49:29 <AnMaster> hm
22:50:17 -!- bsmntbombdood__ has quit.
22:51:28 -!- seabot has joined.
22:51:34 <ehird> here's the bracism bot
22:51:35 <ehird> @help
22:51:35 <seabot> cdecl: cdecl
22:51:35 <seabot> help: help
22:51:35 <seabot> karma: karma karma+ karma-
22:51:35 <seabot> meta: load reload unload
22:51:35 <seabot> python: python
22:51:40 <ehird> @help karma
22:51:41 <seabot> karma: karma karma+ karma-
22:51:44 <ehird> @help karma+
22:51:44 <seabot> No plugin called karma+.
22:51:44 <seabot> UnboundLocalError: local variable 'plugin' referenced before assignment
22:51:48 <ehird> fail :D
22:51:51 <ehird> @karma ehird
22:51:51 <seabot> You have a karma of 0
22:51:53 <ehird> @karma+ ehird
22:51:53 <seabot> You can't change your own karma, silly.
22:51:56 <ehird> @karma+ seabot
22:51:57 <seabot> seabot's karma raised to 2.
22:51:58 <ehird> @karma seabot
22:51:59 <seabot> seabot has a karma of 2
22:52:02 <ehird> @python 2+2
22:52:03 <seabot> 4
22:52:08 <ehird> @python if 1 == 2: { print "nooo" }
22:52:13 <ehird> @python if 1 == 1: { print "nooo" }
22:52:13 <seabot> nooo
22:52:20 <ehird> hey AnMaster, or whoever
22:52:24 <ehird> issmyoldbot :D
22:52:33 <ehird> @cdecl int (*)(int *)
22:52:34 <seabot> syntax error
22:52:36 <ehird> wut
22:52:39 <ehird> @cdecl int
22:52:39 <seabot> syntax error
22:52:42 <ehird> wut
22:52:43 <ehird> @cdecl int a;
22:52:44 <seabot> declare a as int
22:52:49 <ehird> @cdecl int (*a)(int *);
22:52:50 <seabot> declare a as pointer to function (pointer to int) returning int
22:53:31 <ehird> issnitsocute:D
22:54:17 <ehird> @python a= 2
22:54:19 <ehird> @python a
22:54:20 <seabot> 2
22:54:25 <ehird> @python users.ehird
22:54:25 <seabot> <a big brother>
22:54:29 <ehird> @python users.ehird['a']
22:54:29 <seabot> 2
22:54:32 <ehird> @python users.ehird['a'] = 2
22:54:41 <ehird> ... wait wat
22:54:52 <ehird> @python users.foo
22:54:52 <seabot> KeyError: 'foo'
22:54:55 <ehird> @python users.seabot
22:54:55 <seabot> KeyError: 'seabot'
22:55:00 <ehird> hey AnMaster, do @python a= 2
22:55:16 <oklopol> ooooooooooooooooooooooooooooooooo
22:55:20 <oklopol> @python a= 2
22:55:21 <ehird> oklopol: you do it
22:55:23 <ehird> :DD
22:55:26 <ehird> @python users.oklopol
22:55:26 <oklopol> on it
22:55:26 <seabot> <a big brother>
22:55:28 <ehird> @python users.oklopol['a']
22:55:28 <seabot> 2
22:55:30 <ehird> @python users.oklopol['a'] = 7
22:55:33 <ehird> @python users.oklopol['a']
22:55:33 <seabot> 7
22:55:34 <ehird> ...
22:55:35 <ehird> D:::::::
22:55:38 <ehird> that isn't meant to wokrk
22:55:51 <oklopol> I CAN HAS MY OWN LIST HUH
22:55:57 <AnMaster> seabot?
22:55:59 <AnMaster> wtf is that one
22:56:02 <AnMaster> also
22:56:09 <ehird> AnMaster: seabot is my old bot, it has bracism
22:56:10 <AnMaster> how many bots do we hacve
22:56:12 <AnMaster> have*
22:56:18 <oklopol> a={users.oklopol["a"]}
22:56:21 <oklopol> @python a={users.oklopol["a"]}
22:56:22 <seabot> SyntaxError: unexpected EOF while parsing (<irc>, line 1)
22:56:30 <ehird> @python def hello(a): { print "yo"; return a }; print hello("aa")
22:56:30 <seabot> SyntaxError: invalid syntax (<irc>, line 5)
22:56:33 <ehird> ...
22:56:33 <ehird> WUT
22:56:34 <oklopol> ......
22:56:43 <oklopol> @python a=[users.oklopol["a"]]
22:56:45 <ehird> ... a bug in bracism??????
22:56:46 <oklopol> i think that's what i meant
22:56:50 <ehird> @python def hello(a):{ print "yo"; return a }; print hello("aa")
22:56:50 <seabot> SyntaxError: invalid syntax (<irc>, line 5)
22:56:52 <ehird> D:::::::::::::
22:56:59 <oklopol> but in my fingers i think.
22:57:04 <oklopol> err oh
22:59:26 <bsmntbombdood> why doesn't it work :(
23:01:09 <ehird> bsmntbombdood: because butt
23:01:10 <ehird> s
23:04:28 <ehird> bsmntbombdood: also, bsmnt_bot has dc
23:04:35 <ehird> ~exec bot.run('ls','usr/bin')
23:04:35 <bsmnt_bot> ['dc', 'nice', 'python2.4', 'wget']
23:04:45 <bsmntbombdood> not my dc
23:04:46 <bsmntbombdood> lol
23:05:12 <ehird> lol
23:06:47 <bsmntbombdood> it's better cuz i wrote it
23:07:00 -!- olsner has quit ("Leaving").
23:12:40 <fizzie> About that awk thing, my guess is there's some sort of buffering nastiness going on. When I run "awk -f test.awk < from-irc.fifo > to-irc.fifo" here, then start a "cat > from-irc.fifo" and a "cat to-irc.fifo", nothing appears no matter what I write into the "cat > from-irc.fifo" terminal, except when I ^d it, at which point the nick/user/join lines finally appear in "cat to-irc.fifo".
23:14:03 <AnMaster> fizzie, sound probably
23:14:04 <AnMaster> so
23:14:09 <AnMaster> attach gdb to awk
23:14:12 <fizzie> Also if I feed enough (a couple of rather large screenfuls) of stuff into the "cat > from-irc.fifo" terminal, awk replies in "cat to-irc.fifo". So I guess awk is reading the fifo with the usual few-kilobyte buffer.
23:14:16 <AnMaster> add calls to set non-buffered mode
23:14:25 <fizzie> I'm not sure I want to; it's not my bot.
23:14:28 <bsmntbombdood> i'll pepper in some fflush()es
23:14:37 <AnMaster> bsmntbombdood, in awk!?
23:14:49 <bsmntbombdood> well, gawk
23:15:07 <AnMaster> bsmntbombdood, does awk have a flush() or fflush()?
23:15:18 <AnMaster> modifying the gawk source is cheating
23:15:32 <fizzie> gawk has a fflush() call.
23:15:48 <fizzie> I'm not sure it'll help, though, if the problem is that awk's still waiting for input before actually executing any BEGIN { } blocks or anything.
23:15:53 <bsmntbombdood> fflush([file]) Flush any buffers associated with the open output file or pipe file. If
23:16:09 <AnMaster> if?
23:17:06 <bsmntbombdood> file is missing, then standard output is flushed. If file is the null string, then all open output files and pipes have their buffers flushed.
23:17:40 <bsmntbombdood> well that did it
23:17:42 <AnMaster> heh
23:17:55 -!- FireFly has quit ("Later").
23:18:09 -!- dc-bot has joined.
23:18:22 <bsmntbombdood> ~say foobar
23:18:23 <dc-bot> foobar
23:18:32 <bsmntbombdood> ~dc 123p
23:18:40 <ehird> phail
23:18:44 <bsmntbombdood> ....
23:19:13 -!- dc-bot has quit (Remote closed the connection).
23:19:25 -!- dc-bot has joined.
23:19:36 <psygnisfive> guise
23:19:38 <bsmntbombdood> ~dc 123p
23:19:43 <bsmntbombdood> wtf
23:19:50 <bsmntbombdood> oh i know
23:20:03 <psygnisfive> i know how to design parsers that recognize a language
23:20:08 <ehird> congratulations.
23:20:15 -!- dc-bot has quit (Remote closed the connection).
23:20:17 <psygnisfive> but how the hell do i use the parser output to build an abstract syntax tree?
23:20:17 <ehird> you're not functionally retarded.
23:20:18 <psygnisfive> >.<
23:20:26 -!- dc-bot has joined.
23:20:27 <ehird> I retract my previous statement.
23:20:36 <bsmntbombdood> ~dc 123p
23:20:36 <dc-bot> 123
23:20:39 <bsmntbombdood> yay
23:20:51 <ehird> ~dc [loop forever]
23:20:58 <psygnisfive> the only parser book i have is incredibly complete, except in that it doesnt explain how to use a parser's output :|
23:22:59 <oklopol> err what parser's output? i figured parsing out by thinking, and afaik i'm the retard from us two.
23:23:25 <fizzie> I'd really have to guess that depends on what sort of parser you have, and what its output is. If your parser outputs "accept" or "reject" depending on whether the input is in the language, you'd have to be Really Clever to build a syntax tree out of that.
23:23:45 -!- botbot has joined.
23:23:49 <botbot> Even more bots!
23:23:52 <dc-bot> loopPONG :leguin.freenode.net
23:24:08 <fizzie> dc-bot: Thank you, that was appropriately bizarre.
23:24:13 * botbot prods ehird
23:24:23 <oklopol> fizzie: you could find nested stuff by doing dynamic programming on all substrings of the code
23:24:26 <psygnisfive> what i mean is, parsers can produce things like stacks of symbols and so on. what im not sure about is how to reverse those symbols and get a tree
23:24:44 <oklopol> only nested expressions wouldn't fail, you could recurse on them
23:24:48 <psygnisfive> i suppose i could kind of run the parser in reverse, in a sense
23:24:50 * oklopol is Really Clever
23:24:52 <bsmntbombdood> ~dc 0sa1[la1+salad1+n10>b]dsbx
23:25:04 <bsmntbombdood> ...
23:25:08 -!- dc-bot has quit (Remote closed the connection).
23:25:11 -!- BeholdMyGlory has quit ("Konversation terminated!").
23:25:16 * botbot prods fizzie then :/
23:25:19 <psygnisfive> and instead of pushing it out to a string, i'd push it out to the tree itself, but im not entire sure how to do that. atleast not in any way thats well established
23:26:39 <ehird> psygnisfive: you're an idiot :D
23:26:42 <bsmntbombdood> can you be like recognize_addition = [+, read_expression, read_expression]
23:26:49 <bsmntbombdood> and that builds up a tree
23:26:49 <psygnisfive> thank you for your constructive advice, ehird.
23:26:51 <oklopol> my suggestion is writing your own parser
23:27:13 <psygnisfive> oklopol, i can WRITE a parser, im just not sure about how to get anything useful out of it
23:27:28 <oklopol> psygnisfive: oh. i thought you wanted to use an existing parser or something.
23:27:29 <psygnisfive> the parsing is trivial. its the conversion to an AST that im confused about.
23:27:39 <ehird> ...
23:27:42 <ehird> parses PRODUCE ASTS
23:27:47 <ehird> that's the whole POINT of them
23:27:48 <psygnisfive> ehird, no they dont.
23:27:48 <bsmntbombdood> ehird: no
23:27:56 <ehird> psygnisfive: yes they do. bsmntbombdood: yes they do.
23:28:00 <bsmntbombdood> parsing can just be a boolean
23:28:03 <psygnisfive> ehird: no. they dont.
23:28:04 <AnMaster> bsmnt_bot, the bot is written in dc?
23:28:06 <oklopol> well, you can build the ast as you go, consider recursion descending in the ast.
23:28:13 <ehird> bsmntbombdood: that's a technicality :-)
23:28:15 <ehird> psygnisfive: yes. they do.
23:28:32 <oklopol> when you call a nested thingie recursively, you're parsing a child, just append result in list.
23:28:33 <ehird> "Hey guys, I don't get this topic. Can you explain it?" "Foobar" "No, not foobar."
23:28:42 * botbot prods ehird again
23:28:46 <ehird> botbot: WHAT DAMMIT
23:28:49 -!- botbot has left (?).
23:28:54 -!- botbot has joined.
23:28:56 <botbot> !!
23:29:01 -!- botbot has quit ("...").
23:29:02 <psygnisfive> oklopol: im not entirely sure what you mean.
23:29:21 <oklopol> psygnisfive: have you tried parsing brainfuck?
23:29:36 <fizzie> If the parser is a recursive-descent one, building an AST is really simple, sure. Just have a "foo" function, for a non-terminal foo, return an AST node foo(x, y, z), with x, y, z given from whatever foo() recursive-descends into.
23:29:38 <bsmntbombdood> brainfuck is trivial...
23:29:53 <oklopol> bsmntbombdood: yes, and it contains the basic idea
23:30:16 <psygnisfive> ehird: then i suppose i should rephrase it since you're a bit too dense. when building a parser, after i've gotten to the stage where each token in the string is recognized, and the production path has been determined, as a sequence of terminals and non-terminals, how does that get read off into an AST.
23:30:17 <oklopol> a way to parse a bf loop body is to make a list, and start appending instructions, and for [...]'s, call recursively, append result
23:30:24 <psygnisfive> oklopol: no. i havent touched bf. :P
23:30:28 <bsmntbombdood> $ ps aux|grep xterm|wc -l
23:30:30 <bsmntbombdood> 253
23:30:35 <bsmntbombdood> THIS IS TOO MANY XTERMS
23:30:39 <ehird> psygnisfive: Protip: Calling someone dense is not a way to get help.
23:30:49 <psygnisfive> you're not helping anyway ehird
23:30:50 <psygnisfive> you never help
23:30:52 <oklopol> psygnisfive: the paths are paths in the tree btw
23:30:59 <ehird> I never help :'(
23:31:03 <ehird> I suggest cutting yourself
23:31:06 <psygnisfive> you're just a whiney little twat who never has anything useful to say.
23:31:26 <ehird> yes. Because if I'm not here to help you do trivial stuff all the time, what am I here for?!
23:31:50 <psygnisfive> if you're not here to help, you might want to stop replying to my requests for help
23:32:11 <psygnisfive> oklopol: i know that they're paths in the tree. but that doesnt help much.
23:32:13 <ehird> or I might not, seeing as there isn't a channel rule that I can't reply to requests for help how I want.
23:32:14 <bsmntbombdood> oh lawd
23:32:16 <AnMaster> bsmntbombdood, try a tabbed terminal
23:32:22 <oklopol> psygnisfive: if not, read my actual help.
23:32:28 <AnMaster> like konsole, or whatever gnome have
23:32:30 <bsmntbombdood> AnMaster: i have a tabbed window manager, same thing
23:32:31 <AnMaster> it may help a lot
23:32:33 <oklopol> i suggest you try to see how brainfuck is parsed recursively
23:32:37 <AnMaster> bsmntbombdood, hm ok
23:32:41 <fizzie> I'm not sure 253 terminal tabs would be very helpful either.
23:32:45 <oklopol> it's very simple, and you should see the general idea
23:32:58 <AnMaster> oklopol, parsing bf recursive? yeah dead easy
23:33:00 <psygnisfive> *sigh* nevermind. ill read this book on parsers more carefully and see if it has any explanation that i missed.
23:33:02 <AnMaster> I have done it several times
23:33:04 <bsmntbombdood> psygnisfive: maybe do it in a real language, not haskell
23:33:13 <psygnisfive> what? lol
23:33:31 <oklopol> AnMaster: i've done it about 50 times. i do it every time i want to write something in brainfuck.
23:33:43 <AnMaster> oklopol, err
23:33:46 <AnMaster> that makes no sense
23:33:48 <oklopol> because it's faster than finding a brainfuck.py.
23:33:53 <AnMaster> I save my project
23:33:56 <fizzie> Building the syntax tree in a hand-crafted "bottom-up"-style LR parser might not be quite as easy, but really, if your parser is a recursive-descent stylish, I would think it'd be hard to not to get a syntax tree out of it.
23:34:03 <AnMaster> oklopol, are you on *nix? I don't remember
23:34:06 <AnMaster> if yes use
23:34:08 <oklopol> AnMaster: what's the difference really? both take <1min
23:34:12 <AnMaster> locate brainfuck.py
23:34:20 <AnMaster> it will take a few seconds
23:34:23 <oklopol> AnMaster: could have a different name.
23:34:33 <AnMaster> oklopol, idea: store it in ~/bin ?
23:34:36 <AnMaster> with that name
23:34:41 <ehird> 1. hes on windows
23:34:45 <ehird> 2. shut up, stop trying to make oklopol logical
23:34:46 <AnMaster> ah right
23:34:46 <oklopol> anyway, i don't take very kindly to people suggesting me to do stuff unless i actually ask.
23:34:47 <ehird> you're ruining him
23:35:05 <AnMaster> oklopol, sorry then
23:36:01 <oklopol> i'm perfectly logical. i just have different axioms.
23:36:14 <psygnisfive> fizzie: im sure thats the case, but i dont do much recursive descent stuff, so i cant really conceptualize why :)
23:36:21 <AnMaster> nice oklopol
23:36:25 <AnMaster> oklopol, what axioms?
23:36:35 <oklopol> (and a few psychological bugs)
23:36:38 <oklopol> err.
23:36:43 <oklopol> i haven't actually listed them.
23:36:50 <bsmntbombdood> i have yet to write a real parser
23:36:53 <AnMaster> oklopol, indeed, that is why I asked
23:36:56 <oklopol> have you listed yours?
23:37:05 <AnMaster> oklopol, not yet on irc
23:37:13 <AnMaster> oklopol, and I need to consider them
23:37:24 <AnMaster> seeing your as examples would help me define them clearer
23:37:24 <psygnisfive> bsmntbombdood i have a copy of a really good intro to parsers book
23:37:37 <psygnisfive> well, its more of a somewhat comprehensive parsing techniques book actually
23:37:43 <psygnisfive> but it goes through a lot of intro stuff too
23:37:48 <psygnisfive> if you want i'll send it to you
23:37:55 <oklopol> parsing is a solved problem
23:38:01 <psygnisfive> it is rather.
23:38:12 <psygnisfive> not that there aren't new and better techniques to be found
23:38:12 <bsmntbombdood> reading a book on a monitor isn't pleasent
23:38:14 <oklopol> BECAUSE THAT DOESN'T GET SAID ENOUGH
23:38:18 <psygnisfive> print it out then :p
23:38:53 <oklopol> reading on a monitor is pleasant, the only problem is irl books are prettier.
23:39:06 <ehird> i knowwwwwwww
23:39:08 <ehird> books are so awesome
23:39:09 <psygnisfive> painfully true
23:39:13 <AnMaster> psygnisfive, what is the name/ISBN of this book?
23:39:16 <bsmntbombdood> printing is expensive and slow
23:39:19 <AnMaster> just wondering
23:39:48 <psygnisfive> Parsing Techniques - A Practical Guide
23:39:55 <psygnisfive> you can actually get it online i just forget where
23:39:59 <AnMaster> psygnisfive, and ISBN?
23:40:01 <psygnisfive> you can probably find it by googling that.
23:40:05 <psygnisfive> no idea, anmaster. no idea.
23:40:06 <ehird> woo
23:40:06 <ehird> print to_python("{'a':{'b':lambda a: a}}; def a(b={'a':2}): { pass }")
23:40:08 <ehird> works properly
23:40:20 <psygnisfive> http://www.cs.vu.nl/~dick/PTAPG.html
23:40:31 <psygnisfive> ISBN 0 13 651431 6
23:40:39 <psygnisfive> tho you can download it there
23:42:53 <bsmntbombdood> ugh my local library sucks so hard
23:43:16 <ehird> oklopol: can you writerate a program for me :P
23:47:24 <ehird> whee, it also handles def a(): { return {'a':2} }
23:47:28 <ehird> that's quite enough testing.
23:47:57 <bsmntbombdood> guh
23:48:01 <bsmntbombdood> i am looking on amazon for books
23:48:06 <bsmntbombdood> that shit's expensive
23:49:28 <bsmntbombdood> a used copy of introduction to algorithms for $70?!?!
23:50:14 <fizzie> That's strange, I get a "whoa, that stuff's so cheap" feeling, thanks to the book prices here. Most of my course books (if bought new from a local retailer) have had prices around $100.
23:50:53 <fizzie> Amazon seems to be clever enough to find Introduction to Algorithms if I write "clrs" in the search-box.
23:52:04 <ehird> $100, yikes :D
23:52:13 <ehird> books are crazy expensive : D
23:53:01 <fizzie> I'm not sure what's up with that $70-used version of CLRS. Even though it's printed in 2003, it's still the same old 2nd edition, for which Amazon is selling new copies (hardcover, even) for $60.
23:54:17 <fizzie> Even the page count is higher (1184 pages vs. 1056 pages) in the old one, so it's not like they'd have added any stuff.
23:55:42 <ehird> they could add and remove.
23:56:03 <fizzie> FWIW, in the two largest local book stores here in Finland, the hardcover edition of CLRS sells for $130.
23:56:38 <fizzie> Of course it's a big book. I think I've used that thing to stand on when I couldn't quite reach something.
23:56:47 <bsmntbombdood> i should probably buy it
23:58:09 <ehird> uh-oh, a bug
23:58:37 <fizzie> ("Full disclosure" note: as a cheap student, I got the non-hardcover edition.)
2009-01-19
00:00:18 <oklopol> cheap or poor?
00:00:27 <fizzie> Both, I think.
00:00:36 <ehird> oh no.
00:00:39 <ehird> a _terrible_ bug
00:01:46 <oklopol> hmm. how advanced is introduction to algorithms, and why clrs?
00:01:54 <fizzie> Well, it's the classic.
00:02:03 <fizzie> And it's called CLRS because of the authors.
00:02:04 <oklopol> yes but i haven't read it. i assume you have
00:02:06 <oklopol> oh.
00:02:16 <oklopol> right.
00:02:44 <fizzie> Well, it's no Knuth. So it's not very advanced-advanced. But it's (maybe) good to have a reference book of them basics, just in case.
00:03:13 <fizzie> The first edition was abbreviated CLR; the second edition added an author and a letter in the abbrev.
00:03:20 <oklopol> does it prove algos, or just state them?
00:03:45 <oklopol> or a random mixture
00:04:07 <fizzie> Something like that. It's not *that* formal, but it's no cookbook either.
00:04:31 <ehird> http://pastie.org/364233.txt?key=9rpypyo03fxtfukjimeq
00:04:35 <fizzie> There's a reasonable amount of work done on computing worst-case asymptotic effectiveness and things like that.
00:04:40 <ehird> Bracism->Python translator.
00:04:44 <ehird> Written in Bracism, of course. :-P
00:04:55 <oklopol> well yes, but that's much easier than correctness proofs, ime
00:05:13 <ehird> wait actually i broke it fuck
00:05:22 <bsmntbombdood> ehird: how does it do dictionaries?
00:05:27 <ehird> bsmntbombdood: cleverly
00:05:35 <ehird> ill show the non-obfuscated source
00:05:35 <ehird> second
00:06:17 <ehird> just need to fix this one bug
00:06:34 <fizzie> oklopol: Sure, that's probably why they've bothered to do them.
00:07:06 <ehird> bsmntbombdood: http://pastie.org/private/wqoy0vq8pdrfkapgzgg
00:07:15 <ehird> should be fairly easy to figure out how it works
00:07:16 <oklopol> because ordos and the like are often pretty much just arithmetic, with a small layer of explanation
00:07:55 <oklopol> i read *an* introduction to algorithms at some point i think
00:08:07 <oklopol> i mean skimmed through it because i already knew all the algos
00:09:31 <oklopol> no actually there were a few trees i didn't know about, these things where you have the strings as paths in a tree, and can thus check what's in the dict etc.
00:09:38 <oklopol> but anyway, i wonder what book that was
00:10:17 <ehird> bsmntbombdood: see how it works?
00:10:20 <oklopol> it was really big, but most of it was sample code, which was written in C# i think, and thus took the bulk of the book (levenshtein was like 3 pages)
00:10:21 <bsmntbombdood> no.
00:10:42 <ehird> bsmntbombdood: :D, basically, it only triggers a block if you have a colon, whitespace, then a {, BUT
00:10:51 <ehird> it only does that trigger if the last { seen entered a block
00:11:00 <ehird> so {...} doesn't enter a block, no colon
00:11:01 <ehird> but
00:11:04 <ehird> {'a': {}}
00:11:05 <ehird> doesn't either
00:11:09 <ehird> since the last { seen didn't open a block
00:11:19 <ehird> it's an essentially foolproof algorithm
00:12:02 <fizzie> CLRS code samples are all in their own pseudo-code thing.
00:12:19 <ehird> pseudo-code is a great evil.
00:12:56 <fizzie> The book's web page has their LaTeX macro for typesetting that pseudo-code, I've used it a couple of time for presentation slides and stuff.
00:13:37 <ehird> fizzie are you IRL buds with lament I have this fucked up view of #esoteric, and all the ops know each other.
00:13:56 <fizzie> ehird: No. I don't even know which country lament is from.
00:14:03 <ehird> he lives in canada.
00:14:10 <oklopol> but he's russian
00:14:10 <ehird> but he's russian iirc
00:14:13 <ehird> snap
00:14:28 <ehird> He's like a superhero
00:14:34 <ehird> "LAMENT! He lives in canada...
00:14:36 <ehird> But he's RUSSIAN!"
00:14:50 <oklopol> yeah, i wonder why that was such a crucial detail
00:15:04 <oklopol> i mean i'm australian, but i don't mention it much
00:15:08 <ehird> lol
00:15:13 <ehird> lament has inherent russian-nature
00:15:23 <ehird> wait oklopol are you really australian
00:15:35 <oklopol> ehird: how really are we talking?
00:15:36 <fizzie> From the people in the nick-list I only IRL-know ineiros. And I might've seen Deewiant accidentally, since we're in the same university.
00:15:42 <ehird> oklopol: like, really
00:15:48 <oklopol> like really really?
00:15:53 <ehird> fizzie: wait you know ineiros the famous idler? WHOAAAAAAAAA.
00:16:04 <ehird> he's been idle _thirty two days_
00:16:44 <oklopol> i haven't seen esotericers irl, not even myself
00:16:44 <fizzie> Not on the IRCnet side of the fence.
00:16:50 <oklopol> at least directly and completely
00:17:01 <ehird> IRCnet is a crazy finnish thing.
00:17:09 <ehird> oklopol: there needs to be an #esoteric meetup sometime :|||||||
00:17:17 <oklopol> hehe.
00:17:37 <ehird> would be so coo
00:17:38 <ehird> l
00:17:39 <fizzie> It's not that Finnish. Although I haven't seen statistics.
00:18:02 <fizzie> There are .de people around, at least.
00:18:06 <AnMaster> night
00:20:53 <fizzie> Seems to be sort-of losing in popularity: http://irc.netsplit.de/networks/details.php?net=IRCnet&submenu=years when compared to the trend in http://irc.netsplit.de/networks/details.php?net=freenode&submenu=years
00:21:46 <ehird> Freenode has only had 52041 users max?
00:21:48 <ehird> Seriously?
00:22:23 <fizzie> Well, it's not a big network.
00:22:37 <ehird> It feels like one of the biggest...
00:22:59 <fizzie> :wolfe.freenode.net 266 fasdfa :Current global users: 44083 Max: 52254
00:23:28 <fizzie> Must sleeps now, night.
00:24:22 <bsmntbombdood> hmmm
00:24:28 <bsmntbombdood> so in haskell all object are immutable
00:24:38 <bsmntbombdood> does that mean they can use reference-counting for gc?
00:24:55 <oklopol> no
00:25:45 <oklopol> you can still have circular references that go out of scope
00:25:45 <bsmntbombdood> no?
00:26:00 <bsmntbombdood> how can you have a cricular reference?
00:26:09 <ehird> bsmntbombdood: easy
00:26:12 <ehird> let x = [x]
00:26:15 <oklopol> a=1:a?
00:26:21 <oklopol> x=[x] doesn't work
00:26:26 <ehird> oh
00:26:27 <ehird> right
00:26:28 <ehird> types
00:26:30 <ehird> :P
00:26:37 <ehird> newtype Foo = Foo Foo
00:26:41 <ehird> myFoo = Foo myFoo
00:26:45 <oklopol> yeah it's not like types are that crucial in haskell :P
00:26:51 <bsmntbombdood> oh hmm
00:27:16 <ehird> bsmntbombdood: in fact, circular structures are very good for haskell programs
00:27:22 <ehird> e.g. a fold over an infinite list is an interesting control structure
00:27:59 <oklopol> bsmntbombdood: take this with a grain of salt though, i'm not feeling all that bright today, there might be some other optimizations for gc at least, given immutability.
00:28:28 <oklopol> i just haven't thought or read about it, and clearly you can at least do what makes mutable stuff circumvent refcounting.
00:31:45 <bsmntbombdood> http://www.amazon.com/Garbage-Collection-Algorithms-Automatic-Management/dp/0471941484
00:31:48 <bsmntbombdood> that book is $100
00:35:33 <oklopol> lol cool
00:39:39 <kerlo> http://product.half.ebay.com/_W0QQcpidZ405747QQprZ305965
00:40:01 <ehird> 1996?
00:40:09 <ehird> Garbage collection has progressed a loooooong way since then.
00:40:28 <kerlo> "Visible shelf wear -- may have some notes/markings on pages" - $32.00
00:40:56 <bsmntbombdood> lofl
00:41:06 <bsmntbombdood> Never used - may have notes
00:41:12 <ehird> lol
00:41:15 <ehird> lofl: lolling on the floor laughing?
00:41:22 <ehird> or
00:41:26 <ehird> laughing on the floor louding?
00:41:39 <bsmntbombdood> there is no expansion
00:41:40 <bsmntbombdood> just lofl.
00:41:43 <kerlo> Loudly on the floor laughing.
00:41:45 <ehird> oic
00:41:48 <kerlo> I am loudly on the floor.
00:41:48 <ehird> kind of like oko then
00:50:05 <GregorR> I see that my name has been said, so I look up through history to see in what context it was said, and am subjected to THAT :P
00:52:04 <ehird> what was it
00:55:51 <psygnisfive> mnomnomno
01:09:08 <MizardX> ehird: I think I got the persistance of triggers working. http://dpaste.com/110549/
01:09:46 <MizardX> just need to call bot.save_callbacks() to save, and it is loaded upon restart
01:11:54 -!- Corun has quit ("Leaving").
01:13:52 <MizardX> ehird: Strangely, the issue with the topic-change doesn't seem to have any obvious solution. The bot sends the TOPIC-command to the server, which responds with the standard ":nick!user@host TOPIC #chan :...", but the topic doen't seem to get changed anyway.
01:17:57 -!- seabot has quit (Read error: 113 (No route to host)).
01:37:49 <bsmntbombdood> is something besides bsmntbombdood developing bsmnt_bot ?!?!
01:48:29 <MizardX> well... ehird asked me to make added triggers persistant
01:51:30 <psygnisfive> ive begun coding the interp for my language :o
01:52:34 <psygnisfive> and its working :D
02:31:25 <comex> >>> import each
02:31:27 <comex> >>> ['a', 'b', 'C'].each().upper()
02:31:29 <comex> eo['A', 'B', 'C']
02:31:30 <comex> >>>
02:38:57 <kerlo> I no longer like Python.
02:39:44 <kerlo> Then again, you can do wild things like that in Haskell, too.
02:39:52 <comex> I got the idea from IO
02:40:20 <kerlo> You mean you can actually do that in Haskell?
02:40:29 <comex> ?
02:40:43 <kerlo> Er.
02:40:48 <comex> however, implementing it in python required using ctypes to get at the internal dict :D
02:40:53 <kerlo> Never mind.
02:41:13 <comex> I don't know haskell :(
02:41:19 <comex> I'm afraid to learn it because then I will forget about prolog
02:41:37 <kerlo> newtype Each a = Each [a]; instance Stuff a => Stuff (Each a) where f (Each a) = Each (map f a)
02:42:01 <kerlo> Where Stuff is an arbitrary class, and f is an arbitrary class variable thingy.
02:42:26 <comex> I'll get back to you on that when I understand Haskell. ;)
02:42:33 <kerlo> :-)
02:43:03 * kerlo ponders the continuous functions in Sierpinsky space
02:45:48 <kerlo> Sierpinski, rather.
02:53:05 <kerlo> Oh, cool, a function to the Sierpinski space is continuous if and only if the set of functions it maps to 1 is open.
02:54:04 -!- GreaseMonkey has joined.
03:40:38 -!- bsmnt_bot has quit (Excess Flood).
03:41:36 <MizardX> ...
04:00:02 <bsmntbombdood> dc is awesome
04:00:15 <bsmntbombdood> it's sooo esoteric even though it was intended as a serious language
04:24:27 -!- puzzlet_ has quit (Read error: 60 (Operation timed out)).
04:25:34 -!- puzzlet has joined.
04:30:43 <psygnisfive> :D
04:36:58 <bsmntbombdood> i am teh bored
04:45:38 <GregorR> bsmntbombdood: HELP ME WRITE ZEE
04:45:52 <bsmntbombdood> whut is that
04:46:22 <GregorR> ZEE is a game I'm writing, it stands for Zoom-Enhance-Extrapolate. It's a parody of those scenes in spy movies where they magically ... well, zoom, enhance and extrapolate images.
04:46:27 <GregorR> It's sort of an image-maze game.
04:46:59 <bsmntbombdood> i don't believe in games
04:47:15 <GregorR> You don't believe that they exist? :P
04:50:16 <bsmntbombdood> good god, cpython is a quarter-million sloc
04:51:23 <bsmntbombdood> i was gonna take a look at it
05:27:38 -!- oerjan has joined.
06:25:17 <psygnisfive> my language is working! :D
06:25:20 <psygnisfive> well, not all of it
06:25:23 <psygnisfive> but some of it
06:25:26 <psygnisfive> the important stuff!
06:25:36 <oerjan> so you did solve your parsing problem?
06:25:51 <psygnisfive> oh, no, that wasn't for this yet. im going to need to solve it eventually.
06:25:54 <psygnisfive> and no, i didn't. not yet
06:26:00 <oerjan> what kind of parsing is it?
06:26:06 <psygnisfive> what do you mean?
06:26:24 <oerjan> LR parsing or recursive descent, or what?
06:26:34 <psygnisfive> havent decided/determined yet.
06:28:12 <oerjan> anyway, the thing is that when you recognize a non-terminal token, you should know what tokens it consists of.
06:28:46 <oerjan> so you can build the tree out of the trees for the subtokens at the same time...
06:29:15 <psygnisfive> im not entirely sure how you mean that but ok :P
06:29:52 <oerjan> well consider LR parsing. you have some tokens on the stack, and recognize that they form a non-terminal production
06:30:17 <oerjan> so you do a reduction, perhaps after considering lookahead
06:31:02 <oerjan> now, if you already have the trees for the subtokens built up, you can just combine them to get the tree for the replacement non-terminal
06:31:24 <psygnisfive> sdjfhsajkdhfs
06:31:25 <psygnisfive> dude
06:31:31 <psygnisfive> dont even
06:31:32 <psygnisfive> :P
06:32:09 <oerjan> once more: you build the trees _while_ you are recognizing tokens, not afterwards
06:32:22 <psygnisfive> ok.
06:33:23 <oerjan> each token comes with its subparse tree
06:39:06 -!- bsmnt_bot has joined.
06:39:11 -!- bsmnt_bot has quit (Remote closed the connection).
06:42:58 <psygnisfive> man
06:43:04 <psygnisfive> the ruby socket docs are horrible
06:43:07 <psygnisfive> all ruby docs are
06:43:11 <psygnisfive> wtf is wrong with these people
06:50:35 -!- Alt-255 has joined.
06:50:39 <psygnisfive> haha nice
06:50:44 -!- Alt-255 has quit (Remote closed the connection).
06:51:26 -!- Alt-255 has joined.
06:52:23 -!- Alt-255 has quit (Remote closed the connection).
06:53:36 -!- Alt-255 has joined.
06:53:40 -!- Alt-255 has quit (Remote closed the connection).
06:53:59 -!- Alt-255 has joined.
06:54:06 -!- Alt-255 has quit (Remote closed the connection).
06:55:12 -!- Alt-255 has joined.
06:55:18 -!- Alt-255 has quit (Remote closed the connection).
07:17:18 -!- oerjan has quit ("leaving").
07:39:30 <psygnisfive> guys!
07:41:42 -!- kerlobot has joined.
07:52:02 -!- ehird has quit (K-lined).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:06 -!- psygnisf_ has joined.
08:02:16 -!- psygnisf_ has changed nick to psygnisfive_.
08:02:16 -!- GregorR has quit (Remote closed the connection).
08:02:30 <MizardX> K-lined :P
08:02:39 -!- psygnisfive_ has changed nick to psygnisfive__.
08:02:41 <psygnisfive__> hm
08:02:45 <psygnisfive__> i seem to have died
08:02:47 <psygnisfive__> what did i miss
08:02:57 -!- psygnisfive__ has changed nick to psygnisfive_.
08:03:43 -!- psygnisfive_ has changed nick to psygnisfive_____.
08:03:50 -!- psygnisfive_____ has changed nick to p5.
08:03:56 <AnMaster> * ehird has quit (K-lined) <-- wow, why?
08:04:02 <AnMaster> what did he do?
08:04:11 -!- p5 has changed nick to cygnus5.
08:04:17 <cygnus5> hrmph
08:04:27 <MizardX> maybe too many Excess Flood...
08:04:57 <fizzie> Heh, and he's always saying that Freenode admins do nothing.
08:05:33 -!- AntiGravityBot has joined.
08:05:36 <cygnus5> :D
08:06:53 <cygnus5> my bot is sexy innit
08:06:53 <cygnus5> :D
08:11:25 -!- ehird has joined.
08:11:30 <AnMaster> ehird, hello
08:11:37 -!- ehird has quit (K-lined).
08:11:39 <AnMaster> what the heck did you do to get klined...
08:11:40 <AnMaster> wtf
08:11:56 <AnMaster> MizardX, maybe too many clients from one host?
08:12:00 -!- AntiGravityBot has quit (Remote closed the connection).
08:12:18 -!- AntiGravityBot has joined.
08:13:37 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
08:21:20 -!- AntiGravityBot has quit (Remote closed the connection).
08:21:29 -!- cygnus5 has changed nick to psygnisfive.
08:22:31 -!- AntiGravityBot has joined.
08:22:38 <psygnisfive> so!
08:22:47 <psygnisfive> i now have a bot that runs most of my little language. :D
08:28:30 -!- AntiGravityBot has quit (Remote closed the connection).
08:34:30 -!- puzzlet has quit (Remote closed the connection).
08:34:34 -!- puzzlet has joined.
08:47:29 -!- GregorR has joined.
08:57:01 -!- ais523 has joined.
08:57:34 -!- GreaseMonkey has quit ("Client Excited").
09:00:43 -!- ais523 has quit (Client Quit).
10:29:16 -!- puzzlet has quit (Remote closed the connection).
10:29:25 -!- puzzlet has joined.
11:06:34 <oklopol> GregorR: It's sort of an image-maze game. <<< like, all you can do is zoom, but only some parts of the picture contain details you can actually zoom to?
11:11:49 <oklopol> somehow the fractal's structure hints where the path continues
11:12:02 <oklopol> and at the end, there's a little winking smiley
11:12:04 <oklopol> ";)"
11:12:16 <oklopol> so you know you finally did it.
11:16:35 <AnMaster> hm
11:16:42 <AnMaster> a lot of games are way too weak on the plot I think
11:17:12 <AnMaster> However, I'm not good at making up game plots myself...
11:17:28 <AnMaster> Two games in particular.
11:17:33 <AnMaster> 1) Chess 2) Tetris
11:17:37 <AnMaster> both need more plot :D
11:17:42 <oklopol> no they don't
11:18:00 <AnMaster> oklopol, well, not "need" indeed. But it wouldn't hurt.
11:18:20 <oklopol> it would hurt, it would just distract from the games' actual problems
11:18:45 <AnMaster> oklopol, well, you could include it as "background info" or something
11:18:48 <oklopol> well okay, i'm not saying anything bad about tetris, but chess doesn't really work as a computer game.
11:18:57 <AnMaster> oklopol, agreed.
11:18:58 <oklopol> because you can't build on it.
11:19:07 <AnMaster> um?
11:19:09 <oklopol> it's always the same, change it, and it simply isn't chess anymore.
11:19:20 <AnMaster> oh that would be fun, chess with trench digging!
11:19:20 <oklopol> thus it's more of a puzzle imo
11:19:23 <AnMaster> :D
11:19:43 <oklopol> puzzle-typey game, not the kind that's fun to play with the computer
11:19:56 <AnMaster> oklopol, make chess an RTS!
11:20:02 <oklopol> real-time system?
11:20:14 <AnMaster> real time strategy
11:20:22 <oklopol> oh. right lol.
11:20:27 <AnMaster> as opposed to turn based
11:20:59 <oklopol> trench digging?
11:21:18 <AnMaster> oklopol, yes?
11:21:34 <oklopol> just making sure i heard
11:21:41 <AnMaster> oklopol, http://en.wikipedia.org/wiki/Trench_warfare
11:21:57 <AnMaster> you dig them
11:22:13 <AnMaster> oklopol, also add hitpoints to the chess pieces
11:22:18 <oklopol> right that kinda trench.
11:22:19 <AnMaster> and ranged weapons
11:22:29 <oklopol> i just thought you wanted to reroute rivahs or something.
11:22:41 <AnMaster> oklopol, now, at which point is it no longer chess? :D
11:22:59 <oklopol> i'd say pretty much instantly, and that's my point
11:23:05 <AnMaster> hehe
11:24:14 <oklopol> it's not a very continuous game, on any level, it breaks easily, in a way
11:24:49 <oklopol> well okay not that easily, i guess this is more about what i consider the chess philosophy to be.
11:27:03 <oklopol> chess is more of an algorithmic game, you can't continuously add challenge to it, as material, i guess is my point.
11:28:26 <oklopol> the only way you can safely add challenge is to make the AI gradually better, but, well, first of all that doesn't really have a continuing feel to it. and second of all AI isn't inherently very gradually enhancable.
11:28:52 <oklopol> it just isn't all that visible how good the AI is, at least to me. it just sometimes wins, sometimes not.
11:29:10 <oklopol> i mean unless you're really good at chess, which i obviously am not.
11:29:20 <AnMaster> heh
11:29:37 <AnMaster> oklopol, nor am I
11:30:04 <oklopol> AnMaster: i know dat
11:31:22 <oklopol> tetris is pretty easy to build on, the general idea of dropping shit into a pile with rewrite rules is used quite a lot
11:32:16 <oklopol> not directly though, ofc, if you just increased the size of the dropped objects, and kept them random, you'd never get a complete row
11:32:45 <oklopol> you'd have to add fuzzy row removing
11:32:54 <oklopol> which again isn't very tetrisy.
11:33:32 <oklopol> but, if the puzzles were handmade, or, well, even just generated more sensibly, you could even have continuous tetris
11:33:58 <oklopol> of course, if you fucked up, you might never be able to get the piece destroyed.
11:34:08 <oklopol> because it might not fit anything else
11:34:19 <AnMaster> hm
11:34:34 <AnMaster> continuous tetris?
11:34:43 <oklopol> pieces of arbitrary form.
11:34:46 <AnMaster> ah
11:35:23 <oklopol> of course closed, having holes would make it kinda hard to remove the insides (impossible, assuming the pieces can't roll around, which isn't tetrisy again)
11:44:51 <AnMaster> oklopol, you could also make something like, tetris but remove blocks of same colors if they are large enough
11:45:02 <AnMaster> I think I have seen that once
11:45:06 * AnMaster tries to remember where
11:45:46 <AnMaster> oh yes... http://kfouleggs.sourceforge.net/
11:46:21 <oklopol> yes, that's the most common rewrite-rule-pile-based game.
11:46:32 <oklopol> it has tons of variations
12:00:56 <AnMaster> true
12:08:58 -!- ais523 has joined.
13:11:47 -!- ehird has joined.
13:13:06 -!- bsmnt_bot has joined.
13:13:08 -!- bsmnt_bot has quit (Remote closed the connection).
13:25:57 <ehird> WTF @ K-LINE
13:26:02 -!- ais523 has quit (Client Quit).
13:26:42 <ehird> 17:13:52 <MizardX> ehird: Strangely, the issue with the topic-change doesn't seem to have any obvious solution. The bot sends the TOPIC-command to the server, which responds with the standard ":nick!user@host TOPIC #chan :...", but the topic doen't seem to get changed anyway.
13:26:44 <ehird> rate throttling?
13:27:10 <ehird> 18:40:48 <comex> however, implementing it in python required using ctypes to get at the internal dict :D
13:27:12 <ehird> no, it really didn't
13:27:18 <ehird> you can implement that trivially
13:28:31 <ehird> Anyway, I was offline when I was klined.
13:28:34 <ehird> I am asking #freenode now.
13:29:04 <MizardX> ehird: No. If I look at the console window (running the bot locally), the bot gets the standard response for successful topic change, but I don't see that in my normal IRC client.
13:29:17 <ehird> MizardX: That's very wtf.
13:34:21 <ehird> told me to email kline@freenode.net..
13:34:23 <ehird> I love indirection.
13:34:32 -!- ais523 has joined.
13:34:44 <ehird> Hi ais523.
13:34:49 <ehird> Why'dya think I got klined twice overnight?
13:35:12 <ais523> no idea
13:35:16 <ais523> which network? Freenode?
13:35:59 <ehird> Yep.
13:36:04 <ehird> I've sent an email to kline@freenode.net.
13:36:13 <ehird> Very WTFy.
13:36:29 <ehird> ais523: are there automatic K-lines
13:36:30 <ehird> ?
13:36:34 <ais523> maybe some nick that yours is linked to got hijacked?
13:36:38 <ais523> and went mad?
13:37:19 <fizzie> There used to be automatic K-lines on joining known botnet control channels, but that probably doesn't apply.
13:37:36 <ais523> also on joining GNAA channels
13:37:41 <ais523> hmm... do you have autojoin on invite?
13:38:02 <ehird> 13:36 <ais523> maybe some nick that yours is linked to got hijacked?
13:38:02 <ehird> 13:36 <ais523> and went mad?
13:38:09 <ehird> Considering the hostname was eso-std.org I very much doubt it.
13:38:12 <ais523> that combination seems to be an obvious way to get someone klined, if it works
13:38:17 <ehird> And I do not have autojoin on invite because it was my _freaking bouncer_
13:38:23 <ehird> Also, I've joined #gnaa on freenode before. No kline.
13:38:26 <ais523> anyway, in a lecture, I'd better go
13:38:30 -!- ais523 has quit (Client Quit).
13:40:00 <Slereah> What, #gnaa does not have hot african sex?
13:49:53 -!- ehird has quit (K-lined).
13:51:46 <fizzie> Maybe they didn't like his tone in the email.
13:52:33 <oklopol> :P
13:52:53 <oklopol> maybe he should ask his big brother for help
14:06:28 -!- seabot has joined.
14:12:09 -!- seabot has quit (Remote closed the connection).
14:29:31 -!- seabot has joined.
14:35:21 -!- seabot has quit (Remote closed the connection).
15:03:14 -!- KingOfKarlsruhe has joined.
15:15:52 -!- MigoMipo has joined.
15:16:38 -!- join has joined.
15:17:06 -!- join has changed nick to Guest21688.
15:18:01 -!- Guest21688 has changed nick to Slereah_.
15:22:05 -!- puzzlet has quit (Remote closed the connection).
15:22:10 -!- puzzlet has joined.
15:23:26 -!- FireFly has joined.
15:24:53 -!- ehird_ has joined.
15:24:59 <ehird_> The fuckers. I'm still fucking banned.
15:25:06 <ehird_> God, freenode is a bunch of incompetend retards.
15:25:18 <ehird_> *incompetend
15:25:19 <ehird_> *incompetent
15:27:50 <fizzie> You'd better watch that mouth of yours, they'll be k-lining you for calling them retards.
15:28:01 <ehird_> Verily.
15:29:32 <ehird_> It'd be nice if they, say, unbanned me while trying to fix it.
15:29:40 <ehird_> Instead of "contact our shitty issue tracker so we can ignore it".
15:32:01 -!- Slereah has quit (Read error: 110 (Connection timed out)).
15:45:42 -!- KingOfKarlsruhe has quit (Remote closed the connection).
15:51:56 -!- jix has joined.
16:02:13 -!- dbc has joined.
16:03:46 <comex> ehird / ehird_
16:03:51 <comex> how do you propose this be trivially implemented
16:04:35 <comex> specifically, you can't just do list.foo = 'bar'
16:08:15 <ehird_> what is subclassing
16:08:24 <ehird_> each([1,2,3]) is so bad? :P
16:08:55 <ehird_> also im ehird_ cuz ehird got k-lined.
16:18:41 <ehird_> hi comex ico
16:20:46 <comex> yes
16:20:48 <comex> it is
16:21:01 <comex> because it requires thinking you're going to use "each" before typing out the list
16:21:08 <comex> this is a laziness construct
16:21:12 <ehird_> " what is cursor positioning "
16:21:21 <comex> however, obviously its uses in python are limited
16:21:57 <ehird_> clearly we should all use scheme
16:22:04 <comex> in io you can do, say, list(foo, bar, baz) each setNumber(x += 1)
16:22:08 <ehird_> clearly we should all use scheme
16:30:06 <ehird_> AAAAAAAAAAA
16:30:46 -!- MigoMipo has left (?).
16:31:21 <ehird_> still fucking klined
16:43:47 -!- ais523 has joined.
16:59:25 -!- oerjan has joined.
16:59:35 <ehird_> hi ais523 oerjan
16:59:43 <ais523> hi ehird_ oerjan
16:59:49 <ais523> *hi oerjan ehird_
16:59:53 <oerjan> hi ais523 ehird_
16:59:55 <ais523> we need some chance at symmetry here...
17:00:12 <oerjan> wait what
17:00:17 <oerjan> well we failed
17:00:28 <ehird_> so, now taking bets as to when freenode will de-kline my bouncer again
17:00:46 <oerjan> ouch
17:01:02 <oerjan> what did it do?
17:01:10 <ehird_> nothing, read the logs
17:01:13 <ehird_> keeps happening
17:01:16 * ais523 vaguely wonders why the desktop background on the Windows computer next to me says "Please Check Monitor For Updated Password"
17:01:21 <ehird_> freenode are incompetent maximus
17:02:00 <ais523> my guess is it's something to do with the practice on the lecture hall computers that they use of putting a guest username/password onto the monitor so visiting lecturers can log in
17:02:02 <oerjan> = incompetentissimus, iirc
17:02:07 <ais523> and it's somehow been deployed over here by mistake
17:02:23 <ais523> there isn't a username/password on this monitor
17:02:43 <ais523> but then, weirder was the time when I came to a similar computer and it was apparently off
17:02:55 <ais523> none of the LEDs on the front looked on (but it was sunny and I couldn't tell for certain)
17:03:01 <ais523> neither the keyboard nor mouse did anything
17:03:16 <ais523> the only thing that made me wonder if it was really off was the Windows XP screensaver on the monitor
17:03:24 -!- ehird_ has set topic: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.
17:03:29 <ehird_> wait what?
17:03:31 <ehird_> bsmnt_bot
17:03:37 <ehird_> ... guess it got klined too
17:04:27 <oerjan> perhaps bsmnt_bot was the reason
17:04:38 <ais523> was it going on a rampage, I wonder?
17:04:44 <ais523> it could be controlled by arbitrary people...
17:04:51 <ais523> does it have logs?
17:04:56 <ehird_> I doubt it, it didn't quit as k-lined
17:05:01 <ehird_> just as connection reset by remote
17:05:07 <ehird_> whereas I was explicitly auto-klined
17:05:10 <ehird_> or, umm, klined by a fucktard
17:05:19 <ehird_> but i'd prefer to think its incompetent programming
17:07:22 <GregorR> Chess plot: You are the king of a great empire, but for years there has been diplomatic tension with the empire just down the road. Now, their fury at you for completely duplicating their army in every detail has heatened so that they've declared war! Neither of your armies are very large (you have enough people to recruit a huge army, but then it wouldn't be an exact duplicate of your neighbors!), so this singular battle will likely determine the vic
17:07:24 <GregorR> tor in the war. Now, send your footsoldiers to their almost certain doom, as they are but pawns in ... oh, never mind. Welcome to the world of CHESS!
17:07:50 <ais523> GregorR: so why can you only move one a turn?
17:08:14 <GregorR> That has nothing to do with the plot, that's just a game rule.
17:08:24 <GregorR> The plot never actually explains the rules, that would be nonsensical.
17:08:40 <ais523> ah, it's just a chess-inspired film
17:08:44 <ehird_> http://groups.google.co.uk/group/net.micro.pc/msg/993d3e017d041ed4
17:08:48 <ehird_> The first me too post. EVER.
17:08:48 <ais523> you should make Tetris: the Movie
17:08:53 <ais523> I've wanted someone to make that for ages
17:08:59 <ehird_> A plague upon csu-cs!casterli.
17:09:00 <ais523> ehird_: how do you know it's the first ever?
17:09:14 <ehird_> ais523: google sez so
17:09:18 <ehird_> http://www.google.com/googlegroups/archive_announce_20.html
17:09:34 <ais523> did Deja really archive usenet right from the start?
17:09:40 <oerjan> <AnMaster> 1) Chess 2) Tetris
17:09:42 <ehird_> no, ais523
17:09:55 <ais523> so there may have been a me-too that wasn't archived and got lost
17:09:56 <ehird_> but near-complete usenet archives are available
17:10:04 <ehird_> and they were mostly meta-discussion about usenet, really
17:10:07 <ais523> fwiw, someone might have written X-No-Archive: yes\n\nMe, too!
17:10:14 <oerjan> ass for (2), there is the sunken city of Tetris in Triangle and Robert...
17:10:19 <oerjan> *as
17:10:21 <ehird_> yeah um I don't think people used those headers back then ais523 :P
17:10:22 <oerjan> DAMNIT
17:10:40 <GregorR> ehird_: Somebody extremely psychic could have :P
17:11:14 <ehird_> http://groups.google.com/group/net.lang.c/msg/66008138e07aa94c
17:11:16 <ehird_> Duff's device
17:11:59 * oerjan recalls seeing a chess-inspired film on TV once. it ended with nuclear war iirc
17:12:16 <ehird_> HOW ABOUT A NICE GAME OF CHESS?
17:12:18 <ais523> "Many people (even Brian Kernighan?) have said that the worst feature of C is that switches don't break automatically before each case label. This code forms some sort of argument in that debate, but I'm not sure whether it's for or against."
17:12:20 <ehird_> oh wait.
17:12:23 <ehird_> oerjan was referencing that.
17:12:24 <ais523> A famous quote, it's nice to see the original
17:12:25 <ehird_> damn you.
17:12:54 <ehird_> Seeing people talk about having written C for 10 years, around 10 years before I was born, is eerie.
17:13:06 <ais523> ehird_: just reading pre-C89 C is eerie
17:13:15 <ais523> some of that would have been written before I was born
17:13:21 <ais523> and the code you're talking about is even older than that
17:14:02 <ehird_> Any, or almost any,
17:14:03 <ehird_> > MacOS app that can run on MacOS8 *WILL* run on MacOSX.
17:14:05 <ehird_> -- 1998
17:14:06 <ehird_> *g*
17:14:55 <ais523> because Apple don't need to stick to an insane backward-compatibility system to try to convince the rest of the world that all computers really are like that
17:17:17 <ehird_> Hrm.
17:18:16 -!- CakeProphet has quit ("lol").
17:19:14 <ehird_> sssssssssssssssssssss
17:19:58 <ehird_> ais523: how come there aren't any old replies to things like http://groups.google.com/group/comp.os.minix/browse_thread/thread/e3df794a2bce97da/2194d253268b0a1b?#2194d253268b0a1b ?
17:20:09 <ehird_> did people not reply in those days? Or are they just lost from the archive?
17:20:23 <ais523> quite possibly not archived
17:20:33 <ais523> Usenet is not very conducive to archiving, the way it's designed
17:20:48 <ais523> you need to be someone big like Google who's connected to more or less everyone to get the whole thing
17:21:06 <ehird_> I'm pretty sure archiving Linus's message was Deja's work.
17:21:23 <ehird_> Well, depends if it's older than Deja.
17:21:23 <ais523> I'd be surprised if Deja managed to get the whole of every thread
17:21:41 <ais523> besides, the discussion may have moved to whatever the old-fashioned equivalent of comp.sources was
17:21:46 <ais523> when he posted the source on Usenet
17:21:46 <ehird_> Who wrote find(1)?
17:21:46 <ehird_> ? iirc some guy with vms experience.
17:21:48 <ais523> that used to be common
17:21:50 <ehird_> Why am I not surprised?
17:23:10 * ais523 finds http://mauke.ath.cx/stuff/poly.html on proggit
17:23:14 <ais523> which is actually esolang-related
17:23:18 <ehird_> Yes.
17:23:20 <ehird_> Does BF & Whitespace.
17:24:09 <ais523> strange...
17:24:15 <ais523> is 0 true for the purposes of ?: in Ruby?
17:24:15 <ehird_> ?
17:24:19 <ais523> that source seems to imply it is
17:24:27 <ehird_> ais523: Only false and nil have falsity in Ruby.
17:24:32 <ais523> aha
17:24:38 <ehird_> (After all, why is 0 false? It's just another number.)
17:24:39 <ais523> clever way to detect Ruby vs. Perl then
17:24:43 <ais523> in code which is almost the same in both of htem
17:24:57 <ehird_> yes
17:25:16 <ehird_> ais523: oh wow
17:25:20 <ehird_> if you leave http://mauke.ath.cx/stuff/poly.html open for a while
17:25:22 <ehird_> it changes
17:25:25 <ehird_> to I'm a javascript-generated HTML page
17:25:31 <ais523> not for me it doesn't
17:25:31 <ehird_> :-D
17:25:37 <ehird_> turn on scripts.
17:25:37 <ais523> it detects all sorts of other things, too
17:25:42 <ais523> scripts enabled is one
17:25:51 <ais523> but it also detects whether you're using trigraphs, in the C
17:25:58 <ais523> and zsh/bash/sh
17:25:58 <ehird_> yes
17:26:07 <ehird_> it does perl6 too :-D
17:26:25 <ais523> actually, I vaguely wonder how Perl6 knows to run just that code
17:26:29 <ais523> is everything else commented out for it
17:26:34 <ais523> or does it have a program-starts-here line?
17:26:34 <ehird_> mauke is a #haskell and ##C denizen FWIW, he's pretty fun
17:26:43 <ehird_> ais523: Same way as all the programs: clever commenting.
17:26:52 <ehird_> and polyglotty snippets
17:27:06 <ais523> we should go for an esolang-only polyglotting record
17:27:20 <ais523> luckily, there are lots of joke lines which autopolyglot into anyhting
17:27:23 <ehird_> I have to say, the fact that it's a Whitespace program is just beautiful.
17:27:36 <ehird_> Polyglots have been done, but not effing whitespace ones.
17:27:46 <ais523> whitespace is quite good for polyglotting into things, really
17:27:57 <ais523> hmm... it's valid HQ9+, ofc
17:28:04 <ais523> but it could be meaningful valid HQ9+ with a couple of tweaks
17:28:09 <ais523> although it would just say hello world
17:29:09 <ais523> ok, that C99 check is just insane
17:31:06 <ehird_> it's also a valid oklotalk program :-D
17:32:07 <ais523> what does it do in oklotalk?
17:32:15 <ehird_> Who knows?
17:32:19 <ais523> AFAICT, it's a Kimian quine in some versions of INTERCAL
17:32:25 <ehird_> But every string of characters is syntactically valid oklotalk.
17:32:35 <ehird_> And oklotalk has no runtime errors.
17:32:49 <ehird_> So it does _something_, possibly nothing.
17:52:10 <AnMaster> back
17:52:12 <AnMaster> hi ais523
17:52:15 <ais523> hi
17:53:18 <oerjan> tnorf
17:55:35 <AnMaster> oerjan, *GROAN*
17:56:09 <ehird_> think my boouncer is still k-lined?
17:58:40 <ehird_> ais523: blognomic is impossible
17:59:41 <ais523> why?
17:59:43 <ais523> and wrong channel?
17:59:54 <ehird_> wrong channel: it's a protest againt my k-line :-P
17:59:56 <ehird_> and because it's so effing fast
18:05:27 <ehird_> http://unix-tree.huihoo.org/V3/usr/man/man1/chdir.1.html
18:05:33 <ehird_> I am so glad they shortened the name
18:06:57 <oerjan> shortened the name of what?
18:07:01 <ehird_> chdir to cd
18:07:10 <oerjan> oh right
18:09:45 <ehird_> i found two old bots of mine yesterday/today.
18:09:48 <ehird_> who wants to play with em
18:10:44 <ehird_> :}
18:10:52 <ehird_> everyone loves bots right?
18:11:50 <ehird_> .
18:12:06 <ais523> ehird_: oko and kok?
18:12:16 <ehird_> nope, KajirBot and seabot
18:12:28 <ehird_> seabot was in here yesterday: it gave birth to Bracism
18:12:40 <ehird_> both in python
18:12:46 <ehird_> so, let's say hello to KAJIRBOT
18:12:51 * ehird_ runs
18:12:58 -!- KajirBot has joined.
18:12:58 <ehird_> here comes!
18:13:01 <ehird_> lo KajirBot!
18:13:03 <ehird_> .help
18:13:03 <KajirBot> feed, help, kill, ps, q, tell, time
18:13:12 <ehird_> .help help
18:13:12 <KajirBot> help [command]
18:13:12 <KajirBot> Displays help on commands.
18:13:19 <ehird_> .help feed
18:13:19 <KajirBot> feed [food]
18:13:19 <KajirBot> Feeds KajirBot.
18:13:23 <ehird_> .feed something
18:13:23 <KajirBot> sorry, i haven't eaten something before. have you got ten black holes?
18:13:27 <ehird_> .feed ten black holes
18:13:27 <KajirBot> thank you :)
18:13:32 <oerjan> .feed mushrooms
18:13:32 <KajirBot> sorry, i haven't eaten mushrooms before. have you got ten black holes?
18:13:32 <ehird_> how cute.
18:13:39 <ehird_> .feed lhc
18:13:40 <KajirBot> sorry, i haven't eaten lhc before. have you got ten black holes?
18:13:45 <ehird_> .feed ten black holes
18:13:46 <KajirBot> thank you :)
18:13:51 <ehird_> .feed sth
18:13:51 <KajirBot> sorry, i haven't eaten sth before. have you got pizza?
18:13:54 <ehird_> .feed pizza
18:13:55 <KajirBot> thank you :)
18:14:00 <ehird_> how pointless. but endearing.
18:14:01 <ehird_> .help
18:14:01 <KajirBot> feed, help, kill, ps, q, tell, time
18:14:04 <ehird_> .time
18:14:04 <KajirBot> Right now, it is 2009-01-19, 18:14 GMT
18:14:07 <ehird_> is it now
18:14:10 <ehird_> .help tell
18:14:10 <KajirBot> tell pid msg
18:14:11 <KajirBot> Sends a message to a process.
18:14:14 <ehird_> oho
18:14:16 <ehird_> .ps
18:14:16 <KajirBot> 0. ps
18:14:34 <ehird_> Okay, um, that is pretty much all it does.
18:14:37 <ehird_> Oh wait!
18:14:41 <ehird_> .q This is like a real AI.
18:14:41 <KajirBot> This is like a real AI?
18:14:46 <ehird_> .q You're fun
18:14:46 <KajirBot> You're fun?
18:14:51 <ehird_> .q I am cool
18:14:52 <KajirBot> you are cool?
18:14:55 <ehird_> .q yes I am
18:14:56 <KajirBot> yes you are?
18:14:59 <ehird_> etc
18:15:03 <ais523> ehird_: that looks to me like a bad elizabot
18:15:13 <ais523> fungot: meet KajirBot
18:15:13 <fungot> ais523: that's good though if it's going so slowly that i think
18:15:17 <ehird_> ais523: it just adds a ? and swaps I/you :-) and am/are :-)
18:15:19 <ais523> .q that's good though if it's going so slowly that i think
18:15:19 <KajirBot> that's good though if it's going so slowly that you think?
18:15:26 <ehird_> .q fungot
18:15:27 <KajirBot> fungot?
18:15:27 <fungot> ehird_: ( ( out if she does move you know i didn't know that mm th- there's no other circumstances that uh people are not even computer literate they don't even touch the tip of the iceberg when it comes
18:15:27 <fungot> KajirBot: at the same
18:15:40 <ehird_> .q fungot, will you marry me?
18:15:40 <KajirBot> fungot, will I marry me?
18:15:40 <fungot> ehird_: even seen it and have thought nothing maybe their first thought would've been okay there's a helen of troy okay there's a helen of troy okay there's a helen of troy okay there's a bunch of ' em
18:15:41 <fungot> KajirBot: unfortunately i guess you would have a lot to do with
18:15:41 <ais523> ehird_: Kajirbot doesn't respond to its name, though, it seems
18:15:45 <ehird_> ais523: nope
18:16:08 <ehird_> .q are__
18:16:08 <KajirBot> are__?
18:16:12 <ehird_> hmm
18:16:15 <ehird_> there's a way to break this
18:16:16 <ehird_> .q are___
18:16:17 <KajirBot> are?
18:16:20 <ehird_> :-)
18:16:27 <ehird_> def swap(a, b, q):
18:16:27 <ehird_> q = ' %s ' % q
18:16:27 <ehird_> q = re.sub(re.compile(r' %s ' % a, re.I), ' %s___ ' % b, q)
18:16:27 <ehird_> q = re.sub(re.compile(r' %s ' % b, re.I), ' %s ' % a, q)
18:16:27 <ehird_> q = re.sub(re.compile(r' %s___ ' % b, re.I), ' %s ' % b, q)
18:16:29 <ehird_> return q[1:-1]
18:16:45 <ehird_> Bot review: good code, cute, but lacks features.
18:16:51 <ehird_> Now, for seabot.
18:17:07 -!- seabot has joined.
18:17:15 <ehird_> This is seabot. He is pretty advanced:
18:17:16 <ehird_> .help
18:17:16 <KajirBot> feed, help, kill, ps, q, tell, time
18:17:18 <ehird_> er
18:17:19 <ehird_> @help
18:17:19 <seabot> cdecl: cdecl
18:17:19 <seabot> help: help
18:17:19 <seabot> karma: karma karma+ karma-
18:17:19 <seabot> meta: load reload unload
18:17:19 <seabot> python: python
18:17:23 <ehird_> @karma seabot
18:17:24 <seabot> seabot has a karma of 2
18:17:28 <ehird_> Persistance!
18:17:44 <ehird_> @python if 1 == 1: { print "[broken implementation of] bracism!" }
18:17:44 <seabot> [broken implementation of] bracism!
18:17:52 <ehird_> @python __import__
18:17:52 <seabot> <bound method MagicGlobals.__import__ of <a big brother>>
18:17:55 <ehird_> @python __import__('sy')
18:17:58 <ehird_> @python __import__('sys')
18:18:08 <ehird_> o_o
18:18:16 <ehird_> ah
18:18:20 <ehird_> it rejects imports
18:18:22 <ehird_> @python __builtins__
18:18:23 <seabot> <bound method MagicGlobals.__builtins__ of <a big brother>>
18:18:25 <ehird_> @python __builtins__()
18:18:26 <seabot> NameError: global name 'builtins' is not defined
18:18:31 <ehird_> @python builtins()
18:18:31 <seabot> NameError: name 'builtins' is not defined
18:18:34 <ehird_> meh
18:18:40 <ehird_> @help
18:18:40 <seabot> cdecl: cdecl
18:18:40 <seabot> help: help
18:18:40 <seabot> karma: karma karma+ karma-
18:18:40 <seabot> meta: load reload unload
18:18:40 <seabot> python: python
18:18:50 <ehird_> ais523: try cdecl :-P
18:19:46 <ais523> @cdecl void (*) ()
18:19:46 <seabot> syntax error
18:19:53 <ais523> @cdecl void (*foo) ()
18:19:53 <seabot> declare foo as pointer to function returning void
18:20:02 <ais523> it should manage it without the variable names
18:20:09 <ehird_> it doesn't.
18:20:19 <ehird_> because cdecl(1) doesn't
18:20:20 <AnMaster> huh
18:20:24 <ais523> @cdecl int getchar(), c[16], i;
18:20:25 <seabot> syntax error
18:20:27 <AnMaster> it runs cdecl?
18:20:30 <ehird_> yes
18:20:35 <AnMaster> interesting
18:20:44 <AnMaster> I mean I don't find C types very hard unless extreme
18:20:47 <ehird_> the name seabot cames from the fact that I made it for ##free-c and it was originally written in C
18:20:55 <ehird_> AnMaster: meh, bot features are fluff
18:20:58 <ehird_> might as well pile them up
18:21:04 <AnMaster> like function pointers to function pointers that take arrays of function pointers or whatever
18:21:13 <AnMaster> true
18:21:27 <ehird_> @karma AnMaster
18:21:27 <seabot> AnMaster has a karma of 0
18:21:31 <ehird_> nobody loves you.
18:21:39 <oklopol> @karma oklopol
18:21:39 <seabot> You have a karma of 0
18:21:42 <oklopol> oklopol++
18:21:42 <ehird_> !
18:21:45 <ehird_> @karma+ oklopol
18:21:45 <seabot> oklopol's karma raised to 1.
18:21:45 <oklopol> how's this work
18:21:46 <ehird_> @karma+ oklopol
18:21:46 <ehird_> @karma+ oklopol
18:21:46 <seabot> oklopol's karma raised to 2.
18:21:47 <ehird_> @karma+ oklopol
18:21:47 <seabot> oklopol's karma raised to 3.
18:21:47 <ehird_> @karma+ oklopol
18:21:47 <seabot> oklopol's karma raised to 4.
18:21:47 <seabot> oklopol's karma raised to 5.
18:21:49 <ehird_> @karma+ oklopol
18:21:50 <seabot> oklopol's karma raised to 6.
18:21:52 <ehird_> @karma+ oklopol
18:21:52 <seabot> oklopol's karma raised to 7.
18:21:54 <ehird_> @karma+ oklopol
18:21:54 <seabot> oklopol's karma raised to 8.
18:21:56 <AnMaster> @karma+ AnMaster
18:21:56 <seabot> AnMaster's karma raised to 1.
18:21:57 <ehird_> @karma+ oklopol
18:21:57 <oklopol> ah, right, much better
18:21:57 <seabot> oklopol's karma raised to 9.
18:21:59 <ehird_> @karma+ oklopol
18:21:59 <seabot> oklopol's karma raised to 10.
18:22:02 <ehird_> @karma+ oklopol
18:22:02 <seabot> oklopol's karma raised to 11.
18:22:04 <ehird_> @karma+ oklopol
18:22:05 <seabot> oklopol's karma raised to 12.
18:22:07 <ehird_> @karma+ oklopol
18:22:07 <seabot> oklopol's karma raised to 13.
18:22:09 <ehird_> that's better
18:22:12 <ehird_> hey wait AnMaster
18:22:14 <ehird_> you cant change your own karma!!
18:22:17 <ehird_> @karma+ ehird_
18:22:17 <seabot> You can't change your own karma, silly.
18:22:19 <ehird_> it specifically forbids it
18:22:25 <ehird_> @karma- ehird_
18:22:25 <seabot> You can't change your own karma, silly.
18:22:29 <AnMaster> it just did it above?
18:22:33 <ehird_> AnMaster: try again
18:22:40 <AnMaster> ehird_, so you fixed it, ok
18:22:41 <AnMaster> nice
18:22:44 <ehird_> no
18:22:47 <AnMaster> also I think karma is silly
18:22:47 <ehird_> but it always worked for me
18:22:48 <ehird_> try again
18:22:49 <ehird_> :P
18:22:51 <ehird_> @karma egobot
18:22:51 <seabot> egobot has a karma of -1
18:22:55 <ehird_> snarky
18:22:58 <AnMaster> @karma+ AnMaster
18:22:58 <seabot> AnMaster's karma raised to 2.
18:23:03 <ehird_> O_O
18:23:03 <AnMaster> fail?
18:23:14 <ehird_> norm = thing.lower()
18:23:18 <AnMaster> ehird_, do you lower case one and then compare or something?
18:23:18 <AnMaster> @karma+ AnMaster
18:23:18 <AnMaster> @karma+ AnMaster
18:23:18 <AnMaster> @karma+ AnMaster
18:23:18 <ehird_> if norm == msg.sender.nick:
18:23:18 <ehird_> msg.respond("You can't change your own karma, silly.")
18:23:18 <ehird_> Fail
18:23:20 <oklopol> HAHA LOL FAIL
18:23:21 <seabot> AnMaster's karma raised to 3.
18:23:21 <seabot> AnMaster's karma raised to 4.
18:23:21 <seabot> AnMaster's karma raised to 5.
18:23:21 <AnMaster> hm
18:23:25 -!- seabot has quit (Remote closed the connection).
18:23:28 <AnMaster> ehird_, agreed
18:23:30 <ais523> ehird_: easy to get round it, anyway
18:23:36 -!- seabot has joined.
18:23:37 <ehird_> @karma- AnMaster
18:23:38 <ehird_> @karma- AnMaster
18:23:38 <seabot> AnMaster's karma lowered to 4.
18:23:38 <seabot> AnMaster's karma lowered to 3.
18:23:38 <ehird_> @karma- AnMaster
18:23:38 <ehird_> @karma- AnMaster
18:23:39 <seabot> AnMaster's karma lowered to 2.
18:23:41 <seabot> AnMaster's karma lowered to 1.
18:23:41 <ehird_> (just balancing it out sry)
18:23:42 <AnMaster> ..
18:23:47 <ehird_> however
18:23:49 <ehird_> @karma+ AnMaster
18:23:49 <seabot> AnMaster's karma raised to 2.
18:23:51 <ehird_> for finding the buggg
18:23:54 <ais523> ^bf ,[.,]!@karma+ ais523
18:23:55 <fungot> @karma+ ais523
18:23:55 <seabot> ais523's karma raised to 1.
18:24:00 <ehird_> @karma- ais523
18:24:00 <AnMaster> ais523, :D
18:24:00 <seabot> ais523's karma lowered to 0.
18:24:03 <ais523> ehird_: you should probably block bots
18:24:03 <ehird_> that was easy.
18:24:06 <AnMaster> @karma+ ais523
18:24:07 <seabot> ais523's karma raised to 1.
18:24:07 <ehird_> ais523: naw
18:24:10 <ehird_> I like bots.
18:24:19 <ehird_> @unload karma
18:24:19 <seabot> You are not ehird!
18:24:22 <ehird_> ...
18:24:24 <ehird_> Bitch.
18:24:27 <ais523> classic
18:24:29 <oerjan> :D
18:24:29 -!- ehird_ has changed nick to ehird.
18:24:30 <ais523> @karma+ seabot
18:24:30 <seabot> seabot's karma raised to 3.
18:24:40 * oerjan waits for the kline
18:24:42 <ehird> @unload karma
18:24:43 <seabot> Unloaded the karma plugin.
18:24:49 <AnMaster> ehird, about that kline, too many connections from the same host could cause it
18:24:50 <ehird> @karma
18:24:50 <seabot> wtf is karma?
18:24:54 <ehird> :-D
18:24:56 <ehird> AnMaster: only 1
18:25:02 <ehird> @fungot
18:25:02 <seabot> wtf is fungot?
18:25:03 <fungot> ehird: ( ( noise yeah)) the one that's not conspicuous if they're ah laughter you know laughter stuff and ' cause she's packing))
18:25:03 <fungot> seabot: ( ( mm mhm mhm)) especially in the afternoon then it would come on fnord laughter laughter mm noise noise))
18:25:22 <ehird> @python while True: { print "lol
18:25:22 <seabot> SyntaxError: EOL while scanning string literal (<irc>, line 2)
18:25:23 <ehird> er
18:25:26 <ehird> @python while True: { print "lol" }
18:25:26 -!- seabot has quit (Excess Flood).
18:25:29 <ehird> lol fail
18:25:45 -!- seabot has joined.
18:25:56 <ehird> @help
18:25:56 <seabot> cdecl: cdecl
18:25:57 <seabot> help: help
18:25:57 <seabot> karma: karma karma+ karma-
18:25:57 <seabot> meta: load reload unload
18:25:57 <seabot> python: python
18:26:01 <ehird> @unload cdecl
18:26:01 <seabot> Unloaded the cdecl plugin.
18:26:03 <ehird> @unload help
18:26:03 <seabot> Unloaded the help plugin.
18:26:05 <ehird> @unload karma
18:26:05 <seabot> Unloaded the karma plugin.
18:26:07 <ehird> @unload python
18:26:07 <seabot> Unloaded the python plugin.
18:26:09 <ehird> @unload meta
18:26:09 <seabot> Unloaded the meta plugin.
18:26:14 <ehird> Now it does NOTHING :-D
18:26:20 <oerjan> @unload
18:26:20 <seabot> wtf is unload?
18:26:41 -!- seabot has quit (Remote closed the connection).
18:26:47 <ehird> Anyway, enough seabot.
18:26:51 -!- seabot has joined.
18:26:53 <ehird> Let me find another bot for us to enjoy!
18:27:03 <ehird> I have sooo many...
18:27:46 -!- olsner has joined.
18:27:51 <ehird> Ooh, old Endeavour./
18:27:52 <ehird> Vintage.
18:28:00 <ehird> TypeError: __init__() got an unexpected keyword argument 'conn'
18:28:02 <ehird> Very vintage.
18:29:02 <ehird> Let's try that again.
18:29:08 -!- Endeavour has joined.
18:29:14 <ehird> YO MY BOY
18:29:15 -!- Endeavour has quit (Remote closed the connection).
18:29:19 <ehird> wat
18:30:39 <ehird> bot.seen[input.nick] = (datetime.now(), input.target, input.text)
18:30:41 <ehird> is the failing line
18:30:48 <ehird> String or Integer object expected for key, unicode found
18:30:50 <ehird> oic
18:30:53 <ehird> just need to str() i guess
18:31:58 <AnMaster> written for old python?
18:32:02 <ehird> yeah.
18:32:09 <AnMaster> how old?
18:32:16 -!- Endeavour has joined.
18:32:18 <ehird> seen ehird
18:32:21 <ehird> .seen ehird
18:32:22 -!- Endeavour has quit (Remote closed the connection).
18:32:25 <ehird> Fail
18:32:32 <ehird> AnMaster: 2.4
18:34:29 -!- ais523 has quit (Remote closed the connection).
18:34:37 <AnMaster> ehird, that isn't so old
18:34:52 <AnMaster> I mean I would have thought maybe 2.3 or 2.2
18:35:11 <ehird> It was for this channel. :-P
18:35:20 <ehird> I only arrived here 2007 and I htink this bot is early-2008.
18:35:36 <ehird> AnMaster: python 2.4 is circa 2004
18:35:44 <ehird> So, 2.3 would have been 2003 or so
18:35:46 <AnMaster> ehird, that old heh
18:35:48 <ehird> 2.2 would have been about 2000
18:35:53 <AnMaster> ehird, 2.5 took a long time?
18:36:16 <ehird> 2.5 came out in 2006.
18:36:23 <ehird> So 2.4 only lasted 2 years or so.
18:36:37 <AnMaster> and 2.3 would be 2003?
18:36:43 <ehird> Roughly, yes.
18:36:52 <AnMaster> so it only lasted a single year?
18:37:04 <ehird> Well, I think it came out in 2002 :P
18:37:09 <ehird> I was just giving rough years.
18:37:09 <AnMaster> hm ok
18:37:20 <AnMaster> every second year new minor release?
18:37:31 <AnMaster> interesting
18:37:32 <ehird> Seems about right.
18:37:47 <ehird> AnMaster: they do quite a few really-minor (toddler?) releases inbetween
18:38:10 <AnMaster> ehird, "micro" I think is the real name, though "toddler" is funnier
18:38:28 <AnMaster> btw postgresql call the second digit "major" and the third "minor"
18:38:33 <AnMaster> I have no idea what they call the first
18:38:37 <ehird> In this line, I propose a new term for "early adopter": "pedophile".
18:38:58 <AnMaster> a bit too dirty for my taste
18:39:15 <ehird> Well, those early adopters are a dirty bunch.
18:39:16 <AnMaster> ehird, teenager maybe?
18:39:38 * oerjan recalls Paul Erdos called children "epsilons"
18:39:42 <AnMaster> that would fit, at least for the period around 15 years
18:40:38 <ehird> Well I give up on endeavour.
18:40:42 <ehird> Let's find another bt.
18:40:44 <AnMaster> ehird, oh?
18:40:50 <oerjan> endeavours are useless
18:40:56 <AnMaster> ehird, how many do you have in total
18:41:02 <ehird> AnMaster: like 50 :-P
18:41:03 <ehird> # bastard: fuck goddamn
18:41:03 <ehird> # it does irc
18:41:03 <ehird> # released into the public domain by tusho, 2008
18:41:07 <ehird> Best. Comment header. Ever.
18:41:16 <ehird> I think I recall the discussion surrounding it.
18:41:21 <AnMaster> eh
18:41:24 <ehird> I think we were trying to come up with the most horrible IRC client ever.
18:41:25 <AnMaster> was that the name?
18:41:33 <AnMaster> client or bot?
18:41:34 <ehird> And I decided to run sed over netcat.
18:41:39 <ehird> AnMaster: client
18:41:39 <AnMaster> ouch
18:42:29 <oerjan> so, was it worse than telnet? :D
18:42:39 <ehird> oerjan: it's only 1 lines long, I never got around to it :P
18:42:44 <AnMaster> oh
18:42:46 <oerjan> ah
18:42:49 <ehird> unfortunately :(
18:43:36 <ehird> _10 = PRINT("HELLO, WORLD!"), GOTO(10)
18:43:40 <ehird> Valid Python code.
18:44:00 <AnMaster> ehird, really?
18:44:08 <AnMaster> with some input filter?
18:44:15 <ehird> http://pastie.org/364879
18:44:53 <AnMaster> ehird, that one doesn't work in the general case does it?
18:44:56 <AnMaster> just wondering
18:45:02 <ehird> What do you mean?
18:45:26 <AnMaster> could you have more than one label there
18:45:30 <AnMaster> and so on
18:45:35 <ehird> yes, if you did:
18:45:42 <AnMaster> to actually make control flow with it
18:45:44 <ehird> _10 = PRINT("HELLO, "), GOTO(20)
18:45:48 <ehird> _20 = PRINT("WORLD!"), GOTO(10)
18:45:50 <ehird> that woul dwork
18:45:52 <AnMaster> wow
18:45:58 <ehird> ctx = globals()['_'+str(self.i)]
18:46:00 <ehird> from GOTO
18:46:02 <AnMaster> ehird, antyhing but "print"?
18:46:13 <ehird> AnMaster: no, but you could make something like CALL(func, 1, 2)
18:46:34 <AnMaster> also am I right this works through some sort of reflection?
18:46:40 <ehird> yes.
18:46:43 <ehird> ctx = globals()['_'+str(self.i)]
18:47:03 <AnMaster> hm
18:47:34 <AnMaster> what does the syntax _10 = classname(...), otherclass(...) do in python?
18:47:36 <AnMaster> in general
18:47:54 <ehird> a, b is (a,b), a tuple (like a list but immutable)
18:48:00 <ehird> _10 is just a random variable name
18:48:00 <AnMaster> ah
18:48:03 <ehird> that looks like a line number
18:48:36 <comex> even better on python 3 where exec is a function
18:48:41 <AnMaster> heh
18:48:46 <ehird> umm
18:48:49 <ehird> that makes no difference
18:48:57 <comex> well, you could lowercase it if you want in that case
18:49:05 <ehird> o_o
18:49:07 <ehird> what
18:49:13 <AnMaster> why would you want that
18:49:20 <AnMaster> upper case is the point.
18:49:20 <comex> good point
18:49:24 * comex shutsu p
18:49:25 <ehird> This botte looks like it works
18:49:33 <ehird> Specifically, botte.old/
18:49:39 <ehird> (I have 50 bots named botte, none of which work)
18:49:51 <ehird> ./lib/botte/client.rb:24:in `run': undefined method `feed' for #<Botte::Connection:0x559c4> (NoMethodError)
18:49:53 <AnMaster> ehird, you keep all bots in under one directory?
18:49:53 <comex> sed over netcat? lovely
18:49:55 <ehird> OR NOT
18:50:00 <AnMaster> in subdirs by year?
18:50:01 <AnMaster> :D
18:50:10 <ehird> AnMaster: i keep everything in ~/Code/<name>/
18:50:24 <ehird> it's a freaking huge dir
18:50:32 <ehird> % ls ~/Code|wc -l
18:50:33 <ehird> 746
18:50:36 <AnMaster> heh
18:50:40 <AnMaster> ehird, du -sh?
18:50:41 <comex> I keep things organized by subject
18:50:52 <comex> $ ls /usr/src/b | wc -l
18:50:54 <comex> 135
18:50:55 <ehird> AnMaster: 723MB
18:50:58 <AnMaster> comex, I keep them by size since my ~/src is too small
18:51:08 <ehird> comex: b?
18:51:18 <AnMaster> ehird, /b/
18:51:22 <comex> na
18:51:24 <comex> /usr/src/b is my "wii stuff" directory
18:51:25 <ehird> AnMaster: i doubt it
18:51:32 <ehird> how can you write 135 programs about /b/
18:51:33 <ehird> :-P
18:51:42 <AnMaster> ehird, um... good point
18:51:45 <comex> (did that work, because konversation fucked up)
18:51:48 <comex> [13:51] <-> #esoteric> /usr/src/b is my "wii stuff" directory
18:51:52 <ehird> yes
18:52:07 <comex> also, I daresay it wouldn't be very hard
18:52:19 <FireFly> Hm
18:52:59 <AnMaster> comex, <->?
18:53:10 <AnMaster> you broke it's format string somehow?
18:53:46 <ehird> no
18:53:48 <ehird> konversation does that
18:53:53 <ehird> -> = send
18:53:54 <ehird> <- = recv
18:53:59 <AnMaster> and <->?
18:54:13 <AnMaster> "either way"?
18:54:19 <comex> no
18:54:22 <ehird> <THING CHANNEL>
18:54:24 <comex> I typed /msg #esoteric
18:54:25 <ehird> THING = -> | <-
18:54:27 <AnMaster> ah
18:54:32 <ehird> } else {
18:54:33 <ehird> /* "offensive programming" */
18:54:33 <ehird> printf("You SUCK! Go to HELL!\n");
18:54:33 <ehird> exit(1);
18:54:33 <ehird> }
18:54:37 <ehird> -- ~/Code/c-cont/cont.c
18:54:44 <AnMaster> ehird, right
18:54:54 <comex> also, ehird: with konversation for normal channel messages I just get a standard layout
18:54:55 <AnMaster> ehird, heh? What is the if?
18:54:55 <ehird> (yes, real continuations for C)
18:55:06 <AnMaster> ehird, also. pastebin that code
18:55:07 <ehird> AnMaster:
18:55:08 <ehird> void restore_context(void) {
18:55:08 <ehird> if (gcont) {
18:55:08 <ehird> cont_t *old = gcont;
18:55:08 <ehird> gcont = old->next;
18:55:10 <ehird> exec_context(old);
18:55:14 <AnMaster> heh
18:55:15 <AnMaster> right
18:55:17 <comex> awesome
18:55:19 <AnMaster> checking for null
18:55:35 <ehird> Not strictly my code, I'm afraid: it was someone else's toy that I cleaned up the code of (it didn't compile)
18:55:42 <ehird> I wrote programs actually using it.
18:55:45 <ehird> For example, a factor(1).
18:55:52 <AnMaster> oh interesting
18:55:53 <ehird> It was basically prolog-style.
18:56:00 <ehird> The API was:
18:56:00 <AnMaster> if possible I would very much like to see it
18:56:05 <ehird> TRY(x) -- Returns x, generally.
18:56:06 <ehird> HOWEVER
18:56:14 <ehird> If after a TRY, a FAIL; happens somewhere
18:56:20 <ehird> then we backup to the next TRY, and keep executing after it
18:56:24 <ehird> until the try points are exhausted
18:56:26 <AnMaster> ouch
18:56:26 <ehird> at which point we fail
18:56:30 <ehird> So, Prolog-style.
18:56:38 <ehird> AnMaster: the actual continuation library was stack smashing
18:56:47 <ehird> The API definition:
18:56:47 <ehird> #define FAIL restore_context()
18:56:47 <ehird> #define TRY(x) if (!save_context()) return x
18:56:49 <AnMaster> ehird, I can see that
18:57:00 <ehird> You also had to have a main looking like this:
18:57:02 <ehird> int main(int argc, char **argv)
18:57:03 <ehird> { cont_main(main_, argc, argv);
18:57:03 <ehird> }
18:57:07 <AnMaster> um
18:57:13 <ehird> where main_ is your real main function
18:57:16 <AnMaster> wow
18:57:17 <ehird> because it needs to grab a stack pointer
18:57:24 <ehird> so then it can't return while the program goes
18:57:29 <comex> not portable
18:57:38 <ehird> comex: "Stack smashing isn't portable"
18:57:39 <ehird> no shit sherlock
18:57:43 <AnMaster> ehird, there are some tricks for getting stack pointer anyway. Boehm-GC does such stuff
18:57:47 <ehird> but it works on just about everything
18:57:56 <ehird> AnMaster: right, but you need to get a base stack pointer
18:58:03 <comex> non-x86?
18:58:05 <AnMaster> ehird, err, let me see if stack smashing works here :D
18:58:09 <ehird> comex: yes
18:58:16 <AnMaster> ehird, if you pastebin it
18:58:19 <comex> ehird: how?
18:58:23 <AnMaster> or upload a project with it or so
18:58:27 <ehird> comex: it doesn't use asm.
18:58:35 <AnMaster> comex, not very odd, the only thing I can think of where it would break is SPARC
18:58:38 <ehird> AnMaster: it actually uses longjmp
18:58:42 <comex> yeah, but the stack can go different directions and shit
18:58:43 <AnMaster> ehird, hm ok
18:58:44 <ehird> and setjmp
18:58:47 <ehird> but
18:58:51 <ehird> AnMaster: and here's the oh god part
18:58:56 <ehird> it messes with the jmp_buf
18:58:56 <ehird> :-D
18:59:01 <ehird> comex: you can detect that, the code doesn't but you can
18:59:04 <AnMaster> oh my indeed
18:59:13 <AnMaster> ehird, *that* isn't portable
18:59:20 <ehird> portable, n. works on shit
18:59:40 <AnMaster> ehird, jmp_buf format is "implementation defined", I'm pretty sure about that
18:59:46 <ehird> wait
18:59:51 <ehird> it doesn't actually mess with the jmp_buf
18:59:51 <ehird> huh
18:59:56 <AnMaster> oh right
19:00:02 <ehird> it just uses the jmp_buf to restore the registers
19:00:02 <ehird> XD
19:00:07 <ehird> with setjmp/longjmp
19:00:09 <AnMaster> ehird, yes and?
19:00:11 <AnMaster> that is normal
19:00:15 <ehird> AnMaster: yes but
19:00:16 <ehird> what it does is
19:00:21 <ehird> first it mangles the stack to restore it
19:00:24 <ehird> then it does a longjmp
19:00:24 <ehird> now
19:00:29 <ehird> since the longjmp just contains the position in the stack
19:00:34 <ehird> it jumps to the right place on the newly-mangled stack
19:00:36 <ehird> and returns the registers
19:00:46 <ehird> so it makes longjmp do its bidding, without mangling the jmp_buf :-D
19:00:51 <AnMaster> ouch
19:00:53 -!- GregorR has quit (Remote closed the connection).
19:00:55 <ehird> gotta find the original author of this code
19:00:58 <ehird> a complete genius
19:00:58 <AnMaster> ehird, this would fail on SPARC I'm pretty sure
19:01:04 <AnMaster> ehird, also I WANT TO SEE IT!
19:01:26 <AnMaster> ehird, I can't imagine this working with SPARC's moving register window thingy
19:01:43 <AnMaster> sadly I don't have a sparc to test on
19:01:48 <AnMaster> but anyway
19:01:52 <AnMaster> I want to test this, please!
19:02:09 <ehird> kay
19:02:18 <ehird> First, here's factor.c
19:02:27 <ehird> AnMaster: http://pastie.org/private/rm5gexu9dbovkfi3jch4g
19:03:08 <ehird> Note: rather inefficient :-P
19:03:15 <ehird> Specifically, in that it's copying the stack each integer it tries.
19:03:17 <ehird> In a brute-force.
19:03:32 <ehird> But it works:
19:03:32 <ehird> % ./factor 4
19:03:33 <ehird> 4: 2 2
19:03:34 <AnMaster> hm? any more files?
19:03:40 <ehird> AnMaster: yes, that's just the demo program
19:03:56 <AnMaster> ehird, the rest?
19:04:00 <ehird> Be patient.
19:04:03 <AnMaster> right
19:04:14 <AnMaster> that wouldn't be me however ;P
19:05:06 <ehird> AnMaster: http://pastie.org/private/yaoobsjszqr9ufddh9znfg
19:05:12 <ehird> source & examples
19:05:13 <AnMaster> ehird, idea: use this and boehm-gc at the same time, watch star collide
19:05:23 <ehird> source is mostly the other guyses, but with my cleanup and stuff
19:05:28 <ehird> examples are all mine
19:06:35 <ehird> AnMaster: fibs.c doesn't actually use it for prolog-style backtracking OFC
19:06:39 <ehird> it just uses it as a continuation
19:06:55 <ehird> generally you want multiple continuations that you can resume at your will and pass around, ofc
19:07:03 <ehird> left as an excersize to the reader :-P
19:07:17 <ehird> incidentally,
19:07:17 <ehird> printf("fib(%i) = %i\n", i++, fib());
19:07:17 <ehird> if (i <= 10) FAIL;
19:07:19 <ehird> causing a loop
19:07:25 <AnMaster> I'm splitting files atm, let see
19:07:34 <ehird> is possibly one of the most perverse behaviors of c code ever witnessed
19:08:14 <ehird> AnMaster: running those programs through cpp may help
19:08:35 <FireFly> ls
19:08:38 <FireFly> Hrm
19:08:53 <ehird> Note that I think getcontext/setcontext of posix ucontext may actaully do exactly what this code does.
19:09:06 * ehird runs one of these programs in gdb for shits 'n giggles
19:09:24 <AnMaster> ehird, yes
19:09:26 <AnMaster> testing them atm
19:09:37 * ehird step step step step
19:09:53 <AnMaster> hm it works work -fstack-protector-all for amb at least
19:10:07 <ehird> Ha. Your stack protector is foiled!
19:10:18 <MizardX> Heh. I found python 1.5.2 on one of my school's servers. :)
19:10:21 <AnMaster> ehird, it is for buffer overwriting on normal return
19:10:26 <ehird> AnMaster: Yes.
19:10:28 <AnMaster> it can't protect long jump
19:10:33 <ehird> AnMaster: It's not a long jump.
19:10:37 <ehird> It actually modifies the memory on the stack.
19:10:40 <ehird> It just copies it in place.
19:10:41 -!- KingOfKarlsruhe has joined.
19:10:47 <ehird> the longjmp is only needed for restoring registers
19:10:55 <ehird> the stack smashing would work just as well without of it
19:11:15 <AnMaster> ehird, yes and there is no way stack smash protection can work for that case
19:11:20 <AnMaster> since it doesn't return normally
19:11:29 <ehird> :-D
19:11:35 <AnMaster> ehird, oh btw, does it work on sparc?
19:11:40 <ehird> Dunno.
19:11:48 <AnMaster> ==17012== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 4 from 1)
19:11:52 <AnMaster> I don't believe it...
19:12:02 <ehird> The elk scheme implementation does continuations in a similar way, I think it has its own special setjmp/longjmp implementation in asm
19:12:04 <AnMaster> all of them are f*ing valgrind clean!
19:12:05 <ehird> for sparc
19:12:06 <AnMaster> !=
19:12:07 <AnMaster> !?
19:12:09 <ehird> HAHAHAHA
19:12:09 <ehird> :-D
19:12:35 <AnMaster> ehird, ok some memory leak
19:12:39 <AnMaster> but no other stuff
19:12:45 <ehird> haha, where?
19:12:51 <AnMaster> ==17022== 4,560 (2,240 direct, 2,320 indirect) bytes in 10 blocks are definitely lost in loss record 3 of 4
19:12:52 <AnMaster> ==17022== at 0x4A0743E: malloc (vg_replace_malloc.c:207)
19:12:52 <AnMaster> ==17022== by 0x4008AE: get_context (in /home/arvid/irc/c-cont/fibs)
19:12:52 <AnMaster> ==17022== by 0x40091B: save_context (in /home/arvid/irc/c-cont/fibs)
19:12:53 <AnMaster> for example
19:12:56 <ehird> AnMaster: I am dubious as to valgrind's ability to track memory over stack smashing.
19:13:00 <ehird> Perhaps it's messing up.
19:13:09 <AnMaster> ehird, yes I agree, but that is a heap allocation
19:13:14 <ehird> hmm, you're right.
19:13:15 <ehird> it never calls free()
19:13:18 <ehird> but it does malloc stuff
19:13:31 <ehird> so that'll be a problem if you do like 50 thousand continuation sets :-P
19:14:06 <AnMaster> ehird, yes, to support enterprise grade applications it need to avoid leaking memory
19:14:11 <ehird> Quite.
19:14:11 <AnMaster> ;)
19:14:27 <ehird> wow, oklotalk is so pretty.
19:14:41 <ehird> it uses the § symbol.
19:14:41 <ehird> that's hardcore.
19:14:52 <AnMaster> ehird, btw I saw Try/Catch in C today
19:14:58 <AnMaster> in a non-eso program
19:14:59 <ehird> that's easy.
19:15:01 <AnMaster> it makes me sad
19:15:02 <ehird> It's just a setjmp/longjmp.
19:15:05 <ehird> AnMaster: why?
19:15:05 <AnMaster> ehird, yes
19:15:09 <ehird> it's a legitimate thing
19:15:12 <AnMaster> yes
19:15:17 <AnMaster> and that makes me even more sad
19:15:23 <ehird> why :P
19:15:30 <AnMaster> ehird, btw: http://rafb.net/p/lwMx7W92.html
19:15:48 <ehird> Yeah, seen it.
19:15:52 <ehird> It's a bit bloated :-P
19:15:55 <AnMaster> ehird, unbalanced blocks too
19:15:57 <AnMaster> :(
19:16:08 <ehird> wut?
19:16:29 <AnMaster> exception__catch
19:16:31 <AnMaster> look at it
19:16:47 <ehird> ah, right.
19:16:50 <ehird> That's because it has to come after a try.
19:16:58 <AnMaster> same for Try, unbalanced too
19:16:59 <AnMaster> :(
19:17:02 <ehird> no duh
19:17:05 <ehird> you have a try, then a catch
19:17:08 <AnMaster> yes it is sad
19:17:10 <ehird> why
19:17:25 <AnMaster> because it breaks code folding in this editor :,(
19:17:36 <AnMaster> ;P
19:17:36 <ehird> lol
19:18:18 <AnMaster> ehird, you laughed at something I said? YES!
19:19:05 <AnMaster> ehird, btw have you seen the build systems (yes plural) of libpng?
19:19:28 <ehird> no
19:20:00 <AnMaster> there are 1) lots of makfiles like makefile.gcc, makfile.vms and what not, around 40 or so I think, 2) autoconf 3) cmake. All in parallel
19:20:21 <ehird> heh
19:20:24 <ehird> why?
19:20:26 <AnMaster> sure 2 at once when you are changing, but 3 at once... from such different periods
19:20:30 <AnMaster> ehird, I don't know
19:20:52 <AnMaster> I wish I knew
19:20:59 * ehird is a fan of the "just make it, if there's a system issue change the vars in the makefile" approach
19:22:22 <AnMaster> ehird, well that is what optipng uses, and you need to change in several makefiles, since it uses one for the main program, one for the included and modified libpng, one for (again modified) zlib, and one for some "pngxtern"
19:22:33 <AnMaster> and I needed to debug something, so 4 places to add -g, compile
19:22:39 <AnMaster> find out it passes -s in LDFLAGS
19:22:41 <ehird> then that is not my system :-P
19:22:44 <AnMaster> edit again in 4 places
19:22:47 <AnMaster> recompile,
19:22:49 <ehird> then that is not my system :-P
19:22:57 <AnMaster> find that make clean does not work as advertised
19:22:59 <AnMaster> fix
19:23:01 <AnMaster> clean again
19:23:03 <AnMaster> recompile
19:23:10 <AnMaster> ehird, yes it is awful
19:23:17 <AnMaster> I mean, autoconf would be a step up
19:23:30 <ehird> Note that you can do system detection in plain make.
19:23:39 <ehird> with things like uname :_P
19:23:40 <ehird> :-P
19:23:46 <AnMaster> ehird, oh? Let me check
19:23:52 * AnMaster looks for a copy of nmake
19:24:00 <AnMaster> damn don't think I have that
19:24:11 <ehird> nmake is almost gnu make, IIRC
19:24:20 <ehird> admittedly no uname :-)
19:24:24 <ehird> just run the windows specific command and check that
19:24:25 <AnMaster> ehird, err no it is microsoft make with a totally different syntax
19:24:25 <ehird> too
19:24:27 <AnMaster> iirc
19:24:33 <ehird> no, iirc, you're wrong.
19:24:49 <AnMaster> ehird, well I might be, it was years since I last had to deal with it
19:25:14 <AnMaster> ehird, and I don't have any windows around
19:25:15 <ehird> cool, my old DDoSing program
19:25:41 <AnMaster> wtf... dev-dotnet/gluezilla? (something depended on it. trying to figure out what the heck it is
19:25:49 <AnMaster> oh mono, wth pulled that in
19:26:06 <ehird> this ddos program was a random fuzz checker too :P
19:26:20 <ehird> it catted /dev/urandom to nc massively parallely
19:26:33 <ehird> fun fun
19:26:37 <AnMaster> WTF. What happened to the package dep graph
19:26:39 <AnMaster> :(
19:27:05 <AnMaster> first time gentoo package manager broke for me ever. And that is since 2004
19:27:16 <AnMaster> (that is when I started using gentoo)
19:28:06 <psygnisfive> logs!
19:28:30 <AnMaster> http://rafb.net/p/PnQjW524.html
19:28:38 <AnMaster> I have no clue what the hell happened
19:28:45 * AnMaster checks around
19:29:20 <AnMaster> well the mono one was easy to fix
19:37:28 -!- MigoMipo has joined.
19:42:22 -!- Corun has joined.
19:46:51 <MizardX> Heh. There's a module called tabnanny in Python :)
19:47:05 <ehird> whassit do
19:47:28 <lament> tab.
19:53:01 -!- sebbu2 has joined.
19:53:35 -!- sebbu has quit (Read error: 60 (Operation timed out)).
19:53:41 -!- sebbu2 has changed nick to sebbu.
19:54:52 <AnMaster> ehird, is there something like "perldoc" but for python?
19:55:03 <ehird> pydoc
19:55:09 <AnMaster> oh ok
20:07:07 -!- kar8nga has joined.
20:11:27 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:38:13 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
20:42:52 -!- Corun has quit ("This computer has gone to sleep").
21:03:34 -!- kar8nga has joined.
21:10:43 -!- GregorR has joined.
21:11:07 -!- GregorR has set topic: This topic unintentionally left unblank..
21:36:53 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
21:39:53 -!- Corun has joined.
22:01:54 <ehird> http://blog.uncool.in/2009/01/19/computer-science-fail-higher-education-in-india/
22:01:58 <ehird> … Linux is basically a DOS based OS.
22:02:04 <ehird> A compiler is a software that converts code written in a particular programming language to machine code. To compile a program, you must hit ALT+F9.
22:02:08 <ehird> The first high level language was Ada, also known as Smalltalk
22:02:12 <ehird> ETCETCETC
22:04:23 <ehird> Additional lulz: http://www.reddit.com/r/programming/comments/7qvdj/the_first_high_level_programming_language_was_ada/
22:06:41 <oklopol> A compiler is a software that converts code written in a particular programming language to machine code. To compile a program, you must hit ALT+F9. <<< xD
22:07:23 <psygnisfive> oklopol :p
22:07:25 <psygnisfive> :o
22:07:42 <oklopol> "a proof is a sequence of easily verifiable steps, in formal mathematics axioms or rules derived from them... to prove you use a pencil and you write "->"'s that mean "follows from""
22:07:54 <ehird> lol :-D
22:08:03 <oklopol> well okay that had a few errors, but joke should be correct anyway.
22:09:00 <psygnisfive> this is no joke sir! this are truth!
22:09:22 <psygnisfive> so, oklopol, i now have a semi-workable version of my language :)
22:09:37 <oklopol> cooooool. i have a few new books \o/
22:09:54 <oklopol> psygnisfive: is it the graph thing
22:09:55 <oklopol> oh
22:09:56 -!- ehird has set topic: how much could a if a could ?.
22:09:56 <psygnisfive> shall i bring my bot in here so you can poke at it? :P
22:09:58 <oklopol> it's the rewrite thing
22:10:01 <psygnisfive> no tree
22:10:02 <oklopol> sure.
22:10:08 <oklopol> of course, i should go read soon.
22:10:11 <psygnisfive> the graph thing is my linguistics project :p
22:10:31 <oklopol> ehird: a of it prolly
22:10:37 <ehird> oklopol: oic
22:10:41 -!- AntiGravityBot has joined.
22:10:54 <oerjan> ehird: !!
22:11:10 -!- AntiGravityBot has quit (Remote closed the connection).
22:11:20 <ehird> failure
22:11:21 -!- AntiGravityBot has joined.
22:11:25 <psygnisfive> there thats better.
22:11:32 <psygnisfive> a proper n=.
22:11:34 <ehird> you restarted it to change the ident?
22:11:35 <ehird> srsly?
22:11:39 <psygnisfive> yes :p
22:11:46 <psygnisfive> im neurotic about these things sir!
22:12:23 <ehird> so.
22:12:25 <ehird> how does it run.
22:12:28 <psygnisfive> it sort of works for what i want. i need to improve it tho. its just prototyped right now.
22:12:33 <oerjan> STOP BEING NEUROTIC OR I'LL SPANK YOU. OH WAIT.
22:12:34 <psygnisfive> run in what sense?
22:12:38 <ehird> psygnisfive: AntiGravityBot.
22:12:40 <ehird> how do you use it.
22:12:43 <psygnisfive> oh
22:12:44 <ehird> or does it just sit there.
22:12:46 <psygnisfive> agbot: 5 + 5
22:12:46 <AntiGravityBot> 10
22:12:50 <ehird> agbot: 1 / 0
22:12:51 <AntiGravityBot> Infinity
22:12:55 <ehird> agbot: {APOW£"
22:12:55 <AntiGravityBot> error: contains unbound variables
22:13:00 <ehird> agbot: crash fucker
22:13:00 <AntiGravityBot> (crash fucker)
22:13:06 <ehird> agbot: \n
22:13:06 <AntiGravityBot> (\ n)
22:13:08 <ehird> agbot: "\n"
22:13:08 <AntiGravityBot> ("\ n ")
22:13:18 <ehird> agbot: (1 / 0) + 2
22:13:18 <AntiGravityBot> ***
22:13:22 <ehird> wat
22:13:35 <oerjan> agbot: sin pi
22:13:35 <AntiGravityBot> (sin pi)
22:13:39 <psygnisfive> *** is its current way of saying "this is not possible"
22:13:41 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
22:13:46 <ehird> agbot: suck a bum
22:13:46 <AntiGravityBot> (suck a bum)
22:13:59 <oerjan> AntiGravityBot: 1+2
22:14:00 <ehird> psygnisfive: um, Infinity+1 is very well defined
22:14:03 <ehird> so is Infinity+2
22:14:08 <psygnisfive> no no thats not what i mean :p
22:14:31 <psygnisfive> Infinity itself is not defined in the system. its relying on the ruby's math facilities to do math, see
22:14:38 <oerjan> AntiGravityBot: SUPPORT TAB COMPLETION YOU INFIDEL!
22:14:44 <psygnisfive> so it does 1 / 0 and ruby kicks back Infinity
22:14:59 <ehird> psygnisfive: now make its prefix its actual nick
22:15:03 <psygnisfive> and this gets converted back into a string
22:15:09 <psygnisfive> ok fine :P
22:15:12 -!- AntiGravityBot has quit (Remote closed the connection).
22:15:17 <ehird> so
22:15:19 -!- agbot has joined.
22:15:20 <ehird> what is interesting about it
22:15:23 <psygnisfive> happy? :P
22:15:25 <psygnisfive> whell
22:15:26 <ehird> i'm not seeing anything more than basic arithmetic atm
22:15:40 <psygnisfive> agbot: fac 0 = 1
22:15:40 <agbot> defined: fac 0 = 1
22:15:52 <ehird> you can define functions
22:15:52 <psygnisfive> agbot: fac N = N*(fac (N-1))
22:15:52 <agbot> defined: fac N = N*(fac (N-1))
22:15:54 <ehird> whoop de doo
22:15:56 <psygnisfive> :P
22:15:59 <ehird> when does it get interesting?
22:16:00 <oerjan> agbot: fac 5
22:16:00 <agbot> 120
22:16:09 <ehird> agbot: fac 10000000
22:16:11 <ehird> I broked it. :-)
22:16:15 <ehird> agbot: fac 1
22:16:15 <psygnisfive> no its running
22:16:19 <ehird> psygnisfive: yes.
22:16:20 <psygnisfive> im watching it evaluate that
22:16:23 <ehird> and it'll run until we get bored.
22:16:31 -!- agbot has quit (Remote closed the connection).
22:16:41 <ehird> so where's the interesting part
22:16:46 -!- agbot has joined.
22:16:48 <psygnisfive> hush you
22:16:54 <ehird> it's a question
22:16:55 <ehird> answer it
22:16:57 <oklopol> psygnisfive: now is there any of that nondeterministic stuff?
22:17:04 <psygnisfive> oklopol: not yet
22:17:06 <psygnisfive> agbot: X my== X = true
22:17:06 <agbot> defined: X my== X = true
22:17:14 <oklopol> ehird: when was the last time you made anything interesting? :P
22:17:15 <ehird> is that syntax?
22:17:17 <ehird> that is ugly syntax.
22:17:19 <psygnisfive> agbot: _ my== _ = false
22:17:19 <agbot> defined: _ my== _ = false
22:17:21 <ehird> oklopol: all the time :P
22:17:23 <ehird> I just never release it.
22:17:33 <psygnisfive> agbot: 1 my== 2
22:17:33 <agbot> false
22:17:37 <psygnisfive> agbot: 1 my== 1
22:17:37 <agbot> true
22:17:44 <psygnisfive> simple, trivial, i know. :P
22:17:57 <ehird> so
22:17:57 <oklopol> ehird: if you don't finish and release it, it never existed.
22:18:00 <psygnisfive> but the point is that its using full blown unification based pattern matching on its rules
22:18:04 <ehird> where's the interesting part psygnisfive
22:18:17 <ehird> oklopol: like oklotalk
22:18:23 <psygnisfive> you can define things like lists ground up, in a sense.
22:18:25 <oklopol> ehird: my point exactly.
22:18:31 <oklopol> that is
22:18:31 <psygnisfive> agbot: first nil = error
22:18:32 <ehird> psygnisfive: you mean like in any language ever?
22:18:32 <agbot> defined: first nil = error
22:18:38 <ehird> not impressed yet.
22:18:46 <psygnisfive> im not trying to impress you, funnily enough
22:18:47 <oklopol> the point was i was just referring to my own incapability to finish a project after realizing how to finish it.
22:19:04 <ehird> psygnisfive: i was assuming it was esoteric in some kind of way.
22:19:17 <ehird> you know, since you were talking about the lang in #esoteric. and brought the bot here
22:19:22 <oklopol> knew you couldn't just play along, people lose some sense of spotting sarcasm when you attack them
22:19:25 <psygnisfive> its esoteric in the sense that its thue with syntactic variables.
22:19:26 <oerjan> psygnisfive: that's impossible anyhow :D
22:19:50 <psygnisfive> so if thue as eso then this is mildly less so :P
22:19:50 <ehird> oerjan: your puns are pretty impressive
22:20:00 <ehird> agbot: a = a
22:20:00 <agbot> defined: a = a
22:20:03 <ehird> agbot: a
22:20:03 <agbot> a
22:20:09 <ehird> agbot: a X = a X
22:20:09 <agbot> defined: a X = a X
22:20:11 <ehird> agbot: a
22:20:11 <agbot> a
22:20:12 <ehird> agbot: a 2
22:20:15 <oerjan> huh
22:20:17 -!- agbot has quit (Remote closed the connection).
22:20:20 <ehird> byebye
22:20:23 <psygnisfive> thanks, you sent it into an infinite loop :P
22:20:26 -!- agbot has joined.
22:20:32 <psygnisfive> thats another thing im going to change in the next version
22:20:33 <ehird> agbot: ¡¶§¶åß®†∞¶ÂfiflÂÍfl
22:20:34 <agbot> ¡¶§¶åß®†∞¶ÂfiflÂÍfl
22:21:15 <psygnisfive> ehird
22:21:21 <psygnisfive> would it help if i explained the language? :P
22:21:38 <adimit> haha.
22:21:38 <ehird> perhaps
22:21:43 <psygnisfive> hey adimit
22:21:43 <ehird> that generally helps.
22:21:46 <adimit> I had fun with that thing today already
22:21:50 <adimit> hey psygnisfive
22:21:52 <psygnisfive> yes i imagine it does, ehird :P
22:22:45 <psygnisfive> ()[]{} are all individual symbols any time they appear. () is used to group things into trees in the text -- the interp never sees parens themselves
22:22:45 <oerjan> psygnisfive: if it's thue-based shouldn't the order of equations be irrelevant?
22:23:06 <psygnisfive> anything starting with a capital letter is a syntactic variable
22:23:17 <psygnisfive> anything else is a symbol
22:23:22 <psygnisfive> oerjan: what do you mean?
22:23:37 <oerjan> X my== X = true
22:23:41 <oerjan> _ my== _ = false
22:23:51 <psygnisfive> oh, in defining things? no. because variables + pattern matching introduces certain issues
22:24:04 <ehird> psygnisfive: can you make it trace
22:24:09 <ehird> thue is only fun if you see every step
22:24:30 <psygnisfive> also, non-alphanumerics produce separate symbols. so a+b is a, +, c. a++b is a, ++, b, etc.
22:24:48 <psygnisfive> and each _ is a dummy variable that uniformly matches anything but doesnt unify
22:25:06 <psygnisfive> ehird: im going to do those things in the next version. its very primitive right now.
22:25:17 <ehird> adding tracing cannot possibly be hard.
22:25:21 <psygnisfive> its not
22:25:33 <ehird> you have a step function, and a step-until-constant function, so just add an irc output in the step
22:25:45 <psygnisfive> but the way i evaluate it currently is using recursive evaluation, as opposed to iterative.
22:25:51 <ehird> and?
22:25:59 <psygnisfive> the next version will be properly iterative so itll work better.
22:26:10 <ehird> ok, I'll come back in 5 years
22:26:19 <psygnisfive> how about in maybe two weeks?
22:26:20 <psygnisfive> :P
22:26:34 <ehird> it takes you two weeks to rewrite an interpreter for that?
22:26:35 <ehird> Seriously?
22:26:38 <psygnisfive> schools going to start and i have stuff to do before then. i only worked on this yesterday because i wanted to experiment
22:26:51 <psygnisfive> no no writing the interpreter isnt what takes time dude
22:26:51 <ehird> sheesh, gimme the code and I'll add a trace
22:27:06 <Slereah_> Hey psygnisfive
22:27:10 <psygnisfive> no, its horrible code. and you dont understand the garbage i put into it. and its not even close to working properly
22:27:14 <Slereah_> want to experiment?
22:27:23 <psygnisfive> its like way pre alpha right now.
22:27:32 <psygnisfive> when its more mature ill start distributing code.
22:27:33 <ehird> I've patched oklopol's awful code before.
22:27:39 <psygnisfive> Slereah_ sexually?
22:27:40 <ehird> There is absolutely no way yours is worse.
22:27:53 <oklopol> ehird: have you?
22:27:58 <oklopol> when 8|
22:27:59 <oerjan> the code, it burns
22:28:02 <ehird> oklopol: ages ago
22:28:04 <psygnisfive> ehird: im sure you have. and im sure mine could easily be worse. but im self-conscious about my code.
22:28:05 <oklopol> which code?
22:28:14 <ehird> oklopol: oklotalk-- or something I think
22:28:30 <psygnisfive> SLereah 5:28 I have stuff in my bums D:
22:28:30 <psygnisfive> SLereah 5:28 It is cause for alarm
22:28:33 <psygnisfive> via the AIMs.
22:28:36 <oklopol> oklotalk-- is quite good code on a conceptual level.
22:28:42 <ehird> psygnisfive: well, I'd play with it if it traced.
22:28:44 <oklopol> of course, it's not very pretty
22:28:47 <ehird> oklopol: yeah. on a conceptual level ::::P
22:28:52 <ehird> hey oklopol when do we get oklotalk
22:28:53 <ehird> i want it
22:29:04 <psygnisfive> ehird: give me a little bit to do that and you can play all you want.
22:29:15 <psygnisfive> right now i have to go back to working on my database project.
22:29:22 <oklopol> i'm trying to get myself to add at least a few hours of coding to my weeks, it's simply dropped out with all the university shit
22:29:33 <psygnisfive> i have to build this db system, analyze the data, and then also do some work on my ling project
22:29:37 <psygnisfive> by next monday, preferably.
22:29:39 <oerjan> oklotalk will be finished in _good_ time before duke nukem forever, i'm sure
22:29:46 <psygnisfive> cause ive slacked a bit this past month :p
22:29:50 <oklopol> ehird: oklotalk will probably not be my next language to complete.
22:30:03 <ehird> oklopol: yeah but if you did oklotalk the other langs could be written in oklotalk.
22:30:05 <psygnisfive> so guys
22:30:07 <psygnisfive> afk
22:30:11 <psygnisfive> <3
22:30:18 <psygnisfive> dont break my bot :P
22:30:31 <oklopol> at least clue and a simple version of muture should probably appear before it
22:30:40 <oklopol> psygnisfive: i won't.
22:30:55 <psygnisfive> oh also, the interp is running inside textmate, which means its probably slow, so infinite loops are painful on my system.
22:31:04 <psygnisfive> so dont loop it :|
22:31:04 <oklopol> ehird: true. if i made all of it, then probably yes. also that would be insanely cool.
22:31:13 <ehird> oklopol: :D
22:31:41 <ehird> oklopol: then you could just, like, write oklotalk in oklotalk
22:31:48 <ehird> bootstrapping? who gives a fuckshit
22:31:52 <ehird> I run programs in my mind
22:32:03 <oklopol> well.
22:32:43 <ehird> yes. wells are holes with water.
22:32:54 <oklopol> quite.
22:37:56 <ehird> < Prodego> yes, and you really shouldn't be /on/ the network while klined
22:38:00 <ehird> *facepalm*
22:38:11 -!- ehird has quit ("leaving").
22:39:42 <oklopol> i have to leave, 00:37 and i haven't gotten pretty much anything done. irc is so fucking addictive.
22:40:03 <oklopol> if i can, that is.
22:40:27 -!- olsner has quit (Remote closed the connection).
22:44:49 -!- ehird has joined.
22:45:03 <ehird> Freenode are hostile, incompetent fucks failing to run a shitty network.
22:45:21 -!- sriracha has joined.
22:45:29 <oerjan> are you really supposed to be here? ;D
22:46:07 <ehird> Heh.
22:46:40 <ehird> No, being here is against freenode policy at the moment -- and I don't give a shit because it's the fault of a shitty auto-Kliner written by the incompetent fucks.
22:46:40 <sriracha> whats up
22:46:46 <ehird> sriracha: disregard me.
22:46:47 <ehird> I'm angry.
22:46:50 <ehird> :-)
22:46:51 * oerjan is actually having to remind himself how unimportant this is, otherwise he would be angry on ehird's behalf
22:46:57 <ehird> ha
22:47:12 <ehird> sriracha: not much at the moment, collectively, it seems
22:47:17 <ehird> not that I can speak on behalf of this channel.
22:47:24 <ehird> Although that would be neat. If I could.
22:47:31 <sriracha> i see...
22:47:31 <ehird> I'm scaring the newbie aren't I. Oh dear.
22:47:37 <ehird> :(
22:48:01 <ehird> Okay I'll pass this on to oerjan :P
22:48:01 <sriracha> ahh it's ok
22:48:35 <oerjan> wait, a newbie?
22:48:44 <ehird> Well, sriracha looks new to me.
22:48:46 <ehird> I may be wrong.
22:48:57 <oerjan> fungot, say hello to our newbie
22:48:57 <fungot> oerjan: okay well we can we walk pretty much everywhere so it was really
22:49:19 <ehird> ^style
22:49:19 <fungot> Available: agora alice darwin discworld europarl ff7 fisher* ic irc lovecraft pa speeches ss wp
22:49:21 <ehird> ^style irc
22:49:21 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
22:49:26 <ehird> fungot: be slightly more coherent
22:49:26 <fungot> ehird: i don't read much of cll lately :) hot showers seem so much better :)
22:49:32 <ehird> fungot: oic
22:49:33 <fungot> ehird: now calamari has set up a poll about the most useless key, sysrq is currently tied for the lead, anyway? who needs to learn how to write it
22:49:43 <ehird> sriracha: Have you sacrificed the obligatory amount of goats yet?
22:50:09 <sriracha> i'm more of a sacrificing kittens and puppies type of person...
22:50:49 <ehird> The cuter the better!
22:51:02 <ehird> (I'm tired...)
22:51:09 <sriracha> wow...what did i get myself into
22:51:12 <oerjan> wait, is this one of those actual magick guys we sometimes get when our topic is misleading?
22:51:20 <ehird> who knows
22:51:24 <ehird> sriracha: what brings you here?
22:51:36 <sriracha> i was actually trying to figure out how to use IRC
22:51:42 <oerjan> aha
22:51:51 <ehird> Well, you've come to the right place! Sort of. Kinda. :-)
22:51:55 <sriracha> and i chose a random channel
22:52:16 <ehird> We're actually about esoteric programming languages. (How boring, right? :|)
22:52:30 <AnMaster> LOGS MISSING FROM TOPIC
22:52:34 <ehird> Oh dear.
22:52:38 -!- ehird has set topic: LGOS.
22:52:39 -!- ehird has set topic: LOGS.
22:52:41 <sriracha> i see
22:52:46 <sriracha> don't know much about programming
22:52:51 <oerjan> *facepalm*
22:52:58 <AnMaster> I should make a bot that screams that if someone edits topic and the logs are missing
22:53:04 <ehird> sriracha: Neither do we, that's why we're here (ok, that's a bad joke :-P)
22:53:08 <AnMaster> ehird, also: ha. ha.
22:53:08 <adimit> sriracha: here is the place to learn it.
22:53:18 <ehird> adimit: um that might be a bad choice of place :D
22:53:34 <adimit> why, I learned bass on a six-string fretless...
22:53:46 <sriracha> whoa...how'd you guys send a message to me directly like that?
22:53:51 <AnMaster> <ehird> fungot: oic <-- what did cll mean?
22:53:51 <kerlo> %eval (The logs are missing!)
22:53:51 <kerlobot> (The logs are missing!)
22:53:52 <sriracha> or better put...what's the command?
22:53:53 <fungot> AnMaster: ok what it was when i first saw it i knew it once but must not have been merged and info on how too view it.
22:53:56 <ehird> sriracha: Hm?
22:53:58 <ehird> I didn't.
22:53:59 <kerlo> That was pretty useless.
22:54:00 <ehird> But it's /msg.
22:54:06 <ehird> /msg person message.
22:54:12 <ehird> If you want a new window for them, /query person.
22:54:32 <AnMaster> *facepalm*
22:54:40 <ehird> what
22:54:48 <AnMaster> not knowing irc :(
22:54:54 -!- oerjan has set topic: Logs: http://tunes.org/~nef/esoteric.
22:55:16 <ehird> um, he's a newbie.
22:55:20 <ehird> stop being elitist.
22:55:20 <oerjan> AnMaster: well he (or maybe she) said that
22:55:43 <sriracha> i'm a "he"
22:55:43 <ehird> oerjan: sneaky topic
22:55:43 <AnMaster> ehird, hey you are like that to me when it comes to some stuff
22:55:56 <oerjan> ehird: how so?
22:56:05 <oerjan> did i mistype?
22:56:06 <ehird> oerjan: it's http://tunes.org/~nef/logs/esoteric
22:56:06 <ehird> :P
22:56:21 -!- oerjan has set topic: Logs: http://tunes.org/~nef/logs/esoteric.
22:56:23 <comex> %eval %eval
22:56:24 <kerlobot> %eval
22:56:28 <AnMaster> um
22:56:53 <AnMaster> night btw
22:57:00 <fizzie> AnMaster: I think CLL was comp.lang.lisp.
22:57:08 <AnMaster> fizzie, ah right, night
22:57:11 <ehird> hi fizzie.
22:57:21 <ehird> say hi to the person who randomly came in here when trying to figure out how to use irc!
22:57:27 <ehird> ( sriracha )
22:57:28 -!- BeholdMyGlory has joined.
22:57:29 <ehird> :-P
22:57:41 <fizzie> Hi to anyone who's hi-able, although I'll be gone in half an hour or so.
22:58:00 <ehird> who isn't hi-able?
22:58:07 <sriracha> i'm assuming you guys more or less know each other?
22:58:13 <AnMaster> ehird, well... there is also #,0 pretty common to get there by mistake
22:58:15 * AnMaster ducks
22:58:28 <oerjan> sriracha: for a certain value of "know"
22:58:34 <AnMaster> and don't try that
22:58:38 <ehird> sriracha: not really
22:58:40 <oerjan> i've never met any of the others in person
22:58:43 <fizzie> oerjan: You mean the biblical sense of "know", I guess?
22:58:44 <ehird> well, yes
22:58:54 * oerjan swats fizzie -----###
22:58:55 <ehird> but there's not many people in here so we know pretty much all the non-idlers.
22:59:00 <oerjan> think of the newbies!
22:59:02 <ehird> fungot is a bot by the way.
22:59:02 <fungot> ehird: sure, tomorrow. i thought the wrong way.
22:59:13 <AnMaster> ehird, have you tried the channel #2,000? Very newbie friendly I heard
22:59:15 <ehird> [a computer program that sits on IRC.]
22:59:20 <FireFly> You're a bot today too
22:59:22 <ehird> AnMaster: yeah that was funny in like 2006
22:59:44 <AnMaster> ehird, actually I have seen it work, using some strange unicode thing instead of , on a network that allowed that
22:59:49 <AnMaster> confused the hell out of me
23:00:25 <AnMaster> ehird, since I could join it by copy and paste by not by typing :P
23:00:35 <AnMaster> (until I found out a bit later)
23:03:56 -!- agbot has quit (Remote closed the connection).
23:04:27 <ehird> hum de dmu
23:04:28 <ehird> *dum
23:05:46 <oerjan> ^ul ((hum de dum de)S:^):^
23:05:46 <fungot> hum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum dehum de dum d ...too much output!
23:05:53 <oerjan> darn
23:06:29 * oerjan feels dehumanized
23:07:12 <lament> ^ul ((what )S:^):^
23:07:12 <fungot> what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what what ...too much output!
23:07:17 <AnMaster> night really now
23:07:25 <lament> ^ul ((...too much output! )S:^):^
23:07:25 <fungot> ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...t ...too much output!
23:07:49 <lament> ^ul ((oo much output! ...t)S:^):^
23:07:49 <fungot> oo much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too m ...too much output!
23:08:22 <lament> ^ul ((put! ...too much out)S:^):^
23:08:23 <fungot> put! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output! ...too much output!
23:08:28 <lament> there we go.
23:08:43 <comex> ^ul (:^):^
23:08:44 <fungot> ...out of time!
23:09:40 -!- CakeProphet has joined.
23:09:44 <kerlo> %eval (((s i) i) ((s i) i))
23:09:47 <fizzie> In retrospect, "out of patience" would have been more accurate there.
23:09:50 <kerlobot> ((loop i) (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i
23:10:29 <kerlo> I think I want to look up the Y combinator.
23:10:46 <ehird> Yes.
23:10:55 <ehird> I think we scared sriracha away.
23:11:11 <kerlo> %eval ((((s s)k)((s(k((s s)(s((s s)k)))))k) foo)
23:11:11 <kerlobot> Syntax error
23:11:16 * kerlo frowns
23:11:36 <kerlo> %eval (((s s)k)((s(k((s s)(s((s s)k)))))k)
23:11:37 <kerlobot> Syntax error
23:11:48 <kerlo> %eval ((s s)k)
23:11:49 <kerlobot> [l (z) ((s z) (k z))]
23:12:37 <kerlo> %eval (((s s)k)((s(k((s s)(s((s s)k)))))k))
23:12:38 <kerlobot> [l (z) ((((s (k ((s s) (s ((s s) k))))) k) z) ((k ((s (k ((s s) (s ((s s) k))))) k)) z))]
23:12:47 <kerlo> %eval ((((s s)k)((s(k((s s)(s((s s)k)))))k)) foo)
23:12:48 <kerlobot> (foo (((s ((s s) k)) (k foo)) ((k ((s (k ((s s) (s ((s s) k))))) k)) foo)))
23:13:00 <kerlo> %eval (((s s)k)((s(k((s s)(s((s s)k)))))k))
23:13:00 <kerlobot> [l (z) ((((s (k ((s s) (s ((s s) k))))) k) z) ((k ((s (k ((s s) (s ((s s) k))))) k)) z))]
23:13:11 <kerlo> %eval (hold (((s s)k)((s(k((s s)(s((s s)k)))))k)))
23:13:11 <kerlobot> (hold (((s s) k) ((s (k ((s s) (s ((s s) k))))) k)))
23:13:22 <kerlo> I'm too lazy to add spaces myself.
23:13:51 <comex> there should be a language whose valid programs are KH(A^n)N, where the number of As is converted to opcodes
23:15:41 <ehird> no.
23:15:43 <oerjan> ^ul (A)(~:(A)*~(KH)~*(N)*S~:^):^
23:15:43 <fungot> KHANKHAANKHAAANKHAAAANKHAAAAANKHAAAAAANKHAAAAAAANKHAAAAAAAANKHAAAAAAAAANKHAAAAAAAAAANKHAAAAAAAAAAANKHAAAAAAAAAAAANKHAAAAAAAAAAAAANKHAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAAAAAANKHAAAAAAAAAAAAAAAAAAAAAANKHAAA ...too much output!
23:15:47 <ehird> failure
23:15:52 <oerjan> ^ul (A)(~:(A)*~(KH)~*(N )*S~:^):^
23:15:53 <fungot> KHAN KHAAN KHAAAN KHAAAAN KHAAAAAN KHAAAAAAN KHAAAAAAAN KHAAAAAAAAN KHAAAAAAAAAN KHAAAAAAAAAAN KHAAAAAAAAAAAN KHAAAAAAAAAAAAN KHAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAAAAAN KHAAAAAAAAAAAAAAAAAAAAAN KHAAAAAAA ...too much output!
23:16:19 <ehird> ^ul ( ...too much output!)S(()S:^):^
23:16:20 <fungot> ...too much output! ...out of time!
23:16:26 <ehird> ^ul ( ...out of time!)S(()S:^):^
23:16:27 <fungot> ...out of time! ...out of time!
23:16:48 <kerlo> %temp ((lambda (fix) input) (((s s) k) ((s (k ((s s) (s ((s s) k))))) k)))
23:16:55 <kerlo> I did it again.
23:17:10 <oerjan> what?
23:17:12 <kerlo> %reset
23:17:16 <kerlo> Used lambda instead of l.
23:17:24 <kerlo> %temp ((l (fix) input) (((s s) k) ((s (k ((s s) (s ((s s) k))))) k)))
23:17:30 <psygnisfive> oh god you kids with your languages
23:17:35 <comex> out of curiosity, what is that?
23:17:39 <kerlo> What is what?
23:17:52 <comex> %temp
23:18:15 <oerjan> %eval fnord
23:18:16 <kerlobot> fnord
23:18:21 <kerlo> %eval fix
23:18:21 <kerlobot> [l (z) ((((s (k ((s s) (s ((s s) k))))) k) z) ((k ((s (k ((s s) (s ((s s) k))))) k)) z))]
23:18:49 <kerlo> That sets the evaluation template. Any expression you give to kerlobot is substituted for input in the template before it's used.
23:20:04 <kerlo> Let's see, I want the function to take itself, then take an argument, then return the argument a'd to itself... or something like that, anyway.
23:20:35 <kerlo> %eval ((fix (l (self) (l (x) (a x self)))) 3)
23:20:35 <kerlobot> (3 ((s ((s s) k)) (k (l (self) (l (3) (a 3 self))))) ((k ((s (k ((s s) (s ((s s) k))))) k)) (l (self) (l (3) (a 3 self)))))
23:20:44 -!- sriracha has left (?).
23:20:53 <kerlo> Of course.
23:21:55 <kerlo> It doesn't evaluate self before passing it to a.
23:22:15 <kerlo> I wonder how to do that...
23:24:05 <kerlo> Eh, SillyLisp isn't for serious programming anyway. That's what SaneLisp is for.
23:24:54 <kerlo> How many times have I mentioned that I don't know why SKI calculus in SillyLisp works?
23:25:20 <oerjan> oh
23:25:33 <oerjan> well basically each of S, K and I happen to work
23:25:44 <kerlo> %eval s
23:25:44 <kerlobot> [l (x) (l (y) (l (z) ((x z) (y z))))]
23:25:47 <kerlo> %eval k
23:25:47 <kerlobot> [l (x) (l (y) x)]
23:25:50 <kerlo> %eval i
23:25:50 <kerlobot> [l (x) x]
23:26:04 <kerlo> Oh, hmm...
23:26:20 <oerjan> variable capture is not a problem as long as you only pass closed expressions
23:26:37 <kerlo> Variable capture?
23:26:55 <oerjan> when variable definitions shadow each other
23:27:06 <oerjan> which is the problem you get when you don't rename
23:27:16 <kerlo> Do you know how variable substitution in SillyLisp works?
23:27:43 <oerjan> i assume you are just doing it naively
23:27:56 <kerlo> Pretty naively, yes.
23:28:08 <oerjan> ignoring alpha conversion
23:28:11 <ehird> %eval ((l (x y) x) y foo)
23:28:11 <kerlobot> y
23:28:12 * kerlo nods
23:29:42 <kerlo> (k foo), where foo is an arbitrary expression, will evaluate to [l (y) foo]. If foo contains any y's, those will be replaced when that's applied to something.
23:29:47 <kerlo> %eval ((k y) 6)
23:29:47 <kerlobot> 6
23:30:02 <kerlo> %eval ((k s) 6)
23:30:02 <kerlobot> [l (x) (l (y) (l (z) ((x z) (y z))))]
23:30:16 <comex> I have absolutely no idea what you guys are doing :(
23:30:18 <oerjan> however, if ... oh wait
23:30:24 <kerlo> Hmm.
23:30:27 <oerjan> hm there could be a problem
23:30:37 <kerlo> %eval (k s)
23:30:37 <kerlobot> [l (y) s]
23:30:41 <kerlo> Oh!
23:30:55 <oerjan> if foo contains both y's and what y's are replaced with
23:30:58 <kerlo> s doesn't contain anything at all!
23:31:10 <oerjan> oh
23:31:21 <kerlo> It's only when it's evaluated that stuff happens.
23:31:32 <oerjan> so you don't expand s and k until they are applied, yeah that makes things safe
23:31:37 * kerlo nods
23:32:08 <kerlo> I don't expand anything at all unless it's evaluated.
23:33:28 <kerlo> Evaluating (x y z . . .) causes x to be evaluated. After something is evaluated, the result is also evaluated, effectively. Also, f causes some stuff to be evaluated.
23:33:39 <oerjan> %eval ([l (x) (x x)] s)
23:33:39 <kerlobot> [l (y) (l (z) ((s z) (y z)))]
23:33:58 <oerjan> and no sharing
23:34:06 <kerlo> %eval ((l (x) (x x)) s)
23:34:06 <kerlobot> [l (y) (l (z) ((s z) (y z)))]
23:34:14 <kerlo> Using brackets is cheating. :-P
23:35:07 <oerjan> i thought there was some difference
23:35:21 <ehird> there is
23:35:48 <kerlo> %eval ((l (foo) (I AM A HOT DOG)) (l (foo) (no ain't)))
23:35:48 <kerlobot> (I AM A HOT DOG)
23:35:53 <kerlo> Wait, what?
23:36:07 <kerlo> I always get those mixed up.
23:36:10 <ehird> Makes sense to me.
23:36:25 <kerlo> %eval ((l (foo) (l (foo) (no ain't))) (I AM A HOT DOG))
23:36:25 <kerlobot> (l ((I AM A HOT DOG)) (no ain't))
23:36:36 <kerlo> %eval ((l (foo) [l (foo) (no ain't)]) (I AM A HOT DOG))
23:36:36 <kerlobot> [l (foo) (no ain't)]
23:36:47 <kerlo> The brackets protect l's first argument from substitution.
23:38:59 <kerlo> Which is cheating, of course.
23:39:04 <kerlo> So, I'll be more specific.
23:39:42 <kerlo> About f evaluating stuff, that is.
23:40:49 -!- BeholdMyGlory has quit ("godnatt på er").
23:41:00 -!- FireFly has quit ("Later").
23:41:02 <kerlo> (f func e list), where list is a non-empty list, evaluates func and (f func e <the tail of list>) before evaluating its result.
23:41:52 <oerjan> oh fold
23:42:37 <comex> "l" is lambda, what is "s"?
23:42:41 <ehird> SKI calculus
23:42:44 <ehird> for s, k and i
23:42:47 <kerlo> %eval (f (THIS IS FUN, EH MATE) e (1 2 3 4 54 5 6 7 8 9 0 10))
23:42:47 <kerlobot> ((THIS IS FUN, EH MATE) 1 ((THIS IS FUN, EH MATE) 2 ((THIS IS FUN, EH MATE) 3 ((THIS IS FUN, EH MATE) 4 ((THIS IS FUN, EH MATE) 54 ((THIS IS FUN, EH MATE) 5 ((THIS IS FUN, EH MATE) 6 ((THIS IS FUN, EH MATE) 7 ((THIS IS FUN, EH MATE) 8 ((THIS IS FUN, EH MATE) 9 ((THIS IS FUN, EH MATE) 0 ((THIS IS FUN, EH MATE) 10 e))))))))))))
23:42:47 <ehird> %eval s
23:42:47 <kerlobot> [l (x) (l (y) (l (z) ((x z) (y z))))]
23:42:49 <ehird> %eval k
23:42:49 <kerlobot> [l (x) (l (y) x)]
23:42:50 <ehird> %eval o
23:42:51 <kerlobot> o
23:42:52 <ehird> er
23:42:54 <ehird> %eval i
23:42:55 <kerlobot> [l (x) x]
23:43:14 <kerlo> %show
23:43:28 <kerlo> %what
23:43:28 <kerlobot> ((l (fix) input) (((s s) k) ((s (k ((s s) (s ((s s) k))))) k)))
23:44:50 <comex> %eval x
23:44:51 <kerlobot> x
23:44:53 <comex> %eval s x
23:44:54 <kerlobot> Syntax error
23:44:58 <comex> %eval (s x)
23:44:59 <kerlobot> [l (y) (l (z) ((x z) (y z)))]
23:45:03 <comex> %eval (l x)
23:45:03 <kerlobot> (l x)
23:45:17 <comex> %eval ((l x (x)) x)
23:45:18 <kerlobot> ((l x (x)) x)
23:45:22 <kerlo> %eval ((s x))
23:45:22 <kerlobot> ([l (y) (l (z) ((x z) (y z)))])
23:45:33 <comex> %eval ([l x (x)] x)
23:45:33 <kerlobot> Syntax error
23:45:38 <kerlo> l takes a list as its first argument.
23:45:43 <kerlo> Your argument is invalid.
23:45:48 <kerlo> (Sorry.)
23:45:51 <comex> how am I supposed to know that :)
23:45:55 <comex> %eval ((l (x) (x)) x)
23:45:55 <kerlobot> (x)
23:46:01 <comex> %eval ((l (x) (x x x)) x)
23:46:01 <kerlobot> (x x x)
23:46:03 <comex> %eval ((l (x) (x x x)) y)
23:46:03 <kerlobot> (y y y)
23:46:08 <oerjan> comex: omniscience.
23:46:28 <ehird> oh shit, freenode have a link to these logs as part of my email about the kline
23:46:36 <ehird> think I could get clog to erase the anti-freenode lines?
23:46:44 <comex> huh?
23:46:49 <comex> %eval ((k f) g)
23:46:49 <kerlobot> f
23:47:40 <kerlo> ehird: what were you klined for?
23:47:44 <comex> %eval (s (k y) (k z) x)
23:47:44 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (k y) (k z) x)
23:48:00 <ehird> kerlo: nothing: I was offline when it was done.
23:48:18 <kerlo> Why are you saying "oh shit", then?
23:48:32 <kerlo> comex: the SKI functions don't really like it when you pass x, y and z to them.
23:48:40 <kerlo> %eval (s (k Y) (k Z) X)
23:48:41 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (k Y) (k Z) X)
23:48:51 <kerlo> Though apparently they handled it well this time.
23:48:54 <ehird> kerlo: cuz I called freenode incompetent fucks in the log that I linked them
23:48:55 <ehird> :P
23:49:08 <kerlo> mm.
23:49:36 <kerlo> freenode without you would be... different.
23:49:51 <ehird> 'sthat a word for "better"? ;)
23:49:58 <comex> %eval (q q)
23:49:59 <kerlobot> (q q)
23:49:59 <oerjan> more quiet, polite...
23:50:03 <comex> %eval (k k)
23:50:03 <kerlobot> [l (y) k]
23:50:08 <ehird> oerjan: Harsh, man. Harsh.
23:50:31 <comex> %eval (l (x) (x x))(l (x) (x x))
23:50:31 <kerlobot> Syntax error
23:50:38 <comex> %eval ((l (x) (x x)) (l (x) (x x)))
23:50:39 <kerlobot> (loop (l (x) (x x)))
23:50:47 <kerlo> That terminated quickly.
23:51:10 <comex> %eval ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((x
23:51:10 <kerlobot> Syntax error
23:51:19 <kerlo> Now what did you expect that to accomplish?
23:51:35 <comex> dunno
23:51:41 <kerlo> Anyway, it can handle recursion to a depth of 1000. If you want to hang it, use really wide recursion.
23:52:06 <comex> %eval (loop x)
23:52:07 <kerlobot> (loop x)
23:52:29 <kerlo> loop is nothing special.
23:52:57 <kerlo> Here, let me make it siller.
23:53:00 -!- oerjan has quit ("Good night").
23:53:00 <kerlo> Sillier, rather.
23:53:13 <kerlo> Creamy is the puff.
23:53:13 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
23:53:20 -!- kerlobot has joined.
23:53:33 <kerlo> %temp ((l (fix) input) (((s s) k) ((s (k ((s s) (s ((s s) k))))) k)))
23:53:38 <kerlo> %eval (fix i)
23:53:52 * kerlo waits
23:54:12 <kerlo> %eval meep?
23:54:36 <kerlo> Wow, it hanged.
23:54:50 <ehird> http://lca2srv30.epfl.ch/sathe/data/emacs_learning_curves.png
23:54:57 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
23:55:54 -!- kerlobot has joined.
23:56:24 <kerlo> I wonder why it did that.
23:56:30 <kerlo> Anyway...
23:56:30 <kerlo> %eval ((l (x) (x x)) (l (x) (x x)))
23:56:31 <kerlobot> (loop (l (x) (x x)))
23:56:46 <kerlo> Oh, I didn't even save it.
23:56:46 -!- kerlobot has quit (Read error: 54 (Connection reset by peer)).
23:56:52 -!- kerlobot has joined.
23:56:54 <kerlo> %eval ((l (x) (x x)) (l (x) (x x)))
23:56:54 <kerlobot> (loop (l (x) (x x)))
23:57:08 <kerlo> Oh, maybe I did.
23:57:29 <kerlo> One more time...
23:57:29 -!- kerlobot has quit (Read error: 104 (Connection reset by peer)).
23:57:36 -!- kerlobot has joined.
23:57:39 <kerlo> %eval ((l (x) (x x)) (l (x) (x x)))
23:57:40 <kerlobot> ((IT IS LOOP SORRY) (l (x) (x x)))
23:57:47 <kerlo> Worth spamming the channel for, isn't it.
23:57:53 <ehird> IT IS LOOP SORRY
23:57:59 <kerlo> IT IS LOOP SORRY
23:58:07 <ehird> %eval ((s i i) (s i i))
23:58:07 <kerlobot> (([l (x) (l (y) (l (z) ((x z) (y z))))] i i) (s i i))
23:58:13 <ehird> %eval (((s i) i) ((s i) i))
23:58:20 <kerlobot> (((YOU ARE LOOP SORRY) i) (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i (i
23:58:20 <ehird> IT IS LOOP SORRY???????
23:58:22 <ehird> lol
23:58:26 <ehird> YOU ARE LOOP SORRY?
23:58:26 <ehird> wat
23:58:37 <kerlo> Yeah, sometimes it says YOU ARE LOOP SORRY instead.
23:58:40 -!- Corun has quit ("This computer has gone to sleep").
23:58:42 <kerlo> For, um, diagnostic reasons.
2009-01-20
00:11:35 -!- jix_ has joined.
00:21:22 -!- GreaseMonkey has joined.
00:24:35 -!- jix has quit (Read error: 110 (Connection timed out)).
00:47:00 -!- lifthrasiir has quit (Read error: 104 (Connection reset by peer)).
01:05:05 <psygnisfive> oh god you kids X_X
01:05:29 <ehird> hey guys remember when psygnisfive called us all kids? that was funny
01:05:57 <psygnisfive> hopefully you dont think im using that in reference to your respective ages.
01:07:13 <psygnisfive> i call everyone "kids" or "children" for mostly humorous effect because of its odd inappropriateness from me (as i'm not in a position to call others kids, given that im only 22). its postmodern humor, ehird.
01:07:20 <psygnisfive> its steeped in irony
01:07:37 <psygnisfive> so don't be such a little brat
01:08:09 <psygnisfive> and if you get the jimmy carr reference in that, i love you forever and ever.
01:08:27 <ehird> hey guys remember when psygnisfive reacted to a joke with 5 long lines? that was funny
01:09:18 <psygnisfive> ehird: im bored. tell me about some new and interesting esolang.
01:12:21 <ehird> muture
01:12:27 <ehird> & nopol
01:12:48 <psygnisfive> nopol has never been much explained to me. i've never heard of muture.
01:12:59 <ehird> ask oklopol
01:13:06 <psygnisfive> are they both his?
01:13:09 <ehird> yes
01:13:17 <psygnisfive> well.. then i'll NEVER get an explanation :p
01:13:19 <ehird> oklopol makes pretty much all of the interesting esolangs nowadays
01:13:40 <psygnisfive> oklopol!
01:13:42 <psygnisfive> explain muture
01:15:31 <psygnisfive> ehird: i miss you being tusho. :(
01:15:36 <ehird> tough shit
01:15:58 <psygnisfive> now you're a herd. on the internet. x.x
01:16:24 <ehird> verily.
01:21:56 <kerlo> SillyLisp! :-P
01:22:09 <kerlo> I'll have to make another esolang one of these days.
01:23:20 <psygnisfive> you should make an esolang generator
01:23:38 <psygnisfive> something that takes BF and comes up with bizarre but TC derivations
01:24:13 <psygnisfive> then we can just set it running and tell other people to not even bother with making BF-like languages ever again.
01:24:26 <ehird> make it an esolang description esolang
01:24:30 <ehird> you give it a template, it makes esolangs.
01:26:43 <psygnisfive> hm
01:26:51 -!- ski__ has joined.
01:27:04 <psygnisfive> i think the benefit of something like the language im designing is that it'd probably be especially good for creating DSLs
01:27:25 <psygnisfive> ski__, chalmers.se?
01:27:28 <ehird> ski__: have you sacrificed the goat yet? or are you earlier in the initiation process
01:27:31 <psygnisfive> is this a university?
01:27:43 <ehird> Looking at http://chalmers.se/, yes, i'd say it was.
01:27:46 <ehird> Now what on earth sparked that question...
01:28:04 <psygnisfive> well, he's logging on through them it seems.
01:28:13 <psygnisfive> which leads me to ask, ski__ what do you study?
01:28:24 <ehird> Generally people log onto IRC with network connections :p
01:28:35 <psygnisfive> yes, but his is a university network connection
01:28:42 <ehird> I guess we should have a descriptive topic what with all the newbies these days.
01:28:55 <psygnisfive> are there a lot of newbies recently?
01:28:56 <ski__> (psygnisfive : yes)
01:29:00 <psygnisfive> i havent been paying much attention
01:29:11 -!- ehird has set topic: the international hub for enterprise esoteric programming language design, development and deployment ~ http://esolangs.org/wiki/ ~ http://tunes.org/~nef/logs/esoteric/.
01:29:14 -!- ehird has set topic: the international hub for enterprise esoteric programming language design, development and deployment ~ http://esolangs.org/wiki/ ~ http://tunes.org/~nef/logs/esoteric.
01:29:14 <ski__> (depending on what you were asking ..)
01:29:28 <ehird> now it's semi-descriptive!
01:29:29 <ski__> ehird : which goat ?
01:29:35 * ski__ looks confused
01:29:36 <ehird> ski__: that one over there ------>
01:30:01 * ski__ see an elegant keyboard "over there" ..
01:30:08 <ehird> yeah, that's a goat.
01:30:13 <psygnisfive> ehird: im looking at http://www.vjn.fi/oklopol/muture.txt and not finding it to be especially.. insightful. :p
01:30:14 <ehird> trying to trick you. they're sneaky things.
01:30:20 <ehird> that's why we must sacrifice them.
01:30:34 <ehird> psygnisfive: it's oklopol, what did you expect?
01:30:35 <ski__> (<http://datamancer.net/keyboards/ergo1/ergo1.jpg>, if anyone wonders)
01:30:47 <ehird> ski__: that's a nasty goat, that
01:30:48 <psygnisfive> you know
01:30:53 <ehird> you want to slay that pronto
01:30:56 <psygnisfive> ive never liked the datamancer keyboards
01:31:05 <psygnisfive> they're normal keyboards with a steampunk veneer
01:31:06 <ski__> (ehird : as in .. SLAY Radio ?)
01:31:18 <psygnisfive> no, what i want to see is someone convert an old Corona
01:31:19 <ehird> no. as in kill. with your bare hands
01:31:25 <ehird> didnt they teach you anything in the initiation? ;-)
01:31:42 <psygnisfive> ski__ also kill your excessive parens. much as we love lisp, we dont need to speak in it
01:31:58 <ehird> i like them
01:32:02 <ehird> parentheses are ((parenthical))
01:32:05 <psygnisfive> (or (do? we) (not (do? we)))
01:32:10 <ehird> ( parenthicalicious, even )
01:32:22 <ski__> (ehird : "parenthetical", itym)
01:32:30 <ehird> ski__: watch out for oerjan, by the way. he swats people indiscriminately.
01:32:30 <psygnisfive> it took me about 5 tries to say parenthicalicious
01:32:43 <ehird> psygnisfive: it would be hard if you have a lisp
01:32:48 * ski__ wonders what "swat" means
01:32:54 <ehird> he has a fly swatter.
01:32:56 <ski__> (psygnisfive : btw, yes)
01:32:59 <psygnisfive> ehird: why? its only got one s!
01:33:01 <ehird> http://en.wikipedia.org/wiki/Flyswatter
01:33:14 <ehird> he swats people with it. normally after they make a pun that's worse than one of his.
01:33:42 <psygnisfive> ehird: also, if you love parens, theres a book written by some crazy french person who's used so many parenthetical asides that the text is incomprehensible
01:33:52 <ehird> psygnisfive: sounds excellent
01:33:56 <ehird> what I want is a book that is just like
01:33:56 <psygnisfive> single sentences have upwards of like 7 or 8 nestings
01:33:59 <ehird> Things happened.[1]
01:34:04 <ehird> [1] Specific things[2], in fact[3].
01:34:09 <ehird> [2] These thin (blah blah)
01:34:12 <ehird> [3] Where fact is subjective.
01:34:17 <ehird> the whole book is just nested footnoes
01:34:17 <psygnisfive> the bottom most nestings being like.. paragraphs sometimes
01:34:19 <ehird> *footnotes
01:34:28 <ehird> for the whole book
01:34:33 <ehird> top-down book writing :-D
01:34:37 <psygnisfive> ehird: well
01:34:39 <psygnisfive> if you like footnotes
01:34:40 <psygnisfive> there is Ibid
01:35:02 <psygnisfive> the whole book is a book of foot notes to a missing text
01:35:20 <ehird> heh
01:35:24 <psygnisfive> well, endnotes. but still
01:35:35 <psygnisfive> http://en.wikipedia.org/wiki/index.html?curid=2400949
01:35:59 <ehird> wiki/index.html?curid=2400949?
01:36:02 <psygnisfive> theres another book that consists entirely of reviews of the book itself.
01:36:02 <ehird> That's some old link.
01:36:07 <ehird> ooh
01:36:11 <ehird> douglas hofstadter had that idea
01:36:11 <ehird> IIRC
01:36:15 <ehird> in godel, escher, bach
01:36:20 <psygnisfive> http://en.wikipedia.org/wiki/Ibid:_A_Life
01:36:29 <psygnisfive> actually, that might be where i got it from :)
01:36:49 <psygnisfive> i can never be sure, because goodness knows its not as tho some poet wouldn't make something like that
01:38:33 <ehird> A Review: A Review. The review in question is an odd one, as it is entirely on the subject of itself. This creates an interesting metaness leaving no actual content beyond self-reference to the review. Wholly interesting. *****
01:40:22 -!- moozilla has joined.
01:41:45 <psygnisfive> is this genuine?
01:41:47 <comex> %eval (i x)
01:41:47 <kerlobot> x
01:41:58 <ehird> psygnisfive: I just wrote it :)
01:42:00 -!- metazilla has joined.
01:42:02 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
01:42:02 <psygnisfive> :p
01:42:33 -!- metazilla has quit (Read error: 131 (Connection reset by peer)).
01:42:34 -!- moozilla has joined.
01:43:45 <comex> %eval (s (l (x) (l (y) he x y)) (l (x) x o) l)
01:43:46 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (l (x) (l (y) he x y)) (l (x) x o) l)
01:43:54 <comex> ok, that was wrong
01:44:12 <comex> %eval (i a) (i b)
01:44:12 <kerlobot> Syntax error
01:44:15 <comex> %eval (i a)(i b)
01:44:15 <kerlobot> Syntax error
01:44:24 <comex> %eval (i (i a) (i b))
01:44:24 <kerlobot> ([l (x) x] (i a) (i b))
01:44:45 <comex> %eval (i (i a) (i b) (i c))
01:44:46 <kerlobot> ([l (x) x] (i a) (i b) (i c))
01:44:49 <comex> %eval (l (i a) (i b) (i c))
01:44:49 <kerlobot> (l (i a) (i b) (i c))
01:45:06 <comex> %eval (h (e l) (l o))
01:45:07 <kerlobot> (h (e l) (l o))
01:45:12 <comex> %eval (h e l l o)
01:45:13 <kerlobot> (h e l l o)
01:45:37 <comex> %eval (s (l (x) (l (y) (he x y))) (l (x) x o) l)
01:45:37 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (l (x) (l (y) (he x y))) (l (x) x o) l)
01:46:29 <comex> %eval (=)
01:46:29 <kerlobot> (=)
01:46:34 <comex> %eval (.)
01:46:34 <kerlobot> (.)
01:46:39 <comex> %eval (i.)
01:46:39 <kerlobot> (i.)
01:46:41 <comex> %eval (i .)
01:46:41 <kerlobot> .
01:46:48 <ehird> what are you doing comex
01:46:53 <comex> just screwing around
01:47:06 <ehird> %eval (f f f f f)
01:47:06 <comex> %eval (i )
01:47:06 <kerlobot> (f f f f f)
01:47:06 <kerlobot> ([l (x) x])
01:47:08 <ehird> %eval (f f f f f f)
01:47:08 <kerlobot> (f f f f f f)
01:47:10 <ehird> %eval (f f f f)
01:47:11 <kerlobot> (f f f f)
01:47:14 <ehird> hrm.
01:47:17 <ehird> fold is messed up :D
01:47:31 <comex> %eval (i)
01:47:32 <kerlobot> ([l (x) x])
01:47:36 <comex> %eval i
01:47:37 <kerlobot> [l (x) x]
01:47:49 <comex> %eval l (x) (x)
01:47:50 <kerlobot> Syntax error
01:47:59 <comex> %eval (l (x) (x)) (i)
01:47:59 <kerlobot> Syntax error
01:48:03 <comex> %eval *(l (x) (x)) (i))
01:48:03 <kerlobot> Syntax error
01:48:05 <comex> %eval 9(l (x) (x)) (i))
01:48:05 <kerlobot> Syntax error
01:48:08 <comex> %eval 9(l (x) (x)) (i))
01:48:08 <kerlobot> Syntax error
01:48:10 <comex> oh my god
01:48:12 <comex> %eval ((l (x) (x)) (i))
01:48:12 <kerlobot> (([l (x) x]))
01:48:15 <comex> there we go
01:51:55 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
01:52:02 -!- moozilla has joined.
01:59:11 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
01:59:16 -!- moozilla has joined.
02:00:32 <kerlo> %eval (s (l (x) (l (y) he x y)) (l (x) x o) l)
02:00:33 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (l (x) (l (y) he x y)) (l (x) x o) l)
02:00:46 <kerlo> %eval (s (l (X) (l (Y) he X Y)) (l (X) X o) l)
02:00:46 <kerlobot> ([l (x) (l (y) (l (z) ((x z) (y z))))] (l (X) (l (Y) he X Y)) (l (X) X o) l)
02:12:25 -!- ehird has quit (Read error: 113 (No route to host)).
02:12:38 -!- melkonem has joined.
02:12:42 -!- melkonem has left (?).
02:13:15 -!- KajirBot has quit (Read error: 113 (No route to host)).
02:13:44 -!- seabot has quit (Read error: 113 (No route to host)).
02:50:30 -!- metazilla has joined.
02:51:22 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
02:51:32 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
02:51:35 -!- moozilla has joined.
02:57:54 -!- metazilla has joined.
02:58:01 -!- moozilla has quit (Nick collision from services.).
03:04:07 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
03:04:09 -!- moozilla has joined.
03:04:41 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:04:44 -!- moozilla has joined.
03:06:56 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:06:59 -!- moozilla has joined.
03:15:40 -!- metazilla has joined.
03:15:41 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:15:46 -!- metazilla has changed nick to moozilla.
03:16:15 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
03:16:19 -!- moozilla has joined.
03:24:21 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
03:25:29 -!- CakeProphet has joined.
03:30:57 -!- sebbu has quit ("@+").
05:00:31 -!- flexo has quit (Remote closed the connection).
05:04:57 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
05:04:58 -!- metazilla has joined.
05:18:54 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
05:18:56 -!- moozilla has joined.
05:19:27 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
05:19:34 -!- moozilla has joined.
05:31:53 -!- lifthrasiir has joined.
05:46:19 <oklopol> http://www.vjn.fi/oklopol/muture.txt <<< psygnisfive, ais523 rev-enged it.
05:46:38 <psygnisfive> i saw
05:46:49 <oklopol> err
05:46:53 <oklopol> you did now?
05:46:58 <psygnisfive> yes :p
05:47:03 <psygnisfive> i looked through the logs and found it
05:47:05 <oklopol> that was like time ago
05:47:11 <oklopol> oh i see.
05:48:28 <psygnisfive> it looks very haskellish, obviously, but what im not sure about is the definition of sim
05:48:29 <oklopol> i should probably try to write a spec or something, muture i at least think i understand myself, as opposed to, say, contfuck and noprob.
05:48:44 <psygnisfive> i mean, on the one hand i sort of understand it
05:48:56 <psygnisfive> but you're missing a pattern
05:49:00 <oklopol> well it's more just general functional stuff with pattern matching.
05:49:07 <oklopol> | isn't what it is in haskell
05:49:10 <oklopol> it's an "or"
05:49:26 <oklopol> but not what "or" is in imperative langs ofc. more like "one of these, i dunno which"
05:49:33 <psygnisfive> namely, the definition where its not x:xs y:ys but rather where its nil y:ys or x:xs nil
05:50:04 <oklopol> yeah that's actually a bug, although less serious than you think
05:50:07 <psygnisfive> for instance, sim [1] [1,2] will fail when it gets to sim [] [2]
05:50:11 <oklopol> thanks, i'll fixor.
05:50:20 <oklopol> well no it won't fail
05:50:28 <psygnisfive> sure it will
05:50:31 <psygnisfive> it wont match either definition
05:50:40 <psygnisfive> it wont match sim [] [], nor sim x:xs y:ys
05:50:43 <oklopol> it will just be suboptimal because it'll have to match the last two elements together
05:50:45 <psygnisfive> so it just falls through
05:50:55 <psygnisfive> no no my point is
05:51:01 <psygnisfive> [] doesnt HAVE last two elements
05:51:09 <oklopol> well rrrright, if you call with exactly that
05:51:10 <psygnisfive> ot doesnt have any
05:51:16 <psygnisfive> so it wont match x:xs
05:51:18 <oklopol> yes, of course, that will fail.
05:51:30 <psygnisfive> so sim [] [1] will fail
05:52:13 <oklopol> yes. a minor bug though.
05:52:36 <psygnisfive> im also not entirely sure how your sim algorithm is supposed to work in full. what does it report for sim "a111" "111"?
05:52:41 <oklopol> but thanks for showing it, i never realized muture allows is robust enough to alow that
05:53:18 <oklopol> should report -1
05:53:39 <psygnisfive> interesting
05:54:06 <oklopol> yes, the gist of the language is ">>" means "maximize" ("<<" for "minimize", for completeness)
05:54:33 <psygnisfive> ??
05:54:47 <psygnisfive> oh i see
05:54:50 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
05:54:53 -!- moozilla has joined.
05:54:58 <psygnisfive> >> sim "hed" x
05:55:14 <psygnisfive> with x as words
05:55:16 <oklopol> "maximize value of expression given all the possible nondeterminism allowed lol"
05:55:16 <psygnisfive> interesting
05:55:44 <psygnisfive> so its supposed to go through words, and find the one where sim "head" the_word is greatest
05:55:53 <oklopol> yep.
05:56:31 <oklopol> should be able to implement that with a search through the list and dynamic programming, in general it will do all kinds of search using the value of the expression as the heuristic.
05:57:05 <oklopol> err i need to go. lecture starts pretty sewn
05:57:19 <psygnisfive> see ya
05:58:27 <oklopol> decided to took one more course btw, "computer science and the society", who's a cute little masochist now, huh?
05:58:33 <oklopol> ...
05:58:34 <oklopol> *take
05:58:49 <psygnisfive> you darling :D
05:58:54 <psygnisfive> ::bite::
06:34:12 -!- jix_ has quit ("Computer has gone to sleep").
06:41:54 <bsmntbombdood> he's MINE
06:44:15 <psygnisfive> he's ours, bitch
06:44:21 <psygnisfive> hmm
06:44:29 <psygnisfive> has anyone built a tag file system?
06:50:25 <bsmntbombdood> s/tag//
06:56:46 <psygnisfive> lolwut
07:00:01 <bsmntbombdood> has anyone here ever built a file system?
07:02:24 -!- jix has joined.
07:08:43 -!- jix has quit (Remote closed the connection).
07:08:46 -!- jix has joined.
07:19:13 <psygnisfive> oh i didnt mean anyone HERE
07:19:15 <psygnisfive> i meant in general
07:54:36 -!- psygnisf_ has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:11:45 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
08:11:51 -!- psygnisf_ has changed nick to psygnisfive.
08:34:41 -!- lifthrasiir has quit (Read error: 104 (Connection reset by peer)).
08:35:12 -!- lifthrasiir has joined.
08:37:33 -!- oerjan has joined.
08:41:54 -!- jix has quit (Read error: 110 (Connection timed out)).
08:49:39 -!- ais523 has joined.
09:06:03 -!- jix has joined.
09:09:06 <MizardX> {Marybelle} Hey all. I keep running into memory problems when querying a MySQL database. Any pointers?
09:10:52 <moozilla> MizardX what's the query?
09:15:04 -!- GreaseMonkey has quit ("Client Excited").
09:22:59 <AnMaster> MizardX, sure 0x3430536000 0x7fff0d6f2cb8 0x34304273c0
09:23:12 <AnMaster> (kudos to xkcd)
09:30:47 -!- Corun has joined.
09:35:44 * oerjan swats AnMaster -----###
09:36:01 <ais523> AnMaster: I don't get the reference
09:36:03 <oerjan> sorry, it's apparently become my job description
09:36:53 -!- oerjan has quit ("leaving").
09:37:16 <ais523> <Wikipedia API Help> This means that if, for example, "Main Page" is the first random page on your list, "List of fictional monkeys" will *always* be second, "List of people on stamps of Vanuatu" third, etc.
09:40:50 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:41:17 -!- moozilla has joined.
09:43:17 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:43:44 -!- moozilla has joined.
09:46:11 -!- metazilla has joined.
09:46:15 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:46:24 -!- metazilla has changed nick to moozilla.
09:46:46 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:46:49 -!- moozilla has joined.
09:50:51 -!- metazilla has joined.
09:50:52 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
09:51:02 -!- metazilla has changed nick to moozilla.
09:56:17 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
10:01:04 -!- Corun has quit ("Leaving").
10:08:24 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
10:12:14 -!- jix has quit ("Computer has gone to sleep").
10:20:21 -!- jix has joined.
10:34:16 -!- jix has quit ("Computer has gone to sleep").
11:24:20 <AnMaster> <ais523> AnMaster: I don't get the reference <-- hahah
11:24:40 <AnMaster> (that was obviously a joke about C++ references)
11:53:34 -!- ais523 has joined.
12:02:00 -!- ais523 has quit (Remote closed the connection).
12:02:05 <AnMaster> afk
12:30:36 -!- sebbu has joined.
12:56:23 -!- jix has joined.
13:03:27 -!- ais523 has joined.
13:32:13 -!- ehird has joined.
13:34:44 <ehird> hi ais523
13:45:43 <ehird> duuude.
13:45:43 <ehird> http://www.yucs.org/~gnivasch/life/article_cat/
13:45:44 <ehird> fucking.
13:45:45 <ehird> duuuuuuuuuuuuuuuude.
13:47:12 -!- ais523_ has joined.
13:47:16 <ais523_> hi ehird
13:47:22 -!- ais523 has quit (Nick collision from services.).
13:47:36 -!- ais523_ has changed nick to ais523.
13:47:44 <ehird> http://www.yucs.org/~gnivasch/life/article_cat/
13:47:45 <ehird> http://www.yucs.org/~gnivasch/life/article_cat/
13:47:47 <ehird> awesome.
13:50:05 -!- jix has quit ("Computer has gone to sleep").
13:52:30 -!- jix has joined.
14:13:55 -!- KingOfKarlsruhe has joined.
14:53:17 -!- Judofyr has quit (Remote closed the connection).
15:05:53 * ehird switches browser.
15:05:59 <ehird> For no discernable reason.
15:08:02 <ais523> which browser are you using now?
15:08:15 <ehird> Telnet.
15:08:15 * ais523 runs through some likely possibilities in their head
15:08:23 <ais523> hmm... does Opera have a Mac version, I wonder?
15:08:30 <ais523> also, browsing via Telnet is great, if a little slow
15:08:30 <ehird> Ha. Bingo.
15:08:38 <ehird> (I don't know why, I just realiased I never actually used Opera.)
15:08:57 <ehird> I should try every browser in evolt.org's archive.
15:09:03 <ehird> It even has the original TBL NextStep browser.
15:09:06 <ehird> WorldWideWeb.app
15:09:08 <ais523> what's Opera like?
15:09:31 <ehird> ais523: Pretty ordinary, except it renders really fast.
15:09:42 <ehird> And a lot of the HTML5 people work on it.
15:09:48 <ehird> So it has a lot of support for that stuff.
15:11:08 <ehird> I wonder if I could get nextstep working in a VM.
15:11:10 <ehird> That'd be interesting
15:11:32 -!- KingOfKarlsruhe has quit (Remote closed the connection).
15:24:14 <Asztal> edbrowse is the standard!
15:24:22 <ehird> oh lawd
15:30:33 -!- jix has quit ("Computer has gone to sleep").
15:37:09 -!- sebbu2 has joined.
15:55:05 -!- sebbu has quit (Read error: 110 (Connection timed out)).
15:55:45 <AnMaster> "The application must insure that no other SQLite interfaces are invoked by other threads while sqlite3_config() is running. " <-- "insure"? Shouldn't that be "ensure"?
15:55:57 * AnMaster prods ehird
15:56:09 <AnMaster> ais523, hello
15:56:21 <AnMaster> ais523, also "<ais523> AnMaster: I don't get the reference" was a C++ joke right?
15:56:35 <ais523> no, it wasn't
15:56:48 <ehird> AnMaster: ye.
15:56:49 <ehird> *yes
15:56:51 <ehird> to your former q
15:56:56 <AnMaster> ais523, you don't know what xkcd strip I was talking about?
15:56:59 <ais523> no, I don't
15:57:08 <AnMaster> http://xkcd.com/138/
15:57:09 <ais523> I hardly know any XKCDs, apart from the ones which are linked nearly all the time
15:57:35 <ais523> they should teach XKCD in school, it's needed to make any sense of the interent
15:57:39 <ehird> you know the funny thing about people quoting xkcd verbatim all the time?
15:57:47 <ehird> It has a strip exactly about the annoying people who do that.
15:57:55 <AnMaster> ais523, :D
15:58:01 <ehird> http://xkcd.com/16/
15:58:34 <AnMaster> ehird, Isn't that about quoting Monty Python?
15:58:34 <ais523> ehird: that's about Monty Python, not xkcd
15:58:49 <ehird> yeah, um, because the point it makes totally only applies specifically to monty python
15:59:04 <ehird> not
15:59:28 <ais523> ehird: it does, really
15:59:33 <ais523> because the point is about surrealist humour
15:59:40 <AnMaster> also that thing about the car accident makes no sense
15:59:43 <ais523> so if you're quoting something that isn't surrealist humour, the point doesn't apply
15:59:50 <ehird> < AnMaster> also that thing about the car accident makes no sense
15:59:55 <ehird> nor does goddamn monty python
16:00:06 <AnMaster> well true
16:00:11 <ehird> that's the whole point
16:00:17 <AnMaster> right
16:04:49 <ehird> meanwhile
16:04:51 <ehird> http://www.peta.org/sea_kittens/
16:04:54 <ehird> peta rebrands fish.
16:04:56 <ehird> as sea kittens.
16:05:03 <ehird> hilaripidity ensures
16:05:07 <ehird> *ensues
16:05:09 <AnMaster> hm
16:05:13 <ais523> is anyone even paying attention to them on that?
16:05:17 <Asztal> Ooh, sea kittens
16:05:22 <Asztal> Must try those
16:05:25 <AnMaster> who the heck is peta?
16:05:38 <ehird> PETA are a bunch of fucked-up idiots.
16:05:49 <ehird> Creepy "animal rights" extremists.
16:05:58 <ehird> They acre more about animals than humans, and actually they don't care about animals.
16:06:00 <Slereah_> Meh.
16:06:01 <AnMaster> well what is wrong with animal rights?
16:06:07 <ehird> Nothing.
16:06:08 <Slereah_> Sea kittens aren't thhat great.
16:06:12 <Slereah_> I prefer LAND FISH
16:06:12 <ehird> I'm talking about PETA.
16:06:13 <AnMaster> s/acre/care/
16:06:14 <AnMaster> I believe
16:06:18 <Slereah_> They're so fuzzy and delicious
16:06:34 <ehird> haha, I am so calling kittens land fish from now on
16:06:34 <Asztal> I prefer flying fish
16:06:55 <Slereah_> ehird : Fry some up!
16:06:58 <Slereah_> It's delicious
16:07:30 <ehird> #esoteric: Talking about eating kittens since 2009
16:07:41 <Slereah_> C'mon
16:07:43 <Slereah_> This is #esoteric
16:07:48 <Slereah_> I'm pretty sure we did it before
16:16:28 <Ilari> Fry how? RF EM radiation, IR EM radiation, heat, HVAC or HVDC? :->
16:17:18 <Slereah_> Fry with a regular frying pan, through thermal conduction
16:17:25 <Slereah_> You know, phonon transmission.
16:19:31 -!- ais523 has quit (Read error: 54 (Connection reset by peer)).
16:20:43 <ehird> http://isobamapresident.com/
16:21:06 <Slereah_> Oh shi-
16:21:14 <Slereah_> Quick, let's nuke the US before the negro!
16:21:34 <Ilari> One of those troijan-spreading sites?
16:21:45 <Slereah_> The very same
16:21:59 <ehird> No. :P
16:24:33 -!- MigoMipo has joined.
16:28:02 -!- ais523 has joined.
16:31:42 <ehird> I think #haskell has entered Eternal January.
16:32:18 <adimit> I'm watching. It's cruel.
16:32:34 <adimit> don't they know about ghci
16:33:10 <ehird> 15 year olds don't use ghci. It's an unwritten rule.
16:33:39 <AnMaster> <ehird> I think #haskell has entered Eternal January. <-- ?
16:33:50 <ehird> AnMaster: irritating noob in #haskell.
16:33:59 <AnMaster> ehird, also you are 13 and use ghc iirc?
16:34:06 <AnMaster> possibly also ghci
16:34:19 <ehird> I said 15 year olds.
16:34:21 <ehird> Pay attention.
16:34:42 <AnMaster> ehird, so you will stop when you are 15?
16:34:50 <ehird> yes. Then restart again when 16
16:34:52 <ehird> It is a law.
16:34:55 <ehird> I would be killed if I did not.
16:35:02 <AnMaster> ehird, unwritten one?
16:35:15 <ehird> Yes.
16:35:22 <AnMaster> mhm
16:37:42 <AnMaster> ehird, also why "Eternal January", has this happened more than once?
16:41:35 <ehird> no
16:41:39 <ehird> its an eternal september ref
16:41:50 <AnMaster> yes, but hopefully this will end soon
16:44:59 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
16:45:12 -!- ais523 has joined.
17:07:25 <ehird> http://isobamapresident.com/
17:07:26 <ehird> It changed.
17:07:33 <ehird> lulz geddit
17:07:35 <ehird> i didn't even intend that
17:08:51 <Slereah_> CHONGE
17:09:37 <AnMaster> <ehird> lulz geddit <-- ?
17:09:46 <ehird> Changed.
17:09:49 <ehird> Geddit?
17:09:52 <ehird> Obama? Change? It changed?
17:09:54 <ehird> Ahahrahrharhahrahr
17:10:07 <AnMaster> ah
17:10:20 <AnMaster> right, read that as gedit for some reason...
17:10:26 <ehird> XD
17:10:29 <AnMaster> which iirc is some gnome based editor
17:10:36 <AnMaster> "Barack Obama has been president for 2009-1-20 12:07:00 GMT-05:00" <-- that makes no sense
17:11:10 <ehird> doesn't say that for me
17:11:18 <ehird>
17:11:18 <ehird> Barack Obama has been president for 4 minutes, 27 seconds
17:11:22 <ehird> guess you need scripts
17:11:27 <AnMaster> ah right
17:11:31 <ehird> since it goes in realtime
17:12:32 <AnMaster> "(Changed protection level for "Barack Obama": to prevent premature declarations of presidency ([edit=sysop] (expires 17:00, 20 January 2009 (UTC)) [move=sysop] (indefinite)))"
17:12:42 <AnMaster> lol
17:12:51 <ehird> lol
17:13:06 <ehird> "BARACK OBAMA IS PRESIDENT"
17:13:09 <ehird> "NO HE IS NOT THERE IS 5 SECONDS TO GO"
17:13:11 <ehird> "REVERT"
17:13:22 <AnMaster> ehird, actually it was edited 17:02: http://en.wikipedia.org/w/index.php?title=Barack_Obama&diff=265311244&oldid=265306761
17:13:26 <ehird> "NOW HE IS"
17:13:28 <ehird> "[CITATION NEEDED]"
17:13:37 <ehird> "IM BARACK OBAMA THAT'S HOW I KNOW"
17:13:39 <AnMaster> ehird, and that protection was done 30 minutes in advance
17:13:43 <ehird> "ORIGINAL RESEARCH"
17:13:55 <AnMaster> :D
17:14:17 <ehird> "Is it in a scientific paper or a newspaper yet?"
17:14:18 <ehird> "No?"
17:14:21 <ehird> "Unverifiable."
17:15:40 <AnMaster> ehird, oh also it seems he was sworn in 17:05 (UTC) so that meant there was somewhat of an edit war between 17:00 and 17:09
17:15:48 <AnMaster> (yes 09 for some reason)
17:16:08 <AnMaster> http://en.wikipedia.org/w/index.php?title=Barack_Obama&action=history <-- quite interesting
17:16:44 <AnMaster> also the protection changes in it doesn't quite match up
17:18:26 <ehird> what do you mean
17:18:45 <ehird> <!-- PLEASE DO NOT CHANGE OBAMA'S NAME -->'''Barack Hussein Obama II'''<!-- PLEASE DO NOT CHANGE OBAMA'S NAME -->
17:18:49 <ehird> lol
17:18:57 <AnMaster> indeed "lol"
17:19:01 <AnMaster> why would someone change it
17:19:11 <AnMaster> also wtf is up with that II? He isn't royal
17:19:21 <ehird> ...
17:19:26 <AnMaster> eh?
17:19:39 <AnMaster> I only ever seen numbers after the names used for royals
17:19:40 <ehird> Someone call me when we've returned to intelligent discourse.
17:19:53 <AnMaster> maybe some cultural thing
17:19:58 <AnMaster> ehird, ?
17:21:31 <ehird> I don't think so.
17:21:57 -!- ehird has quit ("Lost terminal").
17:24:18 -!- oerjan has joined.
17:25:01 -!- ehird has joined.
17:25:19 <oerjan> ehird: i was just going to comment on your absense
17:26:17 <oerjan> heh curious you were only gone just as i joined
17:27:55 <oerjan> <ais523> <Wikipedia API Help> This means that if, for example, "Main Page" is the first random page on your list, "List of fictional monkeys" will *always* be second, "List of people on stamps of Vanuatu" third, etc.
17:28:04 <oerjan> wow the last one actually exists :D
17:28:27 <ais523> the second one presumably exists too
17:28:34 <ais523> I believe it is in fact telling the truth
17:28:39 <ais523> rather than coming up with facetious examples
17:28:45 <oerjan> ic
17:29:30 <oerjan> um what is this about? random page selection being deterministic after the first page?
17:31:10 * oerjan googles
17:31:36 <AnMaster> err
17:31:45 <AnMaster> ais523, "random page"?
17:31:48 <AnMaster> "always"?
17:31:54 <AnMaster> no that makes no sense
17:32:02 <ehird> yes it does
17:32:06 <ais523> AnMaster: it's to do with the way the randomization works
17:32:13 <ehird> page X always leads on to Y
17:32:15 <AnMaster> ais523, you mean the random page link?
17:32:15 <ais523> each page is given a random number
17:32:19 <AnMaster> hm
17:32:29 <oerjan> http://wiki.creativecommons.org/api.php
17:32:31 <ais523> if you generate one random page, you get a page whose random number is just above a random number
17:32:32 <Deewiant> AnMaster: heard of pseudorandom number generators and the way they always give the same results for the same seed?
17:32:35 <AnMaster> ais523, so random link from main page will always go to the same place?
17:32:37 <ais523> Deewiant: it isn't that
17:32:41 <ais523> AnMaster: no, not at all
17:32:46 <ais523> generating one random page at a time, it's random
17:32:56 <ais523> with differing probabilities for pages due to how the randomizer works
17:32:56 <Deewiant> ais523: it's analogous, no?
17:33:02 <ais523> Deewiant: no
17:33:05 <ais523> let me explain the reason
17:33:06 <Deewiant> meh
17:33:12 <AnMaster> Deewiant, that would be too logical for mediawiki
17:33:18 <ais523> if you generate multiples, to save server time, then it takes the first n pages above the randomly-generated number
17:33:20 <ehird> AnMaster: actually, this _is_ logical.
17:33:29 <AnMaster> also why on earth would mediawiki api need random page thing
17:33:34 <ehird> ...
17:33:36 <ehird> for random pages?
17:33:39 <ehird> Hey just guessing!
17:33:41 <ais523> so if main page is 0.5, then list of fictional monkeys is 0.50000000000000005 and list of people on stamps of Vanatu is 0.5000000000000059
17:33:43 <ais523> or whatever
17:33:43 <AnMaster> ehird, why would a bot need it
17:33:49 <ais523> AnMaster: random page patrolling?
17:33:50 <ehird> not a bot.
17:33:54 <ehird> this is for things using the api
17:33:58 <ehird> like gregorr's Five Clicks to Jesus
17:33:59 <AnMaster> ais523, that would surely miss lots of pages
17:34:01 <ehird> that uses random pages
17:34:17 <AnMaster> ehird, also iirc the bot is mainly for the wiki bots?
17:34:27 <ehird> the API is for anything.
17:34:31 <AnMaster> I mean the original intention
17:34:37 <AnMaster> sure you can use it for other stuff
17:34:56 <oerjan> <AnMaster> <ais523> AnMaster: I don't get the reference <-- hahah
17:34:57 -!- Slereah2 has joined.
17:35:06 -!- Slereah_ has quit (Read error: 145 (Connection timed out)).
17:35:09 <oerjan> AnMaster gets a joke i didn't? what is the world coming to
17:35:11 <ais523> oerjan: is there some joke in that line I'm missing?
17:35:25 <ais523> AnMaster explained the pun he thought I'd added there, but it was unintentional
17:35:25 <AnMaster> oerjan, yes I thought it was a joke about C++ &-style references
17:35:30 <oerjan> wait he gets a _non-existing_ joke?
17:35:43 <ais523> oerjan: well, it explains why you didn't get it
17:35:44 <ehird> negative sense of humour
17:35:49 <oerjan> ais523: heh, it was obvious after he pointed it out
17:35:50 <AnMaster> _D
17:35:51 <AnMaster> :D*
17:36:00 * AnMaster wonders what the smiley _D means
17:36:47 <oerjan> a smiling person who's just been stamped on by an elephant
17:36:54 <ehird> why are they smiling
17:37:08 <oerjan> they didn't see it coming, naturally
17:37:18 <oerjan> *stomped
17:37:22 <AnMaster> oerjan, wouldn't they stop smiling after?
17:37:28 <AnMaster> very quickly I mean
17:37:58 <oerjan> how do you stop smiling when your brain is crushed? duh.
17:38:03 <AnMaster> oh right
17:38:11 <AnMaster> oerjan, yeah I guess it is always fatal
17:38:16 <ehird> maybe it's a gentle elephant
17:38:18 <ehird> non-fatal
17:38:34 <AnMaster> ehird, or a small one
17:39:03 <ehird> aww. cute tiny elephant kitten.
17:39:09 <ehird> who's an elephant kitten? YOU ARE!
17:39:16 <ehird> you're a good little elephant kitten. yeeeeeeees!
17:39:19 <AnMaster> ehird, like Garfield?
17:39:28 <ehird> ...
17:39:36 <ehird> I am ashamed of this channel.
17:39:40 <ehird> But mostly you/
17:39:44 <ehird> s/\/$/./
17:39:45 * AnMaster has decided to always talk about Garfield when someone mentions "cute kitten"
17:39:56 <AnMaster> just because I'm tried of that thing
17:40:05 <oerjan> AnMaster: you mean to change the subject quickly?
17:40:09 <AnMaster> seriously, what about cute dogs? It is time for a change!
17:40:15 <ehird> dogs are not cute.
17:40:22 <ehird> but kittens?
17:40:23 <oerjan> yes they are.
17:40:26 <AnMaster> oerjan, certainly, and get rid of lolcats too
17:40:27 <ehird> You're a kitty cat! YES YOU ARE.
17:41:39 <AnMaster> hm
17:41:40 <Slereah2> *land fish
17:41:49 <ehird> o yes
17:41:53 <AnMaster> is it possible to have two keyboard attached that are on different keyboard layout?
17:42:01 <AnMaster> say, one dvorak, and one qwerty
17:42:05 <Slereah2> Ew.
17:42:15 <ehird> 5. MOST VAMPIRES DON'™T EVEN KNOW IF THEY ARE VAMPIRES!
17:42:16 <ehird> -- http://www.trueghosttales.com/paranormal/do-vampires-exist/
17:42:34 -!- psygnisfive has joined.
17:42:34 <AnMaster> -_-
17:43:17 <AnMaster> ehird, is that a parody site?
17:43:24 <ehird> Nope.
17:43:35 <AnMaster> ok, then it is really fucked up
17:43:40 <oerjan> i have a slight suspicion i might be a vampire
17:43:47 <ehird> oerjan: Here's how to tell:
17:43:52 <oerjan> i sunburn so darn easily
17:43:53 <ehird> 1. Do you know if you're a vampire?
17:43:55 <ehird> Yes: You are not a vampire.
17:43:58 <ehird> No: You are a vampire!
17:44:09 <AnMaster> :D
17:44:33 <AnMaster> oerjan, do you like raw meat?
17:44:43 <oerjan> hm not particularly
17:44:59 <AnMaster> oerjan, what about blood? Like "blodpudding"
17:45:06 <AnMaster> don't know English word for that
17:45:08 <oerjan> yummy!
17:45:17 <AnMaster> oerjan, it exists in Norway too?
17:45:20 <oerjan> i guess that settles it
17:45:21 <AnMaster> it is horrible I think
17:45:24 <ehird> black pudding?
17:45:32 <AnMaster> ehird, possible
17:45:33 <ehird> http://en.wikipedia.org/wiki/Black_pudding
17:45:39 <oerjan> ehird: something like that
17:45:45 * ehird vomits
17:45:50 <oerjan> i suppose the recipe varies
17:45:53 <AnMaster> yes something like that
17:45:57 <AnMaster> ehird, I agree
17:45:58 <AnMaster> fully
17:55:14 <adimit> arguably though, Haggis is worse. I wouldn't eat any of it though...
17:55:30 <AnMaster> adimit, what about surströmming or lutfisk?
17:55:42 <oerjan> mm, lutefisk
17:55:50 <AnMaster> oerjan, you can't mean that
17:55:54 <oerjan> yes i do
17:56:36 -!- appletizer has joined.
17:57:00 <appletizer> does this channel happen to discuss real-time coding too? :)
17:57:47 <AnMaster> why would it?
17:58:01 <oerjan> otoh i won't eat cod tongue, which the rest of the family eats
17:58:32 <ehird> hi appletizer
17:58:33 <oerjan> and i've got a cousin who won't eat lutefisk
17:58:34 <ehird> define real time coding
17:58:36 <appletizer> hey ehird
17:58:46 <appletizer> http://en.wikipedia.org/wiki/Real-time_computing
17:58:56 <appletizer> or -> http://en.wikipedia.org/wiki/Synchronous_programming_language
17:59:01 <ehird> ok, hows that relevant to this channel? :P
17:59:06 <adimit> AnMaster: nothing compares to Hakarl.
17:59:09 <AnMaster> coding != computing, real time coding would be writing when you write
17:59:11 <appletizer> lol is esoteric the name of a language or?
17:59:11 <AnMaster> or something
17:59:12 <AnMaster> :D
17:59:13 <ais523> well, a real time esolang would be kind-of interesting
17:59:19 <ehird> appletizer: no
17:59:23 <appletizer> i assume that esoteric meant less-known languages no other channels discuss :P
17:59:26 <ais523> appletizer: [[e:Esoteric programming language]]
17:59:28 <ehird> appletizer: yes
17:59:29 <ehird> kind of
17:59:31 <AnMaster> ais523, fail
17:59:31 <ais523> appletizer: http://esolangs.org/wiki/Esoteric_programming_language
17:59:32 <ehird> http://en.wikipedia.org/wiki/Esolang
17:59:33 <appletizer> and since real-time are esoteric by that nature... :)
17:59:35 <AnMaster> ah
17:59:38 <ais523> whoops, messed up shortcut
17:59:46 <ais523> well, esolangs tend to be even weirder than that
17:59:56 <ais523> less-known languages that were deliberately designed to be lesser-known
18:00:00 <appletizer> i would assume it would include things like esterel etc :)
18:00:09 <appletizer> http://en.wikipedia.org/wiki/Esterel
18:00:09 <ehird> appletizer: esterel?
18:00:12 <ais523> hmm... this goes back to the old argument about BANCStar
18:00:16 * ehird looks
18:00:23 <appletizer> a synchronous programming lang for real-time applications
18:00:25 <ehird> appletizer: well, if you're interested in odd programming languages you'll definitely fit in
18:00:29 <ehird> we're pretty lax about our topics here
18:00:44 <ais523> Esterel looks to me like an unintentionally esoteric language
18:00:48 <ais523> it takes itself far too seriously
18:00:56 <ais523> but then, the BANCStars of this world are great to talk about
18:01:01 <ehird> um, real-time languages have real use cases.
18:01:11 <ais523> ehird: yes
18:01:15 <appletizer> lol they usually do, RT codes are used in nuclear reactors to more mundanes like neurophysiological measurements
18:01:16 <ais523> so does Thutu, but I wouldn't call that non-esoteric
18:01:48 <ehird> I could never code something for a nuclear reactor or a hospital.
18:01:52 <ehird> That's far too much responsibility :P
18:02:00 <ais523> and you wouldn't in an esolang
18:02:06 <ais523> they're mostly deliberately designed to be impractical
18:02:08 <ais523> although a few aren't
18:02:16 <ais523> Underlambda, for instance, when I get round to speccing it
18:02:50 <ais523> ^bf ,[.,]!Hello appletizer!
18:02:50 <fungot> Hello appletizer!
18:02:51 <AnMaster> ais523, what about feather? It could be both :P
18:02:58 <ais523> AnMaster: ah, Feather
18:03:06 <AnMaster> ais523, encode the string in bf directly
18:03:17 <ais523> please, don't mention it in front of people who haven't heard of it already, it gives me headaches just thinking about it
18:03:21 <ais523> let alone trying to explain it
18:03:28 <AnMaster> oh sorry
18:03:40 <ehird> fungot: say hello to appletizer
18:03:41 <fungot> ehird: but i must admit, i haven't have an epiphany about those :p.
18:03:41 <ais523> let alone trying to /implement/ it
18:03:44 <ehird> fungot: say hello to appletizer
18:03:45 <ais523> which i still want to do some way
18:03:45 <fungot> ehird: the better way is to grovel through the package underlying the srfi-26 structure by opening it or opening a structure that includes a predicate to test if elements are lists or non-empty strings or vectors of arbitrary sizes.
18:03:48 <ehird> meh.
18:04:01 <ais523> ^ul (Hello appletizer!)S
18:04:01 <appletizer> hey ais523! :)
18:04:01 <fungot> Hello appletizer!
18:04:07 <appletizer> and fungot! <- is he a bot? :P
18:04:08 <fungot> appletizer: " the structure with the associated code in isolation seems to work fine
18:04:11 <ais523> ehird: and that Underload was not cheating
18:04:16 <ais523> appletizer: yes, written in http://esolangs.org/wiki/Befunge
18:04:17 -!- Slereah has joined.
18:04:21 <appletizer> nice :)
18:04:26 <ais523> one of the most practical esolangs around
18:04:29 <ais523> which is to say, not very
18:04:46 <ehird> appletizer: http://zem.fi/~fis/fungot.b98.txt
18:04:47 <fungot> ehird: you have no imagination?)
18:04:52 <ehird> Cover your eyes.
18:05:09 <ehird> I'd tell you about the goat you have to sacrifice but I think looking at fungot will do
18:05:10 <fungot> ehird: i guess i really should finish sicp. time for sleep for me. what i also need to understand my brain because i have an idea... a quine in
18:05:16 -!- BeholdMyGlory has joined.
18:05:51 <appletizer> woah ehird, that's the most convoluted coding if i've ever seen one :)
18:06:07 <AnMaster> appletizer, I have seen worse
18:06:10 <ais523> and Befunge is one of the more readable esolangs
18:07:30 <ehird> Not all esolangs are just about syntax :P
18:07:39 <AnMaster> indeed
18:08:17 <AnMaster> ehird, you mean like Feather? ;P
18:08:18 <ais523> which doesn't even have an official syntax yet?
18:08:20 <AnMaster> actually that is only about syntax kind of
18:08:35 <ais523> incidentally, my guiding goal for Feather starting syntax is "looks vaguely like Smalltalk, but for different reasons"
18:08:40 <AnMaster> (in a not very much so kind of not kind of way)
18:09:00 <AnMaster> ais523, oh, interesting, I would never have ended up with feather by that
18:10:12 <AnMaster> appletizer, also I hope you realise by now this is not the right place to be serious (well not be serious seriously anyway, you can of course be serious in a not very serious way, such as java2k)
18:10:32 <AnMaster> http://p-nand-q.com/humor/programming_languages/java2k.html
18:10:36 <appletizer> lol AnMaster, yeah i sorta figured, though it could be cool if i bumped into some RT-ers :)
18:10:51 <appletizer> i guess this would be the place for brainfuck and the likes :)
18:10:55 <AnMaster> well, ais523 is working with some VHDL thing on the side.
18:11:01 <AnMaster> that is kind of RT I guess
18:11:07 <AnMaster> not the way you meant it though
18:11:25 <ais523> AnMaster: that isn't related to esolangs, but to my RL work
18:11:31 <AnMaster> ais523, yes true
18:11:38 <ais523> it is rather weird, though, serious but weird, just like appletizer's realtime langs
18:11:41 <AnMaster> ais523, but would you call it "real time"?
18:11:59 <ais523> AnMaster: no, well arguably yes
18:12:03 <ais523> it can be very very realtime
18:12:11 <oerjan> real spacetime :D
18:12:13 <ais523> the fact that it has sleep-for-femtoseconds commands backs that up
18:12:21 <ais523> WAIT FOR 1 fs;
18:12:24 <AnMaster> ais523, indeed.
18:12:51 <AnMaster> wait a sec. femtosecond would need the circuit to operate at a very high speed?
18:13:12 <ehird> circuits do operate at a very high speed
18:13:28 <AnMaster> how many Mhz do you need to get one cycle = 1 fs?
18:13:35 <ais523> AnMaster: loads
18:13:41 -!- FireFly has joined.
18:13:45 <ais523> but 1fs is too fast even for VHDL-generated code
18:13:47 <AnMaster> ais523, THz or something?
18:13:49 <ais523> it's just there as a catchall option, I think
18:13:55 <ais523> picoseconds are more commonly used
18:14:13 <AnMaster> well I guess you could want sub-cycle
18:14:20 <AnMaster> for some stuff
18:14:38 <ais523> AnMaster: this is sub-cycle
18:14:43 <ais523> it's to do with decompiled code
18:14:48 <AnMaster> mhm?
18:14:58 <ais523> basically, it measures the lengths of the actual wires
18:15:00 -!- psygnisfive has quit (Connection timed out).
18:15:03 <ais523> and puts delays on accordingly
18:15:06 <ais523> so you can simulate properly
18:15:15 <AnMaster> appletizer, take a look at that link btw
18:15:37 <ehird> appletizer: I recommend you ignore AnMaster.
18:15:38 <ehird> :-D
18:15:41 <AnMaster> yes that makes sense
18:15:43 <ais523> meh, Java2K isn't really that interesting
18:15:55 <ais523> and it's worth pointing out that AnMaster and ehird are both upstanding and fine members of this channel
18:15:56 <AnMaster> ais523, no but it's introduction is
18:16:03 <ehird> wait, I'm upstanding and fine?
18:16:03 <ais523> but somehow end up bickering when you leave them in the same channel together
18:16:04 <ehird> goddamn!
18:16:06 <ehird> what have I been doing wrong?!
18:16:11 <ais523> ehird: well, for you it's more dubious
18:16:16 <AnMaster> ehird :D
18:16:40 <ais523> why does this worry me: "NEW VERSION 7.3 PRE-GAMMA RELEASED EARLY 2004, with a completely new interpreter written in Python. Finally, it is safe to embed Python in Webpages!"
18:17:05 <AnMaster> ais523, indeed, ehird is "fine" but not "upstanding". He said himself he was short.
18:17:14 <AnMaster> while I'm rather tall
18:17:22 <ehird> ais523: whaaaaaaaaat
18:17:29 <ehird> what's this for
18:17:33 <AnMaster> ehird, Java2k
18:17:34 <ais523> ehird: from the Java2K page AnMaster linked
18:17:37 <AnMaster> you forgot to click the link
18:17:39 <ehird> oh, ha
18:17:39 <AnMaster>
18:17:41 <AnMaster> ;P*
18:17:51 <oerjan> AnMaster: "upstanding" is about vector direction, not magnitude
18:18:14 <AnMaster> oerjan, well that makes less sense in this context.
18:19:00 -!- psygnisfive has joined.
18:19:14 <oerjan> AnMaster: he _could_ be reclining
18:19:22 <AnMaster> oerjan, subjective gravity? Sure some relativistic effects could maybe cause it, but this doesn't make sense for the rather "non-extreme" properties of this place
18:19:52 <AnMaster> gah, bad lag...
18:21:02 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
18:25:25 <AnMaster> I just had an idea for a horrible joke if anyone is interested.
18:25:26 <AnMaster> :D
18:25:50 <AnMaster> actually a slogan kind of.
18:26:06 <ehird> nonononono
18:26:11 <AnMaster> (and totally unrelated to the current convo)
18:26:17 <AnMaster> ehird, yesyesyes
18:26:25 * AnMaster prods oerjan and ais523
18:26:39 * ais523 objects to the deletion
18:26:40 <appletizer> aha AnMaster
18:26:51 <appletizer> i just looked at the article, nice one :)
18:26:54 <AnMaster> also maybe bad taste
18:27:01 <appletizer> lol ehird
18:27:06 <AnMaster> ais523, also what deletion?
18:27:11 <ais523> AnMaster: it's a Wikipedia pun
18:27:16 <AnMaster> oh ok
18:27:22 <ais523> oerjan will be deleted in 5 days if nobody objects
18:27:25 <AnMaster> anyway, here it comes:
18:27:26 <AnMaster> China: Democracy considered harmful.
18:27:28 * oerjan prepares ye olde swatter
18:27:42 <appletizer> brb (popping out for awhile)
18:27:42 * AnMaster prepares to dodge
18:28:01 <oerjan> wait what
18:28:01 <ehird> AnMaster: that wasn't even funny
18:28:06 <AnMaster> ehird, indeed.
18:28:15 <oerjan> that's not even worth a swat
18:28:26 <ais523> the problem is that watching AnMaster trying to make a joke is in fact very funny
18:28:27 <ehird> Hey guys! I made a joke! AnMaster.
18:28:27 <ais523> even if the jokes arent
18:28:31 <AnMaster> oerjan, exactly. I'm testing how low one can sink when it comes to humor
18:28:31 <ehird> see, that was funny.
18:28:33 <ais523> so it serves the intended purpose
18:28:40 * oerjan swats ehird -----###
18:28:47 <AnMaster> oerjan, this is a scientific study
18:28:53 <ais523> oerjan: does the swatter need to be used before you can put it away
18:28:59 <ais523> kind-of like some D&D artifact swords?
18:29:17 <ehird> oerjan NEVER puts his swatter away
18:29:35 <ais523> I reckon he has it in some kind of quick-draw holster
18:30:11 <oerjan> ais523: probably.
18:30:19 <ehird> ha
18:31:32 * AnMaster imagines replacing "gun" with "swatter" in a old Clint Eastwood movie
18:31:45 * oerjan chuckles
18:32:00 <AnMaster> an*
18:32:00 <AnMaster> btw
18:32:02 <ehird> Should I link to the obligatory bash?
18:32:05 <oerjan> that sounds like something Larson would draw
18:32:14 <AnMaster> oerjan, Larson?
18:32:23 <AnMaster> Larson who?
18:32:24 <ehird> Okay then.
18:32:25 <ehird> http://bash.org/?111338
18:32:26 <ais523> ehird: probably, I'm sufficiently Internet-insulated to miss all the obligatory quotes
18:32:27 <lament> replacing gun with swatter in the good, bad, ugly climax scene?
18:32:33 <ehird> ais523: it's not exactly SFW.
18:32:37 <ehird> Well, text can't be NSFW/
18:32:41 <oerjan> Gary Larson
18:32:42 <ehird> but there you go
18:32:47 <AnMaster> oerjan, no idea who that is
18:32:51 <ais523> ehird: actually I've seen that one before
18:33:11 <oerjan> AnMaster: in that case your total lack of humor is no longer surprising
18:33:47 <oerjan> actually, *would have drawn, since he quit in the middle nineties
18:33:53 <AnMaster> oerjan, wait the name does sound slightly familiar
18:34:02 -!- jix has joined.
18:34:33 <AnMaster> ah yes I have seen that strip once I think
18:34:53 <AnMaster> oerjan, yes when I see the some of the google image results it looks slightly familiar
18:36:40 -!- jix has quit (Client Quit).
18:36:54 -!- jix has joined.
18:37:16 -!- kar8nga has joined.
18:38:14 <ehird> http://bash.org/?875652 I predict that one day, this quote will be in the top 100 of bash.
18:38:28 <ais523> ehird: what's it about?
18:38:32 <ehird> evil.
18:38:35 <ais523> just asking this time in case it's an ASCII art goatse or something
18:38:47 <ehird> I doubt that would be accepted by the moderators
18:39:28 <ais523> ehird: you aren't giving much info
18:39:28 <ais523> I don't know how to interpret "evil" here
18:39:37 <ehird> it's not anything like that.
18:39:38 <ehird> it's text.
18:39:39 <ehird> :P
18:40:34 <ais523> hmm...
18:40:46 <ais523> surely the obvious answer is to report the person who set up the complicated scenario to the police?
18:41:13 <ais523> or possibly interfere while they're trying to set it up?
18:41:23 <ehird> I don't know, I mean, bacon.
18:41:30 <ehird> If you did that you might miss out on bacon.
18:41:37 <ais523> I can get my own bacon
18:41:41 <ehird> Perhaps you can't.
18:41:44 <ehird> Perhaps it is the last bacon left in the world.
18:41:47 <ehird> Had you considered that?
18:41:49 <AnMaster> this would be a "trilemma"?
18:41:53 <ais523> ehird: no, because it's a silly consideration
18:41:54 -!- psygnisfive has quit (Success).
18:41:54 <ehird> AnMaster: groan
18:42:09 <AnMaster> ehird, actually I mean it, "dilemma" is for two options
18:42:18 <AnMaster> clearly you can't use it when there are three options
18:43:07 <jix> AnMaster: how is it a dilemma or trilemma... like you can get bacon...
18:43:17 <AnMaster> <ehird> Perhaps you can't.
18:43:26 <jix> AnMaster: if you chose bacon i mean
18:43:27 <AnMaster> also I would save the person
18:43:51 <AnMaster> and then as ais523 said, report this to the police
18:44:11 <jix> when the police comes they'll just eat the bacon
18:44:19 <ais523> I think you could save the person by shouting "Look out, there's a tripwire"
18:44:22 <ehird> AnMaster: save a person over kittens and bacon?
18:44:23 <ais523> while you were going to save the kittens
18:44:26 <ehird> You're inhumane.
18:44:32 <AnMaster> jix, yes and? I can live without bacon
18:44:40 <ehird> No.
18:44:42 <ehird> Nobody can.
18:44:48 <ehird> That's simply _impossible_.
18:44:53 <AnMaster> ehird, I don't even like bacon
18:44:53 -!- psygnisfive has joined.
18:44:53 <AnMaster> ...
18:44:59 <ehird> Two basic needs: water, and bacon.
18:45:09 <AnMaster> ehird, what about air?
18:45:21 <jix> AnMaster: think of fish!
18:45:28 <ehird> AnMaster: no
18:45:29 <AnMaster> jix, yes and?
18:45:31 <ehird> bacon serves as air.
18:45:45 <AnMaster> stop being that silly
18:45:53 <AnMaster> ais523, btw how goes ick development now
18:45:54 <AnMaster> ?
18:45:54 <ehird> #esoteric
18:45:57 <ehird> don't be silly
18:45:58 <ehird> => gtfo
18:47:06 <ais523> AnMaster: very busy in RL atm
18:47:07 -!- KingOfKarlsruhe has joined.
18:47:14 <ais523> so no big improvements
18:47:18 <ais523> apart from the repo now being online
18:47:21 <AnMaster> also: http://www.irregularwebcomic.net/polls/poll0248.html
18:47:48 <oerjan> ehird: Osama bin Laden disagrees with you on the bacon issue
18:48:16 <ais523> AnMaster: that's quite some question
18:48:16 <ehird> Osama bin Laden is an anti-bacon extremist
18:48:25 <AnMaster> ais523, yes and the answers are funny too
18:48:56 <oerjan> ehird: true, true
18:50:30 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
18:52:37 <AnMaster> ehird, um all the vegetarians doesn't eat any bacon
18:52:57 <ehird> no, they do
18:52:58 <ehird> secretly
18:53:22 <AnMaster> also I don't eat bacon, I do eat meat though
18:53:25 <AnMaster> but not bacon
18:53:31 <ehird> liar
18:53:36 <ais523> I do eat bacon sometimes
18:53:39 <AnMaster> ehird, [citation needed]
18:53:43 <ehird> no, AnMaster
18:53:45 <ehird> you are a liar.
18:53:50 <ais523> but I wouldn't eat bacon over saving a person
18:53:51 <AnMaster> ehird, prove it
18:53:54 <ehird> i don't t alk to liars.
18:53:59 <ais523> as for saving the kittens, I tend to get confused by Rube Goldberg machines
18:54:05 <ais523> but I'd probably manage it if I came to in time
18:54:19 <ehird> i'd feed the kittens to the human to give them the strength to escape
18:54:22 <ehird> then share the bacon with them
18:54:25 <AnMaster> ais523, hm RUBE is a nice lang
18:55:06 <ais523> ehird: *feed the kittens with the human?
18:55:29 <ehird> ais523: either
18:55:32 <ehird> :P
18:55:39 <ehird> i don't think kitties eat bacon though.
18:55:42 <ehird> maybe they do.
18:55:45 <ais523> cats eat meat
18:55:46 <ais523> why not bacon?
18:55:52 <ehird> bacon is not meat, silly.
19:02:26 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
19:02:51 -!- ais523 has quit (Remote closed the connection).
19:04:20 -!- MigoMipo has changed nick to ZetroFly.
19:04:24 -!- ZetroFly has left (?).
19:05:29 -!- psygnisfive has joined.
19:06:06 -!- FireFly has changed nick to MigoMipo.
19:06:14 -!- BeholdMyGlory has changed nick to FireFly.
19:08:21 -!- MigoMipo has changed nick to Zetro.
19:08:27 -!- FireFly has changed nick to MigoMipo.
19:08:45 <oerjan> O_O
19:09:11 -!- ais523 has joined.
19:10:19 <oerjan> crazy swedes
19:11:29 -!- FireyFly has joined.
19:12:31 -!- FireyFly has changed nick to Wamanuz.
19:14:39 -!- MigoMipo has changed nick to SuperUltraMegaMa.
19:14:47 -!- SuperUltraMegaMa has changed nick to SuperUltraMario.
19:15:08 -!- SuperUltraMario has changed nick to BeholdMyBot.
19:15:18 -!- Wamanuz has changed nick to Eldflugan.
19:15:27 -!- BeholdMyBot has changed nick to Wamanuz.
19:15:33 -!- Eldflugan has changed nick to BeholdMyBot.
19:24:09 -!- Wamanuz has changed nick to BeholdMyGlory.
19:24:52 -!- BeholdMyBot has changed nick to Wamanuz.
19:25:46 -!- MigoMipo has joined.
19:27:46 <MigoMipo> I'm sorry for the nick war earlier.
19:28:15 <ehird> i see.
19:28:16 <MigoMipo> It got quite silly at an another channel, and we probably forgot that it would mess up other channels.
19:28:33 -!- ehird has set topic: IAmGreenAndAlsoFortunate.
19:28:35 <ehird> rt
19:28:38 -!- ehird has changed nick to IAmGreenAndAlsoF.
19:28:39 <IAmGreenAndAlsoF> *er
19:28:53 <ais523> Notify] ehird went offline (irc.freenode.net).
19:28:56 <ais523> client fail...
19:31:13 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
19:33:25 -!- psygnisfive has joined.
19:33:45 -!- Wamanuz has changed nick to FireFly.
19:34:01 * oerjan swats FireFly -----###
19:34:04 <FireFly> :<
19:34:49 <ais523> MigoMipo: which channel?
19:35:15 <MigoMipo> ais523: our "private" at ##tullinge.
19:37:07 <oerjan> incidentally, "tulling" means stupid person in norwegian :D
19:37:15 <FireFly> I know :<
19:37:47 -!- psygnisfive has quit (Read error: 60 (Operation timed out)).
19:38:41 -!- IAmGreenAndAlsoF has set topic: Tullings.
19:39:25 -!- ais523 has set topic: Tullings | http://tunes.org/~nef/logs/esoteric.
19:39:41 <ais523> IAmGreenAndAlsoF: what does the F stand for?
19:39:51 * ais523 guesses furious for no particular reason
19:40:07 <AnMaster> MigoMipo, hm? who are you?
19:40:16 <IAmGreenAndAlsoF> AnMaster: a person, stop asking people that
19:40:30 <IAmGreenAndAlsoF> ais523:
19:40:30 <IAmGreenAndAlsoF> 19:28 -!- ehird changed the topic of #esoteric to: IAmGreenAndAlsoFortunate
19:40:43 <IAmGreenAndAlsoF> hooray for typos
19:40:53 <AnMaster> well MigoMipo is new here isn't (s)he?
19:40:58 <ais523> you typoed /nick for /topic?
19:41:01 <FireFly> Yep, he is
19:41:20 <AnMaster> FireFly, also why did he join and excuse for the nick war?
19:41:34 -!- olsner has joined.
19:41:35 <IAmGreenAndAlsoF> AnMaster: stop questioning people liek that
19:41:36 <IAmGreenAndAlsoF> sheesh
19:41:50 <AnMaster> IAmGreenAndAlsoF, why? why not?
19:42:08 <MigoMipo> AnMaster:Because apologies are a good thing.
19:42:21 <AnMaster> well, what prompted you to join here...
19:42:28 <AnMaster> :)
19:42:28 <IAmGreenAndAlsoF> hes been in here for days
19:42:32 <IAmGreenAndAlsoF> shut upppppppppp
19:42:34 <FireFly> AnMaster is slow
19:42:37 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:42:38 * AnMaster looks in scrollback
19:42:47 <AnMaster> * MigoMipo (n=MigoMipo@84-217-3-141.tn.glocalnet.net) has joined #esoteric <-- ?
19:42:55 <IAmGreenAndAlsoF> ...
19:42:56 <oerjan> everyone expects the AnMaster inquisition
19:42:57 <IAmGreenAndAlsoF> he's been COMING HERE
19:42:58 <IAmGreenAndAlsoF> for DAYS
19:43:03 <AnMaster> IAmGreenAndAlsoF, I just connected to bnc then.
19:43:09 <IAmGreenAndAlsoF> ... and?
19:43:09 <FireFly> Agreed, oerjan
19:43:10 * AnMaster just rebooted
19:43:12 <IAmGreenAndAlsoF> who cares? How is that relevant?
19:43:27 <AnMaster> IAmGreenAndAlsoF, well, whatever happened after made no sense
19:43:30 * AnMaster goes reading logs
19:43:50 <IAmGreenAndAlsoF> it made perfect sense unless you're AnMaster
19:44:03 <oerjan> In Soviet Russia, you make no sense to this joke
19:44:10 <AnMaster> IAmGreenAndAlsoF, that is only because you are ehird
19:44:24 <IAmGreenAndAlsoF> AnMaster: everyone else seems to be having no trouble whatsoever understanding it.
19:44:36 <AnMaster> IAmGreenAndAlsoF, well it makes more sense after reading logs
19:45:18 <MigoMipo> Whats the point of this anyway?
19:45:23 <AnMaster> none?
19:45:30 <FireFly> Or, null
19:45:35 <IAmGreenAndAlsoF> MigoMipo: AnMaster likes interrogating people.
19:45:43 <AnMaster> IAmGreenAndAlsoF, you just made that up
19:45:47 <AnMaster> [citation needed]
19:45:49 <IAmGreenAndAlsoF> Truly.
19:46:00 <AnMaster> IAmGreenAndAlsoF, so?
19:46:05 <AnMaster> *shrug*
19:46:41 <AnMaster> afk
19:52:55 -!- bsmntbombdood has quit (kornbluth.freenode.net irc.freenode.net).
19:52:56 -!- adimit has quit (kornbluth.freenode.net irc.freenode.net).
20:10:26 -!- bsmntbombdood has joined.
20:10:26 -!- adimit has joined.
20:24:31 -!- MigoMipo has left (?).
20:27:46 -!- appletizer has quit (Remote closed the connection).
20:33:38 -!- ais523 has quit (Remote closed the connection).
20:38:35 -!- kar8nga has joined.
20:51:28 -!- psygnisfive has joined.
21:32:20 <IAmGreenAndAlsoF> http://www.kongregate.com/games/squidsquid/the-irregulargame-of-life <-- amusing
21:33:33 <FireFly> Found out about that one in school a few months ago
21:34:11 <IAmGreenAndAlsoF> lol, a you have to burn the rope reference
21:52:13 -!- Zetro has quit (Nick collision from services.).
21:59:38 -!- kar8nga has left (?).
22:11:14 -!- BeholdMyGlory has quit ("hejdå ^^").
22:21:53 <IAmGreenAndAlsoF> "we have no doubt that Gdrive will become holy grail for privacy advocates around the world."
22:21:57 <IAmGreenAndAlsoF> "I am high as a kite."
22:21:59 <IAmGreenAndAlsoF> ->
22:42:29 * ski__ wonders what the "map" is supposed to show
22:44:47 <psygnisfive> hey guys
22:55:24 <IAmGreenAndAlsoF> ski__: translation to english :P
22:59:47 <ski__> i was refering to
22:59:51 <ski__> -ChanServ(ChanServ@services.)- [#esoteric] Welcome to the esoteric programming channel! Check out the esoteric programmers map: http://www.frappr.com/esolang
23:00:06 <IAmGreenAndAlsoF> ah.
23:00:08 <IAmGreenAndAlsoF> enable javascript
23:00:19 <IAmGreenAndAlsoF> it's a map of the world with little pins for #esoteric denizens
23:00:20 <ski__> my w3m comes with no javascript
23:00:27 <IAmGreenAndAlsoF> then tough :)
23:00:36 <IAmGreenAndAlsoF> you're not missing much tbh
23:01:11 <ski__> ok
23:12:41 -!- jix has quit ("...").
23:21:07 -!- Corun has joined.
23:23:23 -!- FireFly has quit ("Brb irl").
23:29:33 -!- Dewi has quit (Remote closed the connection).
23:29:42 -!- Dewi has joined.
23:31:20 -!- oerjan has quit ("Good night").
23:32:53 -!- olsner has quit ("Leaving").
23:45:39 -!- Corun has quit ("This computer has gone to sleep").
23:53:57 <oklopol> http://www.kongregate.com/games/squidsquid/the-irregulargame-of-life <<< how utterly boring levels. ofc i doubt you could do much better, gol needs a crapload of bloat until you get to actually interesting stuff, like most automatons, they aren't very puzzly, more programmy.
23:59:32 -!- GreaseMonkey has joined.
2009-01-21
00:04:14 <IAmGreenAndAlsoF> oklopol: it's fun.
00:07:26 <oklopol> IAmGreenAndAlsoF: i didn't read logs, are you ehird?
00:07:47 <IAmGreenAndAlsoF> yes.
00:08:32 <oklopol> k. well. it's not very fun, it's mainly about doing simple arithmetic
00:08:34 <oklopol> well
00:08:47 <oklopol> okay, i'm only at level 33 sofar, because it's not very interesting.
00:08:53 <IAmGreenAndAlsoF> "only"
00:08:54 <IAmGreenAndAlsoF> :-D
00:08:58 <IAmGreenAndAlsoF> hey oklopol
00:09:00 <IAmGreenAndAlsoF> DOT ACTION 2
00:09:26 <oklopol> well i did the levels before it on ~5 attempts, it's not like it took that long
00:09:39 <oklopol> yeah i've been thinking i should continue that
00:09:47 <IAmGreenAndAlsoF> :DD
00:09:52 <IAmGreenAndAlsoF> oklopol: you should write INFINITE ACTION
00:09:57 <oklopol> unfortunately: when :||||||||
00:09:58 <IAmGreenAndAlsoF> which generates progressively harder dot action levels
00:09:59 <IAmGreenAndAlsoF> FOREVER
00:10:18 <oklopol> i mean i took this electronics course
00:10:26 <oklopol> because i just take all kinds of random courses
00:10:31 <oklopol> and i don't know fuck about physics.
00:10:56 <oklopol> and the book is a scanned copy, because i'm sure as hell not gonna buy it
00:11:03 <oklopol> not all that fun to read
00:11:24 <oklopol> and i need to read quite a lot of it till friday
00:11:49 <oklopol> i need more time
00:11:52 <oklopol> gimme gimme gimme
00:12:27 <IAmGreenAndAlsoF> oklopol: here's some time
00:19:51 <oklopol> okay not arithmetic as such, the puzzles are about subset sum
00:27:52 <oklopol> finished the game
00:27:56 <oklopol> that was kinda pointless.
00:28:08 <oklopol> and i don't call pointless easily.
00:38:40 <IAmGreenAndAlsoF> :D
01:04:13 <GregorR> What's the maximum acceleration a person could survive for an extended period ... obviously if you were in a spaceship accelerating at 1G indefinitely it would be perfectly comfortable, but how high does it get before people start bleeding and turning into pancakemen...
01:04:28 <IAmGreenAndAlsoF> green
01:08:39 -!- GreaseMonkey has quit ("Client Excited").
01:16:41 <oklopol> GregorR: wut?
01:17:45 <GregorR> If you were in a spaceship accelerating at 1G, it would feel just like gravity (but take a lot more energy). What's the maximum acceleration a ship could maintain for long periods before its human occupants go *squish* after fairly long periods of time?
01:21:53 <oklopol> ...why would they go squish?
01:24:08 <GregorR> ... seriously?
01:24:15 <GregorR> I'm talking about acceleration, not velocity.
01:25:35 <oklopol> umm kay. that's what i thought you said.
01:28:47 <oklopol> GregorR: can you teach me the physics that lead to the squishing?
01:29:35 -!- GreaseMonkey has joined.
01:30:22 <GregorR> All objects in motion have a tendency to stay in motion, and all objects at rest have a tendency to stay at rest. If you push on them to force them not to stay in motion/at rest, they will push back (every action has an equal and opposite reaction). When your body pushes back with, say, 100Gs of force, it will most certainly not remain a body for long.
01:35:16 -!- GreaseMonkey has quit (Remote closed the connection).
01:41:13 <GregorR> If your velocity is 0.99999999999999999999999973c, you'll get to the Andromeda galaxy in ten minutes 8-D
01:44:02 <oklopol> and if it's c, you'll already be there
01:44:51 <GregorR> Whoops, miscalculation, make that v = 0.999999999999999999999972c (one more 9)
01:44:56 <oklopol> BUT IF IT'S C++, YOU'LL PROBABLY *insert something funny *
01:45:11 <oklopol> ...in you ass
01:46:59 -!- GreaseMonkey has joined.
01:50:41 -!- IAmGreenAndAlsoF has quit (Read error: 113 (No route to host)).
01:53:14 <MizardX> GregorR: 10 minutes on a clock inside or outside the vehicle?
01:53:23 <GregorR> Inside of course.
01:53:41 <GregorR> 2.5 million years will have passed outside.
01:53:43 <oklopol> MizardX: galaxies aren't exactly 10 light years away
01:54:18 <ski__> (the milky way is not very far away)
01:54:26 <GregorR> X-P
01:54:55 <oklopol> ski__: what a significant point to make
01:54:58 <oklopol> :o
01:55:24 <ski__> not that significant, i admit
01:55:43 <oklopol> so err
01:55:47 <oklopol> _ is application?
01:55:53 <oklopol> and it's reversed
01:56:04 <oklopol> ski__ = ``iks = `ks
01:56:11 <oklopol> = sk_
01:56:42 <ski__> that might have been
01:56:54 <oklopol> WHY IS YOUR NICK NOT IN NORMAL FORM?
01:57:16 -!- oklopol has changed nick to kllooop.
01:57:19 <ski__> ask freenode why you can't be in more than 20 channels ?
01:57:50 <kllooop> that's a pretty omnipresent rule
01:57:57 -!- kllooop has changed nick to oklopoll.
01:58:00 <oklopoll> ...
01:58:01 <oklopoll> typo
01:58:07 <oklopoll> and by that i mean quakenet has the same limit
01:58:36 <oklopoll> it's probably so you'll have to choose, they want to teach you not to be greedy
01:58:39 <ski__> (my "real" nick is `ski', btw)
01:59:05 <oklopoll> i know i'm a #haskell regular idler
01:59:16 <ski__> ok
01:59:33 <oklopoll> i'm assuming it's combinators and not, say, skiing?
01:59:58 <ski__> yes
02:00:26 <oklopoll> you're .se so i had to check
02:01:06 <ski__> (i couldn't come up with anything less silly when i started with irc in c:a 2000)
02:01:42 <oklopoll> well you could've use something that actually did something. except i'm not sure how much you can do without parens
02:02:07 <oklopoll> interesting question though, what can you do?
02:03:22 <oklopoll> well. i have a lecture in 4 hours, better have some sleep now prolly
02:03:23 <oklopoll> ->
02:03:25 <ski__> istr someone wrote a basic concatenative EDSL in haskell, using only application for composition of words
02:03:57 <ski__> possibly one could do something similar in combinatory logic, if one defined a few appropriate combinators
02:04:08 <ski__> ok
02:04:15 <oklopoll> err
02:04:22 <oklopoll> oh
02:04:38 <oklopoll> edsl?
02:04:47 <oklopoll> like e-dsl?
02:04:47 <oklopoll> :P
02:04:49 <ski__> Embedded Domain Specific Language
02:05:08 <oklopoll> oh. right.
02:05:48 <oklopoll> now seriously ->
02:05:56 * ski__ idly wonders what oklopoll has lecture in ..
02:06:21 <oklopoll> ...calculus
02:06:25 <ski__> (ok, bye, get some sleep :)
02:06:29 <oklopoll> trying!
02:07:10 * oklopoll goes once more
02:51:53 <kerlo> ski = i.
02:52:05 <kerlo> I don't like sk = ki. Let's change it.
02:52:45 <kerlo> %eval (e (s k) (k i) (Darn.) (Celebrate! Ponies and flowers and cuddles.))
02:52:46 <kerlobot> (Celebrate! Ponies and flowers and cuddles.)
02:52:53 <kerlo> Hey, they're not equal after all.
02:53:02 <kerlo> %eval (s k)
02:53:03 <kerlobot> [l (y) (l (z) ((k z) (y z)))]
02:53:07 <kerlo> %eval (k i)
02:53:08 <kerlobot> [l (y) i]
02:53:28 <kerlo> %eval i
02:53:29 <kerlobot> [l (x) x]
02:53:40 <kerlo> %eval ((k z) (y z))
02:53:40 <kerlobot> z
02:53:51 <kerlo> %eval (l (z) z)
02:53:51 <kerlobot> [l (z) z]
02:54:47 <kerlo> Therefore, (s k) = [l (y) [l (z) z]] and (k i) = [l (y) [l (x) x]], if you evaluate subexpressions that are eventually going to be evaluated anyway.
02:55:16 <kerlo> %eval (hold ((s k) x) ((s k) z) ((k i) x) ((k i) z))
02:55:16 <kerlobot> (hold ((s k) x) ((s k) z) ((k i) x) ((k i) z))
02:55:23 <kerlo> Meh.
02:55:32 <kerlo> %eval ((s k) x)
02:55:33 <kerlobot> [l (z) ((k z) (x z))]
02:55:49 <kerlo> %eval (((s k) x) N)
02:55:49 <kerlobot> N
02:55:52 <kerlo> %eval (((s k) z) N)
02:55:52 <kerlobot> N
02:55:58 <kerlo> %eval (((k i) x) N)
02:55:58 <kerlobot> N
02:56:01 <kerlo> %eval (((k i) z) N)
02:56:01 <kerlobot> N
02:56:08 <kerlo> Wow, I didn't expect that.
02:56:27 <kerlo> %eval (((s k) y) N)
02:56:27 <kerlobot> N
02:56:30 <kerlo> %eval (((k i) y) N)
02:56:30 <kerlobot> N
04:26:56 -!- bsmntbombdood has changed nick to bsmntbombgirl.
04:55:41 -!- MizardX has quit (Read error: 60 (Operation timed out)).
05:06:07 -!- GreaseMonkey has quit ("Client Excited").
05:09:11 -!- MizardX has joined.
05:28:13 <GregorR> Wow, NOBODY understands length contraction (or I don't, but I really think I'm right here :P )
05:29:25 <kerlo> Oh, relativity.
05:34:24 <MizardX> space-time bends by the effect of speed alone...
06:26:38 <Slereah> Space time bends for the slightest thing, MizardX.
06:35:13 <GregorR> Space-time doesn't bend, that implies that it's a global phenomenon. Space-time is perceived differently from different [inertial] reference frames.
06:38:02 -!- oklopoll has quit (Read error: 145 (Connection timed out)).
06:40:04 <psygnisfive> THERE IS NO SPACETIME
06:40:51 <GregorR> There is no Earth, there is no solar system, there is no galaxy, there is no space time. There is only one truth: There is only the spoon.
06:42:19 <psygnisfive> precisely
06:42:25 <psygnisfive> and its too big :(
06:50:49 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
06:50:59 -!- moozilla has joined.
06:54:05 -!- FireFly has joined.
07:05:16 <fizzie> I've heard that Uri Geller can bend the space-time with his mind only.
07:12:12 <Asztal> it's true
07:14:41 <GregorR> Yay f**ed up relativity: to get to a location that's N lightyears away in N years (yes, N==N), how fast do you need to go? Answer: sqrt(0.5) times the speed of light GWAR
07:14:55 -!- MigoMipo has joined.
07:17:17 <Asztal> but how much time would that be from a bystander's perspective? :)
07:41:43 <psygnisfive> GWAR!
07:53:20 -!- FireFly has quit ("Later").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:06 <Ilari> N * sqrt(2) years?
08:19:16 -!- MigoMipo has quit ("http://www.mibbit.com ajax IRC Client").
08:38:56 -!- oerjan has joined.
08:46:27 <oerjan> <oklopoll> well you could've use something that actually did something. except i'm not sure how much you can do without parens
08:46:51 <oerjan> hm. starting with i or k is uninteresting
08:47:07 <oerjan> sk is also uninteresting
08:50:39 <oerjan> sixy -> y(xy), which is uninteresting if y is k or i
08:51:58 <oerjan> and by "uninteresting" i mean reduces to something simpler without parentheses than the original
08:52:49 <oerjan> so (1) sixs
08:53:09 <oerjan> siis -> ss, uninteresting
08:56:10 <oerjan> siksxy -> s(ks)xy -> ksy(xy) -> s(xy)
08:56:53 <oerjan> s tends to make things more complicated of course. i wonder if you can blow up using only those
08:58:09 <oerjan> sssssss -> ss(ss)sss -> ss(sss)ss -> ss(ssss)s -> ss(sssss)
08:58:18 <oerjan> i sense a pattern, and no
09:03:09 -!- ais523 has joined.
09:18:31 -!- ais523 has quit (Read error: 113 (No route to host)).
09:32:00 -!- ais523 has joined.
09:49:19 -!- Corun has joined.
09:50:16 -!- Corun has quit (Client Quit).
09:58:59 -!- metazilla has joined.
09:59:04 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
09:59:10 -!- metazilla has changed nick to moozilla.
10:02:13 -!- metazilla has joined.
10:02:22 -!- moozilla has quit (Nick collision from services.).
10:03:59 -!- moozilla has joined.
10:04:26 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:04:27 -!- moozilla has changed nick to metazilla.
10:05:58 -!- moozilla has joined.
10:05:58 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:06:07 -!- moozilla has changed nick to metazilla.
10:06:47 -!- moozilla has joined.
10:06:53 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:06:58 -!- moozilla has changed nick to metazilla.
10:10:03 -!- moozilla has joined.
10:10:03 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:10:18 -!- moozilla has changed nick to metazilla.
10:12:08 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:12:09 -!- moozilla has joined.
10:18:58 -!- metazilla has joined.
10:18:59 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:19:07 -!- metazilla has changed nick to moozilla.
10:19:35 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:19:37 -!- moozilla has joined.
10:25:31 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:25:33 -!- moozilla has joined.
10:26:13 -!- metazilla has joined.
10:26:13 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:26:21 -!- metazilla has changed nick to moozilla.
10:31:54 -!- metazilla has joined.
10:31:54 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:32:06 -!- metazilla has changed nick to moozilla.
10:32:48 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:32:58 -!- moozilla has joined.
10:33:46 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
10:33:54 -!- moozilla has joined.
10:35:47 -!- ehird has joined.
10:35:57 <ehird> hi
10:36:02 <oerjan> ho
10:36:07 <ais523> it's off to work we go?
10:36:14 <ehird> yes.
10:36:45 <ehird> so.
10:36:55 <ehird> wonder if im still klined
10:36:57 * ehird = tired
10:37:20 <ais523> so am I, intensive modules are wearing
10:37:24 <ais523> on everyone involved
10:40:18 <ehird> i think i had a dream about this channel
10:40:24 <ais523> interesting
10:40:49 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
10:40:58 <ehird> i was using my old client :s
10:41:15 -!- moozilla has joined.
10:41:23 <ehird> yeah that was the one notable thing
10:43:39 <oerjan> I Have a Dream [citation needed]
10:43:51 <ehird> ha
10:44:40 <ais523> I had a dream a while back where a polar bear turned up on the doorstep to our house, which was useful because we'd forgotten to feed the foxes
10:45:26 <ais523> strange, really, I don't even own a trio of foxes
10:45:32 <ais523> and if I did I probably wouldn't keep them in the fight
10:45:35 <ais523> *house
10:45:44 <ais523> I'm dubious as to whether a polar bear or three foxes would win a fight anyway
10:46:31 <ehird> haha
10:48:32 -!- metazilla has joined.
10:48:44 -!- moozilla has quit (Nick collision from services.).
10:48:46 -!- metazilla has changed nick to moozilla.
11:36:33 <ais523> heh, thedailywtf sidebar has an argument about whether when all of the territory of Tuvalu ends up underwater, the .tv subdomain will still exist
11:36:58 <ehird> has to
11:37:00 <ehird> so many things use it
11:37:14 <ehird> link?
11:37:14 <ais523> it would be kind-of funny if it didn't, though
11:37:33 <ais523> http://forums.thedailywtf.com/forums/p/10875/190075.aspx#190075
11:37:42 <ehird> to be honest, country tlds are just random namespaces to me, since I don't believe in country-based segregation of dns
11:38:04 <ehird> but lol
11:38:06 <ehird> I love that tooltip
11:38:23 <ehird> hilarious to the max
11:38:24 <ais523> well, if the country ceases to exist, does its DNS entry?
11:38:51 <ehird> Well... it gets obsoleted, but generally if enough people use it ICANN fail to bully them effectively to use another one, so they keep it around.
11:40:02 <ais523> the registrars would jump at the chance to force everyone with a .tv to go to a new domain, I reckon
11:40:05 <ais523> free money right there
11:40:10 <ehird> hardly...
11:40:18 <ehird> It's marketed by them as Super Valuable User Experience
11:40:25 <ehird> This kind of stuff has happened before
11:40:29 <ehird> ais523: you can still register .su
11:40:32 <ehird> that's Soviet Union
11:40:36 <ehird> they tried to get rid of it
11:40:44 <ehird> but people liked it and got angry.
11:40:45 <ehird> so they kept it.
11:40:50 <ehird> [and upped the prices...]
11:41:17 <ehird> essentially, obsolete ccTLDs just have to keep getting registrations in to ward of ICANN
11:41:21 <ehird> *off
11:41:30 <ehird> .tv is popular so they'll have no problem
11:43:03 <ehird> ais523: the Five tv channel which I presume you know about's main domain is five.tv
11:43:06 <ehird> that's pretty high-profile
11:43:23 <ais523> anyway, if the nation of Tuvalu itself survives whilst having no territory it'll make an interesting argument in the nomic=micronation? debate
11:43:39 <ais523> and yes, I used to watch Channel 5 back when it had a better name and was actually good
11:43:48 <ehird> heh
11:44:25 <ais523> it was really well designed to start with, a predictable schedule you could memorise (news every hour, particular sorts of programs in particular slots...)
11:44:34 <ais523> and it had lots of interesting program choice too
11:44:50 <ehird> tv is a bit obsolete now, IMO
11:45:23 <ais523> yes, I hardly watch it
11:45:33 <ehird> the idea of following someone else's schedule to watch a program they want you to see, (and with non-BBC channels, copious amounts of irritating adverts in between) is frankly quite old fashioned
11:45:37 <ais523> more bandwidth-efficient than internet for things it's designed for, though
11:45:47 <ehird> yes, broadcast is unfortunately being abandoned
11:46:05 <ais523> anyway, time to get lunch
11:46:07 -!- ais523 has quit (Remote closed the connection).
12:05:46 -!- ais523 has joined.
12:05:52 <ehird> hi ais523
12:06:06 <ais523> hi ehird
12:06:42 -!- ehird has quit ("Lost terminal").
12:08:35 -!- ehird has joined.
12:08:37 <ehird> *** Banned: Your bot is still broken and reconnects way too fast and too often.
12:08:41 <ehird> Go. Fuck. Yourself. Freenode.
12:08:44 <ehird> I don't have a fucking bot.
12:08:51 <ehird> The only connecting is when I f ire up miau to see if I'm still klined.
12:08:54 <ehird> Then I kill it.
12:09:07 <ehird> And my bouncer was NEVER OFFLINE FOR AGES when it was klined.
12:09:11 <ehird> Fuck you fuck you FUCK YOU.
12:09:16 <Asztal> :|
12:09:42 <ais523> hmm... maybe the bouncer is doing frequent reconnects for some reason?
12:09:48 <ais523> as it's a bouncer, it would hide that from you
12:09:58 <ais523> just like it hides your reconnects from the channel
12:10:01 <ehird> no
12:10:02 <ehird> it doesn't
12:10:06 <ehird> it tells you about discos/recos
12:10:09 <ehird> and besides, I checked the logs
12:10:12 <ehird> no disconnects or reconnects
12:10:14 <ehird> just BAM klined
12:10:23 <ehird> the only other client on this server is bsmnt_bot
12:10:28 <ehird> but _I'm_ klined
12:10:29 <ehird> not it
12:10:32 <ais523> not even on the server?
12:10:32 <ehird> see the logs, I'm the one who gets klined
12:10:35 <ehird> so it's not bsmnt_bot
12:10:46 <ehird> ais523: rutian runs miau (not anymore, ofc) and bsmnt_bot
12:10:48 <ehird> that's it
12:10:49 <ais523> you might have disconnected/reconnected a lot without ever joining #esoteric
12:10:55 <ehird> no
12:10:58 <ehird> because i was in #esoteric
12:10:58 <ais523> so it wouldn't show up in the logs
12:10:59 <ehird> consistently
12:11:00 <ehird> for hours
12:11:01 <ehird> then got klined
12:11:06 <ehird> i DID read the logs
12:13:47 <ehird> maybe I should put up a bot that does do that
12:13:47 <ehird> leave it up for a few days
12:13:48 <ehird> kill it
12:13:48 <ehird> then tell them I fixed it
12:13:50 <ais523> no
12:14:00 <ehird> yeah that probably wouldn't work
12:14:10 <ais523> did you reply to them with an explanation that the account klined wasn't even running a bot?
12:14:37 <ehird> Indeed, I did that even before this new ban message.
12:14:41 <ehird> Pointless.
12:17:29 <oerjan> have you asked them for evidence?
12:18:29 <ehird> I might. Not that I expect that to help.
12:19:08 <oerjan> well then it won't. nothing ever helps if you don't believe in it.
12:19:41 <ehird> :p
12:21:48 * oerjan has a thought
12:22:19 <oerjan> if bsmnt_bot's quits and joins are the cause of this (overreaction, but still) would putting it on the bouncer help?
12:22:45 <oerjan> hm the replay might mess up things
12:23:05 <ais523> replay can be turned off
12:23:15 <ais523> the bouncer ehird and I used to use only replayed on request
12:23:24 <ais523> although the request was in my startup script
12:23:37 <oerjan> ic
12:24:47 <ehird> if bsmnt_bot's quits and joins are the cause of this
12:24:47 <ehird> can't be
12:24:50 <ehird> it's not running any more
12:25:02 <oerjan> is the bouncer running?
12:26:11 <oerjan> is all of eso-std.org klined, or just you?
12:27:08 <ehird> I'm not sure, possibly all, but in the logs, I was the one who quit as (K-Lined)
12:27:14 <ehird> and the bouncer is not running.
12:30:06 <oerjan> oh well.
12:30:59 -!- oerjan has quit ("Bass").
12:53:01 -!- oklopoll has joined.
12:54:11 <ehird> oklopollololololol
12:54:26 <ais523> is an oklopoll a sort of vote?
12:54:33 <ehird> groan
12:54:43 -!- puzzlet has quit (Remote closed the connection).
12:54:50 -!- puzzlet has joined.
12:54:56 <ais523> Oklopol: a) oko; b) the swatter; c) messing with the topic
12:55:19 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic.
12:57:41 -!- Slereah has set topic: a) oko; b) the swatter; c) messing with the topic d) http://tunes.org/~nef/logs/esoteric.
12:58:43 -!- oklofok has joined.
12:59:00 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic.
12:59:05 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric.
12:59:08 <ehird> sorry
12:59:09 <ehird> just wanted to add the ;
12:59:28 <ais523> can you remove the extra space after c) too?
12:59:54 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric.
12:59:57 <ehird> yes.
13:03:29 <oklofok> oko
13:03:55 <ehird> okoko
13:03:59 <ehird> oklofok: oklotalk-- bot plz
13:04:07 <oklofok> :o
13:04:08 <oklofok> ummmmm
13:04:44 * oklofok clicked on something now
13:04:53 <ehird> wut
13:04:56 <oklofok> damn
13:04:58 <oklofok> wrong button.
13:05:14 <oklofok> it's hardcoded to quakenet atm
13:05:17 <oklofok> i'll rehardcode it
13:05:57 -!- oktabot has joined.
13:06:02 <ehird> hi oklofok
13:06:03 <ehird> er
13:06:04 <ehird> oktabot:
13:06:07 <oklofok> :: 1
13:06:08 <oktabot> 1
13:06:08 <ehird> what's yer command prefix den
13:06:09 <ehird> oho
13:06:12 <ehird> :: (+ 1 1)
13:06:13 <oktabot> 2
13:06:25 <ehird> :: ({X -> X} 1)
13:06:25 <oktabot> x
13:06:27 <oklofok> :: (+ "still no " "support for anything?")
13:06:28 <oktabot> still no support for anything?
13:06:30 <ehird> um I think I forgot the syntax
13:06:31 <oklofok> :o
13:06:31 <oklofok> k
13:06:43 <oklofok> :: ({(-> X X)} 1)
13:06:43 <oktabot> 1
13:06:52 -!- FireFly has joined.
13:06:56 <ehird> yay
13:06:59 <ehird> :: $f
13:06:59 <oktabot> f
13:07:01 <oklofok> yayyy
13:07:04 <ehird> yayyyyyyyy
13:07:05 <ehird> :: f
13:07:05 <oktabot> f
13:07:08 -!- SirDayBat has left (?).
13:07:41 <ais523> oklofok: how do you do iteration?
13:07:49 <oklofok> ais523: by recursion.
13:08:00 <ehird> ais523: beware, Things double as objects.
13:08:04 <ehird> oklofok: do you still have my cons-class?
13:08:06 <ais523> is -> purely a lambda?
13:08:10 <ehird> that thing was nice
13:08:10 <oklofok> ehird: www.vjn.fi/oklopol
13:08:12 <ais523> or is it more complicated?
13:08:13 <ehird> ais523: no, it's a Thing match
13:08:14 <oklofok> ais523: o no.
13:08:22 <oklofok> (-> ptrn expr)
13:08:23 <ehird> ais523: coed samples:
13:08:28 <ehird> ais523: http://www.vjn.fi/oklopol/oklotalk--.txt
13:08:33 <oklofok> ptrn is matched on whatever is in _
13:08:37 <ehird> basically {} is a function and an object
13:08:44 <ehird> oklofok: ssh, the examples are enough for anyone
13:08:45 <ehird> :P
13:08:49 <oklofok> well yeah sure :P
13:09:10 <oklofok> i was actually thinking i'd add like at least somekinda spec stubs in the /oklopol/ examples?
13:09:16 <ehird> meh
13:09:27 <ais523> what does ' do?
13:09:32 <oklofok> recursion
13:09:32 <ehird> ais523: recur
13:09:35 <ais523> by inspection, that seems most likely to be the thing implementing recursion
13:09:42 <ehird> ' just means "me"
13:09:49 <oklofok> ais523: you can do recursion by name as well.
13:10:03 <ehird> not in objects tho
13:10:24 <ehird> :: (= cons {(-> [h t] {(-> [$pb :] [h t]) (-> $car h) (-> $cdr t) (-> [$setcar h] h) (-> [$setcdr t] t) (-> [$! 0] h) (-> [$! n] (! t (- n 1))) (-> $length (+ 1 (length t)))})})
13:10:25 <oktabot> <<<21708712>>>
13:10:28 <ehird> :: (= nil {(-> [$pb :] $f) (-> $car $f) (-> $cdr $f) (-> [$setcar h] $f) (-> [$setcdr t] $f) (-> [$! n] $f) (-> $length 0) })
13:10:28 <oktabot> <<<21715424>>>
13:10:31 <ehird> :: cons
13:10:31 <oktabot> <<<21708712>>>
13:10:39 <ehird> :: (cons 1 (cons 2 (cons 3 nil)))
13:10:40 <oktabot> <<<21737880>>>
13:10:46 <ehird> :: (car (cons 1 (cons 2 (cons 3 nil))))
13:10:46 <oktabot> 1
13:10:49 <ehird> :: (cdr (cons 1 (cons 2 (cons 3 nil))))
13:10:50 <oktabot> <<<21725872>>>
13:10:57 <oklofok> i realized the other day that one thing i definitely should've had in oklotalk-- is umm err liek. setting a dynamic variable
13:11:02 <ehird> :: (! (cons 1 (cons 2 (cons 3 nil))) 0)
13:11:03 <oklofok> you just can't do it
13:11:03 <oktabot> 1
13:11:05 <ehird> :: (! (cons 1 (cons 2 (cons 3 nil))) 1)
13:11:05 <oktabot> 2
13:11:07 <ehird> :: (! (cons 1 (cons 2 (cons 3 nil))) 2)
13:11:07 <oktabot> 3
13:11:09 <ehird> :: (! (cons 1 (cons 2 (cons 3 nil))) 3)
13:11:09 <oktabot> f
13:11:15 <ais523> oklofok: not even by implementing monads by hand?
13:11:18 <ehird> :: (length (cons 1 (cons 2 (cons 3 nil))))
13:11:18 <oktabot> 3
13:11:42 <ehird> i wrote that cons/nil ^.^
13:11:49 <oklofok> ais523: you can't set dynamic variables as the language implements them, stepping onto interpretation level allows you to do anything in any language.
13:12:01 <ais523> ah, ok
13:12:09 <ehird> oklofok: well, any tc lang
13:12:10 -!- oklopoll has quit (No route to host).
13:12:10 <ais523> I wonder if monads by hand counts as interpretation level?
13:12:12 <oklofok> ais523: yeah btw that's a pretty fun example the one on /oklopol/
13:12:14 <oklofok> i mean
13:12:20 <oklofok> i made the sort and the rational class
13:12:23 <oklofok> ehird made the list class
13:12:25 <ehird> yeah it implements its own numer class
13:12:28 <ehird> that you can use like regular ones
13:12:31 <ehird> for rationals
13:12:35 <oklofok> so it's sorting rationals entirely from scratch
13:12:39 <ehird> and, liek, qs
13:12:44 <oklofok> lists, sorting and rationals synthetic
13:12:51 <ehird> oklofok: although that qs is the functional one and so not really qs.
13:12:53 <ehird> but thar you go
13:13:04 <oklofok> ehird: well yes, i read the article too
13:13:26 <ais523> what does ftr do?
13:13:31 <oklofok> ais523: filter
13:13:45 <ehird> as in, (a -> Bool) -> [a] -> [a]
13:13:53 <ehird> i'm sure you can work that out
13:14:03 <ais523> yes
13:14:15 <ehird> oklofok: what is the array syntax again
13:14:20 <oklofok> ehird: []
13:14:22 <ais523> having that in your stdlib is kind-of cheating for implementing quicksort, though
13:14:27 <ehird> umm, no
13:14:36 <ehird> many langs have filter
13:14:40 <ehird> it's partition that's cheating
13:14:41 <oklofok> ais523: well it's implemented in oklotalk
13:14:44 <oklofok> the filter
13:14:47 <ais523> whoops
13:14:54 * ais523 accidentally cut the power supply to their monitor
13:15:02 <ehird> ais523: also note that qs works on conses
13:15:03 <ais523> good thing it wasn't the CPU...
13:15:05 <oklofok> var_map["ftr"]=ofunc("(-> [p (: (@ h (tst p)) t)] (+ [h] (' p t))) (-> [p (: h t)] (' p t)) []","ftr")
13:15:05 <ehird> as well as arrays
13:15:07 <ehird> same with ftr
13:15:12 <ehird> because $! and length were defined
13:15:24 <oklofok> ais523: you could just copypaste that in there.
13:15:27 <ehird> :: [1 2 3]
13:15:28 <oktabot> [1 2 3]
13:15:34 <ehird> :: (ftr {$f} [1 2 3])
13:15:34 <oktabot> []
13:15:35 <ehird> :: (ftr {$t} [1 2 3])
13:15:36 <oktabot> [1 2 3]
13:15:45 <oklofok> the problem is you can't do imperative stuff really, which you should be able to do
13:15:50 <ais523> yes
13:15:53 <oklofok> this is because the lvalue system is degenerate in --
13:15:58 * ais523 is pondering how to make a botloop, as always
13:16:00 <oklofok> and, well, also
13:16:05 <oklofok> because you can't err
13:16:08 <ehird> :: %eval
13:16:08 <oktabot> %eval
13:16:09 <oklofok> set a dynamic variable
13:16:13 <oklofok> from an inner scope
13:16:17 <ehird> :: %eval a
13:16:17 <oktabot> a
13:16:21 <oklofok> you can just read it
13:16:22 <ais523> how does string quoting work in oklotalk?
13:16:23 <ehird> oh, right
13:16:34 <oklofok> ais523: very degenerate :<
13:16:49 <oklofok> the whole object system is kinda ugly, i was mainly just going for getting it extendable
13:16:58 <oklofok> should integrate strings and lists at some point
13:16:58 <ais523> oklofok: " to " is a raw string?
13:17:03 <ais523> or is there an escaping syntax?
13:17:04 <oklofok> ais523: yes
13:17:11 <ehird> :: "\""
13:17:11 <oktabot> "
13:17:15 <oklofok> ais523: i'm not sure whether there are, but i assume yes
13:17:15 <ehird> :: "a"
13:17:16 <oktabot> a
13:17:16 <oklofok> okay, good
13:17:21 <ehird> :: "%eval 2"
13:17:21 <oktabot> %eval 2
13:17:21 <kerlobot> 2
13:17:24 <ais523> : """a"""
13:17:26 <oklofok> i just remember strings were really stupid.
13:17:28 <ais523> :: """a"""
13:17:37 <ais523> :: "a"
13:17:37 <oktabot> a
13:17:47 <ais523> hmm... my triple-quotes seem to have confused it
13:17:57 <oklofok> :: 1 1
13:17:58 <oktabot> 1
13:18:04 <oklofok> :: "" ""
13:18:07 <oklofok> oh.
13:18:07 <oklofok> right
13:18:09 <ehird> ais523: parses as
13:18:11 <ehird> "" "a" ""
13:18:11 <oklofok> it just evaluates the first
13:18:14 <oklofok> and it's empty
13:18:14 <ehird> and the last expression is taken
13:18:16 * oklofok is idiot.
13:18:17 <ehird> :: 1 2 3
13:18:17 <oktabot> 3
13:18:26 <ehird> and quotes aren't quo0ted in their output
13:18:26 <ehird> thus
13:18:40 <oklofok> oh right last one ofc
13:18:41 <oklofok> :: 1 2 3
13:18:41 <oktabot> 3
13:18:44 -!- KingOfKarlsruhe has joined.
13:18:45 <ehird> 13:18 < ehird> thus
13:18:48 <ehird> er
13:18:50 <ehird> 13:18 < ehird> :: 1 2 3
13:18:50 <ehird> 13:18 < oktabot> 3
13:18:57 <oklofok> oh
13:18:59 <oklofok> lol.
13:19:04 <oklofok> i'm kinda blind
13:19:05 <oklofok> :D
13:19:07 <FireFly> :: 3 2 1
13:19:08 <oktabot> 1
13:20:07 <ais523> :: (map {"\""+_+"\""} [1 2 3])
13:20:08 <oktabot> [+_+"\"" +_+"\"" +_+"\""]
13:20:19 <ais523> ?
13:20:24 <oklofok> ais523: sexps.
13:20:25 <ais523> :: (map {"\""+_+"\""} ["1" "2" "3"])
13:20:25 <oktabot> [+_+"\"" +_+"\"" +_+"\""]
13:20:28 <ais523> oh
13:20:32 <oklofok> oklotalk--
13:20:32 <ais523> I'm writing in infix
13:20:34 <ais523> not prefix
13:20:47 <oklofok> well
13:20:48 <ais523> :: (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"])
13:20:48 <oktabot> ["1" "2" "3"]
13:20:49 <oklofok> :: (1 + 3)
13:20:49 <oktabot> 4
13:21:14 <ais523> :: (fold {+} "\"" (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"]))
13:21:14 <oktabot> An error: Application consists of 2 or 3 expressions.
13:21:33 <ais523> :: (fold {+} (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"]) "\"")
13:21:33 <oktabot> An error: Application consists of 2 or 3 expressions.
13:21:33 <oklofok> is there a fold?
13:21:45 <oklofok> also {+} is a constant function that returns +
13:21:46 <ehird> {+} wouldn't work.
13:21:47 <ais523> ah, if there isn't why would there be that particular error?
13:21:52 <ais523> and ok
13:21:57 <ehird> because you have too many applications
13:21:59 <ehird> :: (aaaaaaa aaaaaaaaa aaaaaaa)
13:21:59 <oktabot> aaaaaaa
13:22:02 <ehird> er
13:22:03 <ehird> :: (aaaaaaa aaaaaaaaa aaaaaaa aaaaaaa)
13:22:03 <oktabot> An error: Application consists of 2 or 3 expressions.
13:22:07 <ehird> :: (aaaaaaa aaaaaaaaa aaaaaa)
13:22:07 <oktabot> aaaaaaa
13:22:08 <ais523> :: (fold + "\"" (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"]))
13:22:08 <oktabot> An error: Application consists of 2 or 3 expressions.
13:22:09 <ehird> :: (aaaaaaa aaaaaaaaa)
13:22:10 <oktabot> aaaaaaa
13:22:13 <ehird> :: (aaaaaaa)
13:22:14 <oktabot> An error: Application consists of 2 or 3 expressions.
13:22:16 <ais523> :: (foldl + "\"" (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"]))
13:22:17 <oktabot> An error: Application consists of 2 or 3 expressions.
13:22:25 <ehird> ...
13:22:27 <ais523> well, let's implement a fold if there isn't one already
13:22:27 <ehird> I just told you
13:22:29 <oklofok> ais523: functions are either monadic or dyadic
13:22:36 <ehird> fold is trivial, look
13:22:40 <ais523> and ok, that's an interesting restriction
13:22:49 <oklofok> you see this is just a simple sexp syntax over an infix system.
13:22:55 <ais523> I should implement total from Underload, it's like fold but with two args
13:22:58 <ehird> sec
13:23:47 <ais523> what are arrays/lists syntactic sugar for?
13:23:53 <ais523> how do I head/tail them?
13:23:59 <ais523> or do I have to rely on ehird cons cells?
13:24:10 <oklofok> ais523: well you can pattern match on them
13:24:15 <oklofok> (: head tail)
13:24:22 <oklofok> but i'm not sure you can actively cut them...
13:24:32 <ais523> pattern matching will do
13:24:33 <oklofok> :: (: [1 2 3])
13:24:33 <oktabot> [1 2 3]
13:24:37 <oklofok> :: (: 4 [1 2 3])
13:24:37 <oktabot> f
13:24:38 <ehird> :: (= fold {(-> [f i] {(-> [] i) (-> l (f (! l 0
13:24:38 <oktabot> <<<21820320>>>
13:24:42 <ehird> that's as far as I've written
13:24:44 <ehird> feel free to continue
13:24:54 <oklofok> haha
13:24:55 <ais523> :: (-> (: a b) [1 2 3])
13:24:55 <oktabot> f
13:25:03 <ais523> ok, that was surprising
13:25:09 <ehird> ...
13:25:09 <ais523> :: (-> (: a b) [1 2 3])
13:25:10 <oktabot> f
13:25:12 <ehird> {}
13:25:13 <ais523> why f?
13:25:14 <ehird> you need {}
13:25:17 <ehird> f is false
13:25:21 <oklofok> ais523: well i'm not sure : means anythin.
13:25:24 <ehird> maybe you should learn oklotalk :s
13:25:24 <oklofok> *anything
13:25:32 -!- MigoMipo has joined.
13:25:34 <ais523> ehird: what do you think I'm doing?
13:25:39 <oklofok> i can see if there's a beheader....
13:25:41 <ehird> beats me :D
13:25:47 <ehird> (-> a b) pattern matches on the value of _
13:25:52 <ais523> ah
13:25:56 <ehird> and force a return if it matches
13:26:05 <ehird> so you need them in {} to be useful
13:26:15 <ais523> :: ({(-> (: a b) [a b])} [1 2 3])
13:26:15 <oktabot> [1 [2 3]]
13:26:20 <oklofok> :: ({(-> (: a b) a)} [1 2 3 4])
13:26:20 <oktabot> 1
13:26:26 <oklofok> yes
13:26:41 <ehird> huray now we sing songs of the hello
13:26:51 <ehird> 13:18 < ehird> :: 1 2 3
13:26:51 <ehird> 13:18 < oktabot> 3
13:26:52 <ehird> er
13:27:00 <ehird> :: (= fold {(-> [f i] {(-> [] i) (-> l (f (! l 0
13:27:01 <oktabot> <<<21740000>>>
13:27:01 <ehird> hokay
13:27:20 <oklofok> :: (! [1 2 3 4 5 2 34 12 4 2 5 2 4 23 21] 10)
13:27:20 <oktabot> 5
13:27:22 <ehird> :: (= fold {(-> [f i] {(-> [] i) (-> (: a b) (: (f a) (' b)))})})
13:27:23 <oktabot> <<<21831312>>>
13:27:31 <oklofok> there's an indexing operator it seems :D
13:27:31 <ehird> :: ((fold + 0) [1 2 3])
13:27:31 <oktabot> f
13:27:34 <ehird> wat
13:27:47 <oklofok> :: (* [1 2 3] [4 5 6])
13:27:47 <oktabot> [[1 4] [1 5] [1 6] [2 4] [2 5] [2 6] [3 4] [3 5] [3 6]]
13:27:49 <oklofok> xD
13:27:57 <oklofok> THERE'S A CARTESIAN PRODUCT AND NO ONE TOLD ME
13:28:09 <ehird> :: (= fold {(-> [f i] {(-> [] i) (-> (: a b) (: (f a) (' b)))})})
13:28:09 <oklofok> :: (* [[1 2 3] [4 5 6] [7 8 9]])
13:28:09 <oktabot> <<<21461512>>>
13:28:09 <oktabot> [[1 2 3] [4 5 6] [7 8 9]]
13:28:14 <ehird> y dat is broken?
13:28:16 <ehird> ((fold + 0) [])
13:28:17 <oklofok> err
13:28:20 <ehird> : ((fold + 0) [])
13:28:21 <ehird> :: ((fold + 0) [])
13:28:21 <oktabot> 0
13:28:24 <ehird> that wurk
13:28:25 <ehird> :: ((fold + 0) [1])
13:28:26 <oktabot> f
13:28:30 <ehird> that donut
13:28:35 <oklofok> that's a good question.....
13:28:40 * oklofok thinks
13:28:45 <ais523> :: ({(-> [(: h t) f] (f h (' t f))) (-> [x f] x)} + [1 2 3 4 5])
13:28:45 <oktabot> +
13:28:51 <ais523> hmm... not quite right
13:28:56 <ehird> failure :D
13:29:03 <oklofok> err...
13:29:07 <oklofok> :: (: 1 [2 3])
13:29:08 <oktabot> f
13:29:13 <oklofok> that's probably the problem
13:29:15 <oklofok> :|
13:29:35 <ehird> :: (= fold {(-> [f [a]] a) (-> [f (: a b)] (: (f a) (' f b)))})
13:29:35 <oktabot> <<<21786176>>>
13:29:39 <oklofok> use your own lists.
13:29:42 <ais523> :: ({(-> [(: h t) f] (f h (' t f))) (-> [x f] x)} [1 2 3 4 5] +)
13:29:42 <oktabot> An error: unsupported operand type(s) for +: 'int' and 'list'
13:29:45 <ehird> :: (= fold {(-> [f [a]] a) (-> [f (: a b)] [(f a) (' f b)])})
13:29:45 <oktabot> <<<21839384>>>
13:29:49 <ehird> :: (fold + [1 2 3])
13:29:49 <oktabot> [1 [2 3]]
13:29:52 <ais523> my problem was I got the args the wrong way round
13:29:54 <ehird> oops.
13:29:56 <ehird> that's a map.
13:30:04 <ehird> :: (= fold {(-> [f [a]] a) (-> [f (: a b)] (f a (' f b))})
13:30:04 <oklofok> haha
13:30:04 <oktabot> An error: Unmatching parens @ row 1.
13:30:08 <ehird> :: (= fold {(-> [f [a]] a) (-> [f (: a b)] (f a (' f b)))})
13:30:09 <oktabot> <<<21887856>>>
13:30:12 <ehird> :: (fold + [1 2 3])
13:30:13 <oktabot> 6
13:30:16 <ehird> oh yeah
13:30:19 <ehird> ;-)
13:30:22 <ehird> :: (fold + [])
13:30:22 <oktabot> f
13:30:22 <oklofok> "@ row 1", what a great irc bot feature!
13:30:24 <ehird> good
13:30:25 <ehird> :: (fold + [1])
13:30:26 <oktabot> 1
13:30:28 <ehird> Very nice.
13:30:35 <ehird> :: (fold * [[1 2 3] [4 5 6]])
13:30:35 <oktabot> [[1 4] [1 5] [1 6] [2 4] [2 5] [2 6] [3 4] [3 5] [3 6]]
13:30:40 <ehird> :: (fold * [[1 2 3] [4 5 6] [7 8 9]])
13:30:40 <oktabot> [[1 [4 7]] [1 [4 8]] [1 [4 9]] [1 [5 7]] [1 [5 8]] [1 [5 9]] [1 [6 7]] [1 [6 8]] [1 [6 9]] [2 [4 7]] [2 [4 8]] [2 [4 9]] [2 [5 7]] [2 [5 8]] [2 [5 9]] [2 [6 7]] [2 [6 8]] [2 [6 9]] [3 [4 7]] [3 [4 8]]
13:30:40 <ais523> :: ({(-> [(: h t) f] (f h (' t f))) (-> [[x] f] x)} [1 2 3 4 5] +)
13:30:40 <oktabot> An error: Atm instance has no attribute 'call'
13:30:42 <oklofok> :|
13:30:45 <ais523> :: ({(-> [(: h t) f] (f h (' t f))) (-> [[x] f] x)} [1 2 3 4 5] +)
13:30:45 <oktabot> An error: Atm instance has no attribute 'call'
13:30:47 <ehird> ais523: give up, I beat you :D
13:30:55 <ais523> "Atm instance"?
13:31:00 <ehird> shur
13:31:02 <oklofok> ais523: atom
13:31:04 <ehird> :: ($a 2)
13:31:05 <oktabot> 2
13:31:09 <ehird> i mean, that's ind of right
13:31:10 <ehird> but yeah
13:31:15 <oklofok> :: ($a 1 2)
13:31:16 <oktabot> f
13:31:20 <ehird> in conclusion
13:31:20 <oklofok> err :P
13:31:22 <ais523> anyway, that's total not fold
13:31:22 <ehird> (= fold {(-> [f [a]] a) (-> [f (: a b)] (f a (' f b)))})
13:31:27 <ehird> o
13:31:32 <ehird> well fold is cooler :D
13:31:35 <ais523> although you can implement fold from total just by putting an extra element on the end of the list
13:31:49 <ehird> fyi, two-argument fold
13:31:50 <ehird> is common
13:32:01 <ais523> yes, I just like to give it a different name
13:32:14 <ehird> total is misleading, it does fold
13:32:20 <ehird> arguably, the fold-with-default needs a special name
13:32:44 <ehird> :: (fold fold [])
13:32:45 <oktabot> f
13:32:55 <ehird> :: (fold fold [+ [1 2 3]])
13:32:55 <oktabot> 6
13:33:00 <ehird> :DDD
13:33:04 <ehird> :: (fold fold [+ [1 2 3] + [1 2 3]])
13:33:04 <oktabot> f
13:33:05 <oklofok> errr, that's just confusing.
13:33:16 <ehird> :: (fold fold [+ + [1 2 3]])
13:33:17 <oktabot> f
13:33:19 <ehird> haha wat
13:33:22 <ais523> :: (fold fold [fold [+ [1 2 3]]])
13:33:23 <oktabot> 6
13:33:24 <oklofok> no idea.
13:33:30 <ehird> MAKES NO SENSE :D
13:33:33 <ehird> ais523: so, it's application?
13:33:34 <ehird> :DD
13:33:39 <ais523> :: (fold fold [fold [fold [+ [1 2 3]]]])
13:33:39 <oktabot> 6
13:33:43 <ais523> ehird: of course it is
13:33:46 <ehird> (fold fold [x y]) -> (x y)
13:33:47 <ais523> when you have a two-arg list
13:33:47 <ehird> that's awesome
13:33:49 <oklofok> OKLOTALK-- ONLY MAKES SENSE WHEN USED NICELY.
13:34:08 <ais523> oklofok: no, that's inherent in the definition of defaultless fold
13:34:12 <ais523> it would work just as well in Haskell
13:34:33 <ehird> no it wouldn't
13:34:40 <oklofok> ais523: you sure haskell likes lists with functions and values in them?
13:34:44 <ehird> as [(+),[1,2,3]] is invalid
13:34:49 <ais523> oh, forgot about the strict typing
13:34:49 <ehird> as lists are monotyperated
13:34:52 -!- Hiato has joined.
13:34:53 <oklofok> ...
13:34:59 <ehird> conclusion: this is AWESOME BEANS PLUS.
13:35:02 <ais523> it would work in Visual Haskell
13:35:06 <ehird> wut
13:35:07 <oklofok> how can people forget haskell is strict about types
13:35:08 <ais523> which has a Variant type, and is otherwise identical
13:35:09 <oklofok> i mean
13:35:16 <ehird> haskell has a variant type
13:35:20 <ehird> it's called Any
13:35:22 <ais523> oklofok: because I've used OCaml
13:35:22 <oklofok> that's what haskell is, being pedantic about types
13:35:29 <ehird> although it's gh
13:35:29 <ehird> c
13:35:33 <ehird> also http://www.haskell.org/visualhaskell/
13:35:34 <ais523> Haskell is a breath of fresh air compared to it in terms of type dicipline
13:35:44 <ais523> ehird: well, I was just trying to pun on Visual Basic
13:35:57 * Hiato wonders who it was that used arch here
13:36:02 <ehird> Hiato: too many idiots.
13:36:06 <ehird> mostly AnMaster :P
13:36:13 <oklofok> archlinux?
13:36:20 <ehird> yes.
13:36:22 <ais523> Hiato: AnMaster ported C-INTERCAL to Arch
13:36:26 * oklofok has heard of that
13:36:27 <ais523> although I don't know if he actually uses it
13:36:41 <ehird> not a port.
13:36:48 <ais523> ehird: well, just a build library
13:36:49 <ehird> he just added some lines into a packagefile.
13:36:52 <ehird> *package file
13:36:54 <ais523> porting is easy if you don't have to change the source
13:37:03 <AnMaster> ais523, I use arch on one system. And yes it was just making a package
13:37:20 <AnMaster> so porting would be the wrong word
13:38:58 <ais523> :: (fold + (map {(+ "\"" (+ _ "\""))} ["1" "2" "3"]))
13:38:58 <oktabot> "1""2""3"
13:40:14 -!- Hiato1 has joined.
13:40:35 <ehird> :: "["+(fold + (map {(+ "\"" (+ _ "\""))} ["1""2""3"]))+"]"
13:40:35 <oktabot> An error: Unmatching parens @ row 1.
13:40:37 <ehird> er wait
13:40:46 <ehird> :: (("["+(fold + (map {(+ "\"" (+ _ "\""))} ["1""2""3"])))+"]")
13:40:46 <oktabot> An error: Unmatching parens @ row 1.
13:40:50 <ehird> fuckit
13:40:50 <ais523> :: (fold + (map {(-> "\"" "\"\\\"\" ") (-> "\\" "\"\\\\\" ") (-> x (+ "\"" (+ _ "\"")))} ["1" "2" "3"]))
13:40:51 <oktabot> "1""2""3"
13:40:57 <ais523> :: (fold + (map {(-> "\"" "\"\\\"\" ") (-> "\\" "\"\\\\\" ") (-> x (+ "\"" (+ _ "\" ")))} ["1" "2" "3"]))
13:40:57 <oktabot> "1" "2" "3"
13:41:06 <ais523> :: (fold + (map {(-> "\"" "\"\\\"\" ") (-> "\\" "\"\\\\\" ") (-> x (+ "\"" (+ _ "\" ")))} ["1" "2" "3" "\"" "\\"]))
13:41:07 <oktabot> "1" "2" "3" "\"" "\\"
13:41:30 <FireFly> :: [1 2 3]
13:41:30 <oktabot> [1 2 3]
13:41:37 -!- Hiato has quit (Read error: 104 (Connection reset by peer)).
13:41:38 <FireFly> :: [1 .. 5]
13:41:39 <oktabot> [1 .. 5]
13:41:40 <FireFly> :<
13:42:17 <ehird> oklotalk-- is for real men
13:43:03 -!- KingOfKarlsruhe has quit (Remote closed the connection).
13:43:27 <ehird> :: (= range {(-> [x x] -> []) (-> [x y] ([x] + (range (x+1) y)))})
13:43:27 <oktabot> An error: Application consists of 2 or 3 expressions.
13:43:36 <ehird> :: (= range {(-> [x x] []) (-> [x y] ([x] + (range (x+1) y)))})
13:43:37 <oktabot> An error: Application consists of 2 or 3 expressions.
13:43:40 <ehird> butts.
13:43:46 <oklofok> :: (= .. {(-> [a a] [1]) (-> [a b] (+ [a] (' (+ a 1) b)))})
13:43:46 <oktabot> <<<22016608>>>
13:43:49 <oklofok> :: (.. 1 7)
13:43:50 <oktabot> [1 2 3 4 5 6 1]
13:43:54 <oklofok> err...
13:44:04 <oklofok> :: (= .. {(-> [a a] [a]) (-> [a b] (+ [a] (' (+ a 1) b)))})
13:44:04 <oktabot> <<<22017008>>>
13:44:09 <ehird> :: (.. 1 7)
13:44:09 <oktabot> [1 2 3 4 5 6 7]
13:44:11 <oklofok> :: (.. -12 42)
13:44:12 <oktabot> An error: maximum recursion depth exceeded
13:44:15 <oklofok> xD
13:44:17 <oklofok> well.
13:44:18 <ehird> :: (.. 1 2)
13:44:18 <oktabot> [1 2]
13:44:25 <oklofok> :: (6 .. 9)
13:44:25 <oktabot> f
13:44:30 <ehird> awesome
13:44:32 <ehird> ...
13:44:33 <ehird> wtf
13:44:52 <oklofok> well 6 handles [.. 9]
13:44:57 <ehird> lol
13:45:05 <oklofok> currently all handles all except for atoms
13:45:14 <ais523> :: (fold + (map {(+ "\"" (+ ((-> "\"" "\\\"") (-> "\\" "\\\\") (-> x x)) "\""))} ["1" "2" "\"" "\\" "3" ]))
13:45:14 <oktabot> An error: 'NoneType' object has no attribute 'clbl'
13:45:22 <ais523> ?
13:45:24 <oklofok> xD
13:45:28 <oklofok> errors are so helpful <3
13:45:37 <oklofok> ais523: i'm not sure what that means.
13:45:47 <ais523> :: (fold + (map {(+ "\"" (+ ({(-> "\"" "\\\"") (-> "\\" "\\\\") (-> x x)) "\"")} _)} ["1" "2" "\"" "\\" "3" ]))
13:45:48 <oktabot> An error: Unmatching parens @ row 1.
13:45:48 <oklofok> i mean that's an unwrapped python error
13:45:59 <oklofok> well.
13:46:06 <oklofok> ((->... doesn't look right
13:46:25 <oklofok> you clearly have paren errors there
13:46:30 <ais523> :: (fold + (map {(+ "\"" (+ ({(-> "\"" "\\\"") (-> "\\" "\\\\") (-> x x)} _) "\"")} ["1" "2" "\"" "\\" "3" ]))
13:46:30 <oktabot> An error: Unmatching parens @ row 1.
13:46:37 -!- KingOfKarlsruhe has joined.
13:46:43 <ais523> :: (fold + (map {(+ "\"" (+ ({(-> "\"" "\\\"") (-> "\\" "\\\\") (-> x x)} _) "\""))} ["1" "2" "\"" "\\" "3" ]))
13:46:43 <oktabot> "1""2""\"""\\""3"
13:46:50 <ais523> :: (fold + (map {(+ "\"" (+ ({(-> "\"" "\\\"") (-> "\\" "\\\\") (-> x x)} _) "\" "))} ["1" "2" "\"" "\\" "3" ]))
13:46:51 <oktabot> "1" "2" "\"" "\\" "3"
13:48:34 <FireFly> ::
13:48:40 <FireFly> :: <--->
13:48:41 <oktabot> f
13:48:43 <FireFly> :: <------>
13:48:44 <oktabot> f
13:48:46 <FireFly> Heh
13:48:49 -!- ais523 has quit ("mibbit.com: lectures").
13:49:44 <oklofok> :: fol
13:49:44 <oktabot> fol
13:49:47 <oklofok> hm.
13:49:52 <ehird> :: oklocrap
13:49:53 <oktabot> oklocrap
13:49:53 <oklofok> :: %%#
13:49:53 <oktabot> %%#
13:51:34 <FireFly> "There are 4 primitive datatypes: integer, string, list, atom and thing."
13:51:40 <FireFly> Isn't that 5?
13:51:45 <oklofok> :DD
13:51:58 <oklofok> maybe, maybe :)
13:53:14 <ehird> :D
13:53:23 <ehird> oklotalk-- is one of my favourite languages
13:53:25 <ehird> Things are clever
13:53:35 <oklofok> thingz <33
13:53:54 <oklofok> i wanna implement some muture :<<<
13:54:57 <ehird> wut is muture again
13:55:12 <oklofok> www.vjn.fi/oklopol/muture.txt
13:55:25 <oklofok> it's the search thingie stuff
13:55:49 <ehird> wat
13:55:55 <oklofok> :--)
13:56:30 <oklofok> ">> expr" maximizes expr given the some nondeterministic choices the interp can make in evaluating expre.
13:56:32 <oklofok> *expr
13:56:39 <oklofok> >> \[1 3 5 2]
13:56:43 <oklofok> would evaluate to 5
13:56:52 <oklofok> \list means an elem of list
13:57:05 <FireFly> :: (= x 42)
13:57:06 <oktabot> 42
13:57:09 <FireFly> :: x
13:57:10 <oktabot> 42
13:57:11 <FireFly> :D
13:58:28 <oklofok> wow, it's a number :)
13:59:25 <oklofok> the problem is of course it's pretty goddamn hard to implement, tried once, crapped my pants.
14:17:08 -!- Mony has joined.
14:19:13 <Mony> plop
14:19:47 <Asztal> indeed
14:20:21 -!- Hiato1 has quit (Remote closed the connection).
14:29:30 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
14:29:36 -!- moozilla has joined.
14:37:12 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
15:18:09 -!- Judofyr has joined.
16:50:30 -!- impomatic has joined.
16:51:50 <impomatic> I've just implemented RSSB in Redcode and I'm looking for a new project
16:53:11 <ehird> cool
17:01:05 <impomatic> Any suggestions. I'd prefer stack or cell based, minimal instruction set and relative addressing!
17:03:45 -!- BeholdMyGlory has joined.
17:03:59 <ehird> Well, bf fits that but is boring.
17:06:46 <impomatic> Someone already did bf in redcode
17:07:17 <Slereah> Someone already did brainfuck in everything
17:08:39 <impomatic> I want one of these for esoteric programming langs http://www.levenez.com/lang/lang.pdf :-)
17:09:42 <Slereah> What do you mean "for"?
17:09:46 <Slereah> Interpreter or interpretee?
17:11:10 <impomatic> The interpreter will be written in Redcode
17:18:11 -!- FireyFly has joined.
17:32:57 -!- ais523 has joined.
17:33:04 <ais523> wb me
17:41:41 -!- oerjan has joined.
17:42:26 <oerjan> yoohoo i've got a part in the topic
17:42:34 <ais523> hi oerjan
17:42:49 <oerjan> tip of the hat to you Mr. ais523
17:45:21 -!- BeholdMyGlory has quit (Read error: 131 (Connection reset by peer)).
17:47:50 -!- BeholdMyGlory has joined.
17:49:11 <MizardX> impomatic: Pick and choose -> http://esoteric.voxelperfect.net/wiki/Language_list
17:50:50 -!- ais523_ has joined.
17:51:00 <impomatic> Too many to choose from!
17:51:11 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
17:51:50 -!- ais523_ has changed nick to ais523.
17:52:18 <oerjan> <oklofok> i can see if there's a beheader....
17:52:33 <oerjan> scary
17:52:37 <ais523> hmm... so who's impomatic, then?
17:52:44 <oerjan> impomatic: there's also the random page button
17:52:47 <ais523> this channel is getting new members so fast it's scary
17:53:03 <ais523> and hi
17:53:09 <impomatic> For now I've looked through the Hello World implementations for a language I like the look of
17:53:10 <oerjan> since most pages are on a single language, should be nearly the same
17:53:41 <ais523> and if it hits something you aren't looking for, you can always click again
17:54:09 <impomatic> ais523: new here. I'm a redcode programmer
17:54:15 <oerjan> hm hello world is not good for unlambda, say, the structure is trivial
17:54:18 <ais523> ah, interesting
17:54:32 <oerjan> so doesn't really show it
17:54:36 <ais523> oerjan: hello world works best to show how languages manage string handling, and what the basic syntax is
17:54:51 <ais523> I mean, lots of different languages could just have "Hello, world!" as a hello world program
17:54:57 <ais523> in all sorts of different paradigms
17:55:00 <ais523> :: "Hello, world!"
17:55:01 <oktabot> Hello, world!
17:55:08 <ais523> ^ul (Hello, world!)S
17:55:09 <fungot> Hello, world!
17:55:09 <oerjan> indeed
17:55:15 <ais523> ^bf ,[.,]!Hello, world!
17:55:15 <fungot> Hello, world!
17:55:19 <ais523> three rather different langs
17:55:23 <ais523> and yet the programs look pretty similar
17:55:42 <ais523> 99bob is at least good for control flow
17:56:15 <oerjan> impomatic: if you're interested in redcode might i suggest FuckYourBrane (iirc)?
17:56:22 <ais523> FukYorBrane
17:56:31 <ais523> but there's a fatal bug in it if you don't limit program length
17:56:36 -!- puzzlet has quit (Remote closed the connection).
17:56:44 -!- puzzlet has joined.
17:56:48 <ais523> there's also Brainfuck Joust, which has become popular over at Agora recently
17:56:52 <ais523> someone should add it to the esowiki, really
17:57:10 <oerjan> ais523: well the bf hello world with ! is cheating
17:57:15 <ais523> yes, I know
17:57:22 <ais523> without ! I don't have it memorised, though
17:57:28 <ais523> ^show
17:57:29 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help
17:57:38 <ais523> and why is there not a hello world in fungot's program list?
17:57:39 <fungot> ais523: for s in (find prefix -type fnord do if -z instrarrayid then echo " /star does not point to get_install" then echo " double fnord else fnord
17:57:45 <oerjan> indeed
17:57:47 <ais523> ^show rot13
17:57:47 <fungot> ,[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+14<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>>+5[<-5>-]<2-[>+<-[>+<-[>+<-[>+<-[>+<-[>+
17:57:59 <ais523> hmm... that's not the whole program
17:58:01 <ais523> !show choo
17:58:07 <ais523> ^show choo
17:58:07 <fungot> >,[>,]+32[<]>[[.>]<[<]>[-]>]
17:58:13 <Slereah> ACHOO
17:58:17 <ais523> IMO, BF's strong point is simple text processing
17:59:25 <oerjan> ^help
17:59:25 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
17:59:33 <oerjan> ^def hw bf >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]<.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
17:59:33 <fungot> Defined.
17:59:37 <oerjan> ^hw
17:59:38 <ais523> ^hw
17:59:38 <fungot> Hello World!
17:59:38 <fungot> Hello World!
17:59:45 <ais523> oerjan: snap
17:59:51 <oerjan> (pasted from wiki)
17:59:59 <ais523> I was going to ask if that's the esowiki's version
18:00:12 <ais523> it looks like it, it has too many loops to be the EgoBot version
18:00:13 <impomatic> oerjan: thanks, I'll take a look shortly
18:00:33 <oerjan> yeah it doesn't use the several cell initialization
18:01:12 <oerjan> fizzie: is it necessary to save new commands explicitly?
18:01:20 <ais523> oerjan: not IIRC
18:01:25 <ais523> you could always read the source to find out
18:01:27 <ais523> ^source
18:01:27 <fungot> http://zem.fi/~fis/fungot.b98.txt
18:02:53 * ais523 decides that right now, he /is/ insane enough to find the particular relevant bit of fungot's code
18:02:54 <fungot> ais523: i'm already sobbing!!
18:03:46 <oerjan> fungot: how rational of you
18:03:47 <fungot> oerjan: they really don't dare open anything else for some time now i know smthg abt the differences fnord mit-scheme n other schemes too.
18:05:00 <oerjan> btw about earlier this morning - does anyone know a non-terminating ski expression without parentheses?
18:05:18 <oerjan> (when i was talking to myself)
18:05:37 <ais523> hmm... which way does SKI associate when written normally?
18:05:44 <oerjan> left
18:05:47 <ais523> I'm far too used to Unlambda to know that off by heart
18:05:57 <ais523> as in, SII = ((S I) I) ?
18:06:02 <oerjan> yes
18:06:37 <ais523> well, there isn't an obvious solution that I can see
18:06:41 <ais523> although there might well be a subtle one
18:06:48 <ais523> do you think just fuzzing would discover one?
18:06:53 <oerjan> starting with sii was useless at least
18:07:04 <ais523> yep
18:07:12 <ais523> because you may as well just write whatever it's applied to twice
18:07:30 <oerjan> and just s's didn't work, even though s's tend to make things complicated in general
18:07:36 <ais523> ah, I was wondering about just Ss
18:07:52 <ais523> K is a simplifier, although simplifiers may help for loops
18:07:56 <oerjan> <oerjan> sssssss -> ss(ss)sss -> ss(sss)ss -> ss(ssss)s -> ss(sssss)
18:07:57 <ais523> and S is a complicator
18:09:51 <oerjan> summing up from this morning, it must start with ss, siks or siss
18:09:59 <fizzie> It is necessary to use ^save, yes.
18:10:00 <oerjan> anything else simplifies
18:10:01 <fizzie> ^save
18:10:01 <fungot> OK.
18:10:07 -!- MigoMipo has joined.
18:10:13 <oerjan> thanks
18:10:43 <ais523> let's see... we know it starts with s
18:10:47 <ais523> as starting with i is redundant
18:10:53 <ais523> and starting with k is doubly redundant
18:11:05 <ais523> therefore, it's S x y z and possibly more combinators
18:11:10 <oerjan> starting with sk is also redundant
18:11:11 <ais523> which is ((x z) (y z))
18:11:20 <ais523> no it isn't?
18:11:28 <ais523> ah, yes it is
18:11:30 <oerjan> yes it is, skx == i
18:11:34 <ais523> you just get i
18:11:51 <ais523> and starting with sii we've already demonstrated is redundant
18:11:56 <ais523> so ss, sik, or sis
18:11:59 <oerjan> and i looked at si this morning
18:12:10 <oerjan> sixy must have y=s
18:12:18 <ais523> so you get z (s z)
18:12:29 <oerjan> and x!=i as you noticed
18:12:30 <ais523> where z is the next term
18:12:32 <ais523> wait, no
18:12:36 <ais523> umm...
18:12:50 <ais523> sixs = ((i s) (x s))
18:12:53 <ais523> = s (x s)
18:13:07 <ais523> oerjan: well, I think serialised SKI counts as a new esolang
18:13:14 <ais523> I wonder if it's usable, or if it's a new subtle cough?
18:13:29 <oerjan> my thought exactly
18:14:23 <ais523> what if it starts with ss?
18:14:35 <oerjan> siks = s(ks), siss = s(ss)
18:14:52 <ais523> ssxy = ((s y) (x y))
18:14:55 <ais523> which doesn't evaluate further
18:15:06 <ais523> ssxyz = (s y) (x y) (z)
18:15:07 <ais523> which does
18:15:16 <oerjan> yeah that was the trouble with just s's, tend to gobble up arguments
18:15:33 <ais523> it becomes (yz)((xy)z)
18:15:49 <ais523> I think the trick may be to s a lot to generate complicated bracketing patterns
18:15:54 <ais523> then after that fill it with an s/k/i mix
18:16:00 <ais523> to get the arguments into the pattern we need
18:17:04 <ais523> ssxszy = sz((xs)z)y
18:17:29 <ais523> = (zy)(((xs)z)y)
18:17:36 <ais523> I think I'm beginning to spot a pattern here
18:17:56 <Slereah> What's going on with the birds?
18:18:03 <ais523> not birds in particular
18:18:12 <ais523> the problem is to make an SKI infinite loop
18:18:18 <ais523> with the restriction that the entire thing has to left-associate
18:18:33 <ais523> so sii(sii) is out because it needs that pair of parens
18:21:58 <oerjan> "Flattening Combinators: Surviving Without Parentheses, Chris Okasaki, JFP03"
18:22:07 <oerjan> sounds promising :D
18:22:29 <Slereah> HAMMER IT FLAT
18:22:29 <ais523> oerjan: does it just use backquotes instead, I wonder?
18:22:52 <Slereah> Is unlambda that popular that people know of those conventions though?
18:23:00 <ais523> probably not
18:23:02 <Slereah> I don't recall PN with ` anywhere else
18:23:07 <ais523> although I know I think of combinators with backquotes not parens
18:23:08 <oerjan> i think that's unlikely for a JFP submission...
18:23:57 <oerjan> eek postscript
18:24:12 <ais523> oerjan: can't you read postscript?
18:24:21 <Slereah> Hm.
18:24:36 <oerjan> not easily.
18:24:48 <ais523> I have at least two postscript readers on here
18:24:52 <ais523> quite probably 3
18:25:53 <Slereah> From the original article of combinators : 'If we now take the form FU as a point of departure, then, by means of Z alone, F can be transformed in such a way that all parenthesis disappear. By means of C, Z and S, therefore, every formula of logic can be written without parenthesis as a simple sequence of these signs"
18:26:02 <Slereah> FU*
18:26:09 <ais523> hmm... which combinators are C and Z?
18:28:10 <Slereah> C is K, Z is... Zxyz = x(yz), S is S.
18:28:40 <ais523> well, Z is cheating in this particular instance
18:28:54 <ais523> because clearly it lets you mess with associativity at will
18:29:00 -!- impomatic has quit (Read error: 110 (Connection timed out)).
18:29:09 <Slereah> Don't diss the Schonfinkel man himself.
18:29:15 <ais523> ok
18:29:26 <ais523> I mean, Schonfinkel's idea was really clever in that context
18:29:37 <AnMaster> funny: http://rafb.net/p/L2FgYp89.html (I added the comment)
18:29:37 <ais523> however, trying to port it into another context fails in this case
18:29:51 <AnMaster> but what is the true wtf
18:30:14 -!- kar8nga has joined.
18:30:18 <AnMaster> ais523, ^
18:30:25 <ais523> AnMaster: is postfunc declared volatile?
18:30:47 <ais523> that's the only real hope of sanity here
18:30:48 <AnMaster> ais523, no
18:30:55 <AnMaster> ais523, it is a local auto variable
18:31:02 <ais523> is closefunc local or global?
18:31:06 <ais523> not that it really matters
18:31:07 <AnMaster> local too
18:31:23 <AnMaster> (it will get put into a struct that is constructed a bit below
18:31:30 <AnMaster> ais523, clearly a case of copy-and-paste error
18:31:33 <ais523> yes
18:31:42 <AnMaster> the right way would be to use macros to avoid code duplication too
18:31:43 <ais523> the second and third ifs are unreachable, aren't they
18:32:03 <AnMaster> yes, and the second one should check closefunc, and the third one should be removed
18:32:27 <ais523> well, I agree with you that that looks like the obvious fix
18:32:29 <ais523> what's that from>?
18:33:28 <AnMaster> ais523, crossfire
18:33:35 <AnMaster> I was debugging another issue when I ran into that
18:38:11 <ais523> oh dear
18:38:13 <ais523> http://www.xsharp.org/
18:38:35 -!- MigoMipo has left (?).
18:38:50 * ais523 tries to figure out what paradigm it is
18:39:34 <ais523> hmm... looks imperative
18:40:06 <AnMaster> wow interesting
18:40:09 <ais523> but they implemented functional programming too
18:40:17 <AnMaster> ais523, the desc sounds "tree rewriting"
18:40:21 <ais523> it isn't, though
18:40:24 <AnMaster> heh ok
18:40:54 <ais523> or is it?
18:40:56 <ais523> I'm confused
18:40:59 <ais523> it seems to use append-child a lot
18:41:48 <ais523> heh, the wiki's main page is
18:41:49 <ais523> #REDIRECT [[X Sharp on wheels]]
18:42:38 <ais523> and the protection level of the original main page is move/edit at autoconfirmed
18:42:42 <ais523> so anons can't even fix those problems
18:42:56 <ais523> someone's gone to the effort of getting autoconfirmed, then vandlising it...
18:44:26 <ais523> <agentace> This is only slightly more annoying than LOLCODE.
18:47:45 -!- MigoMipo has joined.
18:56:28 -!- MigoMipo has left (?).
19:09:48 <ehird> A
19:10:05 <ais523> ehird: there is no response to that. You win already.
19:10:05 <oerjan> B
19:10:15 <ais523> now, stop using such a degenerate opening
19:10:21 <oerjan> still, you have to say B
19:10:33 <ehird> :D
19:10:36 -!- ais523 has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game.
19:12:00 <oerjan> "the channel that is more than gay sex"
19:13:38 <oerjan> PONG
19:13:45 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game.
19:13:48 <ehird> er
19:13:55 <ais523> ehird: ?
19:14:01 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
19:14:07 <ehird> now it is a complete description
19:14:21 <ais523> ok, I admit that's a #esoteric meme
19:14:25 <ais523> although I don't like it
19:14:33 <ais523> and it's hardly unique to #esoteric like some of the others are
19:14:45 <ais523> well, I suppose messing with the topic isn't a #esoteric-specific meme
19:14:49 <oerjan> what about the goat sacrifices?
19:14:49 <ais523> the loglink possibly is, though
19:14:57 <ais523> oerjan: they never really caught on
19:15:12 <oerjan> they're still new aren't they
19:15:22 <oerjan> and we only use it when there are newbies
19:15:52 <ehird> ais523: gay sex is certainly a recurring theme here, you can't deny it :P
19:15:59 <ais523> I didn't
19:16:00 <ehird> we must be objective.
19:16:10 <ais523> I just tried to redefine the inclusion criteria instead
19:16:17 <ais523> also, don't scare off the new peopel
19:16:30 <ehird> the new people need thicker skin to survive here :-P
19:16:31 <oklofok> would probably be silly to add esolangs to the list?
19:16:42 <ehird> oklofok: when do we talk about esolangs?
19:16:42 <ais523> oklofok: those aren't exactly a meme
19:16:43 <ehird> exactly.
19:16:46 <ais523> they're what the channel is for
19:16:50 <oerjan> "languages. occasionally programming ones."
19:17:02 <lament> that's #linguistics.
19:17:02 <oklofok> ais523: not talking about esolangs, though, is.
19:17:07 <ais523> yes
19:17:08 <oklofok> somewhat
19:17:22 <oklofok> not that i like that one either :P
19:17:29 <ehird> lament: does #linguistics still have a strict anti-gay-sex policy?
19:20:47 <ehird> adadasdasdasd
19:20:49 <ehird> dfsddddddddddddddddddddd
19:23:38 -!- olsner has joined.
19:35:24 <ehird> a
19:36:26 <oerjan> c
19:36:29 <ehird> d
19:36:34 <oerjan> t
19:36:59 <ais523> v
19:37:04 <ehird> *
19:37:06 <ehird> z
19:37:06 <ehird> z
19:37:07 <ehird> z
19:37:08 <oerjan> m
19:37:10 <ehird> z
19:37:15 <oerjan> p
19:37:17 <ehird> $%
19:37:36 <oerjan> FOUL!
19:37:43 <ehird> no
19:37:46 <ehird> that is valid perl code
19:37:48 <Slereah> i
19:37:50 <ehird> valid after a z-onslaught
19:37:54 <Slereah> k
19:37:57 <Slereah> ?
19:38:02 <ehird> z
19:38:08 <oerjan> ni
19:38:37 <Slereah> ffffffffffffffffffffffffffffffffffffff
19:38:47 <oerjan> FOWL!
19:39:04 <ehird> yep, I win
19:39:07 <ehird> due to the perl maneuver
19:39:09 <ehird> right?
19:39:19 <ais523> s/win/lose
19:39:26 <ehird> what?
19:40:00 <oerjan> why?
19:40:23 <ais523> to see how long it takes someone to add the final slash
19:40:26 <Slereah> Because look at the rules, oerjan
19:40:36 <Slereah> RULE 1 : ehird loses
19:40:43 <ehird> Slereah: buy a real rulebook, lamer.
19:40:49 <ehird> ais523: see p645, section 9
19:41:01 <ais523> ehird: in the ANSI or ISO edition?
19:41:09 <ais523> the rules are the same, but the page numbering is different...
19:41:12 <ehird> Jekyll & Montgomery
19:41:22 <ehird> Third.FirstFourth edition
19:42:11 <oerjan> wait i only have the DVD version
19:42:57 <ehird> that works too
19:43:03 <ehird> just use the xref tool included
19:43:10 <ehird> which translates various reference numbers
19:43:23 <oerjan> with appendix by Hyde & Seech
19:43:39 <ehird> sorry, I'll just the standardized numbering system from now on (you know, they put it in a whole other spec because none of the specs are consistent enough...)
19:44:37 <oerjan> the standard with arabic numerals or the one with babylonian numerals?
19:45:09 <ehird> arabic, since we're modern people here.
19:45:21 <oerjan> yeah i know the last one is really only used on MSN, and is overcomplicated
19:45:47 <ehird> let's have a rematch... with the swatter
19:45:49 <ehird> >:D
19:45:52 <ehird> d
19:46:41 <oerjan> n
19:46:55 <ehird> n
19:47:11 <oerjan> hm clever move
19:47:18 <ehird> ha
19:47:18 <ehird> foul
19:47:24 <ehird> now I have the swatter
19:47:28 <ehird> k
19:47:30 <oerjan> no you don't!
19:47:34 <ehird> sure i do
19:47:39 <oerjan> the swatter must not be used for games!
19:47:46 <ehird> 19:45 < ehird> let's have a rematch... with the swatter
19:47:53 <ehird> im not talking about the physical swatter
19:48:00 <ehird> see p1333, section 8
19:48:03 <oerjan> oh
19:48:12 <oerjan> ah but then you still lose
19:48:21 <oerjan> you said "foul" rather than "swat"
19:48:29 <ehird> i didn't have the swatter
19:48:31 <ehird> so i couldn't swat
19:48:32 <ehird> only foul
19:48:34 <ehird> gainign me the swatter
19:48:45 <oerjan> hm...
19:48:55 <oerjan> Z
19:49:00 <ehird> Q
19:49:07 <oerjan> §
19:49:13 <ehird> å
19:49:19 <oerjan> e
19:49:24 <ehird> î
19:49:42 <oerjan> w
19:49:46 <ehird> w
19:49:51 <oerjan> w
19:50:04 * ehird swats oerjan for making a triplication ---###
19:50:08 <ehird> v
19:50:15 <oerjan> v
19:50:19 <ehird> a
19:50:26 <oerjan> foul
19:50:31 <ehird> a
19:50:35 <ehird> [nice try, but that was no foul]
19:50:45 <oerjan> sure it was, the triplication was a trap
19:51:01 <ehird> right but the letter differenciation was 3
19:51:02 <oerjan> after it you have to triplicate, see p983
19:51:11 <ehird> oh, you're right
19:51:15 <ehird> ok, swatter goes back to you
19:51:25 <oerjan> R
19:51:38 <ehird> R
19:51:45 <oerjan> r
19:51:50 <ehird> o
19:51:53 <oerjan> b
19:51:58 <ehird> b
19:52:00 <oerjan> e
19:52:08 <ehird> b
19:52:15 <oerjan> 2
19:52:22 <ehird> Irish people are often green.
19:52:25 * ehird steals swatter
19:52:32 <oerjan> 2
19:52:34 <ehird> (Irish trick, see p1334 section 9)
19:52:37 <ehird> 3
19:52:52 <ehird> 3
19:52:53 <oerjan> s
19:52:56 <ehird> s
19:53:01 <oerjan> foul
19:53:04 <ehird> whaaaaaaaaat
19:53:14 <oerjan> after the irish trick you have to do consonant mutation
19:53:22 <ehird> dammit
19:53:28 <ehird> swatter goes back to you
19:53:30 <ehird> hey ais523
19:53:33 <ehird> participate :P
19:53:51 <oerjan> nn
19:53:55 <ehird> nnnnnnnnnnnnnnnnnnnnn
19:53:58 <ais523> meh, too busy trying to prove a slightly modified version of Russel's Paradox to be self-contradictory
19:54:15 <oerjan> 19
19:54:28 <ehird> A(g64,g64)
19:54:38 <ehird> [triple score for letters+numbers+mathematical expression]
19:54:58 <oerjan> darn i lose, i cannot make enough letters on irc to answer that
19:55:05 <ehird> yay
19:55:07 <ehird> oklofok:
19:56:15 <oerjan> i still say the rules don't take irc properly into account, the internet appendices are really only suitable for email
19:56:32 <ehird> nah, the email game is obsolete
19:56:35 <ehird> it relies on real-time, really
19:56:44 <ehird> oerjan: i suggest Wadler's book
19:56:58 <oerjan> wadler plays this game?
19:57:07 <ehird> it's a 100 page or so summary of little things to know when playing over realtime communication like irc
19:57:15 <oerjan> hm was it he who made the haskell ai for it?
19:57:22 <ehird> I believe so
19:57:28 <ehird> unfortunately it's a bit slow
19:57:31 <ehird> so not really suited to irc.
19:57:33 <oerjan> yeah
19:57:52 <oerjan> if it wasn't they'd have amended the rules
19:58:04 <oerjan> to make it slower and prevent cheating
19:58:09 <ehird> well naturally. it's like... the most antagonistic rule committee ever :-D
19:58:14 <ehird> but we luv em.
19:59:04 <oerjan> yeah putting paul graham in the committee was not such a great idea
19:59:13 <ehird> good thing they kicked him out in 2004
19:59:30 <ehird> i mean seriously can you remember oerjan?
19:59:33 <ehird> "my arc AI is sooo fast"
19:59:39 <oerjan> well that was one good thing that came out of the haskell ai
19:59:41 <ehird> did he ever contribute a non-reverted rule?
20:00:08 <oerjan> he did some quine-based ones
20:00:28 <ehird> nobody uses them do they?
20:00:44 <oerjan> nobody understands them
20:01:02 <oerjan> 500 lines of incomprehensible symbols
20:01:07 <ehird> heh
20:01:16 <oerjan> well i guess people in this channel could decipher it
20:02:57 <oerjan> i mean _technically_ one of them is official, but no one has ever managed to call that rule without using an AI
20:03:13 <ehird> did the ai produce a pretty parse tree?
20:03:16 <ehird> that would help
20:03:25 <oerjan> which of course means disqualification in most tournaments
20:03:45 <ais523> meh, this is a #esoteric tournament
20:03:49 <ais523> it should be allowed here
20:03:49 <oerjan> except the RobLet Cup
20:03:53 <ais523> but only if written in an esolang
20:03:59 <oerjan> heh
20:04:12 <ais523> in fact, I propose that right now, as 270:A
20:04:25 <ehird> not a nomic :P
20:04:37 <ehird> propose it to the committee, or we can just bend rules to it
20:04:40 <ehird> but proposing is cheating
20:04:48 <oerjan> there's a house rule provision but it has to be anonymous
20:04:59 <ehird> can't be anonymous on irc, really
20:05:00 <ehird> so.
20:05:17 <oerjan> would have been unanimous but a misspelling crept through
20:05:27 <ehird> :-D
20:05:42 <ehird> oerjan: for a laugh look at p2457
20:05:50 <ehird> it's written in a special font
20:05:52 <ehird> all italics
20:05:53 <ais523> oerjan: don't, it's a goatse
20:05:56 <ehird> and the rule parts are so nested
20:06:00 <ehird> that they have to use differing font size
20:06:02 <ehird> to disambiguate
20:06:08 <ehird> ais523: similar effect on the brain...
20:06:26 <oerjan> the fractal maze rule, yeah i've seen it
20:06:44 <ehird> oerjan: also, one of the first uses of monads outside of category theory
20:06:49 <oerjan> i think it won some art prize
20:06:51 <ehird> it's actually structured as a monadic operation
20:06:53 <ehird> if you look closely
20:07:12 <oerjan> um it's that old?
20:07:16 <ehird> yeah
20:07:19 <ehird> been revised of course
20:07:30 <oerjan> it would have to be from before the 90s
20:07:47 <ehird> yes
20:07:52 <ehird> it's from 1980-something
20:08:30 <ehird> oerjan: p329 is from the *1970s*, unchanged...
20:08:33 <ehird> err, typo
20:08:37 <ehird> 3329
20:09:21 <oerjan> actually the page number was changed. there were only 2000 pages before they computerized the rules
20:09:33 <ehird> yeah but they did that really early on
20:09:34 <ehird> late 70s
20:09:42 <ehird> so it's expanded a lot by now
20:10:14 <oerjan> i hear the next edition won't fit on an ordinary DVD
20:10:21 <ehird> um it does?
20:10:26 <oerjan> barely
20:10:28 <ehird> oh right, the old text version
20:10:30 <ehird> hyper-compressed
20:10:32 <ehird> on a large dvd
20:10:38 <ehird> oerjan: you have the multi-dvd version I assume?
20:10:42 <ehird> since you know about the formatting
20:10:57 <ehird> well, you have to really
20:11:07 <ais523> ehird: meh, you just need the multi-dvd compression algorithm
20:11:18 <ais523> which can decode the entire ruleset from the picture of Lenna
20:11:25 <ehird> oh not that joke again
20:11:30 <ehird> puhleeze, that got old in 1999
20:11:36 <ais523> ehird: I made it in reverse this time
20:11:46 <lament> You can decode pretty much anything from the picture of Lenna
20:11:47 <ehird> oh, right
20:11:47 <ehird> sorry
20:11:49 <lament> I know from experience
20:11:54 <ehird> lament: creepy
20:12:16 <ais523> now, really creepy would have been if AnMaster had got that joke before my explanation
20:12:22 <ais523> whilst ehird still needed one...
20:12:42 <ehird> ais523: yeah um the likelyhood of that is 0.
20:12:50 <ehird> i just misread
20:12:50 <ais523> only because AnMaster is idle
20:13:01 <ehird> i just misread, sheesh
20:13:08 <oerjan> i just have one DVD. it's the special internet version leaving out the physical play rules.
20:13:25 <ehird> oerjan: wait, the internet is just an appendix
20:13:27 <ehird> oh, wait, that one
20:13:30 <ehird> that one is actually a trick
20:13:35 <ehird> it downloads the complete rules from the internet
20:13:40 <ehird> that's why the install takes so long
20:13:41 <ais523> no wonder oerjan's been doing so badly all this time
20:13:46 <ehird> no
20:13:48 <ehird> he has the full rules
20:13:48 <oerjan> rubbish, my disk is not that large
20:13:56 <ehird> oerjan: yes, the disk just downloads the rules
20:14:02 <ehird> bit of a ripoff :P
20:14:09 <oerjan> my _hard_disk_ is not that large
20:14:14 <ehird> oh right
20:14:16 <ehird> well how big is it
20:14:22 <ehird> the rules fit compressed on a few dvds
20:14:25 <ehird> so unless your hd is tiny...
20:14:45 <oerjan> 55 GB
20:14:50 <ehird> that's big enough
20:16:37 -!- kar8nga has left (?).
20:16:38 -!- ais523 has quit (Read error: 54 (Connection reset by peer)).
20:17:12 <AnMaster> someone highlighted me?
20:17:40 <ehird> no
20:17:42 <ehird> no they didn't
20:17:47 <oerjan> AnMaster: they were discussing a joke you couldn't possibly have got
20:17:56 <oerjan> or something like that, anyway
20:19:02 <AnMaster> well I actually know about Lenna, but I would have thought ais got it the wrong way round instead realising that he meant it as that.
20:19:05 -!- ais523 has joined.
20:19:10 <AnMaster> afk again
20:24:00 -!- ais523_ has joined.
20:28:00 -!- ais523_ has quit (Read error: 54 (Connection reset by peer)).
20:28:26 -!- ais523_ has joined.
20:28:40 <ehird> http://en.wikipedia.org/wiki/U2charist
20:29:31 -!- KingOfKarlsruhe has quit (Remote closed the connection).
20:38:09 -!- ais523 has quit (Read error: 110 (Connection timed out)).
20:38:24 <AnMaster> ehird, wow
20:39:39 -!- ais523_ has quit (Read error: 60 (Operation timed out)).
20:41:55 -!- ais523_ has joined.
20:42:19 -!- ais523_ has changed nick to ais523.
20:46:00 -!- Mony has quit ("Quit").
20:53:57 <ais523> yay, they finally fixed MediaWiki bug 10569
20:54:01 <ais523> and I only reported it in 2007
20:54:14 <ais523> not that it's a particularly important one
20:54:22 <ais523> I only found it deliberately trying to provoke a failure mode
20:54:36 <ais523> but still, I can imagine a vandal having used it for something malicious
20:55:14 <ehird> what was it?
20:56:29 -!- ais523 has quit.
20:56:39 -!- ais523 has joined.
20:57:33 <oklofok> yay i guessed correct what the two most common letters are when measured by amount of google results for 20 of those characters.
20:57:44 <ehird> :-D
20:57:51 <oklofok> first is trivial to guess
20:58:55 <oklofok> after second i though mmmmmmmmmmmmmmmmmmm might be third, but there i went wrong
20:59:23 <ehird> what did you guess?
20:59:33 <ehird> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa?
20:59:33 <oklofok> well x is the first of course
20:59:37 <oklofok> w is the second.
20:59:37 <ehird> ... wat
20:59:42 <ehird> seriously?
20:59:44 <ehird> wgat
20:59:44 <ehird> XD
21:00:06 <oklofok> x means "unspecified", w i guessed based on www being a common acronym :P
21:00:24 <oklofok> i'm not sure that's the reason. point is i was right, not why i was right.
21:00:44 <ehird> I thought AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHHHHHH or something would top
21:01:03 <oerjan> awwwwwwwwwwwwwww
21:01:28 <ehird> let's just say loads of letters 20 times in here so google indexes them
21:01:29 <ehird> :P
21:01:55 <oklofok> \o/
21:01:59 <oklofok> oooooooooooooooooooo
21:02:00 <oklofok> oooooooooooooooooooo
21:02:00 <oklofok> oooooooooooooooooooo
21:02:01 <oklofok> oooooooooooooooooooo
21:02:01 <oklofok> oooooooooooooooooooo
21:02:02 <oklofok> oooooooooooooooooooo
21:02:17 <ehird> oooooooooooooooooooo
21:02:18 <ehird> oooooooooooooooooooo
21:02:18 <ehird> oooooooooooooooooooo
21:02:20 <ehird> oooooooooooooooooooo
21:02:20 <ehird> oooooooooooooooooooo
21:02:22 <ehird> oooooooooooooooooooo
21:02:25 <ehird> oooooooooooooooooooo
21:05:41 -!- ais523 has quit (Read error: 145 (Connection timed out)).
21:06:03 -!- ais523 has joined.
21:08:23 <oerjan> ^ul (o):::***::::****( )*(~:S~:^):^
21:08:24 <fungot> oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo oooooooooooooooooooo ooooooooo ...too much output!
21:11:06 -!- ais523_ has joined.
21:11:31 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
21:11:40 <ais523_> ugh, they didn't even fix the actual bug
21:11:46 <ais523_> just its symptoms
21:11:48 -!- ais523_ has changed nick to ais523.
21:11:51 -!- BeholdMyGlory has quit (Read error: 104 (Connection reset by peer)).
21:13:12 <ehird> ais523: link
21:13:29 <ais523> https://bugzilla.wikimedia.org/show_bug.cgi?id=10569
21:16:37 -!- BeholdMyGlory has joined.
21:17:00 <ehird> [[Redirects to Special:Mypage and Special:Mytalk are no longer allowed]]
21:17:02 <ehird> painful
21:17:06 <ehird> can we murder the mediawiki devs?
21:17:17 <ais523> the problem is, there might be other pages with the same problem
21:17:19 <ais523> now or in the future
21:17:35 <lament> the problem is, there might be other mediawiki devs, now or in the future
21:17:55 <ehird> again, let's kill MW devs.
21:18:05 <ais523> OK, the fix makes the list configurable
21:18:19 <ais523> and there are some special pages which shouldn't be redirectable-to, like Special:Userlogout
21:19:52 <oerjan> Special:LaunchMissiles
21:19:59 <ehird> ais523: wait, does that work on wikipedia?
21:20:06 <ehird> I may have to give in to my inner vandal...
21:20:25 <ais523> ehird: no
21:20:35 <ais523> all redirs to special pages are blocked on Wikipedia
21:20:38 <ehird> dammit. wait, are you only saying that because of [[WP:BEANS]]?
21:20:52 <ehird> [[I see a featured article on Washington D.C., and the image File:Obama_Portrait_2006.jpg on the Main Page. This is absolutely ridiculous -- the U.S. is not the only country in the world, and filling the Main Page just because of the upcoming inauguration is obviously a violation of NPOV.
21:20:58 <ehird> ]]
21:21:00 <ehird> *facepalm*
21:21:00 <ais523> no, WP:BEANS technically says "Don't tell people not to do something, because they'll be certain to try"
21:21:24 <ais523> nothing about not giving vandalism hints, although there are good reasons not to do that either
21:21:59 -!- adimit has quit ("leaving").
21:23:27 -!- adimit has joined.
21:23:50 <ehird> move to Wikipedia:Main Page
21:23:50 <ehird> shouldn't this page moved out of the article Space? this is only one of some Wikipedia-related things, so please put it into the Wikipedia: namespace, thanks. --84.44.177.212 (talk) 14:13, 20 January 2009 (UTC)
21:23:54 <ehird> oh no...
21:24:22 <ais523> Portal:
21:24:24 <ais523> please, Portal
21:24:28 <ais523> that's what it's designed for
21:24:43 <ehird> I saw you in one of those debates about it from like 2006 a while ago
21:24:47 <ehird> Typical ais523 :-P
21:25:31 <ehird> http://en.wikipedia.org/wiki/Template:REMOVE_THIS_TEMPLATE_WHEN_CLOSING_THIS_AfD
21:25:34 <ehird> name
21:25:35 <ehird> ever
21:25:37 <ehird> best
21:25:40 <ehird> template
21:25:42 <oerjan> ehird: iirc moving the Main Page has been discussed before
21:25:46 <ehird> especially since it has nothing to do with its naming, other than being useful in the source
21:25:50 <ehird> oerjan: I know, thus "oh no"
21:25:52 <ehird> the debates were... heated
21:26:06 <ais523> ehird: sorry about that
21:26:09 <ais523> the name sort-of stuck
21:26:19 <ehird> wait you made it?
21:26:27 <ais523> I had to invent a migration path for AfD that people could follow without breaking anything and without realising it was happening
21:26:30 <ais523> and yes, I made it
21:26:33 <ehird> ha
21:26:45 <ais523> although I wasn't an admin back then
21:27:05 <oerjan> istr someone pondering what would happen if something noteable with the name "Main Page" appeared
21:27:06 <ais523> <ais523> "Starting to implement Wikipedia:AfD reform. This template is initially blank so that the process can be started without interfering with AfD."
21:27:11 <ehird> :-D
21:27:12 <ais523> that happens a lot
21:27:28 <Slereah> AfD?
21:27:38 <ehird> Articles for Deletion.
21:28:08 <ehird> aaaaaaaaaaaaazzzzzzzzzzzzzzzzzzxxxxxxxxccccccvbnm,.
21:28:11 <ais523> the heavyweight process for deleting things that not even admins can get away with just arbitrarily deleting
21:28:16 <ehird> OOH! I wanna make an esolang.
21:28:22 <ehird> I just remembered, you know.
21:28:24 <ehird> Esolangs!
21:28:37 <ehird> I may or may not be forgetful <_________<
21:29:43 <oerjan> a forgetful esolang!
21:29:47 <ehird> You know, slashdot would be better if it wasn't so impossible to read the comments.
21:29:50 <oerjan> call it GoldFish
21:29:59 <oerjan> (yeah i know it's a myth)
21:29:59 <ehird> oerjan: yes
21:30:08 <ehird> oerjan: although the new standard is Digg users
21:30:18 <ehird> Mark Pilgrim proved that Digg's memory is shorter than a goldfishes
21:30:20 <ehird> scientifically
21:30:27 <oerjan> oo
21:30:31 <ehird> http://diveintomark.org/archives/2006/10/02/digg
21:32:18 <oerjan> i like the striked out Japanese Chinese
21:32:48 -!- adimit has left (?).
21:40:12 <ehird> hmm
21:40:21 -!- GreaseMonkey has joined.
21:40:25 <ehird> is there a turing-complete OISC with only one operand?
21:40:40 <ehird> yes, http://esolangs.org/wiki/RSSB
21:40:46 <ehird> ok, what about _no_ operands?
21:40:51 <ais523> ehird: how many operands would you say MiniMAX has?
21:41:04 <ehird> not sure
21:41:09 <ehird> let me check
21:41:14 <ehird> Word of data to send to the previous command
21:41:18 <ehird> so, definitely >0
21:42:19 <ehird> hmm
21:42:24 <ehird> maybe something stack-based
21:44:33 <oerjan> one instruction, no operands, er that leaves very little actual information content...
21:45:48 <ehird> oerjan: hardcoded data
21:45:51 <ehird> can drive it
21:46:19 <oerjan> um then the real program is the data, surely
21:46:26 <ehird> no
21:46:30 <ehird> because the amount of times it runs differs
21:46:42 <ehird> you sequence it
21:46:45 <ehird> cmd ; cmd ; cmd
21:46:49 <ehird> data: "&*^&*^~HDCUJ"
21:46:50 <ais523> ehird: the problem with MiniMAX is that the operands sort of blur between different commmands
21:46:56 <ais523> although they're definitely there
21:47:03 <ais523> also, the program is the data
21:47:17 <ehird> both
21:47:23 <ehird> the programs is the ocruances of cmd + the data
21:47:34 <ehird> i mangled that.
21:47:54 <oerjan> ehird the evil mangler
21:48:18 <ehird> no, that's ghc's Literate Perl script
21:48:23 <ehird> (it mangles gcc's assembly output)
21:48:27 <ehird> and yes, literate perl
21:48:30 <ehird> comments are default
21:48:34 <ehird> it's filtered before using
21:48:54 <ais523> ehird: you could just do that with a source filter
21:49:23 <ehird> no
21:49:27 <ehird> they run perl on it, IIRC
21:49:30 <ehird> to get the perl script
21:49:38 <ais523> why not?
21:49:55 <ais523> that's what a source filter /is/
21:50:19 <ehird> they don't use a source filter
21:50:42 <oerjan> ais523: then it wouldn't be as evil, duh
21:53:59 <AnMaster> Literate Perl?
21:54:01 <AnMaster> So evil
22:00:34 <olsner> literate perl? is that when you have alphanumerics in your source?
22:01:56 <ehird> groan
22:01:59 -!- Corun has joined.
22:04:15 -!- adimit has joined.
22:16:22 -!- Max_D has joined.
22:20:28 <Max_D> xP
22:20:36 <ehird> hi
22:20:58 <ais523> hello
22:22:56 <oerjan> hello, are you Max Demian from the wiki?
22:25:02 <oerjan> if so, nice of you to make an omgrofl implementation just as hope of retrieving the original was lost
22:25:33 <ehird> ALLLLLL HOOOOOPE
22:25:53 <ais523> also, it's very funny to see LOLCODE beaten at its own game
22:25:53 <ais523> by almost a yea
22:25:53 <ais523> *year
22:26:04 <oerjan> i _specifically_ rubbed out the word "all", after typing it
22:26:21 <oerjan> i supposed technically someone _could_ have mirrored it
22:26:43 <ais523> oerjan: I thought the location at which all hope was lost was the entrance to Malbolge
22:26:49 <ehird> Wiki is down :(
22:26:53 <oerjan> no it's not
22:27:03 <oerjan> er wait
22:27:21 -!- Corun has quit ("This computer has gone to sleep").
22:27:23 <oerjan> it just locked up
22:27:32 <Max_D> sorry, went afk, yeah I am Max Demian from the wiki
22:27:46 <ais523> oerjan: it's working for me I think
22:27:55 <oerjan> me too, it was just temporary
22:28:04 <ehird> works now
22:28:47 <Max_D> yeah, I have lots of free time, lol. playing with omgrofl just seemed like a good time killer, lol
22:28:47 <ehird> I want to kill the creator of LOLCode.
22:28:49 <ehird> :|
22:29:48 <oerjan> ehird: HAI. I CAN HAS AXE IN SKULL?
22:30:03 <ehird> oerjan: YES WE CAN
22:30:05 <oerjan> KTHXBYE
22:30:57 <ais523> CAN HAZ, surely?
22:31:02 <ais523> or is LOLCODE behind the times?
22:31:15 <oerjan> ais523: i'm not entirely fluent
22:31:20 <ehird> I'm going to write GoL in Haskell. :-D
22:31:25 <ais523> GoL?
22:31:30 <ehird> Game of Life.
22:31:33 <ais523> ok
22:31:35 <ehird> Step one: neighboursFold
22:31:39 <ehird> A fold, but includes neighbours.
22:31:48 <ais523> why not implement the rest of RedGreen while you're at it?
22:31:51 <ais523> or ALPACA, fwiw?
22:31:53 <ehird> meh
22:31:56 <ehird> GoL is simpler
22:31:57 <ais523> the ALPACA reference interp is rubbish
22:32:17 <ehird> hmm...
22:32:25 -!- olsner has quit ("Leaving").
22:32:26 <ehird> I think Lahey Space is a good fit for GoL.
22:32:30 <ehird> i.e., wrapping neighbours, but infinite field
22:32:43 <oerjan> good grief
22:32:55 <ehird> what
22:32:58 <ais523> ehird: it wouldn't make a difference
22:33:06 <ehird> ais523: why not?
22:33:07 <ais523> Lahey space wrapping only matters when you project rays
22:33:11 <ehird> you have a cell at the top bound
22:33:13 <ehird> and at the bottom
22:33:18 <ehird> the top cell has the bottom as a neighbour
22:33:20 <ehird> and vise-versa
22:33:20 <ais523> oh, it's bounded?
22:33:21 <ehird> is what I mean
22:33:22 <ehird> BUT
22:33:22 <ais523> despite being infinite?
22:33:27 <ehird> if the cell went higher
22:33:30 <ehird> it'd still have the same neighbour
22:33:31 <ehird> ais523: yes
22:33:35 <ehird> the bounds expand
22:33:39 <ehird> and contract
22:33:44 <ehird> and neighbours take the bounds into account
22:33:44 <ais523> oh, it's a torus which gets bigger
22:33:49 <ehird> and smaller
22:33:50 <ais523> when does it get bigger?
22:33:51 <ehird> essentially
22:33:54 <ais523> when things get near the edge?
22:34:01 <ehird> ais523: when they hit beyond the edge
22:34:02 <ais523> if so, it's likely to expand indefinitely due to gliders
22:34:04 <ehird> ais523: you just store the boundaries
22:34:08 <ehird> of the whole thing
22:34:12 <ais523> ehird: wait...
22:34:15 <ais523> how do they get beyond
22:34:17 <ehird> ...
22:34:18 <ais523> in a wrapping environment?
22:34:18 <ehird> they move.
22:34:24 <ehird> ais523: wrapping is only for neighbours
22:34:26 <ais523> cells in Life don't move
22:34:30 <ehird> gliders do
22:34:32 <ehird> ais523: wrapping is only for neighbours
22:34:34 <ais523> no, they don't
22:34:36 <ehird> not movement
22:34:42 <ais523> ehird: there is no movement in Life
22:34:43 <AnMaster> night
22:34:45 <ais523> gliders don't move
22:34:48 <ehird> ... no shit
22:34:49 <ais523> rather, nearby cells turn on
22:34:51 <ehird> listen to me
22:34:52 <ais523> to continue it
22:34:55 <ais523> AnMaster: night
22:34:55 <ehird> when a cell turns on outside the field
22:34:59 <ehird> the field expands
22:35:06 <ehird> but for neighbour calculation, it wraps at the edges
22:35:12 <ais523> ehird: but the cell at the opposite side of the field would also turn on?
22:35:15 <lament> by the same logic
22:35:18 <ais523> that's getting weird and messed-up, now
22:35:21 <lament> there's no movement in the real world
22:35:23 <ehird> um, no, ais523
22:35:31 <ais523> ehird: imagine a glider hitting the edge of the map
22:35:34 <ehird> what part of "WRAPPING ONLY APPLIES TO NEIGHBOURS" don't you get
22:35:34 <ais523> the cells beyond it turn on
22:35:41 <ais523> the cells at the other end of the map also turn on
22:35:42 <ehird> all of it, apparently.
22:35:48 <ais523> by only applying to neighbours
22:35:55 <oerjan> ehird: what are the neighbors of a cell far outside the field?
22:36:05 <ehird> There is nothing outside of the field...
22:36:06 <ais523> oerjan: they wrap, obviously, wrapping only applies to neighbours
22:36:16 <ehird> ais523: what I mean is
22:36:19 <ais523> ehird: suppose a cell isn't on
22:36:19 <oerjan> ehird: so where do new cells come from?
22:36:23 <ehird> when you run the "flipState" function
22:36:27 <ehird> you pass neighbours that wrap
22:36:28 <ais523> and at the other end of the field, there are three consecutive on cells
22:36:29 <ehird> but NOTHING ELSE wraps
22:36:30 <ehird> AT ALL
22:36:41 <ais523> ehird: then how do the cells outside the boundary ever turn on
22:36:42 <ehird> ais523: the GoL calculations only deal with the middle cell
22:36:43 <ehird> to flip
22:37:09 <oerjan> ehird: anyway you _are_ going to get strange edge effects this way
22:37:11 <ais523> ehird: then how do the cells outside the boundary ever turn on
22:37:29 <ehird> ais523: you're not making any sense to me
22:37:41 <ais523> ehird: neither are you to anyone else
22:37:53 <ais523> calculating neighbours seems easy to calculate for cells inside the grid
22:37:58 <ais523> given your current clear definitions
22:38:01 <ais523> but expanding the grid doesn't
22:38:10 <ais523> as cells outside the grid don't seem to have defined neighbours to know when to turn on
22:38:22 -!- GreaseMonkey has quit (Remote closed the connection).
22:38:39 <ehird> meh, I'll just make it unbounded.
22:38:43 <ehird> even though this will cause me hell.
22:39:07 <ehird> (in that you have to store the boundaries)
22:39:20 * ais523 vaguely wonders what C## would be like, if it existed
22:39:28 -!- GreaseMonkey has joined.
22:39:37 <ehird> #csharp exists
22:39:40 <ehird> #c# redirecst there
22:39:45 <ais523> yes, but that's only one sharp
22:39:55 <ais523> arguably, C## would be D, based on enharmonics
22:39:58 <ais523> but that's stretching it a bit
22:39:58 <ehird> heh
22:41:14 <ehird> neighbours :: Grid -> Point -> Neighbours
22:41:19 <ehird> wonder if that should be Point -> Grid
22:43:22 <ehird> Hrm.
22:43:27 <ehird> Do most Life implementations store bounds?
22:43:30 <ehird> I'm sure there's a trick
22:43:38 <ais523> they vary
22:44:12 <ehird> Well, how do you transform an infinite grid apart from storing bounds?
22:44:37 <ehird> Also, isn't a wrapping Life easier to look at? :P
22:45:03 -!- psygnisfive has quit ("Leaving...").
22:45:46 <oerjan> it wreaks some havoc with simulations if you wrap though, even if the live field is not that large - gliders tend to come back and ruin things
22:46:23 <ehird> Coooooooooooooooool, my random pattern spawned a glider
22:46:23 <ehird> oerjan: all life patterns tend to mess up after a while :P
22:46:26 * Max_D bleh
22:46:35 <oerjan> i mean mess up compared to the ideal
22:53:34 -!- ais523 has quit (Remote closed the connection).
22:56:10 * Max_D killed the convo with his bleh!
22:56:30 <oerjan> it happens
22:56:39 <oerjan> also, ais523 left
23:03:46 -!- psygnisfive has joined.
23:07:21 <FireyFly> Night
23:07:45 -!- FireyFly has quit ("Brb IRL").
23:08:50 -!- BeholdMyGlory has quit ("hejdå!").
23:09:16 <ehird> whee, maze generating cellular automata!
23:09:17 <Max_D> bleh, half the languages in this wiki are the exact same language just with different ways of doing the same thing... no originality =/
23:09:26 <Max_D> they are all brainfuck basically xP
23:09:27 <ehird> Max_D: we agree :-)
23:09:34 <ehird> everyone's first langi s a brainfuck clone...
23:10:03 <Max_D> instead of > you do poop, and < is doodoo, and + is crap
23:10:08 <Max_D> it's feces++
23:10:29 -!- FireFly has quit (Read error: 104 (Connection reset by peer)).
23:10:39 <ehird> amazing
23:12:19 <Max_D> it's gonna be HUGE
23:26:27 -!- oerjan has quit ("Good night").
23:36:37 <MizardX> Life in matlab: nlfilter(A,[3 3],@(N)sum(sum(N))==3||N(5)&&sum(sum(N))==4)
23:37:04 <MizardX> (can't figure out how to only evaluate sum(sum(N)) once...)
23:39:19 <ehird> nice
23:39:29 <MizardX> ... or just type 'life'
23:39:31 <ehird> MizardX: nlfilter sounds ... specialized
23:39:40 <MizardX> non-linear filter
23:39:55 <MizardX> image filtering
23:40:24 <MizardX> [3 3] is the size of the sub-image you want passed to the function
23:41:08 * Max_D wonders what you are talking about :P
23:44:11 <MizardX> conways game of life, and image processing, in matlab
23:46:24 <MizardX> better implementation in the built-in version:
23:46:24 <MizardX> n = [m 1:m-1]; e = [2:m 1]; s = [2:m 1]; w = [m 1:m-1];
23:46:26 <MizardX> while 1,
23:46:28 <MizardX> N = X(n,:) + X(s,:) + X(:,e) + X(:,w) + X(n,e) + X(n,w) + X(s,e) + X(s,w);
23:46:30 <MizardX> X = (X & (N == 2)) | (N == 3);
23:46:32 <MizardX> end
2009-01-22
00:10:38 -!- ehird has quit (Read error: 113 (No route to host)).
00:32:39 <oklofok> MizardX: does matlab have lambdas?
00:32:49 <oklofok> combinators? forks?
00:33:50 <MizardX> I think @(params)expr could be considered a lambda-function... combinators and forks, I don't know.
00:34:53 <oklofok> well. you can rename the sum with a lambda and use the name
00:35:10 <oklofok> but err. seems like there could be a simple more mathematical hack there
00:37:32 <oklofok> nah probably not
00:39:20 <MizardX> min(abs(sum(sum(N)) - 3 - [N(5) 0])) == 0
00:39:29 <oklofok> err matlab doesn't distinguish between functions and lists?
00:39:31 <oklofok> i mean syntactically
00:39:54 <oklofok> what does [N(5) 0] mean?
00:40:02 <oklofok> oh
00:40:04 <oklofok> implicit map
00:40:50 <oklofok> hmm
00:40:52 <oklofok> oh abs
00:40:52 <MizardX> All values are matrices. Scalars have dimension 1x1.
00:41:04 <oklofok> couldn't you skip the abs and use max?
00:41:57 <oklofok> err
00:42:01 <oklofok> i see i see
00:42:11 <oklofok> but it's an implicit map in that case?
00:42:16 <oklofok> i mean.
00:42:25 <oklofok> well.
00:42:32 <oklofok> i still don't know what [N(5) 0] means
00:42:43 <oklofok> unless it's an array of size 2 containing those two
00:43:03 <MizardX> [1 2 3; 4 5 6; 7 8 9] is the syntax for matrices
00:43:55 <MizardX> N(5) is the fifth element of N (ignoring the second dimension)
00:43:58 <oklofok> 2:42, need to sleep now. anyway i'll just assume i guessed it right because it works :P
00:44:01 <oklofok> i know it is
00:44:34 <oklofok> are arrays functions in matlab, can you pass them to, say, map?
00:44:46 <oklofok> but really, sleep, can't keep my eyes open
00:44:50 <oklofok> cya ~>
00:45:45 <MizardX> Hard to explain everything. Most the syntax have evolved and are there for convenience.
00:46:32 <MizardX> Matlab is good att matrix and vector calculation.
00:47:49 <MizardX> If you can express an algorithm as a matrix/vector expression, then matlab can execute it quickly.
00:49:15 <MizardX> A * B = matrix product, with special casing for vector and scalar values.
00:52:48 -!- bsmntbombgirl has quit (kornbluth.freenode.net irc.freenode.net).
00:52:49 -!- Dewi has quit (kornbluth.freenode.net irc.freenode.net).
00:52:49 -!- Slereah has quit (kornbluth.freenode.net irc.freenode.net).
00:52:50 -!- oktabot has quit (kornbluth.freenode.net irc.freenode.net).
00:52:50 -!- CakeProphet has quit (kornbluth.freenode.net irc.freenode.net).
00:52:50 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
00:52:55 -!- sebbu2 has quit (kornbluth.freenode.net irc.freenode.net).
00:52:55 -!- kerlobot has quit (kornbluth.freenode.net irc.freenode.net).
00:52:56 -!- adimit has quit (kornbluth.freenode.net irc.freenode.net).
00:52:57 -!- MizardX has quit (kornbluth.freenode.net irc.freenode.net).
00:52:57 -!- Judofyr has quit (kornbluth.freenode.net irc.freenode.net).
00:52:57 -!- oklofok has quit (kornbluth.freenode.net irc.freenode.net).
00:52:59 -!- decipher_ has quit (kornbluth.freenode.net irc.freenode.net).
00:52:59 -!- kerlo has quit (kornbluth.freenode.net irc.freenode.net).
00:52:59 -!- GreaseMonkey has quit (kornbluth.freenode.net irc.freenode.net).
00:53:00 -!- dbc has quit (kornbluth.freenode.net irc.freenode.net).
00:53:00 -!- pikhq has quit (kornbluth.freenode.net irc.freenode.net).
00:53:01 -!- AnMaster has quit (kornbluth.freenode.net irc.freenode.net).
00:53:02 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
00:53:03 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
00:53:03 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
00:53:04 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
00:53:04 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
00:54:18 -!- sebbu2 has joined.
00:54:18 -!- kerlobot has joined.
00:54:53 -!- comex has joined.
00:55:04 -!- adimit has joined.
00:55:04 -!- Judofyr has joined.
00:55:04 -!- oklofok has joined.
00:55:04 -!- MizardX has joined.
00:55:04 -!- decipher_ has joined.
00:55:04 -!- kerlo has joined.
00:55:06 -!- oktabot has joined.
00:55:06 -!- CakeProphet has joined.
00:55:06 -!- GregorR has joined.
00:55:27 -!- Dewi has joined.
00:55:27 -!- Slereah has joined.
00:55:55 -!- GreaseMonkey has joined.
00:55:55 -!- dbc has joined.
00:55:55 -!- pikhq has joined.
00:55:56 -!- bsmntbombgirl has joined.
00:56:27 -!- lament has joined.
00:56:30 -!- SimonRC has joined.
00:58:17 -!- rodgort has joined.
01:04:10 <Max_D> the fuck?
01:15:32 <puzzlet> typical netsplit, apprently
01:56:11 * Max_D whistles
02:44:20 <psygnisfive> oktabot!
02:45:19 -!- kerlobot has quit (Read error: 113 (No route to host)).
02:47:02 * Max_D loves the fishes cuase they're so delicious
02:59:33 -!- mtve has joined.
03:06:44 -!- Max_D has quit.
04:21:01 -!- moozilla has changed nick to metazilla.
04:21:24 -!- metazilla has changed nick to moozilla.
06:15:27 -!- Max_D has joined.
06:15:41 <Max_D> arrrrr
06:19:46 * Max_D wakes everybody up
06:20:35 <psygnisfive> o.o
06:52:50 <Max_D> soooooooooo...
07:37:27 -!- Max_D has quit ("$hiv++").
07:58:06 -!- AnMaster has joined.
07:58:29 -!- AnMaster has quit (Remote closed the connection).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:02:41 -!- AnMaster has joined.
08:18:46 -!- GreaseMonkey has quit ("Client Excited").
08:21:48 -!- metazilla has joined.
08:21:49 -!- moozilla has quit (Read error: 131 (Connection reset by peer)).
08:22:00 -!- metazilla has changed nick to moozilla.
08:24:50 -!- amca has joined.
08:32:04 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
08:38:15 -!- metazilla has joined.
08:38:17 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
08:38:25 -!- metazilla has changed nick to moozilla.
08:39:01 -!- moozilla has quit (Read error: 104 (Connection reset by peer)).
08:39:03 -!- metazilla has joined.
08:42:23 <psygnisfive> so
08:42:40 <amca> so
08:47:45 <psygnisfive> i wonder
08:48:34 <amca> What do you wonder?
08:48:49 <psygnisfive> what kinds of programming can we do if we force the entire model to be MISD
08:49:47 <amca> As in Multiple Instruction, Single data?
08:49:54 <psygnisfive> yeah
08:50:01 <psygnisfive> im using it loosely here ofcourse
08:50:03 <psygnisfive> but like
08:50:21 <amca> I think it would be called CISC. ;)
08:50:47 -!- ais523 has joined.
08:51:02 <psygnisfive> if we had to force all our functions to accept one and only one argument
08:51:12 <psygnisfive> except the functions that act like reduces
08:51:13 <ais523> psygnisfive: then you'd end up with Unlambda?
08:51:17 <psygnisfive> :P
08:51:43 <amca> Like Lambda Calculus?
08:51:51 <psygnisfive> no no i mean more like
08:52:28 <ais523> amca: http://esolangs.org/wiki/Unlambda
08:52:37 <psygnisfive> well, im not really sure what i mean
08:52:43 <ais523> it's one of the seminal esolangs, you should look it up if you don't know it
08:53:56 <psygnisfive> im just thinking about how the brain processes data, and such.
08:54:11 <psygnisfive> i guess purely functional programming is vaguely like that i suppose
08:54:46 <amca> ais523: Ive come across it. It is more combinatorial logic than LC isnt it?
08:55:14 <ais523> yes
08:55:23 <ais523> although LC can be compiled into combinatorial logic
08:55:33 <amca> And vice versa?
08:55:36 <ais523> I don't know of anyone who's tried to write Unlambda without going via LC first
08:55:39 <ais523> except for very simple programs
08:59:24 <psygnisfive> hm.. everything-as-a-stream is interesting too
09:03:48 <amca> There is a name for that isnt there? Data <something> programming languages?
09:04:09 <psygnisfive> well, there are stream programming languages
09:04:17 <psygnisfive> but i dont know of a language where _everything_ must be a stream
09:04:23 <psygnisfive> all data, anyway
09:05:26 <ais523> Sceql?
09:06:09 <psygnisfive> no i mean a real language :p
09:09:22 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
09:09:58 -!- ais523 has joined.
09:10:56 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
09:10:56 -!- bsmntbombgirl has quit (kornbluth.freenode.net irc.freenode.net).
09:11:35 -!- rodgort has joined.
09:11:35 -!- bsmntbombgirl has joined.
09:17:28 -!- Leonidas has quit (Read error: 104 (Connection reset by peer)).
09:17:34 -!- Leonidas has joined.
09:48:56 -!- oerjan has joined.
09:55:25 -!- ais523 has quit (Client Quit).
10:01:43 -!- oprz has joined.
10:02:12 <oprz> hi
10:02:20 <oerjan> hello
10:02:26 <oprz> i was coding in +'s and .'s
10:02:28 <oprz> is this ok?
10:02:41 <oerjan> in brainfuck?
10:02:51 <oprz> yeah
10:03:08 <oerjan> well you can print fixed strings that way
10:03:35 <oerjan> well with wrapping cells
10:04:07 <oprz> oh
10:04:15 <oprz> i dont like brainfuck that much
10:04:33 <oprz> i like the PHP function used for parsing brainfuck code
10:04:36 <oprz> that is cool
10:04:45 * oerjan doesn't know PHP
10:05:09 <oerjan> but brainfuck is implemented in almost everything
10:05:40 <oprz> how do you mean
10:06:13 <oerjan> there are implementations in lots of languages.
10:06:33 <oprz> oh
10:06:51 <oerjan> it's so simple it's very easy to implement
10:07:04 <oprz> i think it is hard to implement
10:07:11 <oprz> but then again my brain is small
10:07:20 <oerjan> not compared to nearly any other languages
10:07:40 <oprz> whats the point of implementing another language into an existing language?
10:08:15 <oerjan> well you have to do it at least once to get the new language running at all :D
10:08:24 <oprz> guess
10:08:59 <oerjan> but most people do it as a programming exercise i think
10:09:35 <oerjan> we have a page on our wiki about esoteric languages implemented in each other
10:09:44 <oprz> cool
10:10:18 <oerjan> http://esoteric.voxelperfect.net/wiki/EsoInterpreters
10:14:30 <oprz> will look later got to go now
10:14:41 <oerjan> bye
10:16:13 -!- oprz has left (?).
10:35:26 -!- puzzlet has quit (Remote closed the connection).
10:35:34 -!- puzzlet has joined.
10:57:19 -!- oerjan has quit ("Lost terminal").
11:13:06 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
11:13:14 -!- puzzlet has joined.
12:05:27 -!- Slereah2 has joined.
12:17:38 -!- Slereah has quit (Read error: 110 (Connection timed out)).
12:31:01 -!- ehird has joined.
12:31:55 <ehird> hi!
12:38:37 <ski__> lo?
12:42:14 <ehird> hi.
12:44:37 -!- amca has quit ("Farewell").
12:47:12 <ski__> [] ([] a -> a) -> [] a
12:48:10 <ehird> Quite so.
12:48:39 <ski__> .. but can you implement it ?
12:48:53 <ehird> Well, it's just [[a] -> a] -> [a].
12:49:11 <ehird> So, some fix magic there.
12:49:12 <ski__> well `[]' doesn't stand for "List", here
12:49:19 <ehird> ski__: What does it stand for?
12:49:30 <ski__> `[]' is supposed to look like the "box" character
12:49:43 <ski__> you can interpret `[]' as "Code", if you wish
12:49:50 <ehird> What is it? :p
12:50:34 <ski__> so, a value in `[] a' is an expression/code for a value in `a'
12:50:40 <ski__> consider things like
12:50:43 <ehird> Ah.
12:50:44 <ski__> eval :: [] a -> a
12:50:51 <ehird> Like (2+2) :: [] Integer?
12:51:00 <ehird> Or, well, you'd need a quoting char.
12:51:02 <ski__> no, `2+2' is an integer
12:51:03 <ski__> yes
12:51:04 <ehird> {2+2} :: [] Integer?
12:51:07 <ski__> like
12:51:12 <ski__> `(+ 2 2)
12:51:14 <ski__> in lisps
12:51:33 <ehird> Okay. so you pass it code that evaluates to a function that takes some code evaluating to type a and returns a value of type a.
12:51:42 <ehird> And it gives you some code evaluating to type a.
12:51:48 <ski__> (or `<2 + 2>' in MetaML .. i don't recall if MetaO'Caml had the same syntax there)
12:51:53 <ehird> {eval} works for the first argument.
12:52:04 <ehird> But what does it do?
12:52:18 <ski__> i'm not sure
12:52:27 <ski__> i'm trying to implement it to find out
12:52:38 <ski__> i have a proof of it in a book
12:52:55 <ski__> where `[]' is interpreted as "Provable"
12:52:58 <ehird> foo x = eval x $ foo x
12:53:03 <ehird> :-P
12:53:23 <ski__> the proof i've seen seems quite remniscent of
12:53:33 <ski__> ((lambda (u)
12:53:44 <ehird> Is foo x = eval x $ foo x not a valid definition?
12:53:48 <ski__> `(,u ',u))
12:53:53 <ski__> '(lambda (u)
12:53:56 <ski__> `(,u ',u)))
12:54:14 <ehird> ski__: foo x = eval x $ foo x
12:54:16 <ehird> wouldw ork, no?
12:54:17 <ski__> (if you squint the right way)
12:54:23 <ehird> err, actually
12:54:24 <ehird> it'd be
12:54:28 <ehird> foo x = {eval x $ foo x}
12:54:39 <ski__> hm
12:55:45 <ski__> i think that might often hang
12:56:09 <ski__> (that definition is basically the `loebF :: Functor f => f (f a -> a) -> f a', i think)
12:56:16 <ehird> Ha, loeb.
12:56:20 <ehird> ski__: But, certainly it would.
12:56:24 <ehird> It still meets the type.
12:56:27 <ski__> yes, Loeb's theorem
12:56:35 <ehird> Yes, I know
12:56:59 <ski__> however, i think if one implements it correctly, it would never hang (on defined inputs)
12:57:08 <MizardX> "`'´"
12:57:19 <ski__> (the logic in the book is supposed to be a consistent one ..)
12:57:56 <ski__> (MizardX : never seen nestable quotes before ?)
12:58:40 <ski__> (ehird : another strange thing is that `[] a -> a' is not generally provable in the logic (it would lead to contradiction))
12:59:03 <ehird> ski__: `' style quotes are pretty ugly :-P
12:59:05 <ehird> also, really? odd
12:59:18 <ehird> ski__: ah, goedel-y stuff?
13:00:34 <ski__> if `[] a -> a' is a theorem, then `[] ([] a -> a)' is also a theorem, and by loeb's theorem `[] ([] a -> a) -> [] a', we could then deduce that `[] a' is a theorem ..
13:00:58 <ehird> Therefore, the universe does not exist.
13:01:27 <ski__> .. so if we want the logic to be consistent, and want `[]' to really mean "provable", then for any false `a' we'd better not have a proof of `[] a -> a'
13:01:35 <ehird> Indeed.
13:01:39 <ehird> [] a -> Maybe a?
13:01:48 -!- ais523 has joined.
13:01:53 <ehird> Hi ais523.
13:01:54 <ais523> hi ehird
13:02:02 <ais523> you win, but not by much
13:03:48 <ski__> (.. in any case, i'm trying to implement it in haskell .. by defining a data type `[]' .. but the quoting is not obvious how to handle)
13:03:56 <ais523> whois ski__
13:03:59 <ais523> umm...
13:04:04 <ski__> ais523 : i'm me
13:04:06 <ehird> Defining a data type, [], might clash slightly :-P
13:04:12 <ais523> why is #esoteric getting so many new people nowadays?
13:04:17 <psygnisfive> ski__ is an AI build out of the ski combinatory calculus
13:04:20 <ais523> has esolanging accidentally become popular?
13:04:20 <ehird> ais523: I brought this one from #haskell <_<
13:04:22 <ski__> obviously i'm not calling it `[]' ! :)
13:04:46 <ehird> also, one of our newbies only came here by chance
13:04:53 * ski__ has visited here once or twice before ..
13:05:06 <ehird> hmm I think I may be mixing you up with someone else
13:05:06 <ehird> :)
13:05:16 <ais523> I'm worried that my INTERCAL evangelism may have gone too far...
13:05:38 <ehird> Grepping the logs for 'ski' is nontrivial
13:05:49 * ski__ bows
13:05:54 <ehird> 06.03.19:08:04:31 --- join: ski__ (n=slj@84-217-32-122.tn.glocalnet.net) joined #esoteric
13:06:23 <ehird> First occurance of "ski":
13:06:23 <ehird> 03.01.21:01:59:01 <fizzie> printed with a befunge prog or something? I recall seeing a sierpinski-triangle-printer once.
13:06:35 <ehird> (YY.MM.DD:HH:MM:SS, in case anyone didn't know)
13:07:29 <ais523> hmm... I keep hitting MichaelRaskin from #IRP
13:07:33 <fizzie> It was about one of dbc's printed-out ascii-art thingsies.
13:07:45 <ehird> The name Michael Raskin rings a bell.
13:07:53 <ehird> fizzie: wow, how can you remember that?
13:08:03 <fizzie> ehird: With the magic of 'grep'.
13:08:13 <fizzie> That is to say: I cheated.
13:08:25 <ehird> :-D
13:09:21 <ais523> well, ski__ and me have never been in the same channel at the same time before
13:09:24 <ais523> at least not while I'm on this client
13:09:33 <ais523> but that's not surprising, 2006 was before I got this laptop
13:09:59 <ehird> ais523: You only came in here 200
13:10:01 <ehird> 2007
13:10:07 <ehird> 07.01.15:09:15:34 --- join: ais523 (n=chatzill@chillingi.eee.bham.ac.uk) joined #esoteric
13:10:30 <ais523> ah, everyone loves CDE
13:10:37 <ais523> which is the desktop environment that old server was running
13:10:44 <ski__> yurgh
13:10:52 <ais523> via X forwarding to a terminal running on Windows
13:11:03 <ehird> You know, I think Windows would be preferable to that, ais523.
13:11:11 <ais523> ehird: it didn't have an IRC client
13:11:16 <ais523> and we weren't allowed to install executables
13:11:24 <ehird> Use a web-based one? :p
13:11:33 <ais523> besides, I did pretty much everything back then using xterm
13:11:40 <ais523> that way the desktop environment didn't really matter
13:11:45 <ais523> it's where I learnt the UNIX command line
13:14:41 <ehird> 09:45:05 <ais523> Yes, I'm enjoying esolangs. I enjoyed the logs, too, before I had access to an IRC client.
13:14:46 <ehird> you were a logreader before you ever came in
13:14:48 <ehird> Impressive.
13:14:55 <ais523> yes
13:14:59 <ais523> they were linked from the wiki
13:15:17 <ais523> took me a while to find an IRC client
13:15:24 <ais523> without installing any software
13:15:28 <ais523> or knowing about netcat/telnet
13:15:52 <ehird> How did you install firefox?
13:15:53 <ehird> err
13:15:54 <ehird> chatzilla
13:15:57 <ais523> I didn't
13:16:00 <ais523> it was there already
13:16:02 <ehird> Ah
13:16:11 <ehird> Bloatzilla, then, I assume
13:17:21 <ais523> it was a case of clicking on a irc:// link to see what happened
13:17:21 <ais523> and that was a really old version of Mozilla
13:17:21 <ais523> it did some really weird things
13:17:32 <ais523> (I blanked Talk:Main Page on Wikipedia by accident, once, for instance, and quite a lot of my edits introduced spurious line breaks. I stopped using Mozilla for Wikipedia when I noticed.)
13:21:46 * ehird complains about human bias on Talk:Main_Page
13:22:24 <ehird> Olol
13:22:24 <ehird> It's a "featured article" full of bilge. This is one of the few really reprehensible things about Wikipedia: that we have so many brilliant articles but we filter them in such a manner that the most ridiculous crap is designated as the best we have. It's pretty horrible. If you're involved in this bilious process, stop. If you're not, stay away from it. Write about what need to be written about , edit the articles that need to be edited, and avoid the pr
13:22:35 <ehird> Can Wikipedia pick a FA that won't be complained about?
13:22:41 <ehird> Is it physically possible?
13:22:50 -!- Hiato has joined.
13:23:35 <ehird> [[ I'm left with the urge to ask if wikipedia got paid for running this commercial. ]]
13:23:39 <ehird> Nobody's EVER done that before!
13:23:59 <ais523> ehird: I think there have been some FAs that haven't been complained about
13:24:06 <ais523> although I can't think of one offhan
13:24:10 <ais523> *offhand
13:27:26 <ski__> (cut off at "... and avoid the pr")
13:29:04 <ehird> ski__: you got the gist
13:29:35 <ski__> was it a quote or something you actually wrote just above ?
13:30:45 <ehird> quote
13:32:34 <fizzie> Wikipedia, request for discussion about the "Nasal Sex → Sexual intercourse" redirect: "Delete. Why would anyone search for nasal sex?" "While I don't wish to speculate the reason why, it was seached for 70 times in novemeber 2008 and 100 times in october."
13:33:22 <ehird> Hah
13:33:40 <ehird> http://en.wikipedia.org/wiki/Nasal_Sex
13:33:43 <ehird> Redirect fail
13:48:01 -!- Hiato has quit (Read error: 110 (Connection timed out)).
14:22:59 <ehird> I entered here first 17 days before ais523 did:
14:22:59 <ehird> 06.12.29:12:42:41 --- join: ehird (n=ehird@user-5440e204.wfd80a.dsl.pol.co.uk) joined #esoteric
14:23:04 <ehird> But I didn't say anything.
14:23:09 <ehird> I only returned in 2007.
14:23:18 <ehird> 2007-05-14, to be precise.
14:23:55 <ehird> 12:42:41 --- join: ehird (n=ehird@user-5440e204.wfd80a.dsl.pol.co.uk) joined #esoteric
14:23:58 <ehird> 12:43:09 --- part: ehird left #esoteric
14:24:00 <ehird> That's some epic shyness.
14:26:00 <ehird> I should get a PhD in #esoteric Log Analysis.
14:27:44 <oklofok> so, like, i was at this lecture just now
14:27:48 <oklofok> and, like, there was this dude
14:27:51 <oklofok> in front of me
14:28:02 <oklofok> who was coding a function called parseDoubles in java
14:28:06 <oklofok> for two hours
14:28:20 <ais523> what were you doing?
14:28:36 <oklofok> well correcting it for two hours, at the end of the lecture, the code was red with errors
14:28:47 <ehird> :-D
14:28:48 <oklofok> err i was listening to the lecture and reading algebra
14:28:56 <oklofok> and watching him, silently lolling inside
14:29:16 <ais523> oklofok: "silently lolling" is a bit of an oxymoron...
14:29:28 <ehird> oklopol is an oxymoron
14:29:30 <oklofok> yeah, that was actually not intentional
14:29:32 <ehird> he breathes, and he's a moron
14:29:34 <ehird> HAHAHAHAHAHAHAA
14:29:35 <ehird> <__<
14:29:37 <oklofok> xxxxxxxxxxxxD
14:30:00 <ehird> hahahaha that's the funniest joke I've made all year
14:30:06 <oklofok> ais523: also "silently xxxing inside" is the opposite of oxymoron
14:30:11 <oklofok> there's a term for it too right?
14:30:19 <ais523> ehird: your jokes are even worse than AnMaster's
14:30:30 <AnMaster> ?
14:30:32 <ais523> oklofok: I'm not entirely sure if it's the opposite
14:30:38 <ehird> 14:30 < ais523> ehird: your jokes are even worse than AnMaster's
14:30:38 <ehird> 14:30 < AnMaster> ?
14:30:41 <AnMaster> ah
14:30:44 <ehird> AnMaster is physically incapable of looking up one line
14:30:44 <AnMaster> actually
14:30:46 <AnMaster> that was funny
14:30:50 <ehird> :-P
14:31:04 <AnMaster> <ehird> oklopol is an oxymoron <-- I mean that one
14:31:05 <ais523> it looks like it's the same thing, a contradiction negated is still a contradiction...
14:31:09 <ais523> well, or a tautology
14:31:14 <ais523> depending on what sort of negating you use
14:32:08 <oklofok> ais523: "silently lol", silently do something out loud, contradictory; "silently ... inside", to do something silently, and not do it out loud, a tautology
14:32:23 <ais523> oklofok: oh, silently...inside is a redundancy
14:32:48 <oklofok> yes, but i'm pretty sure there's another term for when you do it in english
14:33:14 <oklofok> but still, was just pointing out it was doubly weirdly put.
14:34:32 <ehird> * SimonRC worships B.S.
14:34:43 <ehird> Actually referring to Bjrane Stroustrup, but they're equivalent.
14:36:04 <oklofok> what's wrong with bjarne?
14:36:14 <ehird> he invented C++
14:36:14 <oklofok> i agree with a lot of his writingz
14:36:18 <ehird> and thought it was good
14:36:33 <oklofok> yes, but he hates the parts that suck as much as everyone
14:36:42 <oklofok> at least according to cpl
14:36:52 <ehird> you mean like all of them?
14:36:52 <ehird> :D
14:37:01 <oklofok> :)
14:37:55 <oklofok> i don't consider it a bad language, just too low-level for my taste
14:38:57 <oklofok> :: (- "asdasdfasdfasdf" "aaa")
14:38:58 <oktabot> f
14:39:07 <oklofok> :: (* "asdasdfasdfasdf" 6)
14:39:07 <oktabot> asdasdfasdfasdfasdasdfasdfasdfasdasdfasdfasdfasdasdfasdfasdfasdasdfasdfasdfasdasdfasdfasdf
14:55:10 * ehird writes alphabet look and say in thue
14:55:12 <ehird> That was easy.
14:55:30 -!- asiekierk has joined.
14:55:31 <asiekierk> hi
14:55:32 <asiekierk> i'm back
14:55:33 <ais523> hi
14:55:36 <ais523> most of you is back
14:55:41 <asiekierk> Seems I will try out Chef :P
14:55:43 <ais523> the final a got missed somewhere along the line, though
14:55:48 <asiekierk> :P
14:55:49 <ais523> maybe oerjan has it
14:55:51 -!- asiekierk has changed nick to asiekierka.
14:55:55 <asiekierka> Maybe that's better
14:55:55 <ais523> he's good at finding missing letters from nicks
14:56:01 <asiekierka> is it?
14:56:04 <ais523> yes
14:56:12 <asiekierka> I had the "a" in my backpack
14:56:22 <asiekierka> Just pulled it out and scanned it, so i could send it IRC-wise to my nickname
14:57:16 <asiekierka> ouch
14:57:23 <asiekierka> anyway
14:57:37 <asiekierka> Yeah, I will try out Chef
14:57:41 -!- asiekierka has changed nick to asiekierka[Cooki.
14:57:48 -!- asiekierka[Cooki has changed nick to asiekierkCooking.
14:58:02 <asiekierkCooking> Everyone that doesn't understand it please leave this chatroom
14:58:02 <ehird> oh joy.
14:58:10 <ehird> tempting.
14:58:11 -!- asiekierkCooking has changed nick to asiekierka.
14:58:19 <asiekierka> uh-oh, ehird is back
14:59:38 <ehird> I've been here all this time
14:59:43 -!- FireFly has joined.
15:02:26 <ehird> Keymaker redesigned his site, I notice.
15:02:43 <ehird> It's just a directory index now.
15:02:52 <ehird> [http://yiap.nfshost.com/index.php]
15:07:22 <ehird> wolframtones is a fun timewaster
15:08:22 <ais523> wait, Encyclopedia Britannica is becoming a wiki?
15:08:28 <ais523> is this an April Fool's joke, I wonder?
15:08:30 <ehird> ... o.O
15:08:38 <ehird> Must be.
15:08:42 <ais523> but it isn't April
15:08:45 <ehird> Link?
15:08:59 <ais523> http://www.smh.com.au/news/technology/biztech/battle-to-outgun-wikipedia-and-google/2009/01/22/1232471469973.html
15:09:04 <ais523> found via Slashdot
15:09:19 <ehird> keyword: its online version
15:09:22 <ehird> Not the printed one, I assume.
15:09:28 <ais523> yes, although probably they'll backport changes
15:09:34 <ais523> besides, it's almost impossible to run a printed wiki
15:09:35 <ehird> "If I were to be the CEO of Google or the founders of Google I would be very [displeased] that the best search engine in the world continues to provide as a first link, Wikipedia," he said."Is this the best they can do? Is this the best that [their] algorithm can do?"
15:09:43 <ais523> all those crossings-out and tippex build up after a while
15:09:44 <ehird> Because Wikipedia is bad because I said so
15:09:50 <ais523> and you can't fit all that many people around the book
15:10:31 <ais523> Citizendium-style, it seems, they haven't gone /completely/ against type
15:11:40 <ehird> Hmm.
15:11:50 <ehird> What would you call (x) from P'' in one uppercase letter?
15:11:53 <ehird> P for parens?
15:12:38 <ais523> hmm... I know P'' but not its notation
15:12:41 <ais523> what does (x) do again?
15:13:52 <ehird> R ( R ) L ( r' ( L ( L ) ) r' L ) R r
15:13:53 <ehird> =
15:13:56 <ehird> > [ > ] < [ − [ < [ < ] ] − < ] > +
15:14:00 <ehird> So, loop.
15:14:04 <ais523> ah, ok
15:14:10 <ais523> why do you need in one capital letter?
15:14:16 <ehird> Because. :P
15:14:19 <ais523> given that it's inherently a two-different-places operation?
15:14:30 <ehird> P seems most logical to me, for parens.
15:14:56 <ais523> in Underlambda it is (or will be) w for while, but that's a lowercase letter
15:17:01 <ehird> "will be"?
15:18:48 <ais523> ehird: it isn't properly specced yet
15:18:51 <ais523> pretty fluid
15:19:09 <ais523> I'm more interested in getting Underlambda right rather than having it ready quickly
15:19:43 <ehird> oh, underlambda
15:21:10 <ais523> my other big new esolang project, besides Feather
15:22:42 -!- BeholdMyGlory has joined.
15:43:52 -!- KingOfKarlsruhe has joined.
15:49:47 <oklofok> O for lOOp
15:54:25 <ehird> run :: P -> State
15:54:27 <ehird> whee
15:55:26 <ehird> of course, no parsing, it's for a genetic algorithm
15:55:31 <ehird> see logs 07.05.17
15:55:50 <oklofok> no *you* see logs
15:57:45 <ehird> in P''
15:57:46 <ehird> r ≡ λR, r′ ≡ rn
15:57:48 <ehird> wtf does r' mean
15:57:49 <ehird> ?
15:57:50 <ehird> ais523?
15:57:53 <ehird> err
15:57:56 <ehird> that's r^n
15:57:59 <ehird> ie superscript
15:58:30 <ais523> it's the opposite of r
15:58:30 <ais523> r increments, r' decrements
15:58:41 <ais523> and you decrement by incrementing one less times than the max
15:58:44 <ais523> via overflow
15:59:07 <ehird> there is no max.
15:59:12 <ais523> yes there is
15:59:19 <ais523> P'' has a max value of n-1
15:59:23 <ehird> what is n
15:59:23 <ais523> n is normally set to 2, but can be set higher
15:59:29 <ais523> and it's a different lang for each value of n
15:59:37 <ehird> I was unaware
15:59:42 <ehird> I was going by infinite ints
15:59:59 <ehird> hm.
16:00:02 <ais523> ehird: as they can only be incremented, not decremented, bignum P'' would be kind-of pointless...
16:00:09 <ehird> I'll interpret P''_256
16:00:18 <oklofok> hmm
16:00:18 <ehird> actually, that's cheating
16:00:23 <oklofok> would it be entirely pointless?
16:00:25 <ais523> are you doing P'' because it's more mathematical-looking than BF?
16:00:33 <ais523> oklofok: ah, that's actually an interesting question
16:00:43 <ais523> I'm not at all sure now
16:00:44 <ehird> 16:00 < ais523> are you doing P'' because it's more mathematical-looking than BF?
16:00:44 <asiekierka> omg
16:00:47 <oklofok> i'm pretty sure yes, but i don't instantly see why it couldn't let you do at least something
16:00:47 <ehird> simpler to implement
16:00:50 <asiekierka> oh wait
16:00:52 <asiekierka> wrong channel
16:00:57 <ehird> run' :: State -> P -> State
16:00:58 <ehird> run' (t,h) R = (t, h+1)
16:00:58 <ehird> run' (t,h) L = (t',h')
16:00:58 <ehird> where t' = gTake h t ++ [(t !!! h) + 1] ++ gDrop h t
16:00:58 <ehird> h' = if h == 0 then 0 else h - 1
16:01:01 <ehird> run' s (C p q) = run' (run' s p) q
16:01:02 <ehird> run' (t,h) (P q)
16:01:05 <ehird> | (t !!! h) == 0 = (t,h)
16:01:07 <ehird> | otherwise = run' (run' (t,h) q) (P q)
16:01:08 <ais523> it would effectively be BF with a set-to-1 command rather than + and -
16:01:10 <ehird> 9-line P'' implementation
16:01:12 <ehird> (for bignums...)
16:01:26 <ais523> and what does !!! do/
16:01:35 <ehird> (!!!) = genericIndex
16:01:45 <ehird> Integral a=>[b]->a->b
16:01:49 <ais523> ah, nth element of a list
16:01:49 <ehird> i'm sure you can figure it out.
16:01:55 -!- Hiato has joined.
16:01:57 <ais523> strange operator
16:01:57 <ehird> yes it's normally !!
16:01:59 <ehird> but that only takes Ints
16:02:01 <ehird> instead of Integers
16:02:05 <oklofok> it's (!!)
16:02:05 <ais523> oh, ok
16:02:05 <ehird> so finite tape
16:02:08 <ehird> oklofok: no
16:02:09 <ehird> it's (!!!).
16:02:13 <ehird> 16:02 < ehird> yes it's normally !!
16:02:15 <ehird> 16:02 < ehird> but that only takes Ints
16:02:15 <ehird> 16:02 < ehird> instead of Integers
16:02:15 <oklofok> ehird: it's essentially !!
16:02:17 <ehird> 16:02 < ehird> so finite tape
16:02:20 <ais523> why can't they just take anything of numeric type?
16:02:27 <ehird> ais523: because haskell has warts, too
16:02:35 <ais523> impossible, it should be fixed
16:02:44 <ais523> *integral type
16:02:46 <ehird> done, said, easier than
16:02:50 <ais523> indexing with floats is obviously silly
16:02:56 <ais523> when you're dealing with Haskell lists
16:03:01 <ais523> (less silly in other langs, it actually works in JS)
16:03:18 <oklofok> well does js have lists
16:03:26 <ais523> oklofok: it has arrays
16:03:29 <ais523> but they're basically just hash tables
16:03:34 <oklofok> yes, it have hashmaps
16:03:35 <ais523> you can put any junk you like in the subscript and it works
16:03:36 <oklofok> *has
16:03:52 <ais523> quite clever, really
16:03:55 <oklofok> yeah, that was more of a statement.
16:03:57 <oklofok> and no it's not
16:04:00 <ais523> there's no actual reason but efficiency to differ arrays and hashmaps
16:04:00 <ehird> if by clever you mean slow and hacky.
16:04:03 <oklofok> oklotalk generalizes it much better
16:04:06 <ehird> ais523: yes there is
16:04:09 <ehird> arrays don't have gaps.
16:04:30 <ais523> ehird: that's just an arbitrary restriction
16:04:30 <ehird> also, it fucks up iteration.
16:04:38 <ais523> and iteration still works just as well
16:04:44 <ehird> ais523: allowing arrays not to be an elephant is also an arbitrary restriction
16:04:49 <ehird> but it's part of the definition of arrays.
16:04:51 <oklofok> ais523: yes, that's arbitrary, but there are also things that are not arbitrary
16:05:01 <oklofok> like all merging, inserting and deleting
16:05:16 <oklofok> the behavior simply has to be different
16:05:18 <ais523> we should generalise those operations to hashmaps too
16:05:24 <ais523> a delete-adjust action, for instance
16:05:29 <oklofok> in fact hashmaps and functions are closer together than lists and hashmaps
16:05:54 <ais523> lists are different from arrays, though
16:06:03 <ais523> in that lists aren't really designed to be indexed
16:06:12 <ais523> and can be accessed from the start much more easily than from the end
16:06:37 <oklofok> ais523: that's *much* more arbitrary than the distinction ehird mentioned.
16:06:57 <ais523> not really
16:07:05 <ais523> for instance, when you delete from an array, which way do the elements shift?
16:07:07 <ais523> for a list it's obvious
16:07:18 <ehird> the end
16:07:19 <ais523> but it's not obvious that they should go left not right in an array, because they're symmetrical
16:07:21 <ehird> 16:07 < ehird> the end
16:07:22 <ehird> 16:07 < ais523> but it's not obvious th
16:07:23 <ehird> oops.
16:07:24 <ehird> ais523:
16:07:27 <ehird> Python calls its arrays lists.
16:07:29 <ehird> You are talking about LINKED lists
16:07:34 <ehird> Please be aware of the difference
16:07:35 <ais523> yes, and Lisp-like lists
16:07:42 <ehird> ... which are linked lists.
16:07:48 <ais523> yes
16:07:52 <ais523> they're more like binary trees than arrays
16:07:52 <oklofok> also called lists
16:07:57 <ehird> "list" != "linked list"
16:08:04 <oklofok> err well
16:08:06 <oklofok> ehird is correct
16:08:12 <ais523> ehird: well, if you insist on defining a list as an array of course they're the same
16:08:17 <ais523> IMO, Python naming here is just confusing
16:08:18 <oklofok> list should be used for arrays without the arrayish properties
16:08:24 <ehird> a list is a list.
16:09:03 <ais523> oklofok: I think I agree
16:09:10 <oklofok> i mean
16:09:16 <oklofok> arrays have a strongly typed feel to them
16:09:31 <ais523> also, I think lists and ring buffers are pretty similar
16:09:35 <ais523> whereas arrays and ring buffers aren't
16:10:01 <oklofok> hmm?
16:10:34 <ais523> you can imagine a list which somehow contains itself, at the end
16:10:44 <oklofok> this is more of a philosophy question of course, the terms aren't that standard
16:10:47 <ais523> yes
16:11:07 <ais523> I think the fundamental difference is that arrays are inherently linked to (positive/nonnegative) integers
16:11:09 <oklofok> well, they are standard in that many ppl have an opinion on what they obviously mean
16:11:10 <ais523> as a method of indexing
16:11:16 <ehird> so are lists
16:11:18 <oklofok> but those opinions don't always agree
16:11:21 <ais523> and deleting elements from an array isn't really an intuitive operation at all
16:11:26 <ais523> it doesn't fit arrays, really
16:11:26 <oklofok> yeah
16:11:27 <ehird> not linked lists though
16:11:29 <ais523> because it involves renumbering
16:11:38 <ais523> deleting from a list, though, does make sense
16:12:10 -!- Hiato has quit ("Leaving.").
16:13:09 <oklofok> oh, it's that late.
16:13:21 <oklofok> i need to start doing an unspecified thing ~
16:13:24 <oklofok> >
16:13:30 <ehird> lol
16:14:56 -!- Hiato has joined.
16:16:09 -!- MigoMipo has joined.
16:34:54 <ehird> http://tech.mit.edu/V128/N64/squidvswhale.html
16:35:38 <ais523> does it answer 3 foxes vs. polar bear?
16:35:42 <ais523> I'll be wondering about that one for years, now
16:35:48 <ais523> and it would be inhumane to find out by experiment
16:35:52 <ehird> no
16:35:55 <ais523> also, it's unlikely to happen in the wild...
16:36:05 <ehird> it's nothing to do with squids v whales
16:36:43 <ais523> ok, then why the URL?
16:37:04 <ais523> unless a whale is a badly-configured web browser with no caching, and a squid is a sort of proxy, maybe?
16:37:19 <ehird> Beats me.
16:37:27 <ehird> I think squid vs whale is the name of the column.
16:37:41 <ais523> I like my explanation bette
16:37:43 <ais523> *better
16:52:11 -!- KingOfKarlsruhe has quit (Remote closed the connection).
16:53:20 -!- Hiato has quit ("Leaving.").
17:04:03 <ehird> "In fact, although I have not tested Safari 3.1, I am relatively certain it will not render properly in any released browser. "
17:04:07 <ehird> -- http://annevankesteren.nl/2009/01/moving-the-goalposts
17:09:22 <ais523> ehird: someone tried to design a page that wouldn't render?
17:09:34 <ais523> apart from that SHORTTAGS one we had in here a while back?
17:09:39 <ehird> ais523: clicking the link helps
17:09:50 <ais523> yes, but I prefer to do my internetting over IRC and email
17:10:04 <ehird> then you don't get context, that's your loss
17:10:16 <ehird> or, I could pipe lynx -dump into here
17:10:45 <asiekierka> hi
17:14:36 -!- kar8nga has joined.
17:39:10 -!- Mony has joined.
17:42:21 -!- M0ny has joined.
18:00:40 -!- Mony has quit (Read error: 110 (Connection timed out)).
18:00:58 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
18:03:44 -!- comex has changed nick to retarded_monkey.
18:19:40 -!- FireFly has quit (Read error: 60 (Operation timed out)).
18:20:06 <ehird> Not notable enough to have a page. There are thousands of thousands books. A book must be very very notable to have a page(e.g. Bible, Quran, Dante's divine comedy etc etc).
18:20:12 <ehird> I wonder what this guy thinks of the Pokemon articles.
18:26:10 -!- BeholdMyGlory has quit (Read error: 145 (Connection timed out)).
18:26:18 -!- BeholdMyGlory has joined.
18:55:13 -!- BeholdMyGlory_ has joined.
18:55:30 -!- BeholdMyGlory has quit (Read error: 110 (Connection timed out)).
19:07:25 -!- olsner has joined.
19:07:47 -!- MigoMipo has quit (Read error: 60 (Operation timed out)).
19:12:36 -!- asiekierka has quit.
19:17:45 <fizzie> Why would he mind those? There are less Pokemons than books.
19:18:54 <Slereah2> For now.
19:22:52 -!- Hiato has joined.
19:25:51 -!- Hiato has quit (Client Quit).
19:33:49 <ehird> ping
19:33:52 <ehird> anyone home?
19:51:45 <oklofok> o
19:52:12 -!- BeholdMyGlory_ has quit (Read error: 110 (Connection timed out)).
19:53:01 -!- ehird has quit (Read error: 110 (Connection timed out)).
19:53:17 -!- Corun has joined.
20:07:36 -!- M0ny has quit ("Quit").
20:19:18 -!- jix has joined.
20:33:22 -!- oerjan has joined.
20:43:59 <oerjan> <ehird> he breathes, and he's a moron
20:44:06 <oerjan> EHIRD MUST DIE
20:44:19 <oerjan> erm wait he's not here
20:45:57 <Deewiant> enjoy the silence while it lasts
20:46:03 -!- kar8nga has quit (Read error: 145 (Connection timed out)).
20:46:46 -!- MigoMipo has joined.
20:46:59 <oerjan> the silence of the lambdas
20:47:13 -!- retarded_monkey has changed nick to comex.
20:47:35 * oerjan wasn't going to say that but his finger decided to miss the s
20:50:02 <oerjan> <ais523> maybe oerjan has it
20:50:16 <oerjan> unlikely, my dialect drops final vowels all over the place
20:50:59 <oerjan> some of which may or may not be a's
20:51:35 <oerjan> s/all over the place/in infinitives/, really
20:53:13 -!- MigoMipo has left (?).
20:59:30 <oerjan> wait ais523 is not here either?
21:01:51 <oklofok> no one's here, maybe you should leave too.
21:02:02 <oerjan> :´(
21:02:33 <oklofok> i agree it's sad, but hey, you can't tell a goat to be sacrificed.
21:03:05 <oerjan> don't say that, it's remarkable what science can do
21:03:12 <oerjan> for science!
21:05:06 <oerjan> oh well, at least they weren
21:05:10 <oerjan> 't klined
21:05:20 <oklofok> for klines!
21:05:32 <oerjan> forklines!
21:05:52 <oklofok> xD
21:06:14 <oklofok> YOU TOOK THE WHITESPACE OUT LOL
21:06:32 <oerjan> in deed
21:17:20 -!- BeholdMyGlory has joined.
21:20:46 -!- kar8nga has joined.
21:24:48 -!- ehird has joined.
21:24:55 <ehird> My fucking ISP is unable to maintain DNS servers
21:25:07 <ehird> *inable
21:25:16 <ehird> err maybe unable
21:26:03 -!- FireFly has joined.
21:27:42 <AnMaster> ehird, maybe time to enable a local dns server then?
21:27:50 <ehird> I'm using opendns.
21:27:57 <ehird> Even though it sucks too.
21:28:09 <AnMaster> ehird, I use a local recursive resolver.
21:28:25 <ehird> Aren't you special.
21:28:27 <AnMaster> that bypasses isp, no idea why that works
21:28:46 <AnMaster> I mean, why use opendns, when setting it up to query directly works just as well
21:29:07 <AnMaster> (tcpdump indicates it query root servers directly sometimes)
21:29:28 <ehird> Time to set up custom DNS server, maintain it [even though i really fucking don't want to bother with that], and do all this without access to DNS: days, weeks, who knows.
21:29:37 <ehird> Time to stick in the OpenDNS ip: 20 seconds.
21:29:43 <ehird> *IPs
21:31:40 <AnMaster> ehird, emerge bind; emacs /etc/namedb/named.conf; /etc/init.d/named start
21:31:49 <AnMaster> emacs /etc/resolve.conf
21:31:51 <AnMaster> done
21:31:58 <AnMaster> err
21:32:00 <AnMaster> emacs /etc/resolv.conf
21:32:01 <AnMaster> even
21:32:16 <ehird> "emerge bind"
21:32:17 <ehird> 6 hours
21:32:24 <ehird> "emacs /etc/namedb/named.conf"
21:32:27 <ehird> Is interrupted by
21:32:35 <ehird> "kill yourself for wasting so much fucking time"
21:32:38 <ehird> and the process stops there.
21:35:13 <AnMaster> <ehird> "emerge bind" <-- genlop (a tool analyzing emerge.log) says average merge time was 7 minutes and 23 seconds for bind on my system
21:35:35 <AnMaster> ehird, also why in such a hurry?
21:37:02 <ehird> because I'd rather put in the OpenDNS IPs in 20 seconds than wait hours compiling and configuring BIND for ABSOLUTELY NO GAIN WHATSOEVER other than a weird form of nerd mental masturbation?
21:37:17 <ehird> also, good fucking luck installing + configuring bind without any DNS
21:37:31 <ehird> won't start? oh snap good luck finding out why!
21:38:45 -!- GreaseMonkey has joined.
21:39:09 <AnMaster> ehird, well, you could just use host to query root servers directly
21:39:20 <AnMaster> or you could use some existing dns server you have installed
21:39:28 <AnMaster> if you have any
21:39:31 <ehird> Yes, everyone has a DNS server installed.
21:39:45 <ehird> AnMaster: now WHY would I do this over putting in the opendns IPs until my ISP gets its act together?
21:39:49 <AnMaster> ehird, well since OS X is based on *BSD I would assume so. bind is part of FreeBSD base
21:39:56 <ehird> Wow, I'd be a few hours without annoying search pages on invalid resolves
21:40:08 <ehird> Except I'd have wasted many more hours getting it working. What fun.
21:40:25 <AnMaster> ehird, it takes less than 30 minutes for me to set it up
21:40:50 <AnMaster> also there is dns over irc while you set it up: asking friends (like me) to resolve the domain for you
21:40:52 <ehird> And it takes me less than 30 seconds to put the OpenDNS IPs in.
21:40:52 <AnMaster> ;P
21:41:10 <ehird> "friends (like me)" hahahah. And I couldn't connect to freenode, duh.
21:41:19 <AnMaster> ehird, well if you don't want it, fine, however it is useful even during normal operation
21:41:24 <ehird> Uh huh.
21:41:34 <ehird> Yes, I daily wish I ran my own DNS server.
21:41:34 <AnMaster> faster dns since it caches more locally
21:41:36 <ehird> Not
21:41:39 <AnMaster> afk
21:42:06 <ehird> 12:44:06 <oerjan> EHIRD MUST DIE
21:42:06 <ehird> 12:44:19 <oerjan> erm wait he's not here
21:42:06 <ehird> 12:45:57 <Deewiant> enjoy the silence while it lasts
21:42:07 <ehird> Harsh
21:43:42 <AnMaster> :D
21:43:45 <AnMaster> (back)
21:44:13 <ehird> just
21:44:15 <ehird> because
21:44:15 <ehird> I
21:44:15 <ehird> use
21:44:15 <ehird> a
21:44:18 <ehird> new
21:44:21 <ehird> line
21:44:23 <ehird> as
21:44:26 <ehird> punctuation
21:44:28 <ehird> doesn't
21:44:31 <ehird> mean
21:44:34 <ehird> I
21:44:35 <ehird> should
21:44:38 <ehird> be
21:44:41 <ehird> discriminated
21:44:43 <ehird> against.
21:45:00 -!- pikhq has quit (Read error: 110 (Connection timed out)).
21:53:42 -!- Corun has quit ("Leaving").
22:00:46 -!- pikhq has joined.
22:11:36 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
22:15:11 <oerjan> ehird: yeseitedoesebuteitecouldebeeworse
22:16:41 <ehird> bee
22:17:00 <oerjan> wildebeest
22:17:09 <ehird> Wild E Bee St.
22:17:39 -!- BeholdMyGlory has quit ("bye").
22:17:55 <Slereah2> http://images.encyclopediadramatica.com/images/d/de/Dancing_cats.gif
22:17:59 <Slereah2> DERP DERP
22:18:15 <ehird> I clicked and saw a cat but it was stationary.
22:18:19 <ehird> Can I have my money back?
22:18:36 <Slereah2> It is not, ehird
22:18:39 <Slereah2> It moves!
22:18:45 <oerjan> many people would like cats on their stationary
22:19:15 <ehird> Slereah2: my browser hates you :(
22:19:29 * oerjan wonders if he is thinking of the right word
22:20:37 <oerjan> oh it's spelled stationery
22:25:55 -!- FireFly has quit ("Later").
22:50:21 <kerlo> In.Lojban,.you.can.use.dots.to.separate.words.
22:50:36 <kerlo> But--that--indicates--that--you--pronounce--it--like--this.
22:51:14 <oklofok> ",." is interesting
22:51:27 <oklofok> although i guess that's just "."
22:51:35 <oklofok> i'm no phonetician
22:52:20 <kerlo> Well, it can affect the prosody of the preceding word.
22:52:52 <kerlo> "My.uncle,.Jack" and "My.uncle.Jack" are different.
22:55:54 -!- Max_D has joined.
22:56:05 * Max_D blah
23:03:52 <oklofok> kerlo: err maybe in english. not in lojban
23:03:56 <oklofok> not that i know what prosody is.
23:04:07 <oklofok> i'm assuming it's something that makes what i said true.
23:04:18 -!- olsner has quit ("Leaving").
23:04:43 * kerlo nods
23:05:11 <kerlo> Prosody is the part of speech that you can't express with a list of words.
23:05:51 <oklofok> right.
23:06:18 <oklofok> o
23:06:18 <oklofok> o
23:06:19 <oklofok> o
23:06:19 <oklofok> o
23:06:19 <oklofok> o
23:06:19 <oklofok> o
23:06:21 <oklofok> o
23:06:23 <oklofok> o
23:06:25 <oklofok> ->
23:06:59 <kerlo> That is a very good example of a sentence consisting virtually entirely of prosody.
23:08:16 <oerjan> yeah right
23:08:22 * Max_D is confused
23:08:37 <kerlo> Had that that had that had had that that had had that had that that had, I would have had that.
23:09:05 <kerlo> Now I will tell you the grammar of the above sentence for make benefit.
23:09:08 * oerjan is confused
23:09:20 <oklofok> why would you ruin a good puzzle for us
23:09:35 <oerjan> because he's EVIL, duh
23:09:55 <oklofok> had that "that" had that "had had" that that "had had" had that that had, i would have had that
23:09:59 <oklofok> is a parsing at least
23:10:12 <oklofok> hmm
23:10:21 <oklofok> i'm not sure that actually helped you see what parsing i meant ;)
23:11:20 <oerjan> had that bad hat that that that had had that bat had that hat hat
23:11:41 <kerlo> <noun phrase> ::= that <verb phrase>; <noun phrase> ::= that that <verb phrase>; <verb phrase> ::= had <noun phrase>; <verb phrase> ::= had had <noun phrase>; <sentence> ::= had <noun phrase> <verb phrase>, I would have had that.
23:11:51 <kerlo> That's the grammar of the above sentence.
23:11:58 <kerlo> Unfortunately, it's still an ambiguous grammar.
23:12:10 <oklofok> mmkay.
23:12:13 <oklofok> i don't get it
23:12:26 <kerlo> Also, I'm wrong in that sentences of the form "I like that had had ice cream." aren't actually valid.
23:12:27 <oklofok> how bout you put some parens in
23:12:41 * Max_D is bored... yay!
23:12:49 <kerlo> Okay, I'll put parentheses in according to my incorrect grammar.
23:12:54 <oerjan> what what that that what that that what that that what that what would that what?
23:12:55 <oklofok> kerlo: yes please
23:13:32 <kerlo> (had (that that (had (that (had had (that that (had had (that (had (that that had)))))))))), I would have had that.
23:14:10 <kerlo> I don't really feel like coming up with a better grammar.
23:14:14 <ehird> +++++++++6+++
23:14:16 <ehird> +++51
23:14:17 <ehird> .023
23:14:17 <ehird> .
23:14:30 <oklofok> i don't understand how a sentence can have its own grammar
23:14:41 <oklofok> oooooooooooooo
23:14:42 <oklofok> oooooooooooooooooo
23:14:49 <kerlo> It can't; that's a really tiny segment of English grammar that's sufficient for this sentence.
23:14:55 <oklofok> ehird: looks familiar
23:15:25 <oklofok> that's valid... what's the language again
23:15:29 <oklofok> is that intentional?
23:15:31 <oerjan> that that that that that that that that that that that refers to refers to refers to refers to nothing
23:22:14 -!- Max_D has quit.
23:24:11 <ehird> oklofok: should be intentional; isn't
23:25:23 <oerjan> should should be intentional isn't isn't intentional
23:27:16 <oklofok> ehird: wait actually, nm, there's no "+" instruction in the lang i'm thinking of. but, the structure looks the same
23:40:20 <ehird> http://seattletimes.nwsource.com/html/pacificnw/2008177548_pacificpendgame14.html
23:43:19 <ehird> he totally lost the game lol get it
23:44:12 <oklofok> xD
23:44:13 <oklofok> sleep
23:44:15 <oklofok> ->
2009-01-23
00:09:15 -!- jix has quit (Read error: 60 (Operation timed out)).
00:11:11 -!- jix has joined.
00:13:44 -!- Corun has joined.
00:19:48 -!- Corun has quit ("Leaving").
00:39:02 -!- oerjan has quit ("Good night").
00:42:06 -!- CakeProphet has joined.
01:16:41 -!- Corun has joined.
01:59:13 -!- ehird has quit (Read error: 113 (No route to host)).
02:15:36 -!- Corun has quit ("Leaving").
02:15:49 -!- Corun has joined.
02:42:58 -!- boily has joined.
02:45:57 -!- gzou2000 has joined.
02:51:07 -!- gzou2000 has quit (Remote closed the connection).
03:00:58 -!- Corun has quit ("Leaving").
03:03:17 -!- boily has quit ("leaving").
03:41:20 -!- Corun has joined.
03:43:54 -!- Corun has quit (Client Quit).
06:22:41 -!- oktabot has quit (Read error: 110 (Connection timed out)).
06:23:36 -!- oklofok has quit (Connection timed out).
06:32:05 -!- Sgeo has joined.
07:10:06 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:38:38 -!- Sgeo has joined.
07:48:52 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:27 -!- Sgeo_ has joined.
08:16:17 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
08:30:12 -!- GreaseMonkey has quit ("Client Excited").
08:57:22 -!- bsmntbombgirl has quit (kornbluth.freenode.net irc.freenode.net).
08:57:22 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
08:57:22 -!- Leonidas has quit (kornbluth.freenode.net irc.freenode.net).
08:57:22 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
08:57:23 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
08:57:23 -!- jix has quit (kornbluth.freenode.net irc.freenode.net).
08:57:23 -!- Dewi has quit (kornbluth.freenode.net irc.freenode.net).
08:57:25 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
08:57:26 -!- AnMaster has quit (kornbluth.freenode.net irc.freenode.net).
08:57:26 -!- lament has quit (kornbluth.freenode.net irc.freenode.net).
08:57:27 -!- dbc has quit (kornbluth.freenode.net irc.freenode.net).
08:57:28 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
08:57:29 -!- MizardX has quit (kornbluth.freenode.net irc.freenode.net).
08:57:29 -!- adimit has quit (kornbluth.freenode.net irc.freenode.net).
08:57:30 -!- metazilla has quit (kornbluth.freenode.net irc.freenode.net).
08:57:30 -!- decipher_ has quit (kornbluth.freenode.net irc.freenode.net).
08:57:30 -!- kerlo has quit (kornbluth.freenode.net irc.freenode.net).
08:57:31 -!- Judofyr has quit (kornbluth.freenode.net irc.freenode.net).
08:57:31 -!- Sgeo_ has quit (kornbluth.freenode.net irc.freenode.net).
08:57:31 -!- Slereah2 has quit (kornbluth.freenode.net irc.freenode.net).
08:57:32 -!- sebbu2 has quit (kornbluth.freenode.net irc.freenode.net).
08:59:05 -!- Sgeo_ has joined.
08:59:05 -!- jix has joined.
08:59:05 -!- Slereah2 has joined.
08:59:05 -!- Leonidas has joined.
08:59:05 -!- bsmntbombgirl has joined.
08:59:05 -!- rodgort has joined.
08:59:05 -!- metazilla has joined.
08:59:05 -!- AnMaster has joined.
08:59:05 -!- mtve has joined.
08:59:05 -!- SimonRC has joined.
08:59:05 -!- lament has joined.
08:59:05 -!- dbc has joined.
08:59:05 -!- Dewi has joined.
08:59:05 -!- GregorR has joined.
08:59:05 -!- comex has joined.
08:59:05 -!- sebbu2 has joined.
08:59:05 -!- adimit has joined.
08:59:05 -!- Judofyr has joined.
08:59:05 -!- MizardX has joined.
08:59:05 -!- decipher_ has joined.
08:59:05 -!- kerlo has joined.
08:59:27 -!- Sgeo_ has quit ("Leaving").
09:51:53 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
09:52:04 -!- moozilla has joined.
09:53:59 -!- oerjan has joined.
10:18:07 -!- oerjan has quit (Read error: 104 (Connection reset by peer)).
10:18:58 -!- metazilla has joined.
10:19:07 -!- moozilla has quit (Nick collision from services.).
10:19:22 -!- moozilla has joined.
10:19:30 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:19:31 -!- moozilla has changed nick to metazilla.
10:24:02 -!- moozilla has joined.
10:24:03 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
10:24:11 -!- moozilla has changed nick to metazilla.
10:24:33 -!- moozilla has joined.
10:24:42 -!- metazilla has quit (Read error: 131 (Connection reset by peer)).
10:24:43 -!- moozilla has changed nick to metazilla.
10:26:02 -!- moozilla has joined.
10:26:02 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
10:26:11 -!- moozilla has changed nick to metazilla.
11:57:36 -!- Corun has joined.
12:01:21 -!- Corun has quit (Client Quit).
12:04:14 -!- CakeProphet has joined.
12:07:43 -!- sebbu has joined.
12:16:04 -!- sebbu2 has quit (Read error: 110 (Connection timed out)).
12:20:24 -!- moozilla has joined.
12:20:32 -!- metazilla has quit (Read error: 104 (Connection reset by peer)).
12:20:33 -!- moozilla has changed nick to metazilla.
12:25:32 -!- metazilla has quit (Read error: 54 (Connection reset by peer)).
12:25:38 -!- moozilla has joined.
12:26:15 -!- moozilla has quit (Read error: 54 (Connection reset by peer)).
12:26:17 -!- metazilla has joined.
13:18:40 -!- Azstal has joined.
13:26:40 -!- Hiato has joined.
13:32:48 -!- Hiato has quit ("Leaving.").
13:39:45 -!- ehird has joined.
13:40:43 <ehird> hai
13:41:38 <ehird> There was a user matching bsmnt_bot!n=bsmnt@eso-std.org repeatedly
13:41:39 <ehird> reconnecting so the host eso-std.org was banned. This was only in place
13:41:39 <ehird> for a short time and you should be able to connect now.
13:41:49 <ehird> bsmntbombgirl: fix bsmnt_bot so people can't make it disconnect
13:41:51 <ehird> k, thx, bai
13:46:37 -!- Azstal has quit (".").
13:47:21 <MizardX> two scripts: one keeping the connection up, and binding input/output to stdin/stdout. The other handling the interaction trough stdin/stdout
13:47:46 <MizardX> that way you can quit the latter script, and let the first script reload it
13:51:42 -!- KingOfKarlsruhe has joined.
13:52:17 <MizardX> possible with subprocess.Popen
13:52:43 <ehird> MizardX: yes, but, that's a pretty big restructuring
13:52:45 <ehird> I guess I could do it
13:53:16 * ehird restarts bouncer.
13:53:41 -!- ehird has quit ("Lost terminal").
13:53:44 -!- ehird_ has joined.
13:54:06 <ehird_> Hi.
13:54:28 -!- ehird_ has changed nick to ehird.
14:01:25 -!- KingOfKarlsruhe has quit (Remote closed the connection).
14:06:49 -!- KingOfKarlsruhe has joined.
14:24:00 -!- KingOfKarlsruhe has quit (Remote closed the connection).
14:49:08 <ehird> http://userscripts.org/scripts/review/38736
15:15:50 <ehird> http://www.techcrunch.com/2009/01/23/google-puts-the-squeeze-on-free-apps/ <-- Meh, Google are cutting down the free Google Apps.
15:15:59 <ehird> 'sok, I don't mind paying a bit a year to avoid running a mail server.
15:17:23 -!- oklopoll has joined.
15:17:58 <oklopoll> life is so awesome
15:18:00 <oklopoll> seriously
15:18:02 -!- oklopoll has changed nick to oklopol.
15:18:09 <ehird> cool
15:18:22 <oklopol> i mean
15:18:29 <oklopol> i can do what the fuck i want
15:18:35 <oklopol> i'm free
15:18:35 <ehird> subject to some laws.
15:18:47 <ehird> well, ok, that's a MAY NOT, not a CAN NOT.
15:18:55 <ehird> but you can't break the laws of physics. i mean, probably.
15:19:08 <oklopol> hmm
15:19:13 <oklopol> yeah, that's true
15:19:29 <ehird> but, then, if you could break the laws of physics everyone would fuck up everything
15:19:34 <ehird> and you wouldn't be able to do what you want any more
15:19:45 <oklopol> yes
15:19:48 <oklopol> that's true too
15:20:03 <oklopol> but, the point is i'm free enough
15:20:08 <oklopol> and that's not even the best part
15:20:16 <oklopol> the best part is there's so much that's awesome i can do
15:20:43 <ehird> are you 20 yet? you being 20 would be weird
15:20:48 <oklopol> almost.
15:20:56 <ehird> i mean, i don't think you can be 20. physically impossibl
15:20:57 <ehird> e
15:20:59 <oklopol> i'm 20 in a month.
15:21:00 <ehird> I think it'll go like
15:21:03 <ehird> 19.9 -> 19.0
15:21:07 <ehird> forever
15:21:13 <oklopol> sounds plausible.
15:21:31 <oklopol> actually more than a month, more like two months
15:22:43 <oklopol> okokokokokoko
15:22:46 <oklopol> okokokokokokokokokokokoko
15:22:56 <oklopol> you're correct in that i'm definitely not 20.
15:22:59 <oklopol> i mean
15:23:04 <oklopol> i'm more like 15
15:23:45 <ehird> oklopol will you get all boring when you get older :(
15:24:05 <oklopol> haha, probably ;)
15:24:11 <oklopol> or go completely insane
15:24:21 <oklopol> maybe both.
15:24:28 <ehird> oklopol: wait, _go_?
15:24:55 <oklopol> well yes, currently i'm only insane in the good way, for the most part.
15:25:59 <oklopol> i mean, i have weird opinions and i have weird ideas. but i'm able to talk to people, and i don't often yell during classes etc.
15:26:27 <ehird> oklopol being decent at social interaction is still an idea I haven't yet grasped
15:26:28 <oklopol> well, of course i'm not good at either of those, and i'm getting worse
15:26:34 <ehird> o
15:26:36 <oklopol> o
15:26:41 <ehird> k
15:26:41 <ehird> o
15:26:43 <ehird> ooko
15:26:47 <ehird> monkey oko :-|
15:26:49 <oklopol> ooooooooooooofololololo
15:26:59 <ehird> ooooooooooooofolololololo
15:27:06 <oklopol> ookookookookookookook!ook?ook.
15:27:12 <ehird> dude omg that turned out so perfectly in my client
15:27:13 <ehird> 15:27 <oklopol> ooooooooooooofololololo
15:27:13 <ehird> 15:27 <ehird> ooooooooooooofolololololo
15:27:17 <ehird> they freaking line up
15:27:36 <oklopol> there have been weirder instances of oko.
15:27:58 <oklopol> how's this sound, 6 hours of silence, then two guys simultaneously produce an oko of the same lenght?
15:28:00 <oklopol> *length
15:28:21 <oklopol> i mean. without planning it.
15:28:23 <ehird> it sounds oko
15:32:37 -!- Hiato has joined.
15:33:30 -!- Hiato has quit (Client Quit).
15:59:06 <psygnisfive> okolokopokolol
16:20:33 -!- Hiato has joined.
16:22:48 -!- Hiato has quit (Client Quit).
16:58:20 -!- Judofyr_ has joined.
17:03:52 -!- Judofyr__ has joined.
17:04:53 -!- Judofyr_ has quit (Read error: 60 (Operation timed out)).
17:12:09 -!- Judofyr__ has changed nick to Judofyr_.
17:13:43 -!- FireFly has joined.
17:14:19 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
17:14:29 -!- Judofyr_ has changed nick to Judofyr.
17:18:02 -!- Hiato has joined.
17:28:49 -!- Zetro_ has joined.
17:41:24 -!- Hiato has quit ("Leaving.").
17:46:01 -!- metazilla has left (?).
18:09:56 -!- BeholdMyGlory has joined.
18:11:23 -!- Zetro_ has quit (Read error: 104 (Connection reset by peer)).
18:56:39 -!- kar8nga has joined.
19:02:27 -!- Hiato has joined.
19:40:04 -!- oerjan has joined.
19:53:12 -!- Hiato1 has joined.
19:56:15 <oerjan> <ehird> MizardX: yes, but, that's a pretty big restructuring
19:56:39 <oerjan> um, isn't that just a slightly more primitive version of my suggestion to put bsmnt_bot on the bouncer?
19:57:33 <ehird> well, that would work
19:59:55 -!- Hiato has quit (Read error: 60 (Operation timed out)).
20:01:31 <oerjan> <oklopol> i mean, i have weird opinions and i have weird ideas. but i'm able to talk to people, and i don't often yell during classes etc.
20:01:45 <oerjan> you have many people in your classes that do? :D
20:03:09 -!- Mony has joined.
20:03:58 <Mony> plop
20:04:06 <Slereah2> http://images.encyclopediadramatica.com/images/d/de/Dancing_cats.gif
20:04:08 <Slereah2> Doo doo doo
20:04:12 <Slereah2> DANCE
20:04:55 <Mony> lol
20:06:26 <bsmntbombgirl> ehird: impossible
20:06:49 <ehird> um, not
20:07:34 <bsmntbombgirl> yes
20:07:39 <ehird> why
20:08:04 -!- oerjan_ has joined.
20:08:12 -!- oerjan_ has quit (Client Quit).
20:08:25 <bsmntbombgirl> becausey ou can execute arbitrary code...
20:08:26 -!- oerjan has quit (Remote closed the connection).
20:08:37 <ehird> that's why you embed it in another process that handles the irc, duh :P
20:08:41 -!- oerjan has joined.
20:10:48 -!- oerjan has quit (Remote closed the connection).
20:13:16 <oklopol> oerjan: no, i'm the worst in that area.
20:22:23 -!- Hiato1 has quit ("Leaving.").
20:28:12 <psygnisfive> @dancing_cats: wtf
20:28:22 <psygnisfive> seriously, who the fuck makes plays like that
20:29:30 <oklopol> i would watch it
20:29:45 <oklopol> so, hopefully someone, looks fun.
20:30:00 <psygnisfive> you're crazy
20:30:08 <psygnisfive> you're a horrible person
20:30:17 <oklopol> xD
20:30:27 <Slereah2> psygnisfive : The dancing cats are awesome
20:30:28 * psygnisfive stabs oklopol
20:30:33 <Slereah2> I could watch it for hours
20:30:42 <psygnisfive> yes yes but you're a crazy 4channer
20:30:50 <Slereah2> omae mo na :(
20:30:58 <psygnisfive> and dancing_cats.gif is not the same as that play
20:31:11 <psygnisfive> that PLAY was undoubtedly created by some crazy cat lady
20:32:53 <Slereah2> what are you talking about
20:33:21 <oklopol> about the play
20:33:46 <psygnisfive> clearly slereah thinks that dancing_cats.gif is just some little animation someone made of dancing cats
20:34:09 <oklopol> and clearly you think it's not
20:34:11 <psygnisfive> what he fails to realize is that dancing_cats.gif is an animation someone made from video of an actual theatre play
20:34:16 <psygnisfive> ofcourse its not!
20:34:24 <Slereah2> I should watch that play
20:34:29 <oklopol> of course schof schmourse
20:34:45 <psygnisfive> oklopol, your fake yiddish sucks
20:35:04 <oklopol> *schmof
20:35:09 <psygnisfive> no.
20:35:37 <oklopol> i know you're unable to understand it when people stretch language when they stretch it in ways that look like they might be due to failure.
20:35:46 <oklopol> i've learned not to give a shit
20:36:02 <oklopol> anyway plz link play or didn't happen
20:36:25 <psygnisfive> the pattern is, in general, that the second repetition drops the first consonant and replaces it with schm
20:36:43 <oklopol> orly
20:36:54 <psygnisfive> it doesnt distribute across every word in the reduplicated phrase.
20:37:02 <oklopol> i know, that was the stretch
20:37:31 <oklopol> but you assumed i have somehow managed not to get how it works
20:37:39 <oklopol> which is a bit weird
20:37:45 <oklopol> because it's a fucking substitution
20:38:44 * psygnisfive smacks oklopol
20:38:50 <oklopol> :)
20:38:58 <psygnisfive> :)
20:39:41 <oklopol> ooooooooo
20:39:41 <oklopol> ooooooooo
20:39:42 <oklopol> ooooooooooo
20:39:55 <lament> anal rape?
20:40:16 <psygnisfive> yes.
20:40:22 * psygnisfive anal raeps lament
20:40:32 <oklopol> raep pear!
20:40:44 <psygnisfive> pear raep!
20:40:50 <Slereah2> D:
20:40:50 <oklopol> tastes good, feels good and also is a palindrome!
20:40:54 <Slereah2> Spear rapes
20:41:19 <oklopol> separate metarapes
20:42:02 <oklopol> english is so trivial to make palindromes in
20:42:07 <oklopol> i mean everything means something
20:42:21 <psygnisfive> its true!
20:42:33 <lament> its true eurt sti!
20:42:48 <oklopol> yeah just look at that
20:42:53 <oklopol> even a retard can make a palindrome!
20:43:47 <oklopol> irc is full of such interesting people
20:43:52 <oklopol> why don't i know any lunatics irl
20:43:58 <psygnisfive> apparently theres at least ONE person on the internet
20:44:01 <oklopol> i mean, the kind of lunatics that are insane
20:44:05 <psygnisfive> who's username is "eurtsti"
20:44:10 <psygnisfive> so ironically, lament, ...
20:44:17 <oklopol> :DS
20:44:26 <psygnisfive> "it's true, eurtsi!" DOES mean something
20:44:26 <psygnisfive> XD
20:44:40 <oklopol> there's this other finnish guy, who's nick is oklopol
20:44:49 <oklopol> in some hockey forum
20:44:54 <psygnisfive> he's your evil twin from the parallel universe
20:44:58 <psygnisfive> he has a goatee
20:45:03 <psygnisfive> !!
20:45:04 <psygnisfive> slereah!
20:45:11 <psygnisfive> your evil twin is clean shaven!
20:45:25 <Slereah2> pix
20:47:00 <psygnisfive> i think someone should make a more realistic guy fawkes mask
20:47:18 <Slereah2> Who would buy it?
20:47:29 <Slereah2> I only buy the Epic Fail GUy mask myself.
20:47:30 <psygnisfive> you would!
20:47:33 <psygnisfive> pfft
20:47:39 <psygnisfive> you buy V masks is what you buy
20:48:35 <psygnisfive> theres such irony in V for Vendetta using guy fawkes as its iconic inspiration
20:49:22 <Slereah2> Not really.
20:49:26 <psygnisfive> yes really
20:49:33 <Slereah2> He was sort of an icon for 19th century anarchists
20:49:44 <psygnisfive> really? i find that surprising
20:49:56 <Slereah2> Well, mostly as a joke I think
20:50:00 <psygnisfive> since he was trying to blow up parliament so he could institute a catholic theocracy of sorts
20:50:07 <psygnisfive> well as a joke, thats different
20:50:12 <Slereah2> They had this all "The only man to enter parliament with good intentions"
20:50:25 <psygnisfive> maybe V is supposed to have chosen it in self deprecating irony
20:50:34 <Slereah2> Back then, anarchists were mostly about blowing stuff up
20:50:43 <psygnisfive> oh well sure we still are
20:50:46 <psygnisfive> speaking of which
20:50:51 * psygnisfive blows slereah up
20:51:25 <Slereah2> s/up//
20:51:31 <psygnisfive> i was expecting that.
20:52:41 <Slereah2> And yet, you did it
20:52:45 <Slereah2> What does it say about you?
20:53:13 <psygnisfive> that I would perform oral sex on you.
20:53:27 <Slereah2> Good.
20:55:36 <lament> Would you perform oral sex on a woman?
20:57:03 <Slereah2> How, they have no penis!
20:57:07 <bsmntbombgirl> oh hi lament
20:57:45 <bsmntbombgirl> what is the that ehird is spouting about priviledge seperation
20:57:49 <bsmntbombgirl> that would be sensible!
20:59:20 <oklopol> hmm?
21:01:18 <psygnisfive> lament: do you mean would I perform oral sex on a woman, or a person with a vagina? there's a difference, at least in that some women are transwomen and therefore have penises, while some men are transmen and therefore have vaginas.
21:01:23 <bsmntbombgirl> ehird: user code is already executed in a different thread, so it should be too hard to make it into a different proccess. you have my permission, go
21:01:41 <bsmntbombgirl> psygnisfive: i don't think the state of vaginoplasy is good these days
21:01:55 <psygnisfive> i know this. whats your point?
21:03:05 <lament> psygnisfive: i'm confused by your terminology.
21:03:14 <psygnisfive> transwoman = male-to-female transexual
21:03:19 <lament> I'm using "woman" in the sense people normally use the word.
21:03:19 <psygnisfive> transman = female-to-male transexual
21:03:27 <oklopol> psygnisfive: that it's such a deformed vagina you could just as well think of it as just a retarded penis, and therefore be able to perform on it, i presume
21:03:38 <psygnisfive> lament: but the people i know use it to mean biofemales and transwomen!
21:03:48 <psygnisfive> i dont know what you mean!
21:04:25 <psygnisfive> lament: http://i30.tinypic.com/2qdxv7r.jpg is this a woman in your definition?
21:04:29 <bsmntbombgirl> s/biofemale/ciswoman/
21:04:33 <lament> i don't think i want to open that
21:04:36 <bsmntbombgirl> biofemale sounds retarded
21:04:36 <psygnisfive> ciswoman haha :)
21:04:43 <psygnisfive> lament: its safe, dont worry
21:04:49 <bsmntbombgirl> psygnisfive: who is that sexy beast?
21:04:57 <psygnisfive> a guy i know
21:05:07 <Slereah2> psygnisfive : That looks like a faggot
21:05:08 <psygnisfive> he's hot isnt he? :D
21:05:11 <bsmntbombgirl> give him my number, will you?
21:05:14 <psygnisfive> slereah2: oh he IS a faggot :D
21:05:21 <psygnisfive> no! hes mine! you cant have him! >O
21:05:51 <Slereah2> I bet he's not yours at all
21:05:57 <psygnisfive> he's not :(
21:06:02 <psygnisfive> lament: woman or not?
21:06:33 <lament> i haven't opened the image, but judging by the fact that everybody says "he", he must be a man?
21:06:49 <psygnisfive> well take a look at the image and tell me what you think
21:07:04 <lament> why should i? everybody agrees it's a man
21:07:09 <lament> i'll follow the consensus
21:07:20 <Slereah2> Here's what I think
21:07:26 <Slereah2> I think it's a woman
21:07:27 <psygnisfive> ok then, so you mean women to mean ciswomen and transwomen
21:07:33 <Slereah2> Since psygnisfive beats off to trannies
21:07:54 <psygnisfive> that boy is infact a transboy, yes slereah. but i think he'd punch you if you said he's a woman :P
21:08:21 <Slereah2> I bet she punches like a girl
21:08:26 <bsmntbombgirl> LOL
21:08:52 <Slereah2> http://cgi.4chan.org/r/src/1232744300603.jpg
21:08:55 <Slereah2> derp derp
21:08:59 <Slereah2> (nsfw you idiots)
21:09:16 <bsmntbombgirl> yuck fake tits
21:09:22 <psygnisfive> her cock is nice but girls :(
21:09:52 <Slereah2> http://community.livejournal.com/wtf_omgz/2552900.html
21:09:57 <Slereah2> Is this one male or female?
21:10:12 <psygnisfive> wtf XD
21:13:35 <adimit> "cellulite in cellophane", yeah. BTW, female, pretty sure.
22:00:26 -!- CakeProphet has quit ("lol").
22:14:54 <ehird> bsmntbombgirl: I'll patch ircbot.py, then.
22:19:46 <ehird> ok, ircbot.py patched, now for runloop.py
22:26:59 <ehird> class StdoutChildSafetyWrapperForYourProtection:
22:27:00 <ehird> def write(self, a):
22:27:01 <ehird> if a.startswith('QUIT'):
22:27:03 <ehird> raise MmmNopeIDontThinkIllLetYouDoThatThankYou
22:27:24 <bsmntbombgirl> ....lol
22:27:35 <ehird> taking half-assed code to a whole new level
22:27:41 <bsmntbombgirl> you need to add strict rate limiting too
22:27:43 <ehird> also, had a sex change recently bsmntbombgirl?
22:27:44 <ehird> also, yep
22:27:47 <ehird> doing so
22:28:53 <ehird> once per every 2 seconds? makes sense
22:29:35 <ehird> unfortunately, it's breakable
22:29:39 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
22:29:49 <ehird> sys.stdout._StdoutChildSafetyWrapperForYourProtection__original_stdout
22:29:54 <oklopol> bsmntbombgirl actually doesn't think the state of vaginoplacy is good these days.
22:30:01 <oklopol> *sy
22:32:17 <ehird> bsmntbombgirl: let's see if that works
22:32:20 <bsmntbombgirl> ehird: you're doing it wrong
22:32:34 <ehird> i don't think there's a way to actually get totally secret data in python bsmntbombgirl
22:32:41 <ehird> well
22:32:44 <bsmntbombgirl> YOU'RE DOING IT WRONG
22:32:45 <ehird> I could rate limit in the wrapper script.
22:32:47 <ehird> that could work
22:32:50 <ehird> why did i not think of that?
22:32:52 <ehird> is it because I am stupid? yes
22:33:13 <bsmntbombgirl> the child communicates with the parent via a socket pair, right?
22:33:17 <ehird> yep.
22:33:21 <ehird> you're right
22:34:08 <bsmntbombgirl> sys.stdout.write = lamba x:parent_socket.write("PLEASE_WRITE_THIS_DATA_TO_IRC %s" % x)
22:34:29 <ehird> well, yeah, exactly
22:34:30 <ehird> yes, I know
22:34:33 <ehird> that's wha ti'm doing
22:34:35 <ehird> jeez
22:34:36 <ehird> :-P
22:35:01 <bsmntbombgirl> i think bsmnt_bot needs to be split up a little more
22:35:11 <bsmntbombgirl> one big file is getting cumbersome
22:35:23 <oklopol> you're still developerizing it?
22:35:42 <bsmntbombgirl> no :P
22:36:10 <bsmntbombgirl> ok i'm going to my shitty local library to see if they have a book
22:37:06 <oklopol> did you know Communication is the most critical and time-consuming activity in software engineering?
22:37:38 <ehird> here gooooooooooooooooooooooooes, bsmntbombgirl
22:38:19 <ehird> Traceback (most recent call last):
22:38:19 <ehird> File "/bot/runloop.py", line 3, in ?
22:38:21 <ehird> import queue
22:38:23 <ehird> ImportError: No module named queue
22:38:25 <ehird> Step 1. Fail
22:38:51 <oklopol> hey you know what i realized to today for the seven hundredth time
22:38:55 <bsmntbombgirl> lol
22:38:57 <bsmntbombgirl> brb
22:39:10 <oklopol> that deque is kindof a pun for *deck*
22:39:25 <oklopol> i mean that's just so clever
22:40:05 <oklopol> i mean two perfectly logical derivations that lead to the same term
22:40:11 <oklopol> that's just so clever
22:40:33 <oklopol> rationale is the justification of decisions
22:42:37 <ehird> okay, mr bot, just waddle in here
22:42:45 <ehird> come on
22:42:46 <ehird> don't be shy
22:43:20 <ehird> Traceback (most recent call last):
22:43:20 <ehird> File "/bot/ircbot.py", line 381, in ?
22:43:21 <ehird> bot.listen(first)
22:43:23 <ehird> File "/bot/ircbot.py", line 107, in listen
22:43:25 <ehird> line = raw_input()
22:43:27 <ehird> EOFError: EOF when reading a line
22:43:29 <ehird> additionally, dear bot
22:43:31 <ehird> suck my dick,
22:43:39 <ehird> stoopid wrapper
22:58:55 -!- Sgeo has joined.
23:10:42 -!- BeholdMyGlory has quit ("bye").
23:11:47 -!- Mony has quit ("bye").
23:22:52 -!- Corun has joined.
23:30:13 -!- bsmnt_bot has joined.
23:30:15 -!- bsmnt_bot has quit (Read error: 131 (Connection reset by peer)).
23:47:02 -!- FireFly has quit ("Later").
23:55:46 -!- Sgeo_ has joined.
23:58:36 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
2009-01-24
00:03:57 <bsmntbombgirl> back
00:04:36 <ehird> so guys how is backwards land
00:04:47 <psygnisfive> its wonderful!
00:04:49 <psygnisfive> oh uh.. i mean
00:04:57 <psygnisfive> lufrednow sti!
00:05:01 <ehird> wait did that not reverse properly
00:05:01 <ehird> :(
00:05:29 <ehird> test
00:05:32 <ehird> that work?
00:05:46 <psygnisfive> no
00:05:49 <ehird> :<
00:06:02 <psygnisfive> unless you were trying to write "tset"
00:06:05 <psygnisfive> but backwards
00:06:11 <psygnisfive> in which case, it worked
00:06:14 <ehird> lol
00:06:36 <psygnisfive> :P
00:07:27 <oklopol> reminds me of that xkcd comic
00:07:42 <oklopol> where the text was mirrored and upside down or something
00:07:51 <oklopol> and it says "wanna annoy the hell out of our readers"
00:07:56 <oklopol> and i'm like what the fuck is the joke
00:08:08 <psygnisfive> what was the joke?
00:08:11 <ehird> the joke is
00:08:12 <ehird> YOU
00:08:14 <ehird> lamamoa
00:08:15 <psygnisfive> :o
00:08:29 <oklopol> psygnisfive: well supposedly some people can't read mirrored text :|
00:08:37 <psygnisfive> "lamamoa" = lame samoa?
00:08:42 <ehird> ‮hello world
00:08:44 <psygnisfive> samoan llama?
00:09:37 <psygnisfive> the hello world program, and a (slightly restricted) cat program, are easily some of the simplest programs in my wip language :O
00:09:39 <ehird> ‮so gentlemen, how are you today? Are you enjoying the amazing thing known as backwards?
00:09:43 <ehird> isn't this awsum
00:09:55 <psygnisfive> sure
00:10:06 <ehird> -->‮<--
00:10:13 <ehird> copy
00:10:16 <ehird> then type between the arrows
00:10:19 <ehird> then deplete arrows.
00:10:29 <ehird> --> so easy a green could do it<--
00:10:32 <ehird> hmm that broke
00:10:39 <ehird> ‮OH WELL
00:10:53 <psygnisfive> did you use the rtl unicode char?
00:11:07 -!- jix_ has joined.
00:11:17 <ehird> no, I used black magic
00:11:19 <ehird> dumbass
00:11:23 <ehird> :|
00:11:24 <ehird> :-|
00:11:27 <ehird> :-Q
00:11:29 <psygnisfive> black magic?!
00:11:32 <ehird> yes.
00:11:32 <psygnisfive> GASP
00:11:35 <ehird> also, green magic.
00:11:47 <psygnisfive> green magic is the magic of environmentalists
00:11:51 <ehird> also, purple magic.
00:12:03 <psygnisfive> they use all natural biodegradable materials to cast spells
00:23:25 -!- jix has quit (Read error: 110 (Connection timed out)).
00:35:03 -!- jix_ has quit ("...").
00:51:17 -!- oklopol has quit (Connection timed out).
01:06:02 -!- GreaseMonkey has joined.
01:07:30 -!- Corun has changed nick to MateyHuber.
01:14:37 <psygnisfive> so one of my professors is in a russian music video...
01:25:17 -!- MateyHuber has changed nick to Corun.
03:35:15 -!- Corun has quit ("This computer has gone to sleep").
04:47:39 * bsmntbombgirl is reading _Understanding the Linux Kernel_
06:02:08 -!- Sgeo_ has quit ("Leaving").
06:12:33 -!- Dewio has joined.
06:25:27 -!- Dewi has quit (Read error: 101 (Network is unreachable)).
07:36:42 -!- Dewio has changed nick to Dewi.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:55 -!- Mony has joined.
08:17:34 <Mony> plop
09:20:34 -!- GreaseMonkey has quit ("Client Excited").
09:30:23 -!- asiekierka has joined.
09:30:26 <asiekierka> Boom!
09:30:54 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say.
09:31:50 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz.
09:33:25 <Mony> h) the letter h
09:35:02 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz h) the letter h.
09:35:25 -!- Slereah2 has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz h) the letter h j) there is no i.
09:37:07 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz h) the letter h j) there is no eye.
09:37:28 <Mony> :D
09:38:00 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz h) the letter h j) there is no eye z) Let's skip to ASCII char 42, shall we? :D.
09:38:15 <Mony> can you tell me something about the esoteric comics ?
09:38:45 <asiekierka> i can't
09:38:47 <asiekierka> until i make one
09:39:00 -!- Slereah2 has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) #esoteric comics to be made soon; watch what you say g) bring back the bots plz h) the letter h j) there is no eye z) Let's skip to ASCII char 42, shall we? :D {) beep boop.
09:39:14 <Mony> lol, ok :)
09:43:07 <asiekierka> http://www.stripcreator.com/comics/asiekierka/453254
09:43:34 <Slereah2> This is terrible
09:44:48 -!- Corun has joined.
09:45:00 <Mony> tiens, un sélérat ! :o
09:45:10 <Mony> scélérat*
09:46:23 <Mony> yeah
09:49:02 <asiekierka> Slereah2: What did you expect?
09:49:04 <asiekierka> A "Screeble"?
09:49:08 <asiekierka> They're way worse
09:49:35 <asiekierka> Mony: what does that mean
09:51:07 <Mony> it's a french word, Slereah and scélérat sound like the same words
09:51:29 <Mony> scélérat = wicked
09:53:03 <asiekierka> oh
09:53:12 <asiekierka> Okay, so should i make more of these
09:53:14 <asiekierka> change the method
09:53:15 <asiekierka> or wut
09:53:49 -!- Slereah has joined.
09:54:02 <Mony> slereah came back
09:54:24 <Mony> asiekierka, maybe you can make the comic from scratch
09:54:34 <Slereah> Yes, that's me alright
09:58:08 <asiekierka> Mony: ...
09:58:10 <asiekierka> ...!!!
09:58:30 <asiekierka> ok, but then it'll be total crap
09:58:37 <asiekierka> and my writing will be undecipherale
09:58:44 <asiekierka> undecipherable*
09:59:00 <Mony> wait, i don't understand that word
09:59:13 <Mony> ah ok
09:59:46 <asiekierka> http://asiekierka.boot-land.net/screebles/img/comic/28.JPG
10:00:02 <asiekierka> http://asiekierka.boot-land.net/screebles/img/comic/32.JPG
10:00:08 <Mony> you can keep on using stripcreator, and when the comic book is ended, you can modify it with paint or what you want
10:00:25 <asiekierka> nope, it'll be also crapfestic quality
10:00:29 <asiekierka> http://asiekierka.boot-land.net/screebles/img/comic/25.JPG
10:00:40 <asiekierka> http://asiekierka.boot-land.net/screebles/img/comic/23.JPG
10:00:45 <asiekierka> that's about all i want to show you
10:01:36 <asiekierka> the better ones of my comics
10:01:51 <asiekierka> also, what's wrong with stripcreator?
10:03:16 <Mony> stripcreator seems to be good, but i don't like so much the characters' faces
10:03:54 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
10:04:30 <asiekierka> i just like the selection personally
10:06:00 <asiekierka> Mony: Ok, but do you prefer my Screebles, then?
10:07:35 <Mony> I don't know, the Screebles (28 and 32) have something dirty (except the 25 and 23, there're good :))
10:08:37 <asiekierka> Smudges from the pen mostly
10:08:42 <asiekierka> 25 was a testcard
10:08:55 <asiekierka> i must reproduce it, make it a vector image and use it
10:09:09 <Mony> yep
10:09:27 <asiekierka> I doubt I still have the original
10:09:30 <asiekierka> But oh well
10:12:28 <Mony> I ever wanted to make my own comic or cartoon
10:12:48 <asiekierka> get a scanner, get a pen and let your imagination fly!
10:12:53 <asiekierka> *chorus* FFLLYYYY!!!
10:13:11 <Mony> something like 8bit NES game, with bigs pixels and chiptune music
10:13:26 <asiekierka> Make your own sprites then
10:13:29 <asiekierka> and make a sprite comic
10:13:32 <Mony> yeah
10:15:53 <Mony> maybe i can make moving the sprite, scroll the background, etc
10:16:04 <asiekierka> Use FLASH!
10:16:09 <asiekierka> *flash*
10:16:21 <Mony> it can be pretty cool
10:17:15 <Mony> yeah, i used to make some flash animations
10:17:44 -!- oklopol has joined.
10:19:50 <asiekierka> ok
10:19:54 <asiekierka> making the testcard
10:20:00 <asiekierka> this time with greater precision
10:20:08 <asiekierka> and there will be both b&w and color versions
10:22:13 <asiekierka> ok, made the lower left corner
10:23:57 <asiekierka> made the upper right corner, too
10:26:50 <asiekierka> lower right corner also done
10:28:06 <asiekierka> all corners done
10:28:10 <asiekierka> and the <1000hz> too
10:32:13 <asiekierka> ok
10:32:16 <asiekierka> made the first scan
10:32:21 <asiekierka> looks pretty well
10:32:39 <asiekierka> minus a few fixable errors
10:40:35 <asiekierka> nearly done!
10:40:46 -!- Hiato has joined.
10:41:09 <asiekierka> Testcard aA1: 90%
10:45:17 <asiekierka> Testcard aA1: 100%, scanning
10:47:20 <asiekierka> done!
10:52:31 -!- Corun has quit ("This computer has gone to sleep").
10:54:15 <asiekierka> woohoo
10:54:16 <asiekierka> i did it
10:54:18 <asiekierka> uploading in a moment
10:55:03 -!- Hiato has quit ("Leaving.").
10:55:44 -!- Hiato has joined.
10:56:13 <asiekierka> http://asiekierka.boot-land.net/aa1_template_color.PNG
10:56:20 <asiekierka> don't use it except if i allow you
10:56:50 -!- Hiato has quit (Client Quit).
10:57:09 -!- Hiato has joined.
11:02:04 -!- asiekierka has quit.
11:30:01 -!- FireFly has joined.
11:34:25 -!- Corun has joined.
11:51:07 -!- Mony has quit ("reboot").
11:56:24 -!- Mony has joined.
12:17:36 -!- MigoMipo has joined.
12:25:58 -!- FireyFly has joined.
12:26:07 -!- FireFly has quit (Nick collision from services.).
12:26:12 -!- FireyFly has changed nick to FireFly.
12:48:12 -!- FireFly has quit (Read error: 104 (Connection reset by peer)).
12:50:27 -!- FireFly has joined.
12:58:22 -!- MigoMipo has quit ("http://www.mibbit.com ajax IRC Client").
13:11:42 -!- Hiato has quit (Read error: 104 (Connection reset by peer)).
13:12:15 -!- Hiato has joined.
13:15:57 -!- Hiato has quit (Client Quit).
13:36:34 -!- kar8nga has joined.
14:14:04 -!- BeholdMyGlory has joined.
14:27:20 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
14:32:37 <ehird> oh jesus, fucking asiekierka fucked with the topic again
14:32:48 <ehird> has he figured out that it's irritating yet
14:33:21 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
14:34:53 -!- Hiato has joined.
14:35:22 <ehird> <asiekierka> don't use it except if i allow you
14:35:32 <ehird> Does this count as a formal licensing, or can I use it blatantly?
14:35:39 <ehird> I think the latter.
14:37:15 -!- KingOfKarlsruhe has joined.
14:45:33 -!- Hiato has quit ("Leaving.").
14:59:01 -!- KingOfKarlsruhe has quit (Remote closed the connection).
15:05:18 -!- Corun has quit ("This computer has gone to sleep").
15:09:28 -!- olsner has joined.
15:32:15 <comex> I don't think you have enough coins to buy 50 VP...
15:32:42 <comex> sorry, wrong channel
15:33:48 <Mony> lol
15:45:15 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
15:45:20 -!- puzzlet has joined.
16:07:20 <oklopol> oooo
16:07:44 <Slereah> ko
16:43:07 <psygnisfive> i think i know how im going to add types to my language :o
16:43:19 <psygnisfive> ehird! you once said you wished haskell had first class types, or something. what did you mean?
16:43:26 <ehird> dependent types
16:43:35 -!- BeholdMyGlory has quit ("bye").
16:43:41 <ehird> type language = code language, turing complete compilation (has its downsides ... like non-terminating compilations ... )
16:43:47 <ehird> e.g. you can strongly type printf
16:44:20 <psygnisfive> can you give me a more detailed example? im not sure what a dependent type would be
16:44:43 <psygnisfive> also, doesnt C++ or something have require TC compilation due to its type system? x.x
16:44:44 <ehird> dependent types is just the theoretical term
16:44:48 <ehird> psygnisfive: here's a concrete example
16:44:50 <psygnisfive> or TC parsing or whatever
16:45:00 <ehird> sec
16:45:13 <ehird> psygnisfive: http://www.cs.chalmers.se/~augustss/cayenne/examples.html Scroll to the vey bottom
16:45:15 <ehird> heading "Printf"
16:45:31 <ehird> you can probably get the gist of how it fits in with what i've said
16:47:20 <psygnisfive> ok
16:47:41 <ehird> basically, it's calling a function in the type system there
16:47:50 <ehird> which varies printf's type depending on what string you feed it
16:48:04 <ehird> (yes, it breaks down if you e.g. feed it user input, you have to offer proofs that its' gonna be a certain type then)
16:48:13 <psygnisfive> ok
16:51:20 <ehird> does it make sense to you? :P
17:16:25 -!- asiekierka has joined.
17:16:27 <asiekierka> hi
17:16:35 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) fake.
17:16:43 <ehird> Stop.
17:16:45 <ehird> Messing.
17:16:45 <ehird> With.
17:16:46 <ehird> The
17:16:48 <ehird> Topic
17:16:50 <ehird> In
17:16:52 <asiekierka> But it's OFFENSIVE to me
17:16:52 <ehird> Unfunny
17:16:54 <ehird> Ways
17:16:56 <ehird> Goddamn
17:17:02 <ehird> Oh noes, offensive words
17:17:03 <asiekierka> it's OFFENSIVE to me
17:17:10 <asiekierka> OFFENSIVEOFFENSIVEOFFENSIVEOFFENSIVE
17:17:29 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:17:32 <ehird> oh no offensivity
17:17:58 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) stfu ehird.
17:17:58 <ehird> i know
17:17:59 <ehird> it's awful
17:18:08 <ehird> asiekierka telling me to stfu?
17:18:10 <ehird> L O L
17:18:21 <asiekierka> L O L
17:18:25 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:18:25 <oklopol> gay sex... oh dear god i can't take it anymore
17:18:27 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
17:18:31 <ehird> lol
17:18:59 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) stands for "freak".
17:19:08 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:19:11 -!- Slereah has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) stands for "freak" g) THE GAME.
17:19:12 <ehird> I can do this all day.
17:19:13 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:19:22 -!- Slereah has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally. g) THE GAME.
17:19:27 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:19:35 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) asiekierka is an idiot that sucks so much he doesn't even deserve being in the freaking topic g) THE GAME i) there is no h.
17:19:42 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:19:54 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) asiekierka is an idiot that sucks so much he doesn't even deserve being in the freaking topic g) THE GAME i) there is no h.
17:20:05 <asiekierka> one more and i change that to ehird
17:20:07 <ehird> asiekierka: You know, most who hate themselves that much just cut themselves.
17:20:19 <ehird> That would be a lot less annoying for me, to boot.
17:20:21 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:20:33 <Slereah> :(
17:20:42 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) ehird is a super-lame super-bad idiot that sucks so much he doesn't even deserve being in the freaking topic g) THE GAME i) there is no h.
17:20:59 <ehird> I think I'll make bsmnt_bot set the topic for me.
17:21:00 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:21:03 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) ehird is a super-lame super-bad idiot that sucks so much he doesn't even deserve editing this freaking topic g) THE GAME i) there is no h.
17:21:10 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:21:27 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) ehird is a super-lame super-bad idiot that sucks so much he doesn't even deserve editing this freaking topic g) nor does bsmnt_bot h) THE GAME j) there is no i.
17:21:38 <asiekierka> :)
17:21:38 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:21:49 -!- asiekierka has set topic: a) oko; b) the swatter; c) no messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) ehird is a super-lame super-bad idiot that sucks so much he doesn't even deserve editing this freaking topic g) nor does bsmnt_bot h) THE GAME j) there is no i.
17:21:56 <ehird> Remember when asiekierka did anything interesting esolang-related? No, me neither.
17:21:57 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:22:03 <asiekierka> yes i did
17:22:08 -!- asiekierka has set topic.
17:22:09 <ehird> Uh huh.
17:22:12 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:22:18 -!- asiekierka has set topic: ehird sux.
17:22:22 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:22:37 -!- asiekierka has set topic: all your topic are belong to asiekierka.
17:22:40 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:22:58 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) g. occasionally..
17:23:09 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:23:15 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) x. occasionally..
17:23:21 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:23:29 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gxscc for the wi9n.
17:23:40 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:23:49 -!- asiekierka has set topic: 3.14.
17:24:07 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:24:14 <ehird> Hey, remember when asiekierka spammed?
17:24:16 <ehird> Yep, me too.
17:24:30 -!- asiekierka has set topic: What about we leave the topic alone now and be friends? ...please?.
17:24:42 <ehird> Yep, me too.
17:24:44 <ehird> Hrm.
17:24:46 <ehird> Wrong up-scroll.
17:24:48 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:24:50 <ehird> Yes.
17:24:53 <ehird> We can leave the topic alone now.
17:24:53 -!- asiekierka has set topic: I said something!.
17:25:05 <ehird> Oh, you're breaking your own truce.
17:25:08 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:25:23 -!- asiekierka has set topic: What about we leave the topic alone AT THIS POINT WITHOUT EVER EDITING IT and be friends? ...please?.
17:25:37 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:25:38 <ehird> Nah.
17:25:40 -!- Slereah has set topic: http://tunes.org/~nef/logs/esoteric.
17:26:20 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:29:57 -!- asiekierka has set topic: What about we leave the topic alone AT THIS POINT WITHOUT EVER EDITING IT and be friends? ...please? Please? Anyone who edits this topic is an idiot..
17:30:03 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:34:12 -!- asiekierka has set topic: please stop. now..
17:34:22 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:34:28 <ehird> How about you? You changed it initially.
17:34:43 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) *** ***. occasionally..
17:34:48 <asiekierka> that's it
17:34:50 <asiekierka> stop here
17:34:52 <ehird> How about you? You changed it initially.
17:34:53 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:34:58 <asiekierka> because it offended me
17:35:06 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) ehi rd!. occasionally..
17:35:06 <ehird> This offends me.
17:35:09 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:35:19 -!- asiekierka has set topic: CoinTalesQ.
17:35:28 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:35:43 -!- Mony has set topic: STOP PLAYING WITH THE TOPIC !! è_é.
17:35:47 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:35:51 -!- asiekierka has set topic: ,[.,] input:"ehird sucks".
17:35:55 <ehird> Mony: asiekierka is messing with it, i am setting it back.
17:35:56 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:36:00 <ehird> he'll get tired eventually.
17:36:07 <asiekierka> Mony: ehird's setting back OFFENDS ME
17:36:09 <asiekierka> the f) offends me
17:36:17 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) you want my father to see that?.
17:36:24 <ehird> Tch. If only you weren't so annoying all the time I might have some sympathy.
17:36:40 <asiekierka> you're just like stonecypher
17:36:43 <asiekierka> another idiot
17:36:50 <ehird> ironic.
17:36:51 <asiekierka> maybe if you had a life
17:36:53 <asiekierka> you would understand
17:36:55 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
17:36:56 -!- asiekierka has left (?).
17:37:03 -!- asiekierka has joined.
17:37:11 <ehird> Bye. Oh wait, you're bacj
17:37:14 <ehird> *back
17:37:22 <asiekierka> bweep
17:37:24 <asiekierka> error
17:37:25 <asiekierka> offen
17:37:27 <asiekierka> ding
17:37:28 <asiekierka> data
17:37:29 <asiekierka> found
17:37:31 -!- asiekierka has left (?).
17:37:36 <ehird> Hooray.
17:37:51 -!- asiekierka has joined.
17:37:54 <ehird> Oh no.
17:37:59 <asiekierka> Oh yes
17:38:08 <ehird> Your "leaving FOREVER"s are remarkably short.
17:38:24 <asiekierka> i didn't say i leave forever
17:38:29 <asiekierka> cite where am i leaving forever
17:38:43 <ehird> Hopefulness.
17:44:02 -!- CakeProphet has joined.
17:55:20 -!- kar8nga has joined.
18:24:43 -!- puzzlet has quit (Remote closed the connection).
18:24:51 -!- puzzlet has joined.
18:34:23 -!- asiekierka has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game;.
18:34:24 -!- asiekierka has left (?).
18:37:11 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally..
18:40:05 <ehird> omg
18:40:07 <ehird> "I used to be a KDE user. I thought KDE 4.0 was such a disaster I switched to GNOME"
18:40:09 <ehird> -linus
18:40:14 <ehird> world
18:40:16 <ehird> crashing
18:40:19 <ehird> around
18:40:20 <ehird> me
18:47:04 -!- Slereah2 has joined.
18:58:39 -!- Slereah has quit (Read error: 110 (Connection timed out)).
18:58:55 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
19:04:16 -!- puzzlet has quit (Remote closed the connection).
19:04:24 -!- puzzlet has joined.
19:05:11 -!- Corun has joined.
19:22:01 -!- oklopol has joined.
19:27:17 <oklopol> ehird: i remember more of asiekierka's esolang related stuff than yours, but, umm, maybe it's just my memory :P
19:27:34 <ehird> i said interesting
19:28:38 <oklopol> oh, you did?
19:28:41 * oklopol rereads
19:28:53 <oklopol> ah!
19:29:34 <oklopol> then scratch my comment
19:32:31 <oklopol> lifthrasiir: do you like pudding?
19:36:43 -!- puzzlet has quit (Remote closed the connection).
19:36:50 -!- puzzlet has joined.
19:40:56 <ehird> "What's ironic got to do with Alanis Morisette?!:
19:40:59 <ehird> -reddit
19:41:10 <ehird> s/:$/"/
19:43:23 <Slereah2> It's sort of like rain on your wedding day.
19:44:16 -!- BeholdMyGlory has joined.
19:51:32 -!- Mony has quit ("Quit").
19:54:09 <oklopol> ~>
19:54:10 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
19:57:45 -!- psygnisf_ has joined.
19:57:45 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
19:59:58 -!- puzzlet has quit (Remote closed the connection).
20:00:05 -!- puzzlet has joined.
20:06:53 -!- Corun has quit ("This computer has gone to sleep").
20:08:47 -!- Corun has joined.
20:10:12 -!- MigoMipo has joined.
20:54:44 -!- ktne has joined.
20:54:49 <ktne> hello
20:54:56 <ktne> can i ask some language design questions here?
20:55:13 <ktne> i'm designing my own language and i have some issues to solve
21:31:02 <Ilari> ktne: Well, if the language is esoteric... :->
21:31:09 <ktne> :)
21:31:19 <ktne> well my main issue is performance
21:31:29 <ktne> i would like a prototype based language
21:31:36 <ktne> but with C-like performance
21:31:43 <ktne> and i was wondering how that could be done
21:32:24 <Ilari> ktne: Well, usually esoteric languages don't care about performance...
21:32:26 <ktne> i was wondering if a Seal method on objects, this would block all further structure changes, if that would be fine
21:32:46 <ktne> that way the structure could be guaranteed and optimizations done
21:32:48 <ktne> hmm
21:34:35 <ktne> well my language is not that esoteric
21:34:45 <ktne> other than i plan each statement to be in a custom micro-language
21:35:02 <ktne> one would be a raw lisp form-like
21:35:09 <ktne> other formats could be made available
21:36:44 <ktne> { statement;statement;statement}
21:37:04 <ktne> each statement could be in a different micro language, such as SQL-like, LISP-like, etc
21:37:36 <ktne> there would be a number of such microlanguages, optimized for common usages
21:37:50 <ktne> like reges text processing and such
21:37:54 <ktne> *regex
21:41:19 -!- BeholdMyGlory has quit ("bye").
21:41:57 <Ilari> ktne: Regexes with nondeterminate backreference operator (match anything that subexpression could match)? That can be defined to work in case where those backrefs refer to subexpression those are in... :->
21:43:25 <Ilari> ktne: With that sort of extension, stuff like E-mail address syntax becomes expressable.
21:45:25 <Ilari> ktne: Example: '(|\(<1>\)|<1><1>)'. There is no equivalent regular expression with only standard operators (Kleene closure, alternatives and concatenation)...
21:45:58 <ktne> well i was thinking about customizable regex character classes
21:46:24 <ktne> for example you could have class 'c' that would match against any object that implements let's say interface Car
21:46:36 <ktne> then you could match all Car objects in a collection
21:47:47 <ktne> therefore text matching would be just a subset of all possible uses, the cases where an object matches if it's a Char with a specific value
21:48:05 <ktne> i'm not sure if i put it in a clear way :)
21:48:09 <ehird> hi.
21:48:11 <Ilari> ktne: Matching on sequence of values?
21:48:18 <ktne> yes
21:48:32 <ktne> matching against any stream of objects
21:48:42 <ktne> and text would be a subcase
21:49:05 <ehird> ktne: so what brings ya here
21:49:07 <ktne> for example matching against an XML parse tree
21:49:22 <ktne> hi ehird
21:49:39 <Ilari> ktne: Don't you need something more powerful than regexps there?
21:50:08 <ktne> Ilari: well, it depends on how you define your custom classes
21:50:42 <ktne> also the tree would have to be flattened in a stream first obviously, maybe using a custom tree walking algorithm
21:50:43 <Ilari> ktne: Well, with that sort of backreference operator as I shown, it should be powerful enough...
21:51:22 <ktne> well you could implement any sort of operator i guess
21:51:42 <ktne> since the whole regex engine could be programmed
21:52:04 <Ilari> The challenge is to choose operators that are powerful but don't seriously blow up the execution time in common cases...
21:52:07 <ehird> soooooooooooooooooooooooooo
21:52:09 <ehird> what brought you here
21:52:11 <ehird> :)
21:52:13 <ktne> ehird: but my questions are related mainly to performance :)
21:52:27 <ehird> okay. Well that's sort of esoteric
21:52:32 <ktne> how to achieve C-like performance in a language without classes
21:52:45 <ktne> prototype OOP
21:52:53 * ehird 's pet in-head project for a while has been to make a scheme implementation that's competitive with C
21:53:04 <ktne> hmm
21:53:08 <ktne> but is that possible?
21:53:10 <ehird> which you could probably build a prototype OO system on top of without too much overhead
21:53:12 <ehird> ktne: "maybe"
21:53:17 <ktne> at least i'm willing to accept language limitation
21:53:19 <ktne> limitations
21:53:28 <ktne> i'm not sure if scheme has the right semantics to allow that
21:53:38 <ehird> SBCL--a common lisp compiler--is competitive with C, iirc, but of course CL is far less lenient than Scheme
21:53:44 <ehird> you can't redefine + in CL... :-)
21:53:55 <ehird> i think it boils down to having really efficient function calls
21:53:56 <ktne> ehird: no overhead means for me c++-like performance
21:54:14 <ehird> why so interested in performance, anyhoo?
21:54:16 <ktne> yes but how do you dispatch them if the object structure is dynamic
21:54:22 <ehird> wanna write an OS? :p
21:54:38 <ktne> no, i'm more interested in an alternative to matlab and mathematica
21:54:41 <ehird> also, well, with Scheme you have to dynamically look up everything
21:54:46 <ktne> because they are so incredibly slow... :(
21:54:52 <Ilari> ktne: And if you do SQL, allow possibility for parametrized queries (and make them relatively _easy_), since nonparametrized ones can easily turn into security nightmares...
21:54:54 <ehird> so having an object would be no overhead
21:54:59 <ehird> ew, don't do SQL :(
21:55:14 <ktne> ehird: i said that each statement could be in a microlanguage
21:55:18 <ehird> ah
21:55:32 <ehird> I don't think that would be very helpful
21:55:37 <ktne> ehird: with several microlanguages for common usages, like text procesing, collection operations (like sql), etc
21:55:47 <ktne> and a raw lisp-form one
21:55:49 <ehird> "I want to embed an entirely different language without any markets into this program" is no common thought of mine
21:55:58 <ehird> s/markets/markers/
21:56:12 <ktne> well i was thinking about some guesswork in the parser
21:56:20 <ktne> and some marker to make things sure when ambigous
21:56:46 <ktne> i was thinking about using \sql or \regex as markers
21:56:59 <ktne> sort of macro call :)
21:57:28 <ktne> but this would be just syntax sugar
21:57:41 <ehird> I rather embed other languages into the one I'm working in instead of just having them there literally.
21:57:46 <ehird> This falls down for regexs, tho.
21:57:47 <ktne> i'm designing the semantics right now, the object layout and the function call standard
21:58:06 <ehird> so how did you find this place then? :)
21:58:12 <ehird> btw our wiki is at http://esolangs.org/
21:58:18 <ehird> guess I can add that to our sprawling topic
21:58:25 <ktne> i was here a few times before :)
21:58:34 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/.
21:58:35 <ehird> ok :)
21:58:37 <ktne> i think i was designing some concatenative language back then
21:58:44 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page.
21:58:56 * ehird greps 2002-present logs for you
21:59:01 <ktne> but now i'm thinking about something more classical, something with semantics close to .NET (C-like objects, etc)
21:59:12 <ktne> mainly because such bad performance in matlab and mathematica
21:59:27 <ehird> I wanted to write a Mathematica replacement myself once.
21:59:29 <ehird> Still at the back of mind.
21:59:37 <ktne> i see
21:59:54 <ehird> THis was mostly driven by ais523 of this place's horror stories about it.
22:00:04 <ehird> % grep 'ktne' *
22:00:04 <ehird> %
22:00:17 <ehird> must be recent, then
22:00:20 <ehird> (I manually downloaded those logs)
22:00:25 -!- impomatic has joined.
22:00:28 <ehird> ends at 2008-10-31
22:00:28 <ktne> what horror stories?
22:00:40 <ktne> i haven't been here since 2008-10-31
22:00:52 <ehird> ok, you haven't been here before that either, at least at ktne
22:00:53 <ehird> *as
22:00:56 <ktne> so maybe i'm not in the logs, aha, i'm a vampire, no mirrors :)
22:01:27 <ehird> ktne: the horror stories were mostly from when he was writing his proof of: http://www.wolframscience.com/prizes/tm23/solved.html; he wrote the programs for it in Perl but wolfram required him to rewrite them in mathematica for their egos
22:01:33 <ktne> i'm looking mainly for a replacement for matlab but with more symbolic stuff, a la mathematica
22:01:37 <ehird> stuff like its awful performance, the crazy-ass HoldFirst thing
22:01:43 <ehird> and the basic idea that it's just a pattern-matcher at heart
22:01:52 <ehird> iirc he got it to crash a lot
22:02:02 <ktne> i see
22:02:24 <ktne> my main issues are peformance related
22:02:29 <ehird> i tried to actually try it, but they wanted to look over my trial request manually, and they didn't send me a link. ho hum
22:02:49 <ktne> first, they are not fast when interpreting algorithms, they are fast only when doing core processing, stdlib stuff
22:02:50 <ehird> ktne: doesn't mathematica just hardcode a bunch of algos in C so that it's fast iff you're doing what wolfram does?
22:02:54 <ehird> yeah
22:02:59 <ktne> then second issue
22:03:06 <ktne> is that they cannot handle large datasets
22:03:17 <ktne> because they want to load everything in memory
22:03:31 <ktne> i need something that can work off-disk
22:03:37 <ehird> mm
22:03:38 <ktne> maybe mmap the data files
22:03:42 <ehird> why does it have to be C-speed though?
22:03:45 <impomatic> Does anyone know what the smallest Brainfuck hello world is?
22:03:46 <ehird> C is pretty, well, fast.
22:03:52 <ehird> impomatic: yes, iirc egobot generated it
22:03:54 <ehird> but egobot is dead
22:03:57 <ehird> i think it may be on the wiki
22:04:26 <impomatic> The one on the wiki is 143
22:04:44 <ktne> because i wanted to do some rather intensive pattern matching in mathematica and it was just too slow and memory-hungry compare to the C version
22:04:53 <ehird> impomatic: I could try and grep the logs for egobot's I think it was 113 or sth
22:04:55 <ktne> *compared
22:05:07 <ehird> right, but surely it doesn't need to be _as_ fast as C?
22:05:20 <ktne> well that's one of my goals, from the start
22:05:30 <ktne> R for example is extremely slow too
22:05:38 <impomatic> Ehird: thanks, that would be a big help. Google didn't show up much
22:05:54 <impomatic> Is 113 the best? Was that generated by a GA or something?
22:06:04 <ehird> I'm not sure of the actual number, but ye
22:06:04 <ehird> s
22:06:12 <ehird> a Java program, I think
22:06:19 <ktne> matlab can be fast but it requires you to vectorize your algorithms, which can be complicated sometime
22:06:19 <ehird> (egobot let you generate BF text as a command)
22:06:44 <ktne> neither mathematica or matlab have actually been designed for fast random access into arrays
22:06:59 <ehird> impomatic:
22:06:59 <ktne> just try to do a FOR loop in matlab :)
22:07:00 <ehird> 15:20:20 <rice> !bf_txtgen Hello, world!
22:07:01 <ehird> 15:21:04 <EgoBot> 118 +++++++++++[>++++++>++++>+++++++++>+++<<<<-]>++++++.>>++.+++++++..+++.<.>>-.<++++++++.--------.+++.------.--------.>+. [839]
22:07:06 <ehird> 118
22:07:08 <ehird> rice is me by the way
22:07:10 <ehird> that's from jan 2008
22:07:13 <ehird> so probably the most refined so far
22:07:32 <impomatic> Thanks :-)
22:07:55 <ehird> np :)
22:08:18 <Ilari> And there is annoying thing in matlab that doing per-element lookup on vector can transpose the result...
22:08:48 <ehird> everything will be perfect when we have processors that run Haskell natively.
22:08:57 <ktne> so basically i want something really fast, but with an interactive repl and interactive graphics
22:09:15 <ktne> but i want to stay away from class based oop for personal taste
22:09:21 <ehird> ktne: do you want a pony too? :p
22:09:27 <ehird> why not just stay away from oop, anyhoo
22:09:30 <ktne> :-[
22:09:31 -!- Corun has quit ("Leaving").
22:09:47 * ehird is probably biase
22:09:47 <ehird> d
22:09:50 <ktne> ehird: well i really want oop :)
22:09:57 <ktne> maybe something that mirrors the file system
22:10:00 <ehird> um sure :p
22:10:02 <ktne> so you could store values in the FS
22:10:04 <ehird> ew
22:10:24 <ehird> I think you want PHP, they chose \ as their namespace separator because they can't write a parser and because it was the windows dir separator (seriously)
22:10:26 <ktne> persistence is another goal of mine
22:10:26 <ehird> :p
22:10:46 <ktne> :)
22:10:51 <ehird> serializable continuations are awesome but you also have to serialize sockets and crap to do that properly
22:10:52 <ehird> which is hard
22:11:07 <ktne> well i'm not that interested into serializing externalities
22:11:18 <ktne> only the internal state
22:11:30 <ehird> ktne: there's an efficient way to do garbage collection that leaves you with efficient function calls and also efficient continuations
22:11:31 <ehird> http://home.pipeline.com/~hbaker1/CheneyMTA.html
22:11:46 <ehird> might be worth checking out
22:11:53 <ehird> "Appel's method avoids making a large number of small trampoline bounces by occasionally jumping off the Empire State Building. "
22:12:43 <ktne> checking..
22:13:47 <ktne> funny :)
22:14:15 <ehird> ktne: i assume, by the way, that you're compiling
22:14:22 <ehird> because interpreting at C speed is, um... impossible.
22:14:29 <ktne> i'm thinking about using llvm
22:14:52 <ehird> llvm unfortunately is very imperative
22:15:18 <ktne> i can't see any other option
22:15:27 <ehird> compile to machine code?
22:15:29 <ktne> i don't feel like wanting to implement a JIT :)
22:15:48 <ehird> if you really need C speed... )
22:15:49 <ehird> :)
22:15:56 <ktne> llvm generates C speed
22:16:09 <ktne> i'm mostly afraid of optimizations
22:16:20 <ehird> it generates C speed if your language is mostly imperative, I would say
22:16:28 <ktne> implementing proper optimizations is very time consuming which is why i don't want to compile to machine code myself
22:16:42 <ktne> well i guess my language is meant to be mostly imperative
22:16:45 <ehird> well heck, if you want C speed you'd better be ready to spend a lotta time on it ;)
22:16:51 <ktne> maybe single assignment
22:17:16 <ehird> i think haskell is nearing C-speed
22:17:21 <ehird> that's pretty mathematical :P
22:17:31 <ktne> i don't really like pure functional stuff
22:17:46 <ehird> why? :)
22:17:47 <ktne> mainly because of resource impredictability issues
22:17:48 <Deewiant> haskell's compiler is also black magic
22:18:06 <ktne> resource usage has be be fairly easy to estimate
22:18:08 <ehird> Deewiant: I don't think ghc is _that_ obscure...
22:18:19 <ehird> ktne: i think some of the peeps in #haskell have done work on that
22:18:19 <ktne> hi Deewiant
22:18:32 <ehird> might wanna ask them
22:18:37 <ktne> well also pure functional is not that suitable for matlab-like stuff
22:18:48 <ehird> why
22:18:55 <ktne> and i'm not willing to spend years on the compilation stuff :)
22:19:08 <ktne> i have to have this done in months :) llvm with a frontend on top :)
22:19:14 <Deewiant> hi ktne
22:19:31 <ehird> "have" to?
22:19:37 <ehird> if you have to have c speed really quickly, use c? :P
22:19:40 <ktne> well i have to use it for some real stuff
22:19:46 <ktne> because C is not interactive, nor ddynamic
22:19:54 <ktne> i want interactive graphs and stuff
22:19:56 <ktne> like that
22:20:07 <Deewiant> good luck with C speed for that ;-)
22:20:31 <ktne> :)
22:20:54 <ktne> well i was thinking about using some google jvm-like techniques
22:21:10 <ktne> jscript vm i mean
22:21:22 <ktne> but jscript is limited from the start due to semantic issues
22:21:23 <ehird> i think your three goals - interactive, c-speed, and not long to develop - are contradictory.
22:21:56 <ktne> there is no such language so far
22:22:10 <ehird> exactly
22:22:36 <ktne> it doesn't feel that hard to do, i just think nobody tried
22:22:44 <Deewiant> the first two are contradictory I'd say — it's like having a language which compiles to optimized C but with zero compilation time :-)
22:22:55 <ehird> and the first two contradict the last
22:23:02 <ktne> for example most scripting languages don't have C-like types which makes them slow from the start
22:23:23 <ktne> Deewiant: i'm not that interested in zero compilation time, more in fast execution
22:23:36 <ehird> ... and interactiveness.
22:23:39 <ktne> yes
22:23:40 <Deewiant> ktne: just talking about the semantics of 'C speed' and 'interactive' put together
22:23:54 <ehird> >> 2+2
22:23:55 <ehird> (...)
22:23:56 <ehird> (...)
22:23:58 <ehird> (...)
22:24:00 <ehird> (...)
22:24:02 <ehird> 4
22:24:04 <ehird> >>
22:24:07 <Deewiant> i.e. if you want interactive + C speed you need zero time spent to generate the C-speed code :-)
22:24:20 <Deewiant> unless you can generate code which is faster than C, which is unlikely
22:24:27 <ktne> well C spends a lot of time in compilation stage too :)
22:24:33 <Deewiant> yeah, exactly
22:24:34 <ehird> and C is not interactive
22:24:36 <ehird> because of that
22:24:37 <Deewiant> which is why, good luck :-P
22:24:38 <ktne> compilation time is not an issue for me
22:24:46 <ehird> yes it IS
22:24:48 <ktne> only execution speed is an issue
22:24:49 <Deewiant> if you want it to be interactive, it is
22:24:49 <ehird> you want interactivity
22:24:58 <ehird> interactive time = compilation time + runtime
22:25:18 <ktne> i don't see how compiling one line of code at a time can be that slow
22:25:29 <ktne> since that's what i mean by interactivity, a repl
22:25:42 <Deewiant> it's not that slow, but it won't be C speed
22:25:45 <ktne> that's all compilation that needs to be fast
22:25:51 <ktne> compiling a file can be slower
22:25:53 <Deewiant> it might be /almost/ C speed
22:25:56 <ehird> y'know, try sbcl
22:25:58 <Deewiant> but that's different
22:26:01 <ehird> it's REPL is basically C speed
22:26:02 <Deewiant> we're just arguing semantics :-P
22:26:05 <ktne> well i assume that each line takes a long time toe xecute
22:26:09 <ktne> to
22:26:30 <ktne> that's why repl compilation time is not an issue, as long as there is no visible lag per command, i'm ok with it
22:26:36 <ehird> "no visible lag per command"
22:26:43 <ehird> that's, um
22:26:44 <ehird> good luck
22:27:18 <Deewiant> 'no visible lag' + 'C speed' don't mix unless you add a qualifier like 'close to' to the latter :-)
22:27:18 <ktne> ok, let's not digress
22:27:52 <ktne> i mean no visible lang from when you type ENTER and up to when it starts executing the command
22:28:07 <ktne> even if compiling just one line of code takes 0.25sec, that's still acceptable
22:28:13 <ehird> 0.25sec is, um, visible lag.
22:28:15 <Deewiant> 0.25 is visible :-)
22:28:20 <ehird> 0.25sec is HUGELY visible
22:28:25 <Deewiant> 0.1 is approximately when it starts to get visible
22:28:35 <ktne> ok, 0.1 then
22:28:38 <Deewiant> depends on the user's speed obviously
22:28:41 <ktne> i assume llvm compiles quite fast
22:28:59 <ktne> compiling one function is not that much
22:29:02 <ehird> I notice 0.05 :\
22:29:11 <ktne> my main issue is execution time
22:29:18 <Deewiant> depends on what you're doing, too, of course
22:29:27 <ktne> what kind of semantic restrictions do i have to add in order to get good performance from a dynamic language
22:29:31 <ktne> that's my question
22:29:39 <ktne> anything but classes, i can't stand classes
22:29:47 <Deewiant> losing dynamic types helps ;-)
22:30:10 -!- nice has joined.
22:30:10 <Deewiant> assuming that's what you meant by 'dynamic'
22:30:10 <ktne> how can you have interactivity without dynamic types?
22:30:16 <ehird> everything is a tradeoff, purity vs efficiency.
22:30:18 <Deewiant> see haskell, for instance
22:30:22 <ehird> yeah haskell
22:30:30 <ktne> i'm not interested in language purity at all
22:30:30 <ehird> haskell even behaves dynamic
22:30:32 <ehird> since it's inferred
22:30:34 <Deewiant> ktne: why would interactivity require dynamic types?
22:30:35 <ktne> i don't care if it looks like perl :)
22:30:41 <ehird> ktne: you misunderstand purity.
22:30:51 <ehird> you're saying, oh I need mallable prototype objects
22:30:53 <ktne> Deewiant: because i want to be able to add methods at runtime
22:30:59 <ktne> ehird: yes
22:30:59 <ehird> and that's taking purity over efficiency
22:31:09 <Deewiant> that does sort of require dynamic types, yes :-)
22:31:16 <ktne> i was thinking about adding something liek a Seal method to objects
22:31:31 <ehird> can you do object.Seal.Club
22:31:33 <ktne> that would prevent any further modification of object structure
22:31:46 <ktne> how useful would that be?
22:31:55 <ktne> if it's not sealed then it would execute slower
22:32:14 <ehird> sooo now you can't add methods at runtime
22:32:16 <ehird> so what is the point
22:32:20 <ktne> well you can
22:32:25 <impomatic> My first attempt to write a brainfuck hello world by hand - 122 instructions :-(
22:32:26 <ktne> but then it would be "un-sealed"
22:32:33 <ktne> and execution would be slower
22:32:36 <ktne> see what i mean?
22:32:54 <ktne> i'm willing to accept this as a sacrifice :)
22:32:58 <Asztal> take a look at recent javascript engines
22:33:23 <ktne> Asztal: the problem with jscript is that you have to check to see if the object structure has been modified after each function call
22:33:29 <ehird> ktne: dropping objects helps a lot.
22:33:39 <ehird> you can still add methods at runtime
22:33:41 <ehird> by just defining a function
22:33:51 <ehird> and there's no overhead to the actual "object"
22:33:53 <ehird> (data)
22:34:43 <ktne> that would still have the same issue
22:34:53 <ktne> because the object structure could change
22:35:07 <ktne> (data structure)
22:35:17 <ehird> instead of changing it
22:35:20 <ehird> just redefine it
22:35:29 <ktne> what would happen to old objects?
22:35:39 <ktne> or maybe i could redefine then copy the old object in the new one?
22:35:47 <ehird> ktne: yeah, something like that
22:35:50 <ktne> that would also be more semantically pure
22:35:58 <ehird> yes
22:36:02 <ehird> ktne: immutable objects also helps
22:36:10 <ehird> but that's going into functional purity land
22:36:30 <ehird> haskell
22:36:31 <ehird> Prelude> let a $$ b = a+(b/2.0)
22:36:32 <ehird> Prelude> 1 $$ 3
22:36:34 <ehird> 2.5
22:36:43 <ehird> bam, I just defined a method on (Fractional a) => a -> a -> a :-P
22:36:48 <ktne> well immutable objects would be ok too
22:37:02 <ktne> but i need to be able to apply immutability to any object at any point
22:37:14 <ehird> i meant make all "objects" immutable
22:37:17 <ktne> ah
22:37:20 <ktne> no, i can't do that
22:37:26 <ktne> that would make many algorithms too slow
22:37:29 <ehird> um
22:37:31 <ehird> no.
22:37:40 <ehird> you can optimize it very well
22:37:59 <ehird> make copied objects reference their copier, use mutation if there's only one reference around
22:38:00 <ehird> etc
22:38:06 <ehird> see: GHC haskell compiler
22:38:14 <ktne> i can't afford optimisations other than llvm
22:38:40 <ehird> You can afford GHC :-)
22:38:43 <ktne> i can't really reimplement GHC :)
22:38:49 <ehird> so use ghc? ;)
22:38:55 <ktne> can it be embedded?
22:39:00 <ehird> in which way
22:39:03 <ktne> to compile snippets of code to machine code
22:39:08 <ktne> within the same process
22:39:09 <ehird> GHC has a repl
22:39:12 <ktne> hmm
22:39:19 <ehird> like I just showed you
22:39:20 <ehird> Prelude> let a $$ b = a+(b/2.0)
22:39:21 <ehird> Prelude> 1 $$ 3
22:39:23 <ehird> 2.5
22:39:25 <ehird> that was in a REPL
22:39:27 <ehird> all instant
22:39:29 <ktne> but still, i'm not sure how could you translate an imperative program to ghc
22:39:30 -!- MigoMipo has left (?).
22:39:36 <ehird> to haskell, you mean
22:39:39 <ktne> yes
22:39:41 <ehird> well, it is a restructuring, of course
22:39:56 <ehird> IMO the result is a better program, but there you go
22:40:07 <Deewiant> just put it all in main
22:40:16 <ehird> there's plenty of real-world haskell libraries, btw:
22:40:17 <ehird> http://hackage.haskell.org/packages/archive/pkg-list.html
22:40:19 <ehird> 1000 of them
22:40:25 <ktne> my issue is the language :)
22:40:34 <ktne> i just don't like ghc :) or haskell :)
22:40:42 <ktne> in general i don't like functional stuff
22:40:46 <ehird> shrug
22:40:59 <ktne> because i need to run common algorithms
22:41:00 <Deewiant> haskell is the best imperative language
22:41:12 <ehird> ktne: common algorithms fit functionality well
22:41:24 <ehird> i just feel that most of the optimizations you do just bring you closer to haskell
22:41:26 <ktne> ehird: common as in: expressed in standard C form
22:41:43 <ehird> if you can read C and you can read Haskell ... you can translate between the two
22:41:51 <ehird> there's also libraries for stuff like that
22:42:10 <ktne> i don't really want to do that :)
22:42:21 <ktne> i don't want ghc as a dependency :)
22:42:29 <ktne> i won't touch it with a pole :)
22:42:53 <ktne> i need a classical environment that can be used by people familiar with matlab
22:43:00 <ehird> then you have to go slower
22:43:01 <ehird> it's all tradeoffs
22:43:04 <ktne> as a faster matlab replacement
22:43:15 <ehird> you can have your cake and eat it, but it might not have cherries on top :-)
22:43:56 <ktne> the reason why i don't want to rely on ghc is because of the black magic that happens behind
22:44:05 <ehird> what black magic
22:44:21 <ktne> at least with llvm i have a good idea of all optimizations that happen and how the program is transformed by those optimizations
22:44:35 <ehird> ghc has documentation
22:44:43 <ktne> also how could i debug that code?
22:45:01 <ehird> by... debugging it?
22:45:03 <ktne> because you can't debug it if it's converted to haskell
22:45:18 <ktne> i mean debugging the interactive repl code
22:45:20 <ehird> i'm not saying convert the program to haskell . . .
22:45:37 <ktne> how could you otherwise use ghc as a compiled?
22:45:44 <ktne> *compiler?
22:45:52 <ehird> by feeding it haskell?
22:45:56 <bsmntbombgirl> hi kids
22:46:08 <ktne> then i have to convert my program to haskell, right?
22:46:10 <bsmntbombgirl> ehird: how's bsmntbombgirl ?
22:46:11 <ktne> hi bsmntbombgirl
22:46:13 <bsmntbombgirl> *bot
22:46:21 <ehird> bsmntbombgirl: a bit broken atm, I can fix it.
22:46:28 <ehird> bsmntbombgirl: I think I'll sue you for the misleading name
22:46:35 <ehird> ktne: or you could write your program in haskell, y'know
22:46:45 <ktne> not my program
22:46:49 <bsmntbombgirl> ehird: that shit needs to be put in source control
22:46:52 <ktne> the program you run in the repl
22:47:10 <ehird> ktne: what i'm saying is: Haskell already does all your requirements :-)
22:47:19 <ehird> bsmntbombgirl: it needs a rewrite tbh
22:47:19 <ktne> it's not orthodox enough
22:47:25 <ehird> ktne: why is this a problem?
22:47:27 <bsmntbombgirl> yeah
22:47:33 <ktne> because it has to run standard code
22:47:35 <ktne> imperative stuff
22:47:39 <ehird> why
22:47:51 <ktne> because i find it nearly impossible to code functional :)
22:47:54 <bsmntbombgirl> i was thinking i should write an irc server
22:48:04 <ehird> bsmntbombgirl: i thought that, it's a bit of a pain tbh
22:48:16 <bsmntbombgirl> why?
22:48:50 -!- CakeProphet has quit ("lol").
22:48:54 <ehird> because the RFC is stupid, and networking code handling a huge amount of people is stupid
22:49:43 <bsmntbombgirl> i just wrote a rather nice (imo) abstraction over the network part
22:49:55 <bsmntbombgirl> using libevent
22:50:18 <ehird> bsmntbombgirl: bsmnt_bot's charm is that it sucks
22:50:26 <bsmntbombgirl> what do you mean?
22:50:56 <ehird> it doesn't do anything and you can mess it up with the python command, but it's fun to have it around anyway :P
22:51:34 -!- oklopol has joined.
22:52:46 -!- puzzlet_ has joined.
22:53:34 -!- puzzlet has quit (Remote closed the connection).
22:55:32 -!- jix has joined.
23:01:20 <ktne> ehird: ghc appears to have quite poor performance compared to C
23:01:30 -!- Corun has joined.
23:01:35 <ehird> it's not perfect, but it can be made faster with some optimization hints
23:01:50 <ehird> and the speed is still very reasonable by default, for most tasks
23:02:22 <ktne> it's not really what i want
23:02:28 <ktne> i can't stand haskell :-/
23:02:32 <Deewiant> if GHC is poor compared to C then good luck getting the kind of speed you want :-P
23:02:48 <ktne> Deewiant: llvm is pretty fast
23:02:58 <Deewiant> ktne: depends on the kind of code you give it
23:03:00 <ehird> haskell is great, I think what you're saying is ... I haven't really used haskell much, but it sounds scary :-)
23:03:06 <ktne> Deewiant: classical imperative code
23:03:21 <Deewiant> well yeah, that's what the LLVM IR is
23:03:27 <Deewiant> more important is what the code does :-P
23:03:47 <ktne> mostly array and graph manipulations
23:04:09 <ehird> that does not sound very imperative to me
23:04:33 <ehird> imperative code is just manually optimized functional code. kind of like writing asm instead of C. you rarely do better. meh.
23:04:43 <ehird> except you often do better :P
23:04:54 <ktne> i can't think in a pure functional fashion
23:05:02 <ehird> i'm sure you can
23:05:02 <ktne> so i don't want a pure functional language
23:05:04 <ehird> you just haven't tried
23:05:14 <bsmntbombgirl> ehird: lol wut
23:05:15 <bsmntbombgirl> not
23:05:29 <ehird> convincing arguments
23:05:38 <ktne> ok, let's suppose you want to implement a longest common subsequence algorithm in haskell, how that would look like?
23:06:04 <ehird> ktne: pretty simple
23:06:09 <ehird> http://www.rosettacode.org/wiki/Longest_Common_Subsequence#Haskell
23:06:39 <ehird> trivial translation of http://en.wikipedia.org/wiki/Longest_common_subsequence#LCS_function_defined
23:08:05 <ktne> how many years of haskell experience do i need to implement the memoization example?
23:08:06 -!- nice has quit (Read error: 104 (Connection reset by peer)).
23:08:12 <ehird> 0
23:08:15 <bsmntbombgirl> that's hellaciously inneficient
23:08:22 <Deewiant> bsmntbombgirl: shh ;-)
23:08:26 <ehird> bsmntbombgirl: sure, it's a naive implementation
23:08:32 <ehird> those are generally slow
23:08:39 <ktne> ehird: i'm looking at the memoization example
23:08:43 <ehird> ktne: that haskell code is easy to understand once you have a grasp of Haskell
23:08:44 <ktne> not at the simple recursive one
23:08:51 <ehird> so, like I said.. 0
23:09:03 <ktne> 0 if using integer divide :)
23:09:16 <ehird> ok, what I mean is < 1
23:09:20 <Deewiant> you didn't specify the type of your answer so it defaulted to integer :-P
23:09:29 <Deewiant> s/your answer/the answer you wanted/
23:10:24 <ktne> that code is horrible :/
23:10:26 <bsmntbombgirl> god is real
23:10:39 <ehird> ktne: ITYM "I don't understand that code"
23:10:41 <ehird> bsmntbombgirl: i see
23:11:32 <psygnisf_> the nonmemoize haskell code is beautiful
23:11:40 <ehird> so is the memoized :P
23:11:48 <psygnisf_> i tried reading the definition of LCS and its painful to read
23:11:52 <psygnisf_> the haskell code makes it all clear
23:11:57 <psygnisf_> DAMN YOU HASKELL
23:12:06 <ktne> how can i test that code?
23:12:13 <ktne> without installing ghc
23:12:24 <ehird> ummm
23:12:32 <ehird> how can you run code without installing an implementation
23:12:35 <ehird> you don't.
23:12:40 <ktne> is it possible in ghc to redefine object?
23:12:46 <ehird> be more specific
23:12:49 <ktne> i mean, redefine functions
23:12:53 <ehird> yes, in the REPL.
23:13:53 <ktne> let's suppose i want to count how many times a substring appears in a larger string
23:13:57 <ktne> how would that look in haskell?
23:14:11 <ehird> are you getting me to write your program for you? :D
23:14:15 <ktne> yes
23:14:20 <ktne> i can't write them myself :)
23:14:32 <oklopol> yes you can
23:14:47 <ktne> i just want to see how it looks like
23:15:30 <ehird> http://www.haskell.org/ghc/docs/latest/html/libraries/base/Data-List.html
23:15:34 <ehird> there's probably a function in there to do it :P
23:15:36 * ehird peeks
23:15:40 <ktne> that's not what i need
23:15:46 <ktne> i need to implement all those algorithms myself
23:15:50 <ehird> why
23:16:00 <ehird> the library writers are much better at it than you
23:16:02 <ktne> because it's a tool for computing stuff
23:16:09 <ehird> why do you have to write your own
23:16:19 <ktne> because isn't that the purpose of the tool?\
23:16:23 <ehird> huh?
23:16:27 <ktne> to allow people to implement algorithms
23:16:46 <ktne> i need a matlab replacement
23:16:51 <ehird> generally people don't write all the algorithms they use in their program
23:16:59 <ktne> i can't depend on libraries for that
23:17:13 <ehird> why
23:17:19 <ehird> that library is in core GHC
23:17:23 <ehird> if you have GHC, you have that library
23:17:30 <ktne> because i need to implement that many more algorithms
23:17:35 <ktne> that are mostly non-standard
23:17:38 <ehird> ok
23:18:16 <ktne> so, any idea how to speed a jscript-like language? :-D
23:18:30 <bsmntbombgirl> sigh
23:18:33 <ktne> first, add proper C integer types and proper C arrays
23:18:35 <ehird> yes, apply all the transformations to it to make it more static
23:18:58 <oklopol> static dance uuuuh yeah
23:19:03 <impomatic> New brainfuck Hello World = 115. That's 3 instructions shorter
23:19:20 <oklopol> where's egobot when you need one
23:19:29 <oklopol> how long does he produce?
23:19:32 <ehird> oklopol: i already gave him that
23:19:40 <ehird> 118
23:19:45 <ehird> but impomatic's beaten that
23:19:47 <bsmntbombgirl> i need to figure out some bf-textgen again
23:20:07 <oklopol> ehird: ah cool; seems i didn't read the logs then.
23:21:01 <impomatic> I was hoping to reach 88 so my interpretter and Hello World fit in 100 instructions, but I don't think there's any chance
23:21:08 <bsmntbombgirl> walking the graph with A* would work
23:21:10 <impomatic> +++++++++++[>+++++++>+++++++++>++++>+++>++++++++<<<<<-]>-----.>++.+++++++..+++.>.>-.>-.<<<.+++.------.--------.>>+.
23:21:16 <ehird> impomatic: you have a 22 char bf interp?
23:21:24 <bsmntbombgirl> but that's probably ridiculously slow
23:21:24 <oklopol> the one on wp is 88
23:21:28 <oklopol> but you probably know that too
23:21:37 <oklopol> oh
23:21:38 <oklopol> you probably don't
23:21:40 <impomatic> No, 12 instruction interpretter :-)
23:21:45 <ehird> woah
23:21:47 <ehird> paste it
23:21:56 <ehird> also, yeah
23:21:57 <ehird> ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
23:21:59 <ehird> from wp
23:22:26 <ehird> impomatic: show this interp! :)
23:22:54 <oklopol> 12 instructions beats cise by quite a lot
23:22:55 <impomatic> And it's not slow. When it starts execution, it converts all [ and ] to relative jumps
23:23:17 <oklopol> impomatic: can you show it?
23:23:20 <ehird> shoooooooooooooooooow itttttttttttttt
23:23:24 <impomatic> The interpretter is more of a compiler, and it's in redcode
23:23:27 <ehird> oooh
23:23:29 <ehird> SHOWWWW ITTTTTTT
23:24:33 <impomatic> Okay, wait!
23:25:35 <ehird> damn 12 instructions
23:25:37 <ehird> that is impressive
23:26:25 <impomatic> Not so impressive: http://pastebin.ca/1317388
23:27:01 <impomatic> When the redcode is compiled, it uses macros to compile brainfuck to redcode
23:27:27 <ehird> still pretty awesome
23:27:29 <impomatic> There are 12 instructions to fix the [ and ] jump addresses
23:27:36 <ehird> where are the macros
23:27:44 <bsmntbombgirl> write a brainfuck optimizer
23:27:48 <oklopol> ehird: the first lines
23:27:49 <impomatic> Macros at the top
23:27:55 <ehird> ah
23:28:00 <oklopol> equ's
23:28:12 <ehird> man, that's awesome
23:28:22 <impomatic> Thanks
23:28:24 <ehird> impomatic: how much would it take to add a parser?
23:29:22 <impomatic> Not much, but first I need to recompile the redcode interpretter. Haven't got a C compiler on this Windoze machine
23:30:03 <ehird> i gotta write my own RISC, beating 12 instructions will be hard
23:30:16 <impomatic> I will add a parser to read in Brainfuck from a file.
23:30:16 <impomatic> And possibly add a table based optimizer
23:30:32 <impomatic> Often 2 brainfuck instructions could be reduced to 1 redcode instruction
23:30:33 <ehird> well
23:30:35 <ehird> http://esolangs.org/wiki/Yael 15 instructions
23:30:43 <ehird> but only 256 bytes of addressable memory...
23:30:53 <ehird> so code+data has to be <256 bytes :(
23:31:23 <ehird> well, it also has 8 registers
23:31:33 <ehird> so 264
23:31:40 <ehird> but you can't put code in registers, ofc
23:31:48 -!- yuri815 has joined.
23:33:28 <oklopol> ehird: you should add a context switch operator, so you could have a tape of 256 cell memories
23:33:33 <oklopol> i mean two of those
23:33:36 <ehird> possibly
23:33:39 <ehird> but it's basically vinalized
23:33:43 <oklopol> yes.
23:33:46 <oklopol> i remember the process
23:33:46 <ehird> i think it's prety nice
23:33:55 <ehird> I mean, that cat program is pretty small
23:34:01 <ehird> *finalized
23:34:01 <oklopol> it's a local maximum, definitely.
23:34:06 <ehird> wut
23:34:09 <oklopol> :P
23:34:14 <ehird> whaddya talking about :P
23:34:25 <oklopol> small fixes won't make it purer.
23:34:31 <oklopol> *small changes
23:34:45 <oklopol> and by pure i mean... i don't know. pretty
23:35:28 <ehird> unfortunately, code isn't always a round number of bytes
23:35:34 <ehird> e.g. cat is 8 bytes + 1 bit
23:35:40 <ehird> so you just need to pad it out with 0s
23:35:44 <ehird> still
23:35:46 <ehird> 9 byte cat program
23:35:49 <ehird> not bad, ey?
23:35:58 <ehird> 6 instructions, 9 bytes
23:36:20 <ehird> 00000000 00110100 00001000 01111110 01010110 10011000 11000000 00001111 10000000
23:37:08 <oklopol> no it's not bad
23:37:13 * ehird writes yael interp 'cuz why not
23:38:03 <oklopol> ya w nut.
23:38:07 <oklopol> *y
23:40:03 <impomatic> The Hello World from Wikipedia outputs a different string. No comma, but a newline
23:40:18 <ehird> ah.
23:40:21 <ehird> so what :-)
23:45:38 <ehird> oklopol: problem with implementing yael: you have to split bytse apart :(
23:45:44 <ehird> because shit can go across byte lines and stuff
23:46:07 <oklopol> ehird: yeah. are you surprised? :P
23:46:10 -!- jix has quit ("...").
23:46:20 <ehird> no :D
23:46:45 <ehird> oklopol: what is hello world in cise
23:46:47 -!- yuri815 has quit.
23:46:48 <ehird> ?
23:47:04 <oklopol> it's not actually hard though, it's just slower
23:47:07 <oklopol> err.
23:47:22 <oklopol> wait
23:47:51 <oklopol> hmm.
23:47:59 <oklopol> i have no idea how to output stuff :P
23:48:11 <oklopol> i usually don't care much for that practical nonsense
23:48:20 <oklopol> wait.
23:48:23 <oklopol> actually...
23:48:25 <oklopol> i think it's H
23:48:28 <ehird> so
23:48:30 <ehird> H"Hello, world!
23:48:31 <ehird> ?
23:48:41 <oklopol> no... i think printing hello world is H... :P
23:48:46 <ehird> hahah
23:48:51 <ehird> ok what about printing hello world sans cheatin
23:48:52 <ehird> g
23:49:00 <oklopol> iirc i decided Q and H should be in the instr set for luls
23:49:28 <oklopol> it would just be "Hello world", plus 1 or 2 characters of function before it if i add a print command
23:49:53 <ehird> wow, how verbose
23:49:54 <ehird> golfscript is
23:49:57 <ehird> "Hello, world!"
23:50:20 <oklopol> it prints the stack after running the program?
23:50:26 <ehird> yeah, pops and prints
23:50:31 <ehird> and puts input first on stack before running
23:50:43 <oklopol> right, right.
23:52:25 <oklopol> cise could well work like that too, have input as the program's param, apply the program to it, print result
23:52:49 <oklopol> but, well, i'm more interested in the more interesting aspects.
23:53:25 <ehird> hmm
23:53:39 <ehird> what can make an assembly language really concise is good comparison jumps, I think
23:53:43 <ehird> like C's switch(){}
23:55:06 <oklopol> so how about designing such a basic instruction set you're writing in computation itself?
23:55:38 <ehird> oklopol: wut?
23:55:40 <ehird> :P
23:55:55 <oklopol> ehird: well, on second thought, that made absolutely no sense.
23:56:05 <oklopol> but still, it's worth considering.
23:56:20 <ehird> that's basically a OISC
23:56:27 <ehird> "what operation embodies the fundamental operation of computing?"
23:59:04 <oklopol> that's not nearly as fundamental as i had in mind
23:59:29 <oklopol> i'm talking so low-level you may not even be able to implement it in this universe.
23:59:38 -!- Corun has quit ("Leaving").
23:59:38 <oklopol> there's simply too much computation going on no matter what you do
23:59:55 <ehird> lol
2009-01-25
00:00:08 <oklopol> you can't reach the level i'm talking about. the absolute bottom of informational computationality.
00:00:22 <oklopol> so.
00:00:29 <ehird> i think the fundamental imperative computational is something like:
00:00:39 <oklopol> in other words i think i should sleep
00:00:48 <ehird> Perform an operation on two values and put the result somewhere, then go somewhere else depending on the result.
00:01:07 <ehird> so let's say
00:01:12 <ehird> sjz A B C
00:01:16 <ehird> A and B are memory addresses
00:01:23 <oklopol> "go" "put" "perform"
00:01:26 <ehird> subtracts the value in A and the value in B
00:01:34 <ehird> and puts the result in B
00:01:38 <ehird> then, if the result is zero
00:01:40 <ehird> it jumps to C
00:01:44 <ehird> otherwise, execution continues as normal
00:02:00 <ehird> good?
00:02:19 <ehird> equality comparison:
00:02:21 <oklopol> that's so compicated i can't understand it, let alone read or see it.
00:02:25 <ehird> sjz A B notequal
00:02:26 <oklopol> *complicated
00:02:28 <ehird> [its equal]
00:02:30 <ehird> notequal:
00:02:32 <ehird> [its not equal]
00:02:36 <kerlo> Notwithstanding, there is no Turing-complete language simpler than BCT.
00:02:42 <ehird> maybe.
00:02:47 <ehird> but i"m talking about instruction sets
00:02:49 <ehird> imperative unz
00:02:49 <kerlo> oklopol: is "equals" too complicated for you?
00:02:52 <oklopol> kerlo: you're wrong
00:02:55 <ehird> ocrap
00:02:57 <ehird> I invented subleq
00:02:58 <ehird> Execution of one instruction A B C subtracts the value of memory in A from the content of memory in B. If value after subtraction in B less or equal to zero, then execution jumps to the address C; otherwise to the next instruction.
00:03:05 <ehird> well, less or equal to zero
00:03:07 <kerlo> No, simplicity is objective and I'm always right.
00:03:10 <ehird> so mine's kind of less complex
00:03:25 <oklopol> kerlo: testing equality is pretty hard, yes
00:03:37 <kerlo> I never said testing equality.
00:03:43 <oklopol> so umm.
00:03:48 <oklopol> how about continuous computation
00:03:51 <kerlo> Proce.
00:03:55 <ehird> ok then:
00:03:55 <oklopol> you need an infinite amount of it to get anything done
00:03:57 <ehird> ej A B C
00:04:07 <kerlo> Proce.
00:04:08 <oklopol> programs are functions from reals to instruction fragments
00:04:11 <oklopol> proce?
00:04:13 <ehird> Reads A and B, if the values are equal, it stores 1 in B, otherwise it stores 0 in B.
00:04:16 <ehird> If they ARE equal, it jumps to C.
00:04:17 <impomatic> RSSB is less complex. One instruction and only one operand
00:04:24 <kerlo> Hmm.
00:04:24 <ehird> impomatic: link?
00:04:38 <ehird> i'm going for conceptual simplicity here
00:04:44 <ehird> so if RSSB does a lot, it doesn't qualify
00:04:47 <ehird> hmm you know what
00:04:53 <ehird> i think ej could possibly be TC
00:04:56 <ehird> if you scratched the storing
00:05:03 <oklopol> kerlo: proce?
00:05:09 <ehird> if the value in A is the value in B, jump to C. otherwise, continue as normal.
00:05:13 <ehird> dunno how you store things ofc :D
00:05:32 <oklopol> kerlo: so umm proce?
00:05:35 <kerlo> It's a programming language where every variable thingy is a function of real numbers.
00:05:48 <kerlo> You can implement the sine function very easily in Proce.
00:05:54 <oklopol> oh that lang of yours?
00:06:04 <kerlo> Yes.
00:06:07 <oklopol> that has nothing to do with what i said, but yeah, i remember it
00:06:20 <impomatic> See the RSSB page I made the other day http://esolangs.org/wiki/RSSB
00:06:29 <ehird> hrm
00:06:30 <ehird> interesting
00:06:37 <oklopol> essentially you have differential equations iirc
00:06:38 <ehird> but it has registers
00:06:40 <ehird> so not simple
00:06:45 <oklopol> which are automatically solved
00:06:53 <kerlo> Well, it had plenty to do with what you said until you said "programs are functions from reals to instruction fragments".
00:06:56 <oklopol> to get definitions for funcs involved
00:06:59 <kerlo> What do you mean by "instruction fragments"?
00:07:19 <ehird> impomatic: can't IP/ACC be in memory?
00:07:21 <ehird> like, at 0 and 1
00:07:31 <ehird> ah
00:07:32 <ehird> it is
00:07:37 <ehird> "The result is stored in both memory and the accumulator"
00:07:38 <ehird> both?
00:07:41 <ehird> surely that is not needed
00:07:46 <ehird> can't it just be in the accumulator/
00:07:47 <oklopol> kerlo: proce doesn't have continuous computation, it has computation applied on continuous things.
00:07:48 <kerlo> (Tough language: Programs are continuous functions from reals to reals where the image contains only integers.)
00:07:51 <oklopol> *applied to
00:08:03 <oklopol> hmm
00:08:17 <oklopol> kerlo: i have no idea what i mean by instruction fragments.
00:08:35 <kerlo> Oh.
00:08:48 <ehird> impomatic: ?
00:08:48 <oklopol> i mean continuous computation. instructions you can have any real amount of.
00:09:09 <impomatic> ehird: I'm not sure why the spec said both
00:09:20 * ehird writes simplified rssb
00:09:27 <oklopol> say you do instruction : 3.16 times, then # 87.001 times, and... umm... maybe something happens.
00:09:35 * kerlo nods
00:09:47 <ehird> impomatic: define below 0
00:09:52 -!- puzzlet_ has quit (Remote closed the connection).
00:09:56 -!- puzzlet has joined.
00:09:57 <ehird> signed integers in an architechture? Perverse.
00:10:03 <oklopol> kerlo: i'm just trying to think outside the box, computation's always so discrete and boring.
00:10:13 <impomatic> below 0: if the subtraction causes a borrow
00:10:41 <kerlo> So, memory is a continuous function from R.
00:10:47 <impomatic> There's a redcode implementation at http://impomatic.blogspot.com
00:10:51 <ehird> impomatic: i don't follow
00:10:54 <ehird> essplain?
00:10:56 <ehird> you mean like
00:11:00 <ehird> 1-2
00:11:00 <kerlo> And, um...
00:11:05 <oklopol> kerlo: yeah maybe, and instructions perform on single values
00:11:06 <ehird> despite not being below 0
00:11:08 <ehird> since there's no such thing
00:11:10 <ehird> counts as it?
00:11:14 <impomatic> Yes
00:11:18 <ehird> okie
00:11:26 <oklopol> kerlo: so you need an uncountable amount of them to get anything done
00:11:46 <impomatic> Basically if prior to the subtraction, acc > contents of memory location, skip the next instruction
00:12:10 <ehird> mem locs: 0 ip, 1 accumulator, 2 always contains 0, 3 input, 4 output
00:12:11 <ehird> Instruction: Subtract the accumulator from the contents of the operand, and
00:12:12 <ehird> store it in the accumulator. If this caused a borrow, jump to the instruction
00:12:14 <ehird> past the next one.
00:12:20 <ehird> simplified
00:12:22 <oklopol> kerlo: also flow control isn't jumping, it's more like slowly fading into another kind of computation, and somehow implement this by finding the conceptual integral of what the fading computation will achieve during its infinite fade.
00:12:23 <kerlo> An instruction is a continuous function f : <state> x real number -> <state> such that f(f(x,a),b) = f(x,a+b).
00:12:31 <kerlo> For all x, a and b.
00:12:36 <ehird> impomatic: so is there a reason it has to be stored in both?
00:12:59 <impomatic> There is an implementation of RSSB by David Tanguay, but I can't find a copy online
00:12:59 <kerlo> s/real number/non-negative real number/
00:13:11 <ehird> impomatic: ?
00:13:23 <impomatic> ehird: I just implemented as per David Tanguay's spec
00:13:26 <ehird> yeah
00:13:33 <ehird> I'm just wondering if only storing in the acc could be simpler
00:13:41 <oklopol> kerlo: that's a bit too concrete at this point.
00:13:49 <kerlo> Is not.
00:13:54 <oklopol> you don't want to have your functions be discrete objects....
00:14:10 * kerlo shrugs
00:14:13 <oklopol> they need to be continuous computation
00:14:13 <ehird> wait
00:14:18 <ehird> storing it in just one is useless
00:14:20 <ehird> hrm
00:14:21 <ehird> but both is ugly
00:14:33 <ehird> i think the accumulator is a hack
00:14:42 <oklopol> kerlo: i guess that's pretty much the definition of continuous computation though :P
00:14:48 <bsmntbombgirl> the accumulator is a lie
00:14:52 <oklopol> hmm or not.
00:15:16 <oklopol> kerlo: but err, probably a good definition.
00:15:23 <impomatic> ehird: if it only stores in acc, there's no way to modify memory. if it only stores in memory, then the only thing you can do with acc is set it to zero
00:15:45 <ehird> yeah
00:15:49 <ehird> still
00:15:51 <ehird> it's ugly
00:16:12 <kerlo> The set Q consists of all continuous functions Q -> Q.
00:16:27 <kerlo> Q is the least fixed point of that.
00:16:40 <kerlo> Or, if you prefer, the union of all fixed points of that.
00:16:47 <ehird> impomatic:
00:16:47 <ehird> sjlz a b: Subtract the contents of a from the contents of b, and store the
00:16:48 <ehird> result in b. If this caused a borrow, skip the next instruction.
00:16:52 <ehird> much more conceptually pure
00:16:54 <oklopol> kerlo: sounds feasible
00:16:58 <ehird> and only one more operand
00:18:34 <kerlo> I is in Q, as for all x in Q, x is in Q, and if a set S of Q's is open, its preimage under I (that is, S) is also open.
00:19:13 <oklopol> kerlo: I as in identity?
00:19:16 <kerlo> For all x in Q, K x is in Q, as for all y in Q, x is in Q, and if a set S of Q's is open, its preimage under I (either Q or empty) is also open.
00:19:23 <kerlo> I is identity combinator, K is constant combinator.
00:19:23 <oklopol> right.
00:19:30 <oklopol> yeah you answered that already
00:20:02 <oklopol> kerlo: did you invent Q just now?
00:20:20 <kerlo> Yes.
00:20:48 <oklopol> "if a set S of Q's is open, its preimage under I (that is, S) is also open" i don't understand this
00:20:59 <ehird> outputting a
00:21:00 <ehird> a out
00:21:00 <oklopol> but then again, you're the abstract nonsense guy :P
00:21:01 <ehird> =a 97
00:21:05 <ehird> where a out -> ajlz a out
00:21:13 <ehird> and =a 97 defines a bit of memory with that value in.
00:21:26 <ehird> ajlz a b: Add the contents of a to the contents of b, and store the result in b.
00:21:26 <ehird> If this caused an overflow, skip the next instruction.
00:21:30 <kerlo> The preimage of S under I is S. Therefore, if a set S is open, its preimage under I is also open.
00:21:36 <kerlo> And yeah, I love abstract nonsense.
00:21:47 <oklopol> yeah who doesn't
00:22:07 <oklopol> preimage of x = the set of things that map to x?
00:22:13 <ehird> also
00:22:22 <ehird> here's a one-instruction one-character cat program
00:22:24 <ehird> in out
00:22:24 <ehird> :-D
00:22:27 * ehird makes it loop
00:23:00 <kerlo> oklopol: the set of things that map to elements of x.
00:23:24 <oklopol> kerlo: that's what i meant
00:23:27 <ehird> impomatic: how do you jump backwards with rssb?
00:23:31 <oklopol> liek, map into x
00:23:38 <oklopol> but yeah okay
00:24:30 <oklopol> kerlo: what's the significance of the "and if a set S of..." part?
00:24:36 <kerlo> For K to be in Q, it must be a function Q -> Q (it is) and it must be continuous. For it to be continuous, the preimage of every open set must be open.
00:25:05 <oklopol> oh. that's a definition for being continuous?
00:25:09 <kerlo> Yep.
00:25:13 <oklopol> ah, alright.
00:25:16 <ehird> impomatic: how do you jump backwards with rssb?
00:25:23 <oklopol> i'm quite new to this still
00:25:32 <impomatic> ehird: subtract something from ip
00:25:50 <ehird> ah
00:26:15 <ehird> and we all know that subtracting is a special case of addition ;-)
00:26:38 <oklopol> kerlo: oh actually i think i see how that relates to the crucial axiom of dedekind sets
00:26:42 <kerlo> The preimage of a set under K is {x : K x is in the set}, of course. And, um... bah, I'm going to ask #math a question.
00:27:12 -!- CakeProphet has joined.
00:27:16 <impomatic> Jump requires 4 lines of RSSB:
00:27:16 <impomatic> rssb acc ; set acc to 0
00:27:17 <impomatic> rssb $+2 ; set acc to loop offset
00:27:17 <impomatic> rssb ip ; subtract acc from ip
00:27:17 <impomatic> rssb $-loop ; the loop offset
00:28:32 <ehird> then my infinite cat program is
00:29:14 <ehird> ajof 3 4
00:29:17 <ehird> ajof 2 0
00:29:29 <ehird> 3=input 4=output 2=maximum int (4294967295) 0=ip
00:29:34 <ehird> ajof a b: Add the contents of a to the contents of b, and store the result in b.
00:29:34 <ehird> If this caused an overflow, skip the next instruction.
00:29:50 <ehird> hrm.
00:29:58 <ehird> actually since the whole idea there is to overflow that doesn't work. i think
00:30:36 <impomatic> Is there a brainfuck variant which adds a stack?
00:30:46 <ehird> many. but brainfuck sucks :P
00:30:52 <kerlo> Darn, the answer is "no".
00:31:30 <ehird> hmm
00:31:31 <ehird> I thought
00:31:31 <ehird> max max
00:31:33 <ehird> in out
00:31:35 <ehird> in out
00:31:37 <ehird> max ip
00:31:39 <ehird> but then when it loops, it runs it twice
00:31:45 <ehird> (max max doesn't touch max, ofc, since it's constant)
00:31:53 * kerlo ponders the definition of a neighborhood of an element of Q
00:32:00 <ehird> impomatic: any thoughts?
00:32:04 <oklopol> kerlo: yes i looked
00:32:17 <oklopol> kerlo: what are neighborhoods?
00:33:07 <impomatic> Back tomorrow :-)
00:33:11 -!- impomatic has quit ("mov.i #1,1").
00:33:29 <kerlo> A neighborhood of a point is a superset of an open set containing that point.
00:33:40 -!- ktne has left (?).
00:33:48 <oklopol> hmm. i'm not sure #math with appreciate your set
00:34:02 <ehird> okay so
00:34:05 <ehird> complete spec:
00:34:06 <ehird> 0 is ip, 1 contains 0, 2 contains max int (4294967295), 3 is input, 4 is output
00:34:07 <ehird> ajof a b: Add the contents of a to the contents of b, and store the result in b.
00:34:09 <ehird> If this caused an overflow, skip the next instruction.
00:34:11 <ehird> go forth and write progz >:(
00:34:20 <ehird> ps ajof a b can be written as ... a b
00:34:30 <oklopol> kerlo: okay right.
00:34:49 <ehird> :3
00:35:06 <kerlo> f is near g if and only if for all x, f(x) is near g(x). Unfortunately, "near" doesn't mean anything.
00:35:46 <kerlo> In a neighborhood F of f, for all x, F(x) is a neighborhood of f(x), I think.
00:36:31 <oklopol> kerlo: btw that's a pretty weird definition, like, (2,4) U {0} would be a neighborhood of 3?
00:36:51 <kerlo> I believe so.
00:37:03 <oklopol> probably would be less weird if i saw uses.
00:37:27 <ehird> someoneeeeee
00:37:34 <oklopol> kerlo: i'm not sure you understand what Q is.
00:37:42 <kerlo> What do you think Q is?
00:37:56 <kerlo> Nonexistent due to a power set cardinality theorem?
00:37:58 <oklopol> well i mean; how can a function from functions to functions be continuous?
00:38:33 <oklopol> kerlo: well my intuition says there might be a problem like that, but i don't actually know. what i do know is i don't understand what the definition even means.
00:38:38 <kerlo> I believe that for all topological spaces P and Q, there is a standard topological space P -> Q.
00:38:51 <oklopol> kerlo: problem is i don't know topology
00:39:15 <oklopol> you see i started doing math this fall. i'm doing integrals and groups now.
00:39:25 * kerlo nods
00:40:26 <oklopol> btw. gotta sleep i think.
00:41:13 <oklopol> -->
00:45:57 -!- oklopol has quit ("( www.nnscript.com :: NoNameScript 4.2 :: www.regroup-esports.com )").
00:56:12 -!- GreaseMonkey has joined.
01:17:28 -!- GreaseMonkey has quit ("Client Excited").
01:27:00 -!- Corun has joined.
01:35:46 -!- Corun_ has joined.
01:42:40 -!- FireFly has quit ("Later").
01:50:28 -!- Corun has quit (Connection timed out).
02:20:40 <psygnisf_> wtf is this "instantaneous computation"?
02:20:56 <psygnisf_> and "strong synchronous programming"? D:
02:21:29 <Slereah2> You enter shit, and bam! It's computed!
02:21:34 <psygnisf_> :P
02:25:33 -!- Corun_ has quit ("This computer has gone to sleep").
02:38:31 <GregorR> Uh?
03:17:40 -!- GreaseMonkey has joined.
04:11:23 -!- GregorR has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The Freshmaker!.
04:16:32 -!- Sgeo has joined.
04:31:31 -!- psygnisf_ has quit ("Leaving...").
06:10:41 -!- Sgeo_ has joined.
06:28:31 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
06:29:01 <GregorR> A Dorponnified Talliachre is a lunchbox! It makes clicking noises!
06:29:37 <GregorR> Gregor is a lightbulb that floats in water! It pushes things down staircases and works underwater.
06:34:46 <GregorR> A woman is like a normal cricket bat, but it squirts clouds of black ink.
06:34:56 <GregorR> A man is like a normal pogo stick, but it's inflammable.
06:36:19 <GregorR> A pogo stick is a hair gel that fits in your pocket! It crushes ice.
06:36:29 <GregorR> Hair gel is a speaker system that's great for hammering in nails! It emits dangerous radiation and repairs itself.
06:36:40 <GregorR> I'm done :P
06:39:54 -!- Sgeo_ has quit ("Leaving").
07:05:21 -!- GreaseMonkey has quit ("Client Excited").
07:13:03 <bsmntbombgirl> good god
07:13:08 <bsmntbombgirl> what is this /topic
07:50:57 -!- spicule has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:06:05 -!- spicule has quit ("Leaving").
09:07:25 -!- SpaceManPlusPlus has joined.
09:13:02 -!- MigoMipo has joined.
09:25:46 -!- oklopol has joined.
09:27:07 -!- SpaceManPlusPlus has quit (Read error: 110 (Connection timed out)).
10:37:59 * oklopol is listening to some quality heavy metal bashing: http://www.vjn.fi/s/black.mp3
11:11:37 -!- Mony has joined.
11:12:41 <Mony> plop
11:39:39 -!- FireFly has joined.
12:02:37 -!- Judofyr_ has joined.
12:05:35 -!- Judofyr has quit (Nick collision from services.).
12:05:51 -!- Judofyr_ has changed nick to Judofyr.
12:17:59 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
12:28:55 -!- jix has joined.
12:30:52 -!- Slereah has joined.
12:35:08 -!- MigoMipo has joined.
12:42:44 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
12:49:43 -!- Corun has joined.
12:56:43 -!- MigoMipo has left (?).
13:09:43 -!- Corun has quit ("Leaving").
13:09:54 -!- Corun has joined.
13:24:12 -!- oklopol has quit (Read error: 60 (Operation timed out)).
13:42:45 -!- impomatic has joined.
13:49:05 <impomatic> 112 Hello, World! ++++++++++++++[>+++++>+++++++>+++>+<<<<-]>++.>+++.+++++++..+++.>++.>[<-<<+>>>-]<++.<<+.>.+++.------.--------.>+.
13:59:45 -!- ehird has left (?).
14:00:03 -!- ehird has joined.
14:00:42 <ehird> <impomatic> 112 Hello, World! ++++++++++++++[>+++++>+++++++>+++>+<<<<-]>++.>+++.+++++++..+++.>++.>[<-<<+>>>-]<++.<<+.>.+++.------.--------.>+.
14:00:44 <ehird> neato!
14:02:44 <impomatic> Hi Ehird. 1 instruction longer than Wikipedia, but it includes the comma.
14:02:56 <ehird> does it include the newline
14:03:00 <impomatic> No
14:03:08 <ehird> you really want a newline :p
14:03:28 <impomatic> Some of the other examples didn't have newline
14:03:35 <ehird> hrm.
14:03:39 <ehird> It is standard to terminate with 10, thoug
14:03:39 <ehird> h
14:03:45 <ehird> err, not 10 newlines :P
14:08:50 -!- Corun has quit ("This computer has gone to sleep").
14:30:23 -!- Judofyr has quit (Remote closed the connection).
14:34:50 -!- luqui has joined.
14:35:22 <ehird> gah omg
14:35:25 <ehird> 2008-01-18
14:35:25 <ehird> 00:42:31 --- nick: oklopol -> Z
14:35:26 <ehird> 00:42:46 --- nick: Z -> oklopol
14:35:28 <ehird> 00:42:59 <oklopol> too late
14:35:31 <ehird> oklopol you let it get away
14:35:38 <ehird> uhhhh
14:35:39 <ehird> hi people
14:35:42 <ehird> :|
14:35:47 <ehird> ^bf ,[.,]!brainfuck. etc.
14:35:48 <fungot> brainfuck. etc.
14:41:06 <impomatic> Lol at censoring brainfuck to b****fuck :-)
14:43:33 <ehird> :)
14:48:15 <Mony> lol
14:48:57 <impomatic> Anyone want to implement Redcode++? http://corewar.co.uk/opcodes.htm
14:49:31 <Mony> sweet
14:50:00 <Mony> I wanted to make a esolang like this
14:50:04 <Mony> but now, it's too late :o
14:51:21 -!- oerjan has joined.
14:51:30 <ehird> wait
14:51:32 <ehird> redcode++? ew
14:51:35 <ehird> why not just
14:51:36 <ehird> recode
14:51:36 <ehird> :P
14:52:02 * oerjan thinks that looks like the end of a haiku
14:52:19 <ehird> Yael still beats redcode
14:52:33 <ehird> 15 instructions
14:52:35 * AnMaster wonders...
14:52:38 <AnMaster> SQL++?
14:52:39 <AnMaster> :D
14:52:39 <ehird> admittedly, you only get 256 bytes of memory.
14:53:03 <ehird> AnMaster: Newsflash: taking SQL and bashing something on the end of it is not the source of a thousand hilarious ideas.
14:53:06 <ehird> as much as you want it to be.
14:53:49 <AnMaster> ehird, actually C++ style object orientation bolted onto SQL would be quite nasty
14:53:57 <ehird> nasty != interesting and funny
14:54:01 <AnMaster> I mean even nastier than it already is
14:54:14 <ehird> in as much as the same way as a language based on the holocaust would be "nasty"
14:54:32 <AnMaster> ehird, well said
14:54:45 <ehird> speaking of which, who wants to beta-test holocaust++ :p
14:55:07 <AnMaster> specs?
14:55:48 <oerjan> O_O
14:56:50 <oerjan> ehird: what about SQLCOATL?
14:56:52 <ehird> jew: Takes a random jew off the heap. gas(x): Gasses the jew x.
14:57:11 <ehird> When you have gassed as many jews as the nazis, it executes the remaining program as Perl.
14:57:16 <AnMaster> also: QUERY foo = NEW QUERY('SELECT * FROM mytable'); foo.EXECUTE();
14:57:17 <AnMaster> ;P
14:57:28 -!- luqui has left (?).
14:57:52 <oerjan> the great database serpent
14:58:02 <AnMaster> oerjan, :D
14:59:44 <oerjan> oh wait
14:59:57 * oerjan realizes that holocaust++ was made up on the spot here
15:00:06 <oerjan> i was starting to worry about ehird
15:00:49 <ehird> hee
15:01:13 <Slereah> The holocaust never happened, silly man
15:01:42 <AnMaster> oerjan, SQLULHU?
15:01:58 <oerjan> AnMaster: doesn't roll that well off the tentacle
15:02:08 <AnMaster> true
15:02:16 <AnMaster> hard to pronounce
15:02:20 <oerjan> Slereah: from you this is expected
15:02:21 -!- Judofyr has joined.
15:02:37 <oerjan> SQLHU perhaps
15:02:55 <Slereah> oerjan : You expect that from a jew?
15:02:57 <Slereah> Racist
15:03:06 <AnMaster> oerjan, hm maybe
15:03:10 <oerjan> Slereah: you've done so before
15:03:32 <oerjan> jew bashing, that is
15:03:56 <oerjan> actually there is probably some jew somewhere denying the holocaust
15:04:53 <AnMaster> oerjan, btw: wtf at iwc today
15:04:58 <oerjan> i mean i vaguely recall hearing about neo-nazi jews
15:05:07 <oerjan> AnMaster: um no spoilers
15:05:21 <oerjan> that's next on my schedule :D
15:05:22 <Asztal> I always read that as neon-nazis
15:05:27 <Asztal> it sounds so much cooler than it is
15:06:08 <oerjan> much easier to hit them when lighted up
15:07:05 <oerjan> ah the Espionage theory was right
15:07:38 <oerjan> er wait, disregard, SPOILER :D
15:08:08 <AnMaster> oerjan, well, it could be a red hearing
15:08:24 <AnMaster> http://www.irregularwebcomic.net/draakslair/viewtopic.php?t=3190
15:08:33 <oerjan> no i mean the theory that since it wasn't in the list, it had escaped unscathed
15:09:10 <AnMaster> oerjan, that could be a red hearing
15:09:25 <oerjan> >_<
15:09:38 <oerjan> um wait are you misspelling that on purpose?
15:09:46 <AnMaster> oerjan, no?
15:09:48 <AnMaster> oops
15:09:51 <AnMaster> herring*
15:10:05 <AnMaster> oerjan, why should I misspell it on purpose?
15:10:15 <oerjan> another awful pun attempt of course
15:10:26 <AnMaster> I can't see how that could be a pun
15:10:27 <AnMaster> at all
15:10:38 <ehird> I can't see how any of your "puns" could be a pun.
15:10:40 <oerjan> good, good
15:11:00 <oerjan> AnMaster: now we're just missing a Supers strip
15:11:15 <AnMaster> ehird, Chehkov's pun
15:11:17 <AnMaster> sorry!
15:12:02 <oerjan> http://tvtropes.org/pmwiki/pmwiki.php/Main/ChekhovsPun
15:12:14 <AnMaster> it exists?
15:12:23 <oerjan> (standard tvtropes warning applies)
15:12:31 <oerjan> but of course
15:13:44 <oerjan> oh it's a tvtropes meta-thing
15:14:00 <oerjan> and self-referential too :D
15:14:55 <AnMaster> huh, very confusing
15:14:58 -!- impomatic has quit ("http://impomatic.blogspot.com").
15:15:20 <AnMaster> oerjan, oh btw uf was quite funny today
15:15:32 <AnMaster> as for the current xkcd: I don't get it
15:15:37 <oerjan> it's about making new trope names by making puns on completely unrelated ones
15:15:57 <oerjan> uf?
15:16:10 <ehird> uf=userfriendly. shit comic.
15:16:39 <AnMaster> too long running
15:16:49 <ehird> no. too shit
15:16:52 <AnMaster> isn't it over 10 years now? daily
15:17:21 <AnMaster> ehird, would you say garfield is shit?
15:17:35 <ehird> Why is that even a question? Who the fuck would say "no"?
15:17:48 <AnMaster> I agree. But some of the early ones aren't as bad
15:17:49 <oerjan> AnMaster: you don't want your genetic algorithm to develop sentience and destroy the world, is the point
15:17:52 <ehird> no
15:18:04 <ehird> all garfield comics are irredeemably terrible
15:18:07 <AnMaster> oerjan, true, but xkcd wasn't very good today
15:18:11 <ehird> and anyone who likes them has some sort of mental defect
15:18:13 <AnMaster> or whatever it was
15:18:14 <ehird> also, xkcd was hilarious.
15:18:15 <oerjan> it was yesterday
15:18:18 <AnMaster> Friday?
15:18:27 <ehird> if you want to read xkcd it's best to know pop culture.
15:18:39 <oerjan> Monday, Wednesday, Friday, 5:00 UTC
15:18:55 <ehird> http://www.google.com/search?q=skynet
15:19:00 <AnMaster> square root of minus garfield rocks though
15:19:05 <AnMaster> ehird, yes I did google it
15:19:17 <AnMaster> but I didn't get the other things, like fuel and such
15:19:28 <ehird> umm, those weren't part of the joke.
15:19:34 <ehird> those were part of a regular genetic algorithm.
15:19:34 <ehird> duh.
15:19:36 <AnMaster> hm ok
15:19:45 <ehird> Sources: the _huge freaking arrow_ pointing to the skynet.
15:22:17 * oerjan reads the annotation and realizes why AnMaster spoke about red herrings
15:22:33 <AnMaster> oerjan, and read the forum
15:22:54 <oerjan> later, bus ->
15:23:01 -!- oerjan has quit ("leaving").
15:24:02 * ehird reads logs and rediscovers that `vi` is a 4-character ruby infinite loop
15:24:04 <ehird> perl too
15:25:00 <AnMaster> I wonder who many read xkcd? I mean I googled for some of those phrases in the last blag post and got over 200 000 posts for some...
15:25:09 <AnMaster> (that he said was original when he tried)
15:25:29 <AnMaster> afk
15:25:31 <ehird> ~34974
15:25:43 <ehird> 34974 is the forum members. about 10% of people join the forum, I bet.
15:25:48 <ehird> so 300000
15:25:50 <ehird> ors o
15:25:51 <ehird> *or so
15:25:58 <ehird> probably more.
15:26:38 -!- BeholdMyGlory has joined.
15:29:38 <Asztal> I'd guess 10% is a very optimistic figure
15:30:33 <ehird> yeah
15:30:40 <ehird> probably 2% or something
15:30:47 <ehird> i mean, i never looked at the forum
15:31:06 <AnMaster> I have looked at it if I was linked by someone else
15:31:09 <AnMaster> but that is all
15:33:08 -!- ais523 has joined.
15:51:26 <ehird> hi ais523.
15:51:31 -!- Hiato has joined.
15:51:33 <ais523> hi
15:51:38 <ais523> to both ehird and Hiato
15:51:50 <ais523> who I have different reasons to say hi to, ehird because he just said hi, and Hiato for just joining
15:51:52 <ehird> i was 20 minutes late
15:51:52 <ehird> :)
15:52:07 <Hiato> Well hello ais523, glad I could 'just join' you :P
16:17:23 <AnMaster> hi ais523
16:24:26 <ais523> hi AnMaster
16:24:54 <AnMaster> bbl
16:26:55 -!- Metcalf has joined.
16:27:47 <ehird> hi Metcalf
16:28:21 <Metcalf> Hi
16:28:49 <Metcalf> Should I remove this from the Brainfuck wiki page, or add a note to say it doesn't work? http://max.subfighter.com/tools/brainfuck.php?subsite=eso
16:28:57 <ais523> add a note to say it doesn't work
16:29:07 <ais523> sometimes we try to find pages in Wayback
16:29:15 <ais523> as esoprogramming links tend to break pretty quickly
16:30:03 <Metcalf> ais523: the page hasn't disappeared. The JavaScript Brainfuck interpretter doesn't work. I think the problem is with nested loops.
16:30:33 <Metcalf> Example should display ijk: +++[>+++++[>+++++++[>+<-]<-]<-]>>>.+.+.
16:30:37 <ais523> oh, in that case all the more so say it's a non-working interp
16:30:49 <ais523> I'm surprised how many non-working BF interps there are out there, actually
16:30:51 <Metcalf> Works on this interpreter
16:30:52 <ais523> given it's such a simple language
16:31:04 <ais523> ^bf +++[>+++++[>+++++++[>+<-]<-]<-]>>>.+.+.
16:31:04 <fungot> ijk
16:31:30 <ais523> I remember a while back sampling how the BF interps linked from the esowiki that I could easily test handled EOF
16:31:49 <ais523> conventional wisdom here is that 0, -1, and no-change are the only three sane values, with arguments about the merits of each
16:32:08 <ais523> I came across all sorts of other values, though, like 32 and error
16:32:14 <ehird> i don't think many people argue for -1 nowadays
16:32:16 <ehird> so it's 0 vs no-change
16:32:35 <ehird> and there are programs that work with 0 but not no-change, yet all(?) no-change programs do [-], to loop anyway
16:32:38 <ehird> so 0 is prolly the best choice
16:34:11 <ais523> ehird: -1 is clearly correct if you have bignum cells
16:34:26 <ais523> inability to input NUL is just ridiculous
16:34:31 <ehird> is that a joke?
16:34:36 <ais523> no, it isn't
16:34:41 <ehird> BF cells are unsigned.
16:34:47 <ais523> ehird: not in bignum
16:34:53 <ehird> ummmmm, yeah.
16:34:58 <ais523> because you can't wrap from 0 to +infinity
16:35:08 <ehird> bignum interps don't wrap.
16:35:16 <ehird> they error on - at 0
16:35:17 <ais523> hmm... arguably, they ought to
16:35:23 <ehird> no.
16:35:26 <ehird> not arguably
16:35:42 <ais523> for instance, making [-] clear a cell in a bignum interp would be kind-of cleve
16:35:43 <ais523> *clever
16:35:48 <ais523> even if it accepted negative numbes
16:35:52 <ais523> but doable, I think
16:36:05 <AnMaster> back
16:36:07 <ais523> you'd have to do a lot of converting loops to polynomials to get that to work, thuogh
16:36:55 <ais523> anyway, I strongly disagree with a system which makes it possible to have a character the interpreter is incapable of reading
16:37:10 <ais523> which is an argument for no-change on bignum I suppose
16:37:19 <ais523> because you could set the cell to 0x110000 or something before reading
16:37:24 <ais523> even though that would take a while
16:38:12 -!- Metcalf has changed nick to impomatic.
16:40:04 <AnMaster> ais523, you could do it another way: out-of-band signaling?
16:40:14 <ais523> AnMaster: in Brainfuck?
16:40:18 <ais523> you'd have to redefine the language spec
16:40:27 <AnMaster> ais523, yes indeed
16:40:35 <ais523> I agree that might make sense for a new language, but not for a language as established as BF
16:40:37 <AnMaster> you have input store error code in one cell above
16:45:08 <ehird> <ehird`> molchuvka: the fuel that powers the steam engine that creates nightmares
16:45:15 <ehird> 2007-10-03
16:45:30 <ais523> ah, delving into the history of #esoteric
16:45:37 <ehird> yeah, I do this a lot.
16:45:37 <ais523> back when someone had stolen ehird's nick
16:45:43 <ehird> it's more fun than the present-day #esoteric :P
16:45:44 <ais523> the memories
16:46:01 <ais523> hmm... I need to finish Underlambda sometime
16:46:08 <ais523> and start the Great Esolang Compilation Project
16:46:20 <ehird> mm
16:46:28 <Slereah> ais523 : EsCo?
16:46:33 <ehird> funny thing is...
16:46:37 <ais523> Slereah: no, that's just to interpret things
16:46:38 <ehird> This channel was similar to how it is now in 2002-2003.
16:46:43 <ehird> Not actual esolang discussion.
16:46:49 <ehird> Just a few active people talking about random crap.
16:46:54 <ais523> I want a project that can compile any esolang into any other, as long as they're both TC
16:47:00 <Slereah> I resemble that remark >:|
16:47:18 <ais523> and write an interp for any esolang in any other, why not
16:47:42 <ais523> if you have the compilers themself written in an esolang, you need just the one interp and you can combine it with a couple of compilers to get an anything-to-anything interp
16:47:44 <ehird> I love how in 2002 lament set the topic to "this channel is not dead aummmmmmmmm"
16:47:46 <ehird> or something
16:47:53 <ehird> and yet it only gets more active over time
16:47:53 <Slereah> ais523 : Wouldn't that priject be gigantic?
16:47:58 <ais523> Slereah: pretty much
16:47:59 <Slereah> Or do you just mean the big esolands?
16:48:08 <ais523> I'll start with the famous ones, I think
16:48:11 <Slereah> Also I can't type today
16:48:22 <ais523> maybe make a generic BF-equivalent-compiler, that would handle half of them
16:54:15 -!- jix has quit ("Computer has gone to sleep").
16:55:58 <ehird> <Twitter> Error(461): #twitter Unable to update @replies. Twitter Fail Whale.
16:55:59 <ehird> >:(
16:56:48 -!- Hiato has quit (Read error: 110 (Connection timed out)).
17:01:06 <impomatic> Does anyone know what the smallest bf quine is?
17:01:37 <ais523> impomatic: the null string
17:01:40 <ais523> I'm not sure what it is without cheating
17:03:22 <ehird> dbc's
17:03:24 <ehird> prolly
17:03:36 <ehird> http://www.hevanet.com/cristofd/brainfuck/392quine.b
17:03:42 <ais523> is that the shortest possible, or just the shortest known?
17:03:49 <ehird> shortest known
17:04:01 <ehird> "(392 may be the shortest real one known)" -http://www.hevanet.com/cristofd/brainfuck/
17:06:15 <impomatic> Thanks :-)
17:14:45 -!- oklopol has joined.
17:33:06 <impomatic> Revised bf interpreter in Redcode http://impomatic.blogspot.com/2009/01/brainf-interpreter-in-redcode.html
17:33:37 <ehird> someone should implement my add-jump-if-overflow :P
17:33:44 * ehird digs up spec
17:34:03 <ehird> one operation:
17:34:13 <ehird> a b -- Add the contents of a to the contents of b, and store the result in b. If this caused an overflow, skip the next instruction.
17:34:23 <ais523> how does it do backwards jumps?
17:34:30 <ehird> special memory locations: 2=input 3=output 1=maximum int (4294967295) 0=ip
17:34:36 <ehird> ais523: overflow the ip
17:34:50 <ais523> impomatic: probably not very useful for actual CoreWars games, but it's always nice to have esolang-in-esolang implementations
17:35:06 <ais523> how does it handle EOF, by the way?
17:37:42 <impomatic> I'd have to check, I think there's a problem with the Redcode interpreter. When it reaches EOF, I think it continues to wait for a character.
17:37:57 <ais523> ah, ok
17:38:05 <ais523> sometimes underlying IO issues are impossible to work aruond
17:38:08 <ais523> *around
17:38:26 <ais523> I've actually been trying to design an IO system for Underlambda which is general enough to compile easily into anything
17:38:36 <ais523> hmm... I have to go but I'll be back soon, need to go to a different connection
17:38:42 -!- ais523 has quit ("mibbit.com: going to a different computer").
17:45:02 -!- MigoMipo has joined.
17:46:58 -!- ais523 has joined.
17:47:02 <ais523> wb me
17:47:48 <ais523> <sign I saw on the way here, presumably previously outside the Door but it had been moved> SECURITY DO NOT LOCK THIS DOOR, IT IS WORKING CORRECTLY
17:51:06 <AnMaster> ais523, moved where?
17:52:03 <ais523> AnMaster: to what appeared to be a storage place for not-in-use signs
17:52:11 <ais523> so presumably that Door has started malfunctioning again
17:52:22 <ais523> the other one seems to be working, but now has about 3 brand new control panels around it
17:54:17 <AnMaster> ais523, how hard can door be...
17:54:26 <ais523> exactly
17:54:41 <AnMaster> well of course it depends on what material it is made of ;P
17:54:42 <ais523> this is one of the main amusements in the constant tale of the Doors
17:55:00 <ais523> AnMaster: don't explain that, I got it first time
17:55:05 <AnMaster> great!
17:55:25 <AnMaster> ais523, anyway there is more than one door with issues?
17:55:48 <ais523> yes, there are two doors
17:55:50 <ais523> and they've both had issues
17:55:59 <ais523> there is a third door which doesn't but we're not allowed to use
17:56:03 <AnMaster> no other doors at the place has issues?
17:56:07 <ehird> ais523: start a blog about the doors!
17:56:14 <ehird> :p
17:56:17 <AnMaster> also why aren't you allowed to use the third one?
17:56:18 <ais523> AnMaster: well, it's just external doors here
17:56:22 <ais523> from inside to outside
17:56:41 <ais523> AnMaster: they thought that having too many usable doors for entering and leaving was a security risk
17:56:57 <AnMaster> ais523, they key word here I feel is "usable"
17:57:14 <ais523> heh
17:57:21 <ais523> they did have to open up the third one for a while
17:57:25 <ais523> just because the other two had gone so mad
17:57:32 <ais523> but that was a while ago now
17:57:42 <AnMaster> ais523, the third one continued working even when they opened it up?
17:58:00 <ais523> the third one's been working all along
17:58:07 <ais523> normally they set it to lock itself permanently, though, nowadays
17:58:08 <AnMaster> ais523, so make it the primary?
17:58:11 <ais523> but when they set it to do something else, it works
17:58:16 <ais523> and it's in an awkward place to be the primary
17:58:20 <AnMaster> oh
17:58:32 <AnMaster> also did you say "three control panels"+
17:58:34 <AnMaster> ?
17:58:54 <ais523> yes
17:58:56 <AnMaster> why more than one I wonder...
17:59:04 <ais523> because the first two didn't work?
17:59:11 <ais523> actually, I suspect one of them is actually for the air conditioning
17:59:15 <AnMaster> well if all three were brand new
17:59:17 <ais523> and it's just coincidence that it's next to the Door
17:59:18 <AnMaster> oh right
17:59:21 <ais523> but why spoil a good story?
17:59:27 <AnMaster> good point
18:01:31 -!- Corun has joined.
18:13:13 <ehird> graue used to have a very short fuse
18:13:15 <ehird> http://esolangs.org/w/index.php?title=User_talk:Stux&diff=2936&oldid=2935
18:14:12 <ais523> I remember that incident
18:14:36 <ehird> the category policy is pretty stupid
18:14:41 <ehird> it's a wiki...
18:14:46 <ais523> also, how rare to see an IP where all the numbers are less than 99?
18:14:59 <ehird> hm?
18:15:08 <ais523> look at the next edit
18:15:13 <ais523> which is Stux's reply
18:15:17 <ais523> from IP because he was blocked at the time
18:15:19 <ehird> ah, neat
18:16:53 <ais523> graue calmed down after a bit, anywya
18:16:56 <ais523> *anyway
18:17:10 <ais523> apparently the block was just to prevent the person causing any more damage before they saw the message telling them to stop
18:17:23 <ais523> and well-intentioned edits are sometimes blocked for the same reason in Wikipedia itself
18:17:30 <ais523> when someone isn't communicating
18:18:43 <ehird> it wasn't damage, though.
18:18:43 <ehird> :P
18:19:19 <ais523> it was from graue's point of view though, I think
18:19:42 <ais523> editing pages on a wiki is kind-of different from changing the set of pages that exist
18:19:51 <ais523> even though those are both considered fair game to tinker with on most wikis
18:20:01 <ais523> presumably graue wanted people to change the first but not the second
18:20:22 <ehird> meh. he's inactive enough for that policy to be irrelevant nowadays
18:21:28 -!- Hiato has joined.
18:23:31 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
18:47:19 -!- Mony has quit ("Quit").
19:00:58 -!- jix has joined.
19:06:59 <AnMaster> ais523, there?
19:07:24 <AnMaster> can you explain wtf is up with http://en.wikipedia.org/wiki/File:Erard_double_pilot_action.svg I just see a "transparency grid" there
19:07:32 <ais523> let me check
19:07:39 <AnMaster> full size works and so does thumbnail in articles
19:07:53 <ais523> AnMaster: well to confuse the issue, it works for me too
19:08:01 <ais523> visit http://en.wikipedia.org/wiki/File:Erard_double_pilot_action.svg?action=purge
19:08:04 <ais523> does that work?
19:08:09 <AnMaster> ais523, no it didn't help
19:08:11 <AnMaster> already tried that
19:08:18 <ais523> ok, that is strange
19:08:33 <ais523> do a browser cache reset?
19:08:35 <AnMaster> ais523, I'm not logged in, I don't have any account, could that affect
19:08:39 <ais523> it's control-F5 in firefox and IE
19:08:42 <AnMaster> and I tried ctrl-shift-r
19:08:45 <ais523> ok
19:08:59 <ais523> cache reset and purge, and it isn't working for you but it is for me?
19:09:02 <ais523> that's really odd
19:09:16 <AnMaster> ais523, ok now it suddenly works the fifth time or so...
19:09:24 <ais523> AnMaster: I just purged it
19:09:40 <ais523> and as purging is for all users, possibly my purge affected it for you
19:09:42 <AnMaster> ais523, maybe non-logged in can't purge?
19:09:52 <ais523> AnMaster: they can, but there's a click-through
19:09:53 <AnMaster> even though I clicked yes
19:09:55 <ais523> I wasn't logged in either
19:09:58 <AnMaster> ais523, I did click that
19:14:09 * ais523 just found http://en.wikipedia.org/wiki/Intelligent_falling
19:14:23 <ais523> the theory that gravity is incorrect, and some intelligent being causes things to fall
19:15:14 <Slereah> What about things that don't fall?
19:15:14 <AnMaster> ... maybe the flying spaghetti monster?
19:15:26 <ais523> who knows/
19:16:07 <Slereah> Balloons are of the devil
19:16:21 <Slereah> Especially devil shaped balloon
19:19:47 <ais523> hmm... it seems useless use of cat has evolved
19:19:54 <ais523> <some poster on Slashdot> cat "216.34.181.45 slashdot.org" >> /etc/hosts
19:20:23 <ais523> embarrassingly it took me a moment to spot what was wrong with that
19:24:45 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
19:24:48 <comex> what the fuck
19:25:36 <oklopol> what's the wrong?
19:25:41 <ehird> cat should be echo
19:25:42 <ais523> ofc, there is a command that does just that, it just isn't cat
19:25:45 <ehird> ais523: you missed the previous line
19:25:50 -!- puzzlet has joined.
19:25:58 <ehird> echo "127.0.0.1 slashdot.org" >"216.34.181.45 slashdot.org"
19:25:59 <ais523> ehird: didn't miss, messages crossed due to IRC and typing lag
19:26:05 <ehird> no
19:26:07 <ehird> the previous line of the post
19:26:08 <ehird> :P
19:26:13 <ais523> ehird: the post didn't say that
19:26:21 <ehird> what is humour
19:26:23 <ais523> although someone did comment on the fact that it might just be an oddly named file
19:26:32 <ehird> i don't understand, what is this humour you speak of
19:26:34 <ehird> i mean, jokes?? what
19:26:43 <AnMaster> indeed what are they?
19:27:06 <AnMaster> tell me ehird!
19:27:08 <AnMaster> (or not)
19:27:09 <ehird> it's funny because it's true.
19:27:31 <ais523> ehird: your joke just wasn't funny
19:27:42 <AnMaster> ehird, does this imply that anything that is true is funny?
19:27:45 <ehird> better than AnMaster's, ais523
19:27:50 <ehird> AnMaster: no.
19:45:10 <AnMaster> ehird, also i wasn't making any joke here
19:45:31 <AnMaster> I was being sarcastic however
19:45:52 <ais523> there must be one in existence by now
19:46:00 <ais523> some way to tell if something is funny or not automatically
19:46:09 <ehird> bayes
19:46:31 <AnMaster> ais523, no because I was afk
19:46:31 <ais523> ehird: you should so try that
19:46:40 <AnMaster> looking for a CD with classical music
19:46:40 <ehird> the training would be rather tedious.
19:46:41 <ais523> also, try with multiple sets of training data
19:46:46 <ais523> rated by different people
19:47:02 <ehird> actually, I could just feed it everything AnMaster has ever said in here as unfunny
19:47:10 <ehird> that'd probably work well enough
19:47:26 <AnMaster> ...
19:47:38 <ehird> I rest my case
19:47:59 <AnMaster> ehird, {{pov}}
19:48:31 <ehird> I like how you're proving my joke
19:48:34 <ais523> AnMaster: {{tl|pov}}'s a block rather than inline template (at least it was last I looked), so you can't place it after a comma
19:48:49 <ais523> at least, not without formatting weirdness
19:49:05 <AnMaster> ais523, ah, well I don't edit much wikipedia. there is one that is inline however
19:49:46 <AnMaster> {{POV-statement}} it seems
19:49:48 <ais523> AnMaster: {{tl|pov-statement}}, apparently
19:49:54 <AnMaster> ais523, tl?
19:50:03 <ais523> AnMaster: for mentioning a template rather than using it
19:50:12 <ais523> tl| is basically the quote mark for template
19:50:14 <AnMaster> ais523, and why are you doing that on irc...
19:50:16 <ais523> or tlx| if it takes arguments
19:50:22 <ais523> AnMaster: because the joke doesn't work otherwise
19:50:37 <AnMaster> ais523, I wasn't aware of this feature on wikipedia
19:50:46 <ais523> AnMaster: it isn't a feature, it's just another template
19:50:53 <ais523> which takes template names as arguments
19:50:58 <ais523> and returns the markup used to call that template
19:51:27 <ais523> you don't use it in articles, but it's pretty common on discussion pages (and often substed there, btw)
19:51:34 <AnMaster> mhm
19:51:52 <AnMaster> why all that substing btw?
19:52:04 <ais523> to subst or not to subst tl is a huge argument
19:52:13 <ais523> and I can't even remember the arguments now, it's been so long ago
19:52:17 <ais523> since I last went over them
19:52:17 <AnMaster> mhm
19:52:40 <ais523> especially as half the arguments made on that particular debate tended to be wrong or irrelevant
19:52:55 <AnMaster> there is no performance gain if the system is properly designed (ie, cache pre-rendered pages)
19:53:06 <AnMaster> and that is about the only argument for I can think of
19:53:24 <ais523> performance was one argument
19:53:36 <ais523> and actually there is, it makes the templatelinks table smaller, but people were arguing about whether that was relevant or not
19:53:54 <ais523> also, pages are edited often enough on Wikipedia that once-per-edit costs are certainly potentially relevant
19:53:56 <AnMaster> did anyone profile it?
19:54:02 <ais523> AnMaster: I don't think so
19:54:05 <ehird> it's hard to profile a live website.
19:54:11 <ehird> that you don't have shell access to.
19:54:13 <ais523> but see [[WP:AUM]] if you're interested in the history
19:54:15 <ais523> that was about something else
19:54:16 <ehird> without disrupting.
19:54:19 <ais523> but it was a similar argument
19:54:28 <AnMaster> well you could run a db dump and then re-run some edit history
19:54:33 <AnMaster> with/without subst
19:54:49 <ehird> ...
19:54:57 <ais523> there was also <http://en.wikipedia.org/wiki/Wikipedia:Transclusion_costs_and_benefits>
19:55:08 <AnMaster> ehird, 1) db dumps are public 2) that includes edit history
19:55:09 <ais523> which was an alleged non-POV version of AUM which some people still think was biased
19:55:17 <ehird> no shit, AnMaster
19:55:24 <ehird> that wasn't why I ...ed
19:55:25 <AnMaster> thus it shouldn't be that hard
19:55:35 -!- Hiato has quit ("Leaving.").
19:55:40 <ais523> and then <http://en.wikipedia.org/wiki/Wikipedia:Don%27t_worry_about_performance>
19:58:15 <ais523> and then, see <http://lists.wikimedia.org/pipermail/wikien-l/2008-February/089548.html> for the followup
19:58:23 <AnMaster> mhm
19:58:33 <ais523> and there was an amusing but only vaguely related incident some time later when an admin deleted the Main Page by mistake
19:58:53 <AnMaster> ais523, ouch ouch ouch
19:59:00 <AnMaster> you can restore that right?
19:59:08 <ais523> you can restore anything
19:59:24 <AnMaster> mhm
19:59:25 <ais523> unless it was deleted before the deleted revisions archive got deleted by mistake, and that was ages ago
20:00:00 <AnMaster> ais523, what about images?
20:00:10 <ais523> they have deleted revision archives too
20:00:19 <AnMaster> didn't until recently iirc?
20:00:23 <ais523> I think so
20:00:32 <ais523> it's a feature new enough that I was there when it was added
20:06:02 <AnMaster> ais523, anyway about archive being deleted by mistake, that mean some with direct sql access and missing backups?
20:08:07 <ais523> AnMaster: I think it was lost in a crash
20:08:18 <AnMaster> ais523, missing backups then
20:52:31 -!- kar8nga has joined.
20:58:37 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
21:07:14 -!- Corun has quit ("This computer has gone to sleep").
21:17:27 -!- Corun has joined.
21:22:25 -!- ais523 has quit ("http://www.mibbit.com ajax IRC Client").
21:30:48 -!- jix has quit ("...").
21:35:45 -!- puzzlet has quit (Remote closed the connection).
21:35:49 -!- puzzlet has joined.
21:36:02 -!- impomatic has quit ("http://impomatic.blogspot.com").
21:37:47 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
21:39:16 -!- oerjan has joined.
21:43:06 -!- GreaseMonkey has joined.
21:47:51 <oerjan> i don't think (h) belongs there. the others actually happen regularly. (h) fortunately does not.
21:48:26 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) 4chan.
21:48:32 <ehird> Now it more accurately represents this place.
21:48:45 <AnMaster> what was it before?
21:48:54 <oerjan> hm i haven't really noticed much 4chan. reddit, however...
21:48:55 <ehird> a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The Freshmaker!
21:49:04 <ehird> reddit is a copy of 4chan a year ago :p
21:49:09 <ehird> Slereah is responsible for most of the 4chan tbh
21:49:14 <oerjan> ah
21:49:19 <ehird> but I have my suspicions about some people around here.
21:49:24 <oerjan> i may not recognize it...
21:49:38 <AnMaster> what about esoteric languages?
21:49:44 <AnMaster> they *do* happen sometimes
21:49:52 <GregorR> http://www.youtube.com/watch?v=3-k9C3v9Ng0
21:49:56 <ehird> AnMaster: no
21:50:00 <ehird> that is explicitly not an element of this place
21:50:06 <oerjan> (d) and (g) cover that somewhat
21:50:06 <ehird> and basically the whole joke of the topic
21:50:11 <AnMaster> ehird, yes, ick, ccbi and so on
21:50:14 <ehird> those are just convenient links, oerjan
21:50:19 <ehird> AnMaster: no. esolangs is not a topic discussed here.
21:51:07 * oerjan shouldn't complain, given how many times he's reverted people trying to remove perl from the wiki :D
21:51:38 * AnMaster wants a complete collection of Mozart, wonder how many CDs it would fill...
21:51:44 <ehird> AnMaster: too many.
21:51:53 <ehird> also, you'd never be able to listen to it all. probably.
21:52:07 <AnMaster> ehird, well I listen to about 1 classical music CD / day
21:52:20 <ehird> I bet mozart would fill like 50 bajillion cds :-P
21:52:28 <ehird> Assuming we're talking everything mozart ever wrote.
21:52:30 <oerjan> i expect you could get Oz/Mozart on a single CD ;D
21:52:41 <AnMaster> Oz/Mozart?
21:52:46 <ehird> oerjan: man
21:52:48 <ehird> that was awful
21:52:50 <ehird> even for you
21:52:56 <ehird> i mean, raelly
21:52:56 <AnMaster> it was a joke?
21:52:58 <ehird> it wasn't even funny
21:52:58 <ehird> jesus
21:53:01 <AnMaster> I didn't understand it
21:53:02 <AnMaster> ...
21:53:04 <oerjan> yay :D
21:53:10 <ehird> AnMaster: letmegooglethatforyou.com
21:53:11 <AnMaster> so
21:53:24 <AnMaster> "The Mozart Programming System"?
21:53:27 <AnMaster> first hit
21:53:30 <ehird> no. some other oz/mozart.
21:53:31 <ehird> duh.
21:53:50 <oerjan> indeed
21:54:02 <AnMaster> sarcasm detected
21:54:12 <ehird> wow, you actually have a sarcasm detector
21:54:17 <ehird> now that's legitimately surprising :D
21:54:24 <oerjan> ehird: he _is_ slowly improving you know
21:54:27 <AnMaster> ehird, well it isn't very sensitive
21:54:50 <oerjan> a couple more years on #esoteric and AnMaster could start doing standup
21:54:58 <ehird> that's a bit optimistic
21:55:07 <AnMaster> oerjan, no thanks, I wouldn't want that
21:55:17 <ehird> GregorR: holy shit that video is depressing.
21:55:20 <AnMaster> + I have "scenskräck", don't know English word
21:55:22 <ehird> and I'm only 2:30 in.
21:55:27 <ehird> AnMaster: Scene crack?
21:55:31 <AnMaster> ehird, nop
21:55:34 <ehird> Sense crack?
21:55:45 <GregorR> ehird: I know X-D
21:55:51 <AnMaster> ehird, as in scared to be in front of a large audience
21:55:54 <GregorR> ehird: It's so well done in a horrible, horrible way.
21:55:57 <ehird> GregorR: WHY ARE YOU DOING THIS TO ME
21:56:18 <AnMaster> what is the English term?
21:56:39 <ehird> AnMaster: I don't think there is one
21:56:50 <AnMaster> wtf
21:57:00 <oerjan> agoraphobia is related
21:57:03 <oerjan> but not quite
21:57:30 <AnMaster> haha at google translate "scene of horror" <--- no. not at all
21:57:40 <ehird> GregorR: oh my god. I think you just ruined my life forever.
21:57:45 <ehird> I hate you.
21:57:47 <ehird> :(
21:57:53 <AnMaster> ehird, well right I'm not going to watch that video then
21:58:00 <GregorR> X-D
21:58:03 <ehird> AnMaster: It's about a cartoon rabbit. He dies.
21:58:17 <AnMaster> oh, doesn't sound too bad, unless it is bloody
21:58:31 <Slereah> Watch Watership Down then
21:58:34 <Slereah> :D
21:58:50 <ehird> AnMaster: It will ruin your life forever.
21:58:57 <AnMaster> Slereah, I explicitly don't trust what you say. ever.
21:59:06 <GregorR> AnMaster: It's not bloody, it's not even violent.
21:59:12 <GregorR> AnMaster: It's just really, really sad :P
21:59:35 <AnMaster> well too much work using youtube-dl and so on
21:59:43 <Slereah> AnMaster : You should
21:59:48 <ehird> You are safe, AnMaster.
21:59:49 <Slereah> 'cause Watership Down is totally awesome
21:59:52 <ehird> You can still feel happiness.
22:00:03 <ehird> Shed a tear for those lost to that video.
22:00:12 <AnMaster> also, have anyone here ever heard about the composer Kraus before?
22:00:14 <AnMaster> Just wondering
22:00:18 <Slereah> http://en.wikipedia.org/wiki/Watership_Down_(film)
22:00:42 <oerjan> ooh found it: "stage fright"
22:01:00 <AnMaster> oerjan, yes that sounds right
22:01:40 <ehird> You know, I think I support internet censorship. We need to protect the human race from that video.
22:02:04 * oerjan searched http://phobialist.com/ . it was not a keyword, but part of a description.
22:02:28 <FireFly> Phobophobia- Fear of phobias.
22:02:30 <ehird> "Use Manipulative Psychology to Make People Like, Respect, and Befriend You"
22:02:42 <ehird> -http://www.thepopularlife.com
22:02:45 <AnMaster> ehird, ouch, don't you see, the pro-censor people made this to make people want to censor the internet
22:02:47 <AnMaster> clearly
22:02:54 <AnMaster> so devilish!
22:02:57 <ehird> AnMaster: It destroys lives. We cannot accept this.
22:03:02 <ehird> Think of the goddamn children. :'(
22:03:21 <AnMaster> ehird, well their parents shouldn't let them enter on youtube
22:03:35 <AnMaster> parent control thing you know ;P
22:03:40 <ehird> I think compared to that video the rest of youtube is fine by me :P
22:03:43 <AnMaster> I think up until 15 maybe
22:03:48 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
22:03:50 <ehird> I'm only glad I didn't click the HD version
22:03:53 -!- puzzlet has joined.
22:03:58 <ehird> I think the high quality would have destroyed my brain
22:04:05 <ehird> On the other hand, that's better than my permanent torment.
22:04:23 <AnMaster> <FireFly> Phobophobia- Fear of phobias. <-- does that exist?
22:04:40 <ehird> Metaphobia.
22:04:45 <FireFly> It says in the list on that page
22:04:49 <AnMaster> oh ok
22:05:04 <AnMaster> what about a phobia against not having a complete list of phobias?
22:05:48 <ehird> Nothavingacompletelistofphobiasphhobia
22:05:52 <ehird> *Nothavingacompletelistofphobiasphobia
22:06:08 <AnMaster> something like that probably yes
22:06:16 <AnMaster> but too English
22:06:23 <AnMaster> you want Latin and/or Greek
22:06:24 <AnMaster> oh wait
22:06:34 <AnMaster> Google translate to the rescue!
22:07:32 <AnMaster> guess it doesn't have latin
22:08:20 <FireFly> It has greek, but it gives you greek letters (how surprising)
22:09:02 <AnMaster> FireFly, and that is modern greek I believe
22:09:12 * oerjan invents apanphobophobia
22:09:18 <ehird> swatterphobi
22:09:18 <FireFly> Could be, I know.. 0 greek
22:09:19 <ehird> a
22:09:53 <oerjan> a = not, pan = all
22:10:10 <kerlo> We should use lojban affixes to make these.
22:11:06 <kerlo> Fear of dogs, ge'uphobia. Fear of abruptness, suksyphobia. Fear of milk, ladryphobia.
22:11:28 <GregorR> Apandaphobia = not basing your entire life on fear or something :P (Not all from fear)
22:12:07 <oerjan> is da greek?
22:12:17 <GregorR> It's a corruption of "de" :P
22:12:33 <oerjan> is de greek?
22:12:53 <GregorR> Just because "phobia" is greek doesn't mean the prefix can't be latin, we're not speaking either.
22:13:07 <ehird> Pandaphobia = fear of pandas
22:13:14 <ehird> GregorR's is therefore fear of a lack of pandas
22:13:23 <FireFly> Apandaphobia = fear of no pandas ?
22:13:24 <GregorR> NUH UH
22:13:26 <oerjan> i was just about to claim that
22:13:27 <kerlo> Dyspandaphobia: fear of difficulty with pandas.
22:13:29 <GregorR> It's the lack of the fear of pandas :P
22:13:33 <FireFly> Bleh
22:13:39 <kerlo> Actually, I was--yes, what GregorR said.
22:13:54 <oerjan> pandanandaphobia
22:14:06 <ehird> Panda NAND a phobia
22:14:07 <GregorR> Bandabananaphobia
22:14:10 <kerlo> So you're about to say something, when someone else says something similar, and then another person says they were about to say the same thing, and then another person says they were about to say the thing you were about to say.
22:14:13 <ehird> sounds like a surrealist programming comic.
22:14:35 <kerlo> badnyphobia, fear of bananas.
22:14:50 <GregorR> And/or bad nys.
22:14:52 <oerjan> kerlo: clearly it was an idea whose time was come
22:15:40 <oerjan> badny? is that more lojban?
22:15:42 <kerlo> xralisphobia, fear of comic strips.
22:15:46 <kerlo> badny is lojban, yes.
22:16:17 <GregorR> Englishprefixaphobia, fear of words with prefixes from English (rather than Greek or Latin)
22:16:20 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
22:16:50 -!- puzzlet has joined.
22:18:15 <GregorR> Calorimeteraphobia: Fear of words formed from irrelevant roots or prefixes.
22:18:43 <FireFly> Lojbanophobia, self explaining
22:18:55 <GregorR> Fear of large bananas, of course.
22:19:00 -!- Judofyr_ has joined.
22:19:03 <kerlo> You mean gicli'erafyphobia.
22:19:18 <kerlo> (English-precede-affix-phobia.)
22:19:42 -!- Judofyr has quit (Read error: 60 (Operation timed out)).
22:20:00 <kerlo> And you mean jbophobia, of course, jbo being the lojban affix. :-P
22:20:47 <GregorR> Phobaphobaphobaphobaphobia: Fear of the fear of the fear of fear of fear.
22:21:33 <AnMaster> <oerjan> is de greek? .de is German....
22:21:49 * oerjan swats AnMaster -----###
22:22:13 <AnMaster> oerjan, it went right through without hitting anything
22:22:37 <oerjan> rooseveltophobia: the fear of nothing but fear itself
22:22:49 <ehird> GregorR: The only thing to fear is the fear of the fear of the fear of the fear of fear itself.
22:22:50 <ehird> dammit oerjan
22:23:04 <AnMaster> oerjan, um what? wouldn't it be the fear of meeting roosevelt?
22:23:15 <ehird> FAIL
22:23:26 <oerjan> AnMaster: Nej, han är ju død.
22:23:29 <ehird> that's a roosevelt quote
22:23:55 <AnMaster> oerjan, ja, jag skulle nog vara rädd att möta honom just därför!
22:24:21 <kerlo> Fear of the fear of fear of fear of the fear of fear of the fear of the fear of fear of inconsistency.
22:24:37 <AnMaster> I suggest a notation for that
22:24:45 <oerjan> AnMaster: you're supposed to say "Men han rör ju på sej!"
22:24:52 <AnMaster> you have basic phobias, I mean fear of snakes, fear or whatever
22:25:05 <AnMaster> then you have fear of fear of snakes, and so on
22:25:07 <AnMaster> this would be:
22:25:09 <kerlo> Sing it to the tune of "Clocks" by Coldplay: fear of the fear of the fear of fear of the fear of the fear of...
22:25:13 <ehird> It's called language, AnMaster
22:25:13 <AnMaster> <whatever>phobia^2
22:25:16 <FireFly> Hexakosioihexekontahexaphobia — fear of the number 666.
22:25:24 <ehird> kerlo: That would involve listening to Coldplay.
22:25:28 <ehird> I really don't want to do that.
22:25:42 <oerjan> actually phobophobophobophobia _clearly_ means fear of recursion
22:26:02 <AnMaster> oerjan, yes and fear of fear of recursion is?
22:26:16 <kerlo> Much simpler in lojban: xavyxavyxavyphobia = fear of 666.
22:26:23 <oerjan> AnMaster: too horrible to contemplate.
22:26:27 <AnMaster> oerjan: psykfall
22:26:29 <ehird> Lojban uses decimal. Why. :(
22:26:35 <AnMaster> if that is readable in no
22:26:36 <kerlo> It doesn't have to use decimal.
22:26:38 <AnMaster> .no*
22:26:47 <kerlo> I think decimal is default, but xa can be 6 in any base.
22:26:49 <oerjan> AnMaster: no idea what psykfall means
22:26:54 <kerlo> It even has words for the digits A-F.
22:26:57 <ehird> Decimal sux diks
22:27:35 <AnMaster> oerjan, well it is slang.... "nutjob" I believe the English slang would be
22:27:48 <oerjan> candlejackpho
22:27:50 <AnMaster> actually no
22:28:07 <ehird> oerjan: haha
22:28:09 <AnMaster> psykfall implies someone locked in too
22:28:23 <AnMaster> I mean, VERY much nutjob
22:28:28 <bsmntbombgirl> how do you do pure function O(1) dictionaries?
22:28:48 <kerlo> nagjibyphobia, fear of nut jobs.
22:29:06 <BeholdMyGlory> Hippopotomonstrosesquippedaliophobia- Fear of long words.
22:29:10 <ehird> bsmntbombgirl: by implementing trivial pattern matching as a hash table
22:29:21 <bsmntbombgirl> ?
22:29:35 <AnMaster> bsmntbombgirl, with a perfect hash I guess
22:29:51 <kerlo> I believe gainovaivaireirei ju'u paxa is lojban for 0xC0FFEE.
22:30:33 <ehird> bsmntbombgirl: as in
22:30:40 <ehird> f 0 = 1; f 1 = 45345345; f 2 = 892748396;
22:30:48 <ehird> should be implemented as a hash table from {0:1,...} in the lang
22:31:09 <bsmntbombgirl> well that doesn't work
22:31:13 <ehird> why not
22:31:57 <bsmntbombgirl> what's the table containing all the values from 1 to n, n determined at runtime
22:32:15 <ehird> lazy evaluation :P
22:32:41 <Asztal> ehird: what would you use, sexagesimal?
22:32:49 <kerlo> Say, have there been attempts to interpret the nick "kerlo" as a subtle hint that I'm a transwoman?
22:32:58 <ehird> kerlo: I think so.
22:33:04 <ehird> Asztal: duodecimal or something. It's meant to be perfect :-P
22:33:38 <Asztal> oh, 12 is good too
22:33:58 <AnMaster> kerlo, um? I googled the nick just now and first hit was some starwars wiki
22:34:30 <AnMaster> no I don't see what you mean
22:35:00 <AnMaster> *shrug*
22:35:01 <AnMaster> night
22:39:56 -!- BeholdMyGlory has quit ("godnatt på er, folk").
22:46:46 <kerlo> Consensus is that the nick "Warrigal" was by far the most explicit.
22:48:43 -!- olsner has quit ("Leaving").
22:49:13 -!- Corun has quit ("This computer has gone to sleep").
23:39:06 <ehird> WHAT THE CHRIST. [[WP:DICK]] was turned into a soft redirect.
23:39:07 <ehird> Fuckers
23:43:55 <oerjan> you mean it went soft?
23:45:42 <ehird> groan
23:53:58 <ehird> http://svn.python.org/view?rev=68924&view=rev OH YEAH.
23:54:01 <ehird> OH FUCKING YEAH.
23:54:05 <ehird> Python 3.0 SPPEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDDDD
23:54:26 <ehird> Or rather, still slow :-P BUT STILL
23:55:11 <FireFly> An Exception Has Occurred
23:55:12 <FireFly> Python Traceback
23:55:15 <FireFly> [stuff]
23:55:24 <ehird> WFM
2009-01-26
00:08:06 -!- FireFly has quit ("Later").
00:21:21 <ehird> FAIL:
00:21:23 <ehird> <RodgerTheGreat> the halting problem can be solved trivially on a machne without time or memory constraints
00:21:27 <ehird> from 2007
00:22:15 <bsmntbombgirl> lofl
00:22:35 <ehird> he then clarifies that he was talking about an FSM.
00:22:43 <ehird> because it's not as if the halting problem refers to turing machines or anything.
00:23:02 <bsmntbombgirl> well he was right then
00:23:50 <ehird> no, because "halting problem" means "turing machine halting problem"
00:23:51 <ehird> :p
00:24:01 <ehird> since ther eis no such problem on a FSM
00:24:01 <bsmntbombgirl> well not really
00:24:09 <bsmntbombgirl> "no such problem?"
00:24:57 <ehird> sure, halt-checking an FSM on a turing machine is trivial.
00:25:02 <ehird> you just check for repeated states.
00:25:26 <bsmntbombgirl> what about push downs?
00:25:38 <ehird> I was talking about FSMs.
00:26:17 <bsmntbombgirl> i know
00:26:25 <bsmntbombgirl> and i was going to bring up push downs
00:27:34 <oerjan> ehird: actually the halting problem for lower complexity classes is somewhat important. for one thing, it gives an easy way to prove that there _are_ an infinite hierarchy of such classes.
00:27:34 <ehird> Sneaky.
00:27:48 <ehird> oerjan: we were discussing turing machine halting problems at the time, tho.
00:28:40 <bsmntbombgirl> oerjan: so is it doable for push-down automatons?
00:28:59 <oerjan> er
00:30:39 <oerjan> not sure, i'm not used to think of those as potentially non-halting
00:33:59 <oerjan> since they are usually combined with parsing, for which the important thing is which languages they recognize
00:34:27 <oerjan> any non-halting would have to happen _between_ two input chars (or at the ends)
00:37:39 <oerjan> the recognized languages are context-free, so contained in the context-sensitive ones, which can be recognized in linear space
00:39:32 <oerjan> if you can do that on the level of computation, then a little more than linear space should be sufficient to solve the halting problem.
00:42:40 <oerjan> http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk-threese6.html: "Theorem 3.6.3 The halting problem is decidable for pushdown automata."
00:46:54 <oerjan> bsmntbombgirl: so apparently, yes
00:52:16 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
00:54:15 -!- puzzlet has joined.
01:03:37 <bsmntbombgirl> so what's a language that uses a pda?
01:04:10 <oerjan> context-free, i said
01:04:23 <oerjan> (non-deterministic pda)
01:04:44 <bsmntbombgirl> i mean, programming language
01:06:32 <oerjan> well befunge without self-modification
01:07:36 <bsmntbombgirl> because it would be interesting to see how useful a language for which the halting problem is solvable is
01:08:45 <oerjan> oh and no deep stack operations in case befunge has that (i forget)
01:10:42 <oerjan> i don't think you could use it to add two bignums in ordinary decimal notation, say
01:11:20 <bsmntbombgirl> yeah you could
01:11:22 <oerjan> although bizarrely if you reversed the second number, you could print the reverse result :D
01:11:35 <oerjan> huh?
01:11:36 <bsmntbombgirl> exactly
01:11:53 <oerjan> won't work for multiplication though
01:13:36 <bsmntbombgirl> but a stack machine can reverse its input
01:14:05 <oerjan> yeah
01:17:05 <bsmntbombgirl> so change it to a sequence of stack machines
01:17:13 <bsmntbombgirl> because the halting problem is still solvable there
01:21:18 <oerjan> hm true
01:23:58 <kerlo> BF-PDA is a PDA.
02:25:08 <bsmntbombgirl> not a good one
02:27:42 -!- CakeProphet has quit ("lol").
02:33:40 <GregorR> Kipple is a PDA if you only use one stack :P
02:35:21 -!- GregorR has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The 4chanmaker!.
02:47:36 -!- psygnisfive has joined.
02:56:31 -!- psygnisfive has quit (Read error: 145 (Connection timed out)).
03:05:34 -!- CakeProphet has joined.
03:13:35 -!- Sgeo has joined.
03:38:53 -!- Sgeo_ has joined.
03:56:33 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
04:26:41 -!- oerjan has quit ("leaving").
05:06:28 -!- MizardX has quit ("reboot").
05:09:23 <Sgeo_> G'night all
05:09:48 -!- Sgeo_ has quit (Read error: 104 (Connection reset by peer)).
05:10:53 -!- MizardX has joined.
05:31:46 -!- lament has changed nick to lamente.
07:05:13 -!- jix has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:16:47 -!- poiuy_qwert has joined.
08:25:33 -!- Slereah2 has joined.
08:36:33 -!- Slereah has quit (Read error: 110 (Connection timed out)).
08:55:35 -!- GreaseMonkey has quit ("Client Excited").
10:24:09 -!- oklopol has joined.
10:25:32 <oklopol> so i drop my laptop
10:25:41 <oklopol> and a few programs vanish
10:26:00 <oklopol> possible? no. happened? fuck yeah.
10:49:39 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
11:25:19 <ehird> <pikhq> SimonRC: You've just commited a grave logical fallacy: Argumentum ad Paul Graham.
11:25:21 <ehird> {2007-08-08}
11:41:04 <Slereah2> Who is paul graham
11:41:48 <ehird> You will be happier not knowing.
11:42:00 <Slereah2> No I'm not
11:42:29 <ehird> No, seriously
11:43:23 <Slereah2> Fine, I'll google it
11:43:46 <Slereah2> "Paul Graham (born 1964) is a programmer, venture capitalist, and essayist, known for his work on Lisp."
11:43:48 <Slereah2> That dude, I assume
11:43:54 <Slereah2> Why is he so terrible
11:46:08 <ehird> It's kind of complicated.
11:49:04 -!- CakeProphet has quit ("lol").
11:51:20 -!- oklopol has joined.
12:32:43 -!- poiuy_qwert has quit.
12:55:48 <ehird> 10:56:12 <oklokok> "I enjoy doing thing spontaneously." <<< thing is a character in addam's family
12:55:48 <ehird> 10:56:19 <oklokok> it's a hand10:56:24 <oklokok> does this refer to masturbation?
12:55:55 <ehird> {2007-08-09}
12:59:29 <oklopol> i lolled
13:13:09 -!- Slereah has joined.
13:29:44 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
14:12:38 -!- Judofyr_ has changed nick to Judofyr.
14:31:31 -!- Slereah2 has joined.
14:43:44 -!- Slereah has quit (Read error: 110 (Connection timed out)).
15:30:01 -!- FireFly has joined.
15:43:14 -!- BeholdMyGlory has joined.
15:43:54 -!- Sgeo has joined.
16:40:12 -!- kar8nga has joined.
16:45:48 -!- Hiato has joined.
16:57:09 -!- kar8nga has quit (Read error: 145 (Connection timed out)).
17:12:25 -!- impomatic has joined.
17:13:26 <impomatic> ^bf ++++++++++++++[>>+>++>+++>++>+++<<[++++<]<-]>>>>>[+++<]>-.>>.+++++++..+++.>>++.<+.<<.>.+++.------.--------.>+.
17:13:26 <fungot> Hello, World!
17:13:36 -!- oklopol has quit (Read error: 110 (Connection timed out)).
17:13:38 <impomatic> 106 :-)
17:16:27 <ehird> awesome
17:16:50 <ehird> impomatic: i think that's longer than it could be
17:17:07 -!- ais523 has joined.
17:18:28 <Hiato> Does anyone have an intricate understanding of FAT12+[N/Y/F]ASM here?
17:18:30 <impomatic> Hi Ehird
17:18:44 <ehird> hi
17:18:50 <ais523> hi
17:19:05 <ais523> Hiato: FAT12 sounds like a 12-bit filesystem
17:19:10 <ais523> by analogy with FAT32
17:19:13 <ais523> presumably it isn't that
17:19:44 <Hiato> nope, shouldn't think so.. Personally I have no actual clue, just did the ole "copy-n-paste" and it failed me
17:20:03 -!- MigoMipo has joined.
17:21:47 <impomatic> It's 12 bit, I wrote code to read files from it about 15 years ago
17:22:06 <impomatic> But I wouldn't be much help. I only read it, never tried to manipulate it
17:22:09 -!- Sgeo_ has joined.
17:25:05 <Hiato> Well, it's a start, so if you dig it up that would be nice :)
17:25:08 * Hiato makes puppy eyes
17:25:24 <Hiato> I think the write code is fine, but I can't test it until I can read :P
17:32:54 -!- oklopol has joined.
17:34:00 -!- MigoMipo has quit ("Changing server...").
17:36:39 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
18:21:01 -!- Slereah has joined.
18:33:03 -!- decipher_ has changed nick to decipher.
18:33:19 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
18:34:51 -!- olsner has joined.
18:40:24 -!- BeholdMyGlory has quit ("hejdå").
18:43:04 -!- Sgeo has joined.
19:00:59 -!- Sgeo_ has quit (Read error: 110 (Connection timed out)).
19:27:43 -!- jix has quit (Read error: 104 (Connection reset by peer)).
19:27:54 -!- jix has joined.
19:33:39 -!- FireFly has quit ("Brb").
19:37:12 -!- ais523 has quit (Remote closed the connection).
19:40:50 -!- ais523 has joined.
19:41:37 -!- BeholdMyGlory has joined.
19:51:50 -!- oklopol has quit (Read error: 110 (Connection timed out)).
19:53:35 -!- oklopol has joined.
19:55:21 <impomatic> ^bf +++++[>+++[>>+>++>+++>+++>++>+++<<[++++<]<-]<-]>>>---.>>----.>+++..+++.>>-.<++.<<<---.>>.+++.------.<-.>>+.
19:55:21 <fungot> Hello, World!
19:55:46 <ais523> triple-nested loops in a BF hello world?
19:55:48 <ais523> I don't see that often
19:56:43 <oklopol> we should make a <=50 character hello world
19:57:01 <impomatic> Yeah, shame it's 107 instructions and not <106
19:57:16 <ehird> you can shave off an instruction
19:57:16 <impomatic> oklopol: go ahead :-)
19:57:17 <ehird> almost certainly
19:57:26 <ehird> ^bf +++++[>+++[>>+>++>+++>+++>++>+++<<[++++<]<-]<-]>>>---.>>----.>+++..+++.>>-.<++.<<<---.>.+++.------.<-.>>+.
19:57:26 <fungot> Hello, WehbVp
19:57:29 <ehird> hee
19:57:36 <oklopol> *see
19:57:42 <impomatic> ehird: okay, show me how :-P
19:57:50 <ehird> i dunno :-D
19:58:08 <ehird> anyway it isn't even a correct program right now
19:58:11 <ehird> the w should be lowercase
19:58:14 <ehird> does it do newlines?
19:58:18 <ehird> ^bf +++++[>+++[>>+>++>+++>+++>++>+++<<[++++<]<-]<-]>>>---.>>----.>+++..+++.>>-.<++.<<<---.>>.+++.------.<-.>>+
19:58:18 <fungot> Hello, World
19:58:22 <ehird> nope.
19:58:33 <ais523> ehird: there are all sorts of debates about the exact spelling and punctuation of hello world
19:58:48 <ehird> Hello, world!\n is the most common for human-written ones as far as I can se
19:58:49 <ehird> e
19:58:51 <ehird> for BF at least
19:59:03 -!- psygnisfive has joined.
19:59:16 -!- psygnisf_ has joined.
19:59:45 <impomatic> I've seen "Hello, World!", "Hello World!\n" and "Hello, world!"
19:59:48 -!- psygnisf_ has changed nick to psygnisfive_.
20:00:02 <ehird> without newline is just a bug
20:00:11 <ehird> since it will fail on any correct console interpreter
20:00:16 <impomatic> I'm working on "Hello, World!" because that's the example someone showed me
20:00:24 <ehird> mm
20:00:28 <ehird> I'd go for Hello, world!\n
20:00:32 <ehird> just a change of case and one new char
20:00:46 <psygnisfive_> hey goys
20:01:28 <impomatic> HI Psygnisfive_
20:02:20 <GregorR> I would go with Greetings, personified globular iron construct orbiting sol!\r
20:02:33 <psygnisfive_> impomatic, you new, ey?
20:02:37 <ehird> no.
20:02:40 <ehird> he's been here days
20:02:46 <ais523> only a few days, though
20:02:47 <psygnisfive_> so yes hes new :p
20:03:30 <ehird> psygnisfive_: you're new too :p
20:03:35 <psygnisfive_> not that new!
20:03:41 <ehird> 2008-05-16
20:04:16 <psygnisfive_> yeah
20:04:22 <psygnisfive_> thats AGES longer! :o
20:04:32 <psygnisfive_> also, im pretty sure i was actually first here in like
20:04:35 <ehird> no
20:04:36 <ehird> you weren't
20:04:38 <psygnisfive_> ?
20:04:41 <ehird> I grepped for both augur and psygnisfive
20:04:51 <psygnisfive_> really?
20:04:52 <psygnisfive_> hm
20:04:54 <ehird> yes.
20:05:25 <ehird> for the record: I first joined 2006-12-29, left like 20 seconds after, next joined (and spoke and stuff) 2007-05-14
20:05:30 <ehird> stuck here since.
20:06:11 <psygnisfive_> my oldest #esoteric logs are from 28 May 08
20:06:26 <ehird> then you were here as a ghost.
20:06:28 <ehird> what was your nick
20:06:42 -!- FireFly has joined.
20:06:48 <psygnisfive_> dude, thats after your first reported sighting of me :P
20:06:56 <ehird> oh. right
20:07:01 <ehird> psygnisfive_: yes
20:07:02 <ehird> that's your first join as augur
20:07:07 <ehird> wait
20:07:07 <ehird> no
20:07:10 <ehird> you first joined as augur
20:07:11 <ehird> on the 16th
20:07:16 <ehird> then on the 27th as psygnisfive
20:07:19 <ehird> 08.05.27:07:36:40 --- nick: augur -> psygnisfive
20:07:26 <ehird> [time zones]
20:08:38 <psygnisfive_> my earliest colloquy log is from 20 May
20:08:55 <psygnisfive_> so from the 16th to the 19th i was using mibbit for irc i guess
20:09:07 <ehird> guys, remember faxasthisia? he was cool
20:09:16 <ais523> yes, I remember
20:09:25 <ehird> why did he fall off the face of the earth?
20:09:26 <ais523> although not what they were like
20:09:49 <oklopol> i remember the nick, and that there was something worth remembering about it, but i don't remember what it was.
20:10:05 <oklopol> oh wait is it just that he *may have been* the guy who knew j.
20:10:26 <ehird> yeah
20:10:27 <ehird> he liked j
20:10:34 <oklopol> coooooooooool
20:11:06 <ehird> he was last here 38 weeks ago
20:11:09 <ehird> RIP faxathisia
20:11:17 <ehird> here = freenode
20:11:50 <ehird> wow, someone has a text file of ridiculous faxathisia quotes.
20:11:52 <ehird> http://ross.fappett.com/misc/fax.txt
20:11:56 <ehird> he never acted like that in here :P
20:14:45 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
20:17:52 <ehird> Google provse it.
20:17:56 <ehird> Faxathisia is dead. RIP.
20:19:29 <oklopol> lol some of those were pretty funny
20:19:58 <ehird> FAXATHISIA IF YOU BE READING THIS COME BACK K
20:20:34 <ehird> http://fax.twilightcoders.net/ Site of a dead man
20:20:45 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
20:22:38 <oklopol> universal binary
20:22:43 <ehird> http://fax.twilightcoders.net/AquaBreakout/ Cute
20:23:00 <ais523> a polyglot binary that ran on lots of different OSs and architectures could be interesting
20:23:07 <ais523> but probably impossible due to the way ELF headers work
20:23:09 <psygnisfive_> i think i shall start working on an actual interpreter for my language. :T
20:36:42 -!- Hiato has quit (Read error: 110 (Connection timed out)).
20:38:17 <impomatic> psygnisfive_: new here, not new to esoteric languages :-)
20:38:25 <psygnisfive_> well
20:38:31 <psygnisfive_> who is, when they come here
20:38:40 <psygnisfive_> ive known about esolangs for like 10 yeas
20:39:54 <ehird> uh huh.
20:39:59 <ehird> i kind of doubt that
20:40:24 <psygnisfive_> well maybe not ten but about.
20:40:38 <psygnisfive_> i mean, its not like i marked it in my calendar, you know, but
20:41:06 <psygnisfive_> it could easily have been 10 years.
20:41:19 <psygnisfive_> i think i first discovered esolangs in yahoo's directories
20:41:40 <psygnisfive_> this was before wikipedia was what it is now, obviously
20:42:02 <ehird> wikipedia started in 2001.
20:42:11 <ehird> your lies are revealed!
20:42:16 <psygnisfive_> yeah, but i didnt know about it until like .. 2002?
20:42:22 <psygnisfive_> but like i said, before wikipedia.
20:42:28 <psygnisfive_> 10 years ago was 1999 :p
20:42:32 <ehird> thats not what you asid
20:42:38 <ehird> you said before wikipedia was what it was now
20:42:40 <psygnisfive_> yes
20:42:44 <psygnisfive_> what it is now is..
20:42:46 <oklopol> i probably learned about wp in like 2007
20:42:47 <psygnisfive_> existant :)
20:42:48 <ehird> thus implying the existance of wikipedia
20:42:52 <ehird> at the time
20:42:58 <ehird> or you would have just said, before wikipedia
20:43:01 <ehird> ergo, not 10 years
20:43:02 <ehird> ha
20:43:16 <psygnisfive_> i actually thought wikipedia started in the late 90s
20:43:18 <ais523> I discovered esolangs via the 99bob website
20:43:20 <psygnisfive_> but i was probably thinking of google
20:43:25 <ais523> and esolangs.org via Wikipedia via google
20:43:37 <ais523> and #esoteric via esolangs.org
20:43:53 <oklopol> i'm pretty sure "before wp was what it is now" meant wikipedia didn't exist, with the additional "don't make smart-ass comments about it somehow technically existing in some form"
20:44:00 <ehird> ais523: but I thought you could do without google.
20:44:08 <ais523> I can nowadays, mostly
20:44:18 <ais523> this was back before I was very internet-savvy
20:44:24 <ais523> I didn't even know about IRC or Usenet back then
20:44:26 <psygnisfive_> oklopol: in a way it could!
20:44:34 <psygnisfive_> since wiki's have been around since 1994
20:44:36 <psygnisfive_> :p
20:44:46 <oklopol> sure could, sure could
20:44:50 <ehird> umm, 1992 wasn't it
20:44:52 <psygnisfive_> i learned about #esoteric from slereah
20:44:56 <impomatic> I started playing with esolangs in 1993.
20:44:56 <impomatic> Unless Redcode counts :-)
20:44:58 <psygnisfive_> eh
20:45:01 <psygnisfive_> WikiWikiWeb 1994
20:45:04 <ehird> redcode counts, impomatic
20:45:05 <psygnisfive_> dunno about earlier
20:45:08 <ehird> so when did you start then
20:45:09 <ais523> redcode's more an interesting variant of asm
20:45:12 <psygnisfive_> but the first site called a wiki
20:45:26 <ais523> and asm would be an esolang if it wasn't so widespread
20:46:00 <ehird> all this only proves that your definition of esolangs is needlessly vague and wide-spanning, ais523
20:46:05 <ais523> yes, it is
20:46:21 <psygnisfive_> ais is the counterbalance to me
20:46:38 <psygnisfive_> since my definition is needlessly specific and narrow-spanning
20:47:24 <oklopol> NARROW NARROW NARROW IT DOWN, GENTLY DOWN THE STREAM
20:48:39 <impomatic> 1991 if Redcode counts
20:49:21 <oklopol> lol i wasn't even alive in 91 :\
20:49:25 <impomatic> My modem is apparently not connected?
20:49:28 <ehird> oklopol: nor I :-D
20:49:30 <impomatic> Trying to connect now
20:49:31 <ehird> impomatic: i hear you
20:49:46 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The 4chanmaker!; i) YOUNGUNS.
20:49:48 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The 4chanmaker!; i) YOUNG UNS.
20:49:57 <oklopol> young guns?
20:50:03 <ehird> that is why i added the space
20:50:03 <oklopol> that's much worse than eurocreme...
20:50:25 <oklopol> now where's my notebook
20:50:34 <impomatic> oklopol: You're making me feel old!
20:51:10 <ehird> YOU ARE OLD. :-|
20:51:21 <impomatic> :-/
20:52:13 <ehird> :-------|
20:52:18 -!- FireFly has quit ("Later").
20:53:04 <psygnisfive_> mm eurocreme
20:53:04 <psygnisfive_> this is like.. a, f, h, and i all at once :o
20:54:34 <ehird> :-|
20:54:38 <ehird> I don't think we need to know, psygnisfive_
20:56:18 <oklopol> was just about to ask "what are those", but i guess ehird is right
20:56:29 <ehird> 20:50 ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) Felching – The 4chanmaker!; i) YOUNG UNS
20:56:44 <ais523> I think it's time for a new topic
20:56:49 <ehird> no
20:56:51 <ehird> i like this one
20:56:56 <ehird> so does GregorR, since he's added to it.
20:57:02 <ehird> also, i didn't even originate it, you did
20:57:04 <ais523> I know
20:57:08 <ehird> the first three items are yours
20:57:09 <ais523> it's just got out of control
20:57:13 <ehird> meh
20:57:16 <ehird> it's not that long
20:57:18 <ais523> o
20:57:23 <ehird> remove up to the end of the wiki link, I guess
20:57:29 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page.
20:58:32 -!- GreaseMonkey has joined.
20:58:58 -!- BeholdMyGlory has quit ("hejdå").
21:02:08 -!- GreaseMonkey has quit (Client Quit).
21:02:58 -!- GreaseMonkey has joined.
21:04:58 <GregorR> You could reduce it.
21:05:30 <GregorR> Awww, but you shouldn't have removed imne :(
21:05:42 <GregorR> *mine
21:08:30 -!- kar8nga has joined.
21:11:02 -!- psygnisfive_ has quit (Read error: 110 (Connection timed out)).
21:11:17 <AnMaster> hi ais523
21:11:22 <ais523> hi
21:12:18 <impomatic> Anyone here got a programming blog?
21:12:48 <ais523> I don't blog
21:12:48 <Slereah> a plog?
21:13:11 <Deewiant> clog?
21:13:33 -!- BeholdMyGlory has joined.
21:13:51 <Slereah> zlog
21:13:59 <Judofyr> I do
21:15:14 <Slereah> Our plog is the esowiki
21:16:31 <impomatic> Judofyr: where? :-)
21:22:52 <Judofyr> impomatic: http://judofyr.net
21:22:56 <Judofyr> mostly Ruby, though
21:26:13 <Slereah> Esoruby
21:26:53 -!- BeholdMyGlory has quit.
21:27:48 <ais523> Judofyr: about that tail-call optimisation
21:27:55 <ais523> why doesn't Ruby have that tail-recursion operator from Perl?
21:27:58 <ais523> goto &procedure;
21:28:12 <ais523> it's one of my favourites!
21:28:20 -!- BeholdMyGlory has joined.
21:28:48 <Judofyr> ais523: nope :/
21:40:12 -!- FireFly has joined.
21:41:15 -!- Corun has joined.
21:42:56 <ehird> hi Judofyr
21:43:04 * ehird blogs, but doesn't atm. :-P
21:43:59 <oklopol> i can't blog, because i dislike the term :<
21:44:04 <oklopol> i would otherwise.
21:44:11 <ehird> call it a web log
21:44:16 <ehird> or just a 'log
21:44:16 <oklopol> haha
21:44:24 <ehird> okolog
21:44:30 <oklopol> og
21:45:37 <ehird> yes
21:45:39 <ehird> call it an og
21:45:45 <oklopol> ög
21:45:48 * ehird bookmarks http://vjn.fi/oklopol/og/ pre-emptively
21:45:52 <oklopol> hehe
21:46:17 <oklopol> guess i could og my reading diary....... that would pretty much sum up my life.
21:46:26 <ehird> also, oko towers.
21:46:27 <oklopol> that is, publish thems.rtf.
21:46:46 <ehird> i would totally pay you to maintain an html page with date-attached oko towers and reading log entries.
21:46:53 <ehird> it'd be like. the oko shrine
21:47:00 <ehird> the ogo shrine hur hur
21:47:11 <oklopol> hmm
21:47:22 <oklopol> yeah, maybe it could be an og about oko.
21:47:37 <oklopol> liek jib down the oko aspects of my life.
21:48:12 <ehird> yeah, exactly
21:48:14 <ehird> like
21:48:40 <ehird> 2009-01-26<br>Today I made an oko so big it crashed the IRC server.<br><br>
21:48:49 <ehird> just thrilling
21:49:02 * AnMaster sneaks in a few / there
21:49:09 <ais523> crashing Freenode with an oko would be impressive
21:49:15 <ais523> it would effectively have to be a DDOS oko
21:49:28 <AnMaster> ais523, permanent kline ;P
21:49:31 <ehird> AnMaster: I think you should stop provoking me to give you the full rant on why XHTML lovers are idiots.
21:50:02 <ais523> ehird: that common maxim that you keep quoting, I suspect is dangerous
21:50:09 <AnMaster> ehird, simple: If I loved html you would love xhtml instead ;P
21:50:27 <ais523> if everyone's being liberal in what they accept, then people with an agenda can be liberal in what they produce
21:50:40 <ehird> AnMaster: fun fact: I have had opinions before I unfortunately met you.
21:50:47 <ais523> in XHTML, it's the people who don't know what they're doing that look like idiots
21:50:49 <ehird> ais523: Postel's Law isn't the whole argument by far.
21:50:59 <AnMaster> ais523, agreed
21:51:00 <ehird> Also, people with an agenda being liberal in what they produce...
21:51:03 <ehird> will change what, exactly?
21:52:17 <ais523> it will change the standard
21:52:25 <ais523> as other people will have to conform to their liberal productions
21:52:31 <ais523> rather than other people's liberal prodcutions
21:52:33 <ais523> *productions
21:52:59 <ehird> You misunderstand Postel's Law, but I'm not having this conversation atm.
21:54:41 -!- kar8nga has quit (Read error: 60 (Operation timed out)).
21:55:53 <oklopol> people with an agenda?
21:56:02 <Slereah> gays
21:56:07 <oklopol> can you translate that, i do not understand natural language.
21:56:23 <oklopol> Slereah: ohh. that i grok
22:02:33 -!- impomatic has quit ("http://impomatic.blogspot.com").
22:02:56 <ehird> http://uncyclopedia.wikia.com/wiki/Uncyclopedia:An_Appeal_From_Uncyclopedia_Mother%2C_Codeine%27s_Mum
22:04:07 <ais523> what's %2C?
22:04:12 <ais523> %27 is apostrophe, IIRC
22:04:21 <ehird> ,
22:09:29 <Slereah> Don't go to uncyclopedia, ehird
22:09:32 <Slereah> It is terrible
22:09:33 <ehird> i don't.
22:09:46 <ehird> the idiot m p darke linked to it. But I found the linked article, linked to in the header of the linked article, funny.
22:09:52 <ehird> was that sufficiently confusing
22:10:03 <ais523> I think one of the only times I went to Uncyclopedia was because someone had copied one of their articles over to Wikipedia
22:10:22 <ais523> and people kept removing deletion tags from it
22:10:37 <ais523> so I marked it copyvio
22:10:41 <ais523> which it was
22:10:51 <ais523> yay for incompatible licences
22:39:47 -!- oerjan has joined.
22:43:26 <oerjan> <Slereah2> "Paul Graham (born 1964) is a programmer, venture capitalist, and essayist, known for his work on Lisp."
22:43:39 <oerjan> <Slereah2> Why is he so terrible
22:43:59 <oerjan> iiuc he is essentially a lisp fundamentalist
22:44:24 <ehird> no
22:44:26 <ehird> he's just an idiot
22:44:27 <oerjan> although i haven't paid that much attention to him
22:45:46 <oerjan> ehird: i _might_ claim that follows as a consequence, if he is a fundamentalist
22:46:12 -!- BeholdMyGlory has quit ("godnatt").
22:47:06 <oerjan> s/fundamentalist/fanatic/ if the first word doesn't actually fit
22:49:34 <oklopol> lisp is singularity
22:49:36 <oklopol> lisp is origin
22:50:04 <oklopol> LISP HAS SEXUAL PEE
22:50:05 <oerjan> http://xkcd.com/224/
22:50:17 <oerjan> (obligatory link)
22:50:36 <oklopol> old
22:50:39 <oklopol> (obligatory line)
22:51:17 <oklopol> (well, obligatory joke)
22:59:35 -!- ais523 has quit.
23:13:35 <ehird> 0xFF bottles of beer on the wall
23:13:37 <ehird> 0xFF bottles of beer
23:13:39 <ehird> Take one down, two's complement it
23:13:41 <ehird> Error segfault
23:14:16 <oerjan> wait what
23:14:35 <oerjan> why is 0 a segfault?
23:14:50 <oerjan> or is there a size problem?
23:15:25 <oerjan> and how do we reverse entropy?
23:15:38 <oerjan> (last one thrown in just in case)
23:15:57 <GregorR> ... "two's complement" is not a verb ...
23:16:13 <oerjan> i think it verbs just fine
23:16:34 <GregorR> Then what does it mean? There's no action that's "two's complement"ing a ... number? Stream of bits?
23:18:41 <oerjan> it whats a meaning of calculating the two's complement. stop complainingly mindlessing.
23:19:30 <oerjan> probably in-placing it, too
23:24:11 <ehird> GregorR: I don't care, it amuses me.
23:24:19 <ehird> (It's from the 2007 logs, said by me)
23:26:49 -!- CakeProphet has joined.
23:44:09 -!- olsner has quit ("Leaving").
23:57:38 <oklopol> GregorR: i think you just lack a skill in an english.
23:58:04 <oerjan> oklopol: i sentiment exactly
23:58:30 <oklopol> i think i should probably book a read
23:58:52 <oerjan> also, since finnish doesn't have articles, would those be reasonable mistakes for a finn to make?
23:58:54 <ehird> concatenative languages are awesome
2009-01-27
00:00:27 -!- FireFly has quit ("Brb IRL").
00:00:32 <oklopol> oerjan: finns tend to drop articles, and occasionally swap a/an. i don't think "an english" could ever happen.
00:00:43 <oklopol> the english maybe
00:01:20 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
00:01:25 <oklopol> ofc there's no such thing as a reasonable mistake
00:03:59 <oklopol> i want to make a graphical programming language :|
00:04:11 <oklopol> not only based on graphs, but also, like, graphical.
00:04:15 <ehird> i wrote a 6 line concatenative program
00:04:20 <ehird> non-concatenative version? 20 fucking lines.
00:04:22 <ehird> fuck yeah.
00:04:31 <ehird> more like 25 actually.
00:04:43 <oklopol> what's the program
00:05:30 <ehird> it isn't technically a program as much as a program fragment I cooked up when thinking about concatenative langs for a game engine scripting language
00:05:35 <oerjan> ehird: so you have a non-concatenative fucking programming language where the programs consist of fucking lines?
00:05:37 <ehird> :P
00:05:38 <ehird> class: <person> name age ;
00:05:39 <ehird> : make-person <person> make 'age set! 'name set! ;
00:05:41 <ehird> : speak [ 'name get ] dip "%s says: %s\n" printf ;
00:05:43 <ehird> class: <npc>:<person> evilness ;
00:05:45 <ehird> : make-npc make-person <npc> downcast 'evilness set! ;
00:05:47 <ehird> oerjan: verily,.
00:12:17 -!- jix_ has joined.
00:16:59 -!- jix has quit (Read error: 60 (Operation timed out)).
00:32:27 -!- Corun has quit ("This computer has gone to sleep").
00:36:00 -!- jix_ has quit ("...").
02:20:18 <bsmntbombgirl> ugh
02:20:26 <bsmntbombgirl> i HATE not being able to read full text of paper
02:20:28 <bsmntbombgirl> goddamn
02:27:26 -!- CakeProphet has joined.
02:42:19 -!- bsmntbombgirl has quit (Read error: 60 (Operation timed out)).
02:45:40 -!- bsmntbombgirl has joined.
02:46:30 -!- bsmntbombgirl has changed nick to bsmntbombdood.
03:13:04 <bsmntbombdood> i need an idea
03:13:37 <oerjan> buy wallabies!
03:14:56 * oerjan notes that the genius of his idea has left bsmntbombdood speechless
03:15:31 <bsmntbombdood> a _good_ idea
03:16:19 <oerjan> what do you have against wallabies, you animal fiend
03:17:44 <bsmntbombdood> Ken Thompson visited our lab at QMC while I was developing it and said something like: "yeah, I've seen editors like that, but I don't feel a need for them, I don't want to see the state of the file when I'm editing".
03:17:55 <bsmntbombdood> when discussing em vs ed
03:21:07 -!- Sgeo has joined.
03:48:48 -!- sazl has joined.
05:01:15 -!- oerjan has quit ("leaving").
05:09:11 -!- sazl has quit (kornbluth.freenode.net irc.freenode.net).
05:09:11 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
05:09:11 -!- Leonidas has quit (kornbluth.freenode.net irc.freenode.net).
05:09:14 -!- Leonidas has joined.
05:09:21 -!- sazl has joined.
05:09:27 -!- mtve has joined.
05:09:40 -!- mtve has quit (kornbluth.freenode.net irc.freenode.net).
05:09:41 -!- SimonRC has quit (kornbluth.freenode.net irc.freenode.net).
05:10:04 -!- sebbu has quit (kornbluth.freenode.net irc.freenode.net).
05:10:04 -!- adimit has quit (kornbluth.freenode.net irc.freenode.net).
05:10:23 -!- sebbu has joined.
05:11:31 -!- Sgeo has quit (kornbluth.freenode.net irc.freenode.net).
05:11:47 -!- Sgeo has joined.
05:12:10 -!- sazl has quit (kornbluth.freenode.net irc.freenode.net).
05:12:10 -!- Leonidas has quit (kornbluth.freenode.net irc.freenode.net).
05:12:10 -!- GreaseMonkey has quit (kornbluth.freenode.net irc.freenode.net).
05:12:10 -!- oklopol has quit (kornbluth.freenode.net irc.freenode.net).
05:12:11 -!- dbc has quit (kornbluth.freenode.net irc.freenode.net).
05:12:11 -!- lamente has quit (kornbluth.freenode.net irc.freenode.net).
05:12:12 -!- AnMaster has quit (kornbluth.freenode.net irc.freenode.net).
05:12:26 -!- oklopol has joined.
05:12:29 -!- dbc has joined.
05:12:32 -!- lamente has joined.
05:12:59 -!- bsmntbombdood has quit (kornbluth.freenode.net irc.freenode.net).
05:12:59 -!- Slereah has quit (kornbluth.freenode.net irc.freenode.net).
05:13:00 -!- ehird has quit (kornbluth.freenode.net irc.freenode.net).
05:13:00 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
05:13:05 -!- ehird has joined.
05:13:07 -!- Slereah2 has joined.
05:13:27 -!- puzzlet has quit (kornbluth.freenode.net irc.freenode.net).
05:13:28 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
05:13:37 -!- comex has joined.
05:13:38 -!- GregorR has joined.
05:13:48 -!- rodgort has quit (kornbluth.freenode.net irc.freenode.net).
05:13:54 -!- rodgort has joined.
05:13:58 -!- Sgeo has quit (Client Quit).
05:14:05 -!- bsmntbombdood has joined.
05:14:21 -!- comex has quit (kornbluth.freenode.net irc.freenode.net).
05:14:21 -!- Slereah2 has quit (kornbluth.freenode.net irc.freenode.net).
05:14:22 -!- MizardX has quit (kornbluth.freenode.net irc.freenode.net).
05:14:22 -!- Dewi has quit (kornbluth.freenode.net irc.freenode.net).
05:14:23 -!- Ilari has quit (kornbluth.freenode.net irc.freenode.net).
05:14:23 -!- ineiros has quit (kornbluth.freenode.net irc.freenode.net).
05:14:24 -!- Leonidas has joined.
05:14:29 -!- sazl has joined.
05:14:29 -!- MizardX has joined.
05:14:32 -!- comex has joined.
05:14:36 -!- cherez has joined.
05:14:43 -!- Slereah2 has joined.
05:15:06 -!- Leonidas has quit (kornbluth.freenode.net irc.freenode.net).
05:15:06 -!- lamente has quit (kornbluth.freenode.net irc.freenode.net).
05:15:08 -!- decipher has quit (kornbluth.freenode.net irc.freenode.net).
05:15:08 -!- kerlo has quit (kornbluth.freenode.net irc.freenode.net).
05:16:01 -!- MizardX has quit (kornbluth.freenode.net irc.freenode.net).
05:16:02 -!- sebbu has quit (kornbluth.freenode.net irc.freenode.net).
05:16:02 -!- CakeProphet has quit (kornbluth.freenode.net irc.freenode.net).
05:16:02 -!- Judofyr has quit (kornbluth.freenode.net irc.freenode.net).
05:16:04 -!- ski__ has quit (kornbluth.freenode.net irc.freenode.net).
05:16:19 -!- MizardX has joined.
05:16:29 -!- CakeProphet has joined.
05:17:32 -!- oklopol has quit (kornbluth.freenode.net irc.freenode.net).
05:17:32 -!- Asztal has quit (kornbluth.freenode.net irc.freenode.net).
05:17:52 -!- sebbu has joined.
05:18:30 -!- puzzlet has joined.
05:19:00 -!- Judofyr has joined.
05:19:27 -!- Leonidas has joined.
05:24:12 -!- ski__ has joined.
05:24:17 -!- Asztal has joined.
05:24:34 -!- ineiros has joined.
05:24:42 -!- SimonRC has joined.
05:31:10 -!- clog has joined.
05:31:10 -!- clog has joined.
05:31:11 -!- comex has quit (brown.freenode.net irc.freenode.net).
05:31:11 -!- CakeProphet has quit (brown.freenode.net irc.freenode.net).
05:31:11 -!- GregorR has quit (brown.freenode.net irc.freenode.net).
05:31:21 -!- sebbu has joined.
05:31:21 -!- rodgort has joined.
05:31:23 -!- comex has joined.
05:31:39 -!- CakeProphet has joined.
05:31:56 -!- GregorR has joined.
05:32:45 -!- pikhq has joined.
05:33:03 -!- Judofyr has joined.
05:33:05 -!- bsmntbombdood has joined.
05:33:20 -!- ehird has joined.
05:34:08 -!- puzzlet has joined.
05:37:19 -!- MizardX has joined.
05:37:22 -!- MizardX has quit (brown.freenode.net irc.freenode.net).
05:37:43 -!- Deewiant has joined.
05:37:44 -!- sazl has joined.
05:37:55 -!- MizardX has joined.
05:38:18 -!- kerlo has joined.
05:41:18 -!- GreaseMonkey has joined.
05:41:52 -!- oklopol has joined.
05:42:16 -!- lifthrasiir has joined.
05:42:39 -!- Leonidas has joined.
05:42:57 -!- fizzie has joined.
05:43:18 -!- decipher has joined.
05:44:11 -!- ski__ has joined.
05:44:33 -!- Ilari has joined.
05:45:34 -!- lamente has joined.
05:45:57 -!- AnMaster has joined.
05:52:49 -!- cherez has left (?).
07:02:45 -!- jix has joined.
07:20:20 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:46:11 -!- jix has quit (Read error: 110 (Connection timed out)).
08:59:52 -!- GreaseMonkey has quit ("Client Excited").
09:07:37 -!- puzzlet_ has joined.
09:08:20 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
09:18:42 -!- comex has quit (Remote closed the connection).
09:18:55 -!- comex has joined.
10:59:26 -!- jix has joined.
11:47:36 -!- Slereah has joined.
12:01:52 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
12:06:50 -!- Sgeo has joined.
13:46:21 <Deewiant> Is there no "not implemented" category/list on the wiki?
13:49:41 <fizzie> Isn't that just the set subtraction of the language list and the Implemented category? (What, MediaWiki doesn't do set operations?)
13:50:11 -!- Sgeo has quit ("Leaving").
13:50:14 <Deewiant> (Not in the UI, at least.)
13:50:17 <fizzie> Related: there are 192 articles in the "Languages" category, but 200 articles in the "Implemented" category. That probably means there are -8 unimplemented languages.
13:51:06 <Deewiant> fizzie: Unfortunately you'll find that the 192 refers only to the number it's showing on that page, which is less than 200 due to the subcategories.
13:51:14 <fizzie> Yes, that was the silly.
13:51:16 <fizzie> Just noticed.
13:51:38 <Deewiant> Aaand evidently subcategories aren't shown on just one page either.
13:51:40 <Deewiant> http://www.esolangs.org/wiki/Category:Unimplemented
13:51:46 <Deewiant> Hooray for UI.
13:51:47 <fizzie> Yes, it seems to be sorted.
13:53:34 <fizzie> Heh, Καλλίστῃ is apparently written with a kappa instead of a 'k', since it's at the end of the list there.
13:54:05 <Deewiant> Hooray for byte value-based sorting.
13:56:14 <fizzie> Anyway... 71 in Unimplemented, 200+62=262 in Implemented, 192+179+11=382 in Languages; this time I counted them right. 49 languages are neither implemented, nor unimplemented; probably some sort of superposition of both.
13:56:51 <Deewiant> Moving some of the Unimplemented to Unimplementable might be in order
13:57:10 <Deewiant> For instance, the already mentioned Καλλίστῃ.
14:44:27 -!- Judofyr has quit (Remote closed the connection).
14:51:46 -!- jix has quit ("...").
15:23:15 -!- decipher has quit (Remote closed the connection).
15:24:03 <MizardX> $base(111011010,2,10)
15:24:13 <MizardX> ... forgot //echo -a
15:26:47 <MizardX> and missed a 0
15:26:59 <ehird> :<
15:37:55 -!- sebbu2 has joined.
15:44:34 -!- sebbu has quit (Read error: 60 (Operation timed out)).
15:57:16 -!- Slereah2 has joined.
16:03:23 -!- Slereah has quit (Read error: 145 (Connection timed out)).
16:08:04 -!- puzzlet_ has quit (Read error: 60 (Operation timed out)).
16:08:07 -!- puzzlet has joined.
16:13:53 -!- Slereah has joined.
16:15:05 -!- MigoMipo has joined.
16:31:14 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
17:07:52 -!- BeholdMyGlory has joined.
17:12:56 -!- oerjan has joined.
17:14:33 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
17:15:00 -!- puzzlet has joined.
17:23:18 -!- oerjan has quit ("Whoosh!").
17:50:35 -!- Metcalf has joined.
17:52:14 <Metcalf> Hi :-)
17:55:58 -!- Metcalf has changed nick to impomatic.
17:56:05 -!- FireFly has joined.
18:17:41 <impomatic> Is there a term for mainstream languages that are rarely used / hear of? E.g. Oberon
18:24:26 <ehird> Dead
18:24:27 <ehird> :P
18:27:41 -!- Azstal has joined.
18:27:43 <MizardX> impomatic: http://answers.yahoo.com/question/index?qid=20080118233717AASGNps
18:28:06 -!- kar8nga has joined.
18:28:27 <impomatic> Hi ehird, and thanks MizardX
18:28:42 <ehird> lol, yahoo answers
18:28:54 <ehird> impomatic: I saw a reddit submission of yours earlier today :-)
18:28:59 <ehird> recognized the name
18:30:59 <ehird> impomatic: what's a reverse call? I'm not sure I understand
18:31:11 <ehird> also, is #2-return, <stack just a comment?
18:31:18 <ehird> not too hot at redcode...
18:31:59 <impomatic> I use impomatic in most places, twitter, stumbleupon, delicious, blogger, reddit
18:33:20 <impomatic> Each redcode opcode has two operands (though sometimes they're omited)
18:33:20 <impomatic> equ defines a macro
18:33:41 <ehird> ah
18:33:46 <ehird> so "mov #2-return, <stack "
18:33:49 <ehird> is mov with two arguments
18:33:49 <ehird> OK
18:34:01 <impomatic> so: call equ mov #2-return, <stack ; defines call to be a mov #2-return, <stack
18:34:03 <impomatic> :-)
18:34:17 <ehird> what about a reverse jump? a function that is before the IP or something?
18:34:22 <ehird> er
18:34:23 <ehird> reverse call
18:37:03 <bsmntbombdood> mainstream, but never heard of?
18:37:06 <bsmntbombdood> how does that work?
18:40:41 <impomatic> There are a couple of solutions to that problem on my blog, but they're both a bit messy
18:40:41 <impomatic> There's a redcode specific IRC channel, #corewars on irc.koth.org
18:40:41 <impomatic> If the subroutine is above the call in the source listing, the calculated addresses are incorrect
18:40:41 <impomatic> Due to wierd behaviour in the macro pre-processor
18:41:19 <ehird> Weird.
19:01:58 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
19:24:26 -!- olsner has joined.
19:34:44 -!- BeholdMyGlory has quit (Remote closed the connection).
19:35:53 -!- BeholdMyGlory has joined.
19:50:42 -!- KingOfKarlsruhe has joined.
20:32:35 -!- jix has joined.
20:48:13 -!- sazl has quit ("Lost terminal").
20:54:49 <impomatic> ^bf ++++[>++++<-]>+[>>++>+>+>++<[+++++<]<-]>>>++.>-.-<++++..+++.>>--.+<<<.----->.---<[.>]
21:03:03 -!- kar8nga has joined.
21:41:03 <ehird> impomatic: no output?
21:48:32 <impomatic> No, is the bot broken?
21:48:40 <AnMaster> hi ehird
21:48:50 <ehird> ^bf ,[.,]!I am alive
21:48:54 <ehird> impomatic: er, three is no bot
21:48:55 <AnMaster> ^help
21:48:56 <ehird> fungot isn't online
21:48:58 <AnMaster> ah
21:49:00 <ehird> fizzie:
21:49:13 <ehird> fizzie: fungot's down
21:49:16 <ehird> (just some context :P)
21:49:17 <AnMaster> ehird, just to freak you out I'm going to test the results of using tcmalloc from http://code.google.com/p/google-perftools/ with cfunge ;P
21:49:29 <ehird> Ouch.
21:50:29 <impomatic> notepad k
21:50:39 <impomatic> Wrong window!
21:52:47 <AnMaster> I have no idea what the result will be.... Also this may take a while: building instructions for x86_64 linux is kind of complex due to glibc unwinder may call malloc on x86_64 causing a deadlock. So I need to install a snapshot version of libunwind first amongst other things
21:54:37 <ehird> What about the firefox/freebsd malloc? jemalloc
21:55:20 <AnMaster> ehird, it seems harder to get going as non-freebsd malloc
21:55:33 <ehird> I thought speed is what mattered. :p
21:55:40 <AnMaster> but apart from that it seems optimised to keep memory fragmentation low, rather than ultimate speed
21:55:47 <ehird> Ah.
21:55:58 <ehird> Just write yer own damn malloc. :p
21:56:00 <AnMaster> good speed yes, and good multi-cpu performance
21:56:11 <AnMaster> but not good against fragmentation
21:56:14 <AnMaster> err
21:56:17 <AnMaster> good against speed
21:56:21 <AnMaster> on single cpu
21:56:34 <AnMaster> and I don't have multi-core, nor does cfunge use more than one thread
21:57:07 <AnMaster> ehird, anyway I'd rather not do that
21:57:13 <ehird> Single-core systems. Weird shit.
21:57:19 <ehird> Do you keep a dinosaur next to it? :P
21:57:24 <AnMaster> ehird, rather a quite good system from 2005
21:57:29 <AnMaster> I just don't have that much money
21:57:35 <AnMaster> so I can go buy new every year
21:57:48 <ehird> Yeah, it's just that multi core is really really useful.
21:57:49 <AnMaster> I'm going to use this until it is really no longer usable and/or breaks
21:57:59 <AnMaster> ehird, you pay for it?
21:58:04 <ehird> because you can have a cpu thrashing away at a problem and still run smoothly
21:58:12 <ehird> AnMaster: Hm? Well, yeah, multi core systems cost.
21:58:13 <ehird> Still.
21:58:28 <ehird> It's kind of like an OS without multiprocessing to me :-)
21:58:49 <AnMaster> ehird, ah you pay for it then? Great thanks. Just send me your credit card number and the code :D
21:58:57 <ehird> O crap
21:59:21 <ehird> Um I don't have a credit card :P
21:59:29 <AnMaster> ehird, also I will send it on to a friend from Nigeria who is looking for a UK account for some millions.
21:59:29 * impomatic has an 8 cpu mini-computer :-P
21:59:34 <AnMaster> oh crap
21:59:35 <fizzie> Oh.
21:59:45 <ehird> impomatic: heh
21:59:50 <AnMaster> impomatic, hm? What sort?
22:00:08 <fizzie> "IRC read failed." Seems that freenode had some issues at some point.
22:00:12 <impomatic> Unfortunately it's from something like 1990, so not very impressive.
22:00:42 <AnMaster> fizzie, oh yes during the night, doesn't it auto reconnect?
22:00:50 <AnMaster> or don't you run it under a supervisor
22:00:57 <AnMaster> say, daemontools
22:01:00 <AnMaster> from djb
22:01:01 <impomatic> AnMaster: 19" MVME boards, with a "Cray" logo on the front
22:01:01 <AnMaster> :)
22:01:08 <AnMaster> impomatic, CRAY!!!!!!!!
22:01:09 <AnMaster> :D
22:01:16 <AnMaster> impomatic, picture?
22:01:21 <fizzie> I don't want to do that, it sounds far too serious.
22:01:24 <AnMaster> impomatic, also what is 19" in metric?
22:01:31 <fizzie> The bot itself just @s if the read fails.
22:01:36 <AnMaster> hah you got a point fizzie
22:01:51 -!- fungot has joined.
22:02:02 <AnMaster> of course, we all know esoteric languages is serious business!
22:02:06 <AnMaster> ^style
22:02:07 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
22:02:13 <AnMaster> ^style speeches
22:02:14 <fungot> Selected style: speeches (misc. speeches from Project Gutenberg)
22:02:16 <ehird> impomatic: does it run an infinite loop in 6 seconds?
22:02:17 <AnMaster> hi fungot
22:02:18 <fungot> AnMaster: does mr bentham deny this? if he had fallen in a common vehicle. they were dominant at oxford, powerful in the inns of court, not in those known and responsible counsellors to whom he early attached himself, and then proceed to another.
22:02:35 <ehird> I nominate fungot for president 2012
22:02:38 <fungot> ehird: the effect of the victory. in 1824 the free men who seek to better their conditions, but also the most faultless, that the ablest men have been chosen as deputies of the nobility, what was never forgotten by anyone else who ever read it, as will give a single instance from our existing laws, some alterations are thought to be of any weight, who refuses to adopt the tariff, we think his explanation fnord at least, behindh
22:02:50 <ehird> A noble speech.
22:02:57 <AnMaster> bentham? isn't he the person who wanted to be preserved or whatever?
22:03:07 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
22:03:20 <fizzie> 19" is a standardish rack size, around half a metre.
22:03:25 <AnMaster> ah
22:04:17 <impomatic> About 47cm, haven't got a photo - looks like a washing machine without the door. Never tried the infinite loop!
22:04:54 <impomatic> Is lovecraft a esolang? That'd be cool :-)
22:05:15 <ehird> hehe, ^style controls fungot's babble
22:05:16 <fungot> ehird: after the adjournment of congress, i could easily account for the obscurity of the african. the fnord sings, the spinning-wheel turns round, the wedding-day is fixed, not by the shortest fnord abate the nuisance, they pull down the house.
22:05:17 <ehird> ^style
22:05:18 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches* ss wp
22:05:21 <ehird> ^style darwin
22:05:21 <fungot> Selected style: darwin (Books by Charles Darwin -- you know, that evilution guy)
22:05:24 <ehird> fungot: Be heretical!
22:05:25 <fungot> ehird:/ cumbre, includes all/ chief races have not descended by independent lines from/ rock-pigeon. this reflection :)/ moon " as indexed by/ tides, unaided by a heavy fall :) snow on rocks.
22:05:30 <ehird> oh, the :) and / bug
22:05:37 <fizzie> There's still the famous Darwin smiley issue, yes.
22:05:55 <ehird> Darwin was a happy man.
22:07:32 <fizzie> "the cumbre, includes all the chief races have not descended by independent lines from the rock-pigeon. this reflection of the moon as indexed by the tides, unaided by a heavy fall of snow on rocks." in fixed format.
22:08:05 <fizzie> It is comforting to know we have not all descended from the rock-pigeon.
22:09:16 <MizardX> ^bf ++++[>++++<-]>+[>>++>+>+>++<[+++++<]<-]>>>++.>-.-<++++..+++.>>--.+<<<.----->.---<[.>]
22:09:17 <fungot> hello world!
22:09:29 <MizardX> 85 characters :P
22:09:45 <impomatic> I've got one in 84 now!
22:13:00 <AnMaster> impomatic, oh?
22:13:00 -!- jix has quit ("...").
22:13:46 <AnMaster> is it possible to prove a specific bf program is the shortest possible encoding of a specific string in bf?
22:14:19 <olsner> by exhaustively searching all shorter programs :D
22:14:29 <AnMaster> so there is no short cut?
22:14:40 -!- KingOfKarlsruhe has quit (Remote closed the connection).
22:15:01 <impomatic> ^bf ++++[>++++<-]>+[>>++>+>+>++<[+++++<]<-]>>>++.>-.<++++..+++.>>--.++<<<.---->.--<[-.>]
22:15:02 <fungot> hello world!
22:15:07 <AnMaster> well you could exclude any program without output, and all programs with input would be uninteresting
22:15:17 -!- kar8nga has left (?).
22:15:20 <olsner> there could be, but I think there's a reason optimization is hard in general
22:16:33 <AnMaster> hm
22:19:42 <impomatic> We're also talking about bf in #corewars on irc.koth.org
22:20:30 <ehird> Tell them to come here :-P
22:20:38 <lamente> nice, corewars
22:20:38 <olsner> I had a 116-char bf hello world as a test case for my thue interpreters
22:21:43 * ehird tries to work out impomatic's name in #corewars
22:22:32 <olsner> it couldn't be just "impomatic"?
22:22:46 <ehird> there is no impomatic in there.
22:22:59 <ehird> also, nobody's talking.
22:23:07 <impomatic> OoS
22:23:20 <olsner> it's a fish with a reddish hue, that's what it is
22:23:47 <impomatic> It's OoS. I already mentioned #esoteric
22:26:29 <impomatic> ehird: it was busy before you arrived http://www.koth.org/irc-logs/2009-01-27.txt
22:26:41 <ehird> I kill everything I touch.
22:26:50 <impomatic> We're a bit shy around strangers ;-)
22:27:39 <oklopol> o
22:27:43 <ehird> impomatic: if you can get BF hello world in a standard 80-char line I'll be amazed
22:27:57 <AnMaster> ehird, result: At least this build of tcmalloc is slower than glibc malloc for cfunge
22:28:05 <ehird> i see.
22:28:11 <oklopol> WE'RE NO STRANGERS TO LOOOOOOOVE
22:28:23 <AnMaster> bu around 0.020 seconds
22:28:33 <AnMaster> tested over 50 runs each
22:29:18 <impomatic> ehird: I don't think I can knock off the last 4 instructions
22:29:20 <AnMaster> still the heap profiler should be interesting :)
22:29:24 <ehird> impomatic: aw
22:29:27 -!- nescience has joined.
22:29:36 <ehird> well
22:29:37 <ehird> [.>]
22:29:40 <ehird> is a pretty shoddy way to do it :P
22:30:05 <oklopol> AnMaster: is it possible to prove a specific bf program is the shortest possible encoding of a specific string in bf? <<< if you're asking in general, you can't be serious
22:30:17 <ehird> oklopol: no, he is
22:30:31 <ehird> I don't think AnMaster has ever fully grasped the halting problem, he says things like that all the time
22:30:33 <AnMaster> oklopol, I'm only asking for "hello world!"
22:30:34 <AnMaster> ...
22:30:45 <AnMaster> and I suspected it would run into the halting problem yes
22:30:46 * ehird rolls eyes
22:30:49 <AnMaster> but I wasn't sure
22:30:57 <oklopol> ooooooooooooooooooooooo
22:31:11 * oklopol dances a wild dance of oko
22:34:46 <ehird> [21:15]<OoS> http://golf.shinh.org/
22:34:50 <ehird> another anagolf player!
22:35:13 <MizardX> 453339721324993013548175354624816937305067727045881380840502707195746854576 possible bf-programs of length 85 :) ... that's 75 digits!
22:35:37 <AnMaster> wtf is "gv"?
22:35:49 <AnMaster> I get "could not find gv" as a cryptic error
22:35:58 <ehird> MizardX: yikes
22:36:05 <ehird> what about length 80
22:36:39 <MizardX> 15114869455135780537081431784864382700651060085404149964957776780638292 of length 80, 71 digits
22:37:01 <AnMaster> would a genetic search work at all for this? Probably not
22:37:11 <ehird> ...
22:37:12 <AnMaster> MizardX, what about excluding input?
22:37:16 <AnMaster> since it isn't relevant for this
22:37:17 <ehird> AnMaster: You're really attentative.
22:37:20 <ehird> EgoBot did that.
22:37:24 <ehird> impomatic's beaten it by far.
22:37:29 <AnMaster> ah
22:37:32 <oklopol> so.... 80 digits in octal = 71 digits in base 10? that's quite an observation :P
22:37:40 <ehird> oklopol: :P
22:37:48 <AnMaster> oklopol, :D
22:38:32 <MizardX> 284508415089842693556340016101767865172552487769291117597604246945 of length 80, without input, 66 digits
22:38:39 -!- GreaseMonkey has joined.
22:38:45 <AnMaster> MizardX, does this include invalid programs like ]]]]
22:38:50 <MizardX> no
22:38:57 <oklopol> oh it doesn't?
22:39:01 <MizardX> balanced [ ]
22:39:03 <oklopol> right, right, you're not an idiot
22:39:07 <AnMaster> good
22:39:19 <MizardX> neither ] [
22:39:37 <AnMaster> MizardX, how long would an exhaustive search take? :D
22:39:45 <AnMaster> assume a modern desktop computer
22:39:55 <AnMaster> and an optimised bf implementation
22:40:11 <AnMaster> and that each program will be terminated after, say, 10 seconds at most
22:40:22 <AnMaster> since there is no way to know if it will halt at all
22:40:52 <MizardX> 9.0157127687693897e+53 years given 1ms execution time per parogram
22:40:55 <MizardX> program*
22:41:00 <Azstal> Now we just need to know http://en.wikipedia.org/wiki/Chaitin%27s_constant to get an estimate!
22:42:10 <ehird> AnMaster treats huge brute forcing like I did a year ago.
22:42:22 <oklopol> also median running time of all halting problems
22:42:38 <oklopol> ehird: you mean all awe about combinatorial explosion?
22:42:57 <oklopol> lecturer showed today a loop that started 10 threads
22:43:11 <oklopol> for(i=0;i<10;i++)pid[i]=fork();
22:43:16 <ehird> no, just continually asking if halting problem-related things can be solved, and asking how long huge brute forcing will take as if it's even worthy of consideration
22:43:57 <impomatic> Hmmm... sounds a long time
22:44:03 <AnMaster> MizardX, and assuming IBM RoadRunner or whatever the current fastest super computer is?
22:44:11 <impomatic> It requires 12 . only two of which are next to each other
22:44:17 <ehird> I rest my case
22:44:24 <AnMaster> ehird, I was joking...
22:44:27 * oklopol waits for someone to lol @ lecturer :<
22:44:29 <AnMaster> sorry that I forgot ~
22:44:42 <ehird> Yeah, I was "joking" too in 2007
22:44:47 <impomatic> If the 1st . doesn't output a 'h' it can terminate
22:44:47 <impomatic> Forget that, . could be in a loop :-/
22:45:14 <AnMaster> ehird, so? You have been here way longer than I have
22:45:30 <ehird> Being in #esoteric is not the be-all end-all of computational knowledge.
22:45:40 <AnMaster> ehird, fully agreed
22:45:55 <AnMaster> oh gv is some "view *.ps" thing
22:45:57 <AnMaster> right
22:47:29 * Azstal invents Brainfrak, where the square brackets have chamfered edges.
22:48:03 <ehird> proto: halting problem solver which, when given P, outputs "go to hell" and terminates the program.
22:48:53 <impomatic> ghostview?
22:50:41 <FireFly> fungot?
22:50:43 <fungot> FireFly: " 651? 1. this paragraph was published in/ :( notices" just alluded to. in/ tenth chapter it was shown that no ascertained limit to/ amount :) structural difference between/ inhabitants :)/ radack archipelago, a length :) time.
22:50:45 <FireFly> Hi
23:00:43 -!- oerjan has joined.
23:03:33 <AnMaster> impomatic, yep
23:03:58 <AnMaster> ^style irc
23:03:59 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
23:04:06 <AnMaster> also: night
23:04:45 <impomatic> Does anarchy golf use 0 for EOF?
23:05:11 <FireFly> Does the fungot chat style thing select random lines?
23:05:12 <fungot> FireFly: on mac osx maybe? maybe switch on both?) ( else ( occurn ( cdr markers) ( cdr list) value)
23:05:21 <FireFly> 'kay
23:05:48 <ehird> impomatic: yes
23:05:49 <ehird> IIRC
23:07:12 <oerjan> FireFly: markov chain of words
23:07:39 <FireFly> Ah
23:07:49 <oerjan> the style files are preprocessed
23:09:46 <MizardX> impomatic: Heh. Right after your program has printed out "hell" in "hello world!", exactly 666 operations has been executed. :P
23:10:52 <oklopol> haha
23:11:02 <impomatic> Nice, I wish I'd planned that!
23:11:18 <impomatic> Is that the 84 instruction version?
23:11:26 <MizardX> 85
23:12:51 <MizardX> I also counted [, ] as single operations. Loop length is (1 + inner_ops)*num_cycles + 1
23:13:12 <oerjan> <AnMaster> wtf is "gv"?
23:13:18 <oerjan> ghostview iirc
23:13:29 <AnMaster> oerjan, already found out
23:13:34 <AnMaster> ...
23:14:00 <AnMaster> oerjan, maybe you shouldn't do like me, and instead read the whole scrollback first
23:14:05 <AnMaster> ;P
23:14:07 <AnMaster> night
23:14:16 <oerjan> but then i would forget that there was something to answer :D
23:14:17 <GregorR> READING THE BACKLOG IS FOR THE WEAK
23:17:03 -!- CakeProphet has joined.
23:22:47 <oklopol> GregorR: well what do you do in order to make sure you haven't missed any of the fun then?
23:23:10 <oklopol> (you mum?)
23:23:20 <oklopol> *your
23:24:03 -!- puzzlet_ has joined.
23:24:52 -!- puzzlet has quit (Remote closed the connection).
23:42:20 -!- olsner has quit (Remote closed the connection).
23:42:27 -!- BeholdMyGlory has quit ("bye").
23:42:44 <oklopol> so umm anarchy gold is actually *alive*?
23:43:56 <oklopol> ...
23:43:57 <oklopol> *golf
23:44:13 <ehird> yeah, to a degree
23:44:17 <ehird> it's never been particularly active, but people play it
23:44:19 <ehird> and #golf
23:44:32 <ehird> err
23:44:34 <ehird> #anagolf
23:44:36 <oklopol> anagolf
23:44:43 * oerjan swats oklopol for making him google a nonexisting term -----###
23:44:47 <oklopol> err.
23:44:47 <ehird> eh
23:44:49 <ehird> whatever the chan is called
23:44:54 <FireFly> }o/
23:44:55 <ehird> wat
23:44:56 <FireFly> With \
23:45:35 <oklopol> oerjan: don't google a term with "gold" in it.
23:46:16 <oerjan> you mean you want to hoard it all yourself?
23:46:58 <oklopol> http://golf.shinh.org/p.rb?99+shinichiroes+of+hamaji <<< so umm 14 characters of ruby?
23:47:42 <ehird> sure.
23:47:44 <ehird> who knows
23:47:55 <ehird> probably a sneaky cheat
23:47:57 <ehird> $_,$x=split"!",<>;$x=reverse$x;s/</\$i--;/g;s/>/\$i++;/g;s/-/\$a[\$i]--;/g;s/\+/\$a[\$i]++;/g;s/./print chr\$a[\$i];/g;s/,/\$a[\$i]=chop\$x;/g;s/\[/while(\$a[\$i]){/g;s/\]/};/g;eval$_
23:48:00 <ehird> wonder why this doesn't work.
23:48:28 <oklopol> just seems like kinda hard to cheat in a program that just prints a fuckload of text.
23:48:36 <ehird> yeah
23:48:37 <ehird> I dunno
23:49:01 <oklopol> of course, would be interesting if it was his submit, and shinichiroes of hamaji wasn't actually anything sensible, but just something that he could easily print.
23:49:49 <ehird> the guy's hame is "shinh"
23:49:53 <ehird> nick, at least
23:49:58 <ehird> -> shinichiro hamaji
23:50:03 <ehird> so it's probably the owner's submission
23:50:08 <oklopol> yes
23:51:11 <ehird> http://golf.shinh.org/p.rb?Print+out+a+lot+_56K+BEWARE_
23:51:14 <ehird> my challenge ^.^
23:51:38 <ehird> probably shoulda chosen less determinatistic output
23:51:48 <ehird> 1-99999 is pretty easy
23:54:19 <oklopol> fungot
23:54:20 <fungot> oklopol: homo sapiens hei_e__er_ensis ' !hangman lcase-guess' to guess a letter!! fnord::: 0xff sponsor gift
23:54:34 <oerjan> ^style
23:54:34 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
23:54:48 <oerjan> heidelbergensis
23:56:20 <oerjan> except it's apparently consider an own species, not a subspecies of sapiens
23:57:12 <oklopol> cise would probably be like Jn" .1e9
23:57:18 <oklopol> if i put in 1e9
23:58:00 <oklopol> i would prefer not having numbers at all (you know, for purity), but wouldn't be very golfy.
23:58:49 <oklopol> btw: thought of a new fun unimplementable feature for cise
23:58:49 <ehird> oklopol: #anagol
23:58:57 <oklopol> there's a lot of parse trees
23:59:03 <oklopol> how about if there's ambiguity
23:59:13 <oklopol> you can specify an assert
23:59:29 <oklopol> Ass
23:59:45 <oklopol> ehird: oh i tried it right after #anagolf.
23:59:55 <ehird> XD lol
2009-01-28
00:00:14 <impomatic> When does the fungot bf interpreter terminate? E.g. if I put it in an infinite loop printing something?
00:00:15 <fungot> impomatic: you could ask him to move two seats from mine. it's just werid that it never returned in the first place
00:00:40 <oerjan> impomatic: iirc it's pretty robust
00:00:44 <oklopol> impomatic: after $lot instructions?
00:00:48 <ehird> ^bf +[>+]
00:00:56 <ehird> ^bf +[.>+]
00:00:56 <fungot> <CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP> ...
00:00:59 <ehird> ...
00:01:02 <ehird> It's not meant to break.
00:01:06 <ehird> fizzie:
00:01:18 <ehird> impomatic: fungot is written in befunge
00:01:19 <fungot> ehird: basically lots of spaces there.)
00:01:20 <FireFly> Didn't it replace chars <31 with dots?
00:01:21 <oerjan> impomatic: well i think it also stops after a number of characters
00:01:28 <ehird> impomatic: http://zem.fi/~fis/fungot.b98.txt
00:01:29 <fungot> ehird: or is it new zealand... do you do if you keep using the module system command processor chapters.
00:02:30 <oerjan> FireFly: not all of them, just LF and CR iirc, it was changed so it could do emotes and stuff
00:02:37 <FireFly> Ah
00:02:47 <oerjan> ^bf +[.+]
00:02:48 <fungot> <CTCP>.. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ...
00:02:57 <ehird> 00:03 <Bouncer> CTCP-query unknown( ..) from fungot
00:02:58 <fungot> ehird: bad things happen when 2 year olds realize " wow. i have moral fiber.
00:02:58 <ehird> :-D
00:03:02 <ehird> hahahahah
00:03:04 <FireFly> [01:02:47] Channel CTCP .. request from fungot [n=fungot@momus.zem.fi] (.. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ...), ignored (unrecognized)
00:03:05 <fungot> FireFly: i'll blame them regardless. :-p i just feel optimistic in general.
00:03:15 <oerjan> FireFly: but the channel censors some others
00:03:28 <ehird> a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) <fungot> ehird: bad things happen when 2 year olds realize " wow. i have moral fiber. <fungot> FireFly: i'll blame them regardless. :-p i just feel optimistic in general.
00:03:29 <fungot> ehird: so...if i were to use cps to do any key input without actually matching the keycodes
00:03:31 -!- ehird has set topic: a) oko; b) the swatter; c) messing with the topic; d) http://tunes.org/~nef/logs/esoteric; e) the letter game; f) gay sex. occasionally.; g) http://esolangs.org/wiki/Main_Page; h) <fungot> ehird: bad things happen when 2 year olds realize " wow. i have moral fiber. <fungot> FireFly: i'll blame them regardless. :-p i just feel optimistic in general..
00:03:38 <FireFly> :>
00:03:55 <oklopol> o
00:04:24 <fizzie> Yes, the interpreter stops after aaaaaa***** instructions. ("Instructions" here means bytecode instructions, so +++++ counts as a single instruction.)
00:04:50 <fizzie> (And it also terminates after 88+:* output characters.)
00:05:07 <ehird> People can't read befunge numbers, fizzie :P
00:05:13 <FireFly> 16*16?
00:05:18 <fizzie> Well, 10^6 and 256, then.
00:06:05 <oerjan> ehird: sure we can, with a little thought.
00:06:56 <FireFly> What's 'a'?
00:07:04 <fizzie> 10.
00:07:08 <fizzie> a-f push 10-16.
00:07:09 <FireFly> Ah
00:07:16 <oerjan> *-15
00:07:18 <FireFly> I didnẗ know there were a hex addition
00:07:33 <FireFly> Just knew of 0-9
00:07:37 <fizzie> Comes in Funge-98; doesn't exist in Befunge-93.
00:08:01 <fizzie> Although I've seen at least one "mostly Befunge-93" interpreter that did a-f (and the single-shot string-mode ') as an extension.
00:09:05 <FireFly> <> #" 91+6*:,2+,84*:,:3+,84*2+,>:#,_84*2+,@" is my most creative creation in Befunge so far
00:09:16 <oklopol> wuz dat do
00:09:19 <FireFly> quine
00:09:29 <FireFly> By parsing the stuff inside the string as code
00:09:37 <FireFly> After pushing it to the mem as a string
00:09:43 <oklopol> mm right
00:09:45 <fizzie> The string-mode feature makes it pretty well-suited for quines.
00:09:52 <FireFly> Yep, combined with #
00:10:15 <oklopol> is # a bouncal
00:10:26 <FireFly> It jumps over the next command
00:10:29 <oklopol> oh.
00:10:42 <oklopol> so yes, but a different kind than i thought.
00:10:46 <FireFly> So I basicly jump over the " that enters string-mode
00:10:56 <oklopol> that's the great thing about inventing your own words
00:11:02 <oklopol> if you're wrong, no one will know
00:11:02 <fizzie> The underload interpreter termination condition is even more arbitrary, since it's ffaa***, so 225000. Not sure why. Since it counts Underload commands, it's easy to get a rather slow Underload program by just ":*"ing up two strings that are close to half of the stack size limit, then looping with (~:^):^.
00:11:44 <oerjan> oklopol: a suparene observation
00:12:02 <oklopol> oerjan: lol i almost googled that.
00:12:14 <FireFly> It doesn't contain "gold" at least
00:12:22 <oklopol> fizzie: better arbitrary than base 10
00:12:52 <oklopol> okay math time --->
00:24:01 -!- impomatic has quit (Read error: 110 (Connection timed out)).
00:25:16 <ehird> By the way, from 2003-01-something to 2008-10-31, 786499 lines were said here.
00:25:21 <ehird> 800k. Not really that many...
00:25:46 <ehird> It'd take 9 straight days to read the logs, assuming 1line/sec
00:26:05 <ehird> so probably like nearing a month to read them all if you allocated a bit of your day to it
00:27:08 <FireFly> Time is valuable
00:29:37 -!- FireFly has quit ("zzzzz").
00:30:12 * oerjan is slightly startled by his watch
00:30:29 <ehird> wut
00:30:31 <oerjan> it has day names in both english and german
00:30:45 <lamente> Time flies like an arrow, FireFly's a banana
00:30:58 <oerjan> normally it's in english, but for a brief time each night it goes by the german one
00:31:06 <oerjan> so currently it reads "DIE" :D
00:31:29 <oerjan> (well, abbreviated to 3 letters)
00:31:59 <oerjan> lamente: a burning banana?
00:32:11 <lamente> my watch is like that-
00:32:24 <lamente> it has english and spanish, spanish is what's normally on
00:32:35 <lamente> is yours a citizen?
00:32:49 <oerjan> Lorus, it says
00:34:13 <oerjan> er, a russian in canada, with his watch set to spanish?
00:34:25 <ehird> lamente is a polyglot
00:34:35 <ehird> lamente do you know toki pona or is that someone else
00:36:35 <ehird> lamente
00:37:16 <lamente> yes
00:37:25 <lamente> i am that someone else
00:37:34 <ehird> lamente how do you say "segmentation fault" in toki pona :P
00:37:47 <lamente> "pakala"
00:37:53 <ehird> ...really?
00:37:55 <lamente> yes
00:37:56 <ehird> I was expecting "you can't".
00:38:03 <ehird> What does pakala literally mean?
00:38:14 <lamente> the creator of toki pona was in #linguistics today, actually
00:38:27 <lamente> it means "Bugger up"
00:38:38 <ehird> haha
00:38:53 <ehird> lamente: I take it that applies to all error?
00:39:06 <lamente> yes.
00:39:09 <ehird> :-D
00:39:37 <ehird> I should learn toki pona.
00:39:40 <ehird> It'd be fun.
00:48:41 <ehird> lamente: So I take it technical discussion in toki pona is near-impossibl
00:48:42 <ehird> e
00:50:04 <lamente> yes!
00:50:53 <ehird> I take it this is a feature
00:51:14 <ehird> Maybe someone should design a toki pona programming language. The only error message is "pakala"
00:51:44 <oerjan> the name alone tells us it's intended for pacific paradise islands without modern technology.
00:52:42 <ehird> Some paradise.
00:52:55 <Azstal> pakala, tu ala, nasa jan! (note, I know none of the grammar, so I put them in a random vaguely english-like order)
00:56:59 <ehird> lamente: Doesn't toki pona kind of rely on the Sapir-Whorf hypothesis being strongly true?
00:58:36 <lamente> strongly true, or maybe strongly false, something like that
00:59:50 <ehird> lamente: how strongly false? It's meant to change how you think.
01:00:07 <lamente> ehird: is it?
01:00:20 <ehird> It can become a sort of "yoga for the mind". Instead of getting caught in negative thoughts and anxiety, you learn to relax, meditate and explore your relationship to life itself.
01:00:26 <ehird> Training your mind to think in Toki Pona can lead to many deeper insights about yourself or the world around you.
01:00:28 <ehird> etc
01:00:30 <lamente> what the fuck?
01:00:41 <lamente> did sonja write that?
01:01:33 <ehird> yes
01:01:37 <ehird> http://www.tokipona.org/intro.html
01:01:42 <ehird> section Wisdom and True Meaning
01:01:52 <lamente> that's horrible
01:02:05 <ehird> it's certainly bullshit
01:02:07 <lamente> but then sonja is a profoundly fucked up individual
01:02:11 <ehird> haha
01:02:12 <ehird> how
01:02:31 <lamente> she wrote that, for one!
01:02:41 <ehird> for other...?
01:02:42 <ehird> :p
01:07:00 -!- Sgeo has joined.
01:17:46 <ehird> oklopol: ping
01:26:47 <ehird> oklopol: ping
01:27:51 <ehird> lamente: More bullshit: "medical benefits" http://www.tokipona.org/ponasijelo.html
01:29:06 -!- puzzlet_ has quit (Remote closed the connection).
01:29:12 -!- puzzlet has joined.
01:29:31 <ehird> ^bf ++++[<+++++<+++<++<+<++[>]<-]<-<-<<<-<<+++++[>+++++<-]>[>+>[++++>][<]>-]>>.---.>..>.<<<.>>>>.<.+++.<.<-.<+.
01:29:32 <fungot> hello world!
01:31:01 -!- psygnisfive has joined.
01:31:58 <psygnisfive> oko!
01:32:31 <ehird> oklopol: ping
01:32:31 <lamente> means eye in toki pona
01:32:42 <psygnisfive> toki pona!
01:33:22 <ehird> means good language in toki pona
01:37:59 <kerlo> kerlo!
01:38:17 <lamente> ek, orl?
01:38:31 <psygnisfive> means olrek in not backwards ese.
01:38:40 <kerlo> I guess my Translation-Creds have run out.
01:41:17 <oerjan> so what does kerlo mean in lojban?
01:41:22 <kerlo> Ear.
01:41:26 <oerjan> ah
01:42:00 <kerlo> It's a metaphor. Maybe. :-P
01:42:02 <Azstal> heh
01:42:07 <Azstal> my name means table
01:42:20 <Azstal> well, Asztal's name.
01:42:36 <oerjan> in lojban?
01:42:46 <Azstal> Hungarian
01:56:25 <psygnisfive> theres this language, armenian, written with a funky alphabet, and one joke about the written language is that it looks like hu muh umun unuuu mumuhu mukum unum utuh mumhumuhum
01:56:31 <psygnisfive> because, well.. it does, a lot.
01:56:52 <psygnisfive> i've suggested in #isharia that someone make an eso conlang that looks like that when romanized
01:57:14 <oerjan> uh huh.
01:57:34 <psygnisfive> everything is hmnu or some other similar stuff
01:57:53 <oerjan> hm
01:58:01 <psygnisfive> i wonder if we could make similar analogies here
01:58:09 <psygnisfive> maybe an esolang that mocks lisp
01:58:20 <psygnisfive> everything literally is ()))((())()))(())
01:58:21 <Azstal> that'th not very nithe
01:58:33 <oerjan> i think that has been done
01:58:52 <psygnisfive> has it?
01:59:00 <oerjan> http://esoteric.voxelperfect.net/wiki/Brackets
01:59:07 <oerjan> ok not exactly the same
01:59:34 <oerjan> ack
01:59:40 <oerjan> not even close
01:59:44 <oerjan> too much extra
01:59:48 <psygnisfive> <>(()[Brackets])<()0)}())[)()0))(]])1)
01:59:48 <psygnisfive> <>>([)0)>[0]{(]()2)()))([)0))([])1)(]])2)
01:59:51 <psygnisfive> look at that code
02:00:00 <psygnisfive> do yo see that? that is way too comprehensible! :|
02:00:13 <psygnisfive> why, i can practically read that!
02:00:32 <oerjan> must be your linguist training
02:00:38 <psygnisfive> :P
02:02:33 <oerjan> hm there should be something closer but i don't know how to search for it
02:19:48 <oklopol> ehird: pong
02:36:50 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
02:49:26 <psygnisfive> oklopol! :d
02:49:27 <psygnisfive> :D
02:51:55 -!- lamente has changed nick to lament.
03:42:53 -!- Kinjet has joined.
03:43:17 -!- Kinjet has left (?).
03:43:47 <oerjan> historyofspam?
03:43:48 -!- GregorR has quit (Remote closed the connection).
03:44:00 -!- GregorR has joined.
04:35:47 -!- Sgeo has quit ("Leaving").
05:36:00 -!- oerjan has quit ("leaving").
06:42:48 <bsmntbombdood> a while ago we were talking about fastly implementing brainfuck, specifically bounds checking on the tap
06:43:36 <bsmntbombdood> the best way is probably to just mmap 2 gb and put a gaurd page on either end
06:43:38 <bsmntbombdood> and you're done
06:43:52 <bsmntbombdood> no stupid reallocing or anything
06:44:06 <lament> you mean
06:44:16 <lament> brainfuck memory checking is O(1) for sufficiently large values of 1
06:44:28 <bsmntbombdood> what do you mean?
06:51:43 <bsmntbombdood> ...
06:55:30 <bsmntbombdood> fine
06:56:23 -!- olsner has joined.
07:00:26 -!- impomatic has joined.
07:20:22 -!- olsner has quit ("Leaving").
07:22:48 -!- puzzlet has quit (Remote closed the connection).
07:22:54 -!- puzzlet has joined.
07:33:08 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
07:33:26 -!- puzzlet has joined.
07:34:16 -!- cherez has joined.
07:34:32 -!- cherez has quit (Client Quit).
07:35:15 -!- cherez has joined.
07:35:27 -!- cherez has left (?).
07:42:48 -!- ehird has quit (Remote closed the connection).
07:43:01 -!- ehird has joined.
07:45:58 -!- mtve has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:09:36 -!- jix has joined.
08:26:04 <MizardX> Anyone know a good parser generator/library for python?
08:26:51 <puzzlet> PLY?
08:27:51 <lament> Parsec
08:31:07 <MizardX> PLY seems interesting... couldn't find Parsec >_>
08:34:02 -!- GreaseMonkey has quit ("Client Excited").
08:54:56 -!- NerdyChic has joined.
08:56:27 -!- NerdyChic has left (?).
08:58:52 <AnMaster> interesting
08:59:38 <AnMaster> using bsearch() is slower than a simple linear search with "stop if passed the value we searched for" in certain cases.
08:59:55 * AnMaster wonders about a custom binary search instead
09:01:07 <AnMaster> (and yes I did large tests and plotted the results)
09:02:40 -!- puzzlet has quit (Remote closed the connection).
09:02:47 -!- puzzlet has joined.
09:23:58 <AnMaster> for custom the difference is so small in this case that the mean of 500 runs varies less than 0.00001 between custom binary search and the linear search. Heh.
09:30:28 -!- ais523 has joined.
09:35:36 <AnMaster> ais523, hi
09:36:01 <AnMaster> I was testing the best way to search for fingerprint to load, and a linear search is faster than bsearch() for some reason.
09:36:09 <ais523> hi
09:36:15 <AnMaster> A custom binary search is just about as fast as a linear search
09:37:49 <AnMaster> ais523, any idea why?
09:38:03 <ais523> AnMaster: you're on a small array
09:38:18 <ais523> binary is only faster than linear if you have a lot of elements
09:38:21 <AnMaster> 30 entries
09:38:25 <AnMaster> hm
09:38:30 <ais523> simple algorithms tend to be faster on small numbers of entries no matter what their computational class
09:38:38 <AnMaster> hm ok
09:38:38 <ais523> in this case, lsearching 30 entries is trivial for a computer
09:38:51 <ais523> bsearching involves lots of complicated comparisons and looping and out-of-order memory accesses
09:38:56 <AnMaster> ais523, the array stride is quite large
09:39:02 <ais523> if you had 100000 fingerprints, the bsearch would probably be faster
09:39:32 <AnMaster> array stride = 48 bytes
09:39:40 <AnMaster> since I'm searching an array of structs
09:39:46 <AnMaster> based on the first field in the struct
09:40:07 <AnMaster> ais523, hm
09:41:00 <AnMaster> ais523, I guess maybe cache matters too?
09:41:17 <ais523> possibly, but that's unlikely to be the reason
09:41:28 <AnMaster> hm
09:41:29 <AnMaster> right
09:41:56 <AnMaster> well, the way Mike Riley is going, I guess bsearch will be faster soon ;)
09:43:38 <ais523> heh
09:44:13 <AnMaster> Deewiant, mycology doesn't test 3DSP right?
09:44:36 <AnMaster> because cfunge implements that one
09:44:48 <AnMaster> and if mycology doesn't test it, ccbi doesn't implement it
09:44:56 <AnMaster> most likely
09:45:11 <AnMaster> or wait, does it?
09:45:26 <AnMaster> _3dsp.d, yet I can't find it when grepping mycology
09:45:41 <AnMaster> huh
09:46:10 <ais523> which one is 3DSP?
09:46:47 <AnMaster> "3D space manipulation extension" is the official name, but actually it is FPSP-style matrix operatiosn
09:46:49 <AnMaster> operations*
09:46:53 <AnMaster> and vectors
09:47:03 <ais523> ah, interesting
09:47:21 <ais523> you know, I'm slightly scared at all the "useful" operations that Befunge is accumulating...
09:47:21 <AnMaster> dot product or vector, matrix translation and so on
09:47:36 <AnMaster> ais523, that is mostly due to RC/Funge I'm afraid
09:47:40 <AnMaster> and half of them are insane
09:47:47 <AnMaster> like malloc() stuff for funge and what not
09:48:17 <AnMaster> most of them I'm never going to implement.
09:49:27 <AnMaster> I don't get xkcd today...
09:51:44 <impomatic> Finally I'm in first place on something :-) http://golf.shinh.org/p.rb?google#Brainfuck
09:52:03 <ais523> impomatic: ah, I remember anagold
09:52:05 <ais523> *anagolf
09:52:11 <ais523> I used to play it a lot, but haven't checked in recently
09:52:51 <AnMaster> bf size = 114
09:52:59 <AnMaster> befunge size = 26
09:53:01 <AnMaster> heh
09:53:16 <ais523> AnMaster: Befunge has loads more commands and also string literals, it's easily going to win in a problem like that
09:53:21 <AnMaster> yes
09:53:31 <AnMaster> bash and awk = 25
09:54:03 <AnMaster> python = 25 too
09:54:03 <ais523> bash is a special one, because it allows you to call out to external programs
09:54:09 <AnMaster> perl = 17
09:54:10 <ais523> whereas most of the others don't by default
09:54:18 <AnMaster> ais523, it says "exec denied"
09:54:21 <ais523> yes
09:54:23 <AnMaster> isn't that true for bash too?
09:54:25 <ais523> bash always has exec allowed, though
09:54:30 <AnMaster> strange
09:54:30 <ais523> no matter what the global setting
09:54:33 <AnMaster> pure bash is fun
09:54:47 <AnMaster> GolfScript == 14?!
09:56:41 <ais523> GolfScript is an esolang specifically designed to give small programs
09:56:51 <AnMaster> ais523, do you get xkcd today?
09:56:56 <ais523> although I think it's beatable with a newly designed language, it beats everything else on anagolf's list hollow
09:57:00 <ais523> AnMaster: I don't read xkcd
09:57:17 <AnMaster> what is "Mind of Mencia"
09:57:57 <AnMaster> hm... seems like a humor program according to wikipedia. Then xkcd make even less sense
10:08:09 <AnMaster> ais523, unusually mad concept: http://en.wikipedia.org/wiki/Space_fountain
10:09:28 <ais523> AnMaster: OK, that's very clever, but insane
10:09:35 <AnMaster> exactly
10:09:43 <ais523> especially as it might lead to the destruction of the surrounding countryside, or possibly the entire Earth, if the power supply failed
10:10:11 <AnMaster> ais523, and I think it would need enormous amount of energy...
10:10:16 <ais523> ah yes
10:10:30 <ais523> Wikipedia thinks it wouldn't survive re-entry, though, so you would only have a minor disaster on your hands
10:11:18 <ais523> incidentally, I just received an email saying "door controllers not working"
10:11:24 <ais523> but it was the internal doors this time for a change
10:11:42 <AnMaster> also would transporting people in that work? I mean the G force would be rather huge wouldn't it?
10:11:56 <AnMaster> ais523, so you can't get in?
10:12:01 <ais523> AnMaster: no, I am in
10:12:07 <AnMaster> um
10:12:09 <ais523> I'm not entirely convinced that I could get back out again
10:12:09 <AnMaster> can't get out?
10:12:12 <ais523> but I may try later today
10:12:13 <AnMaster> ouch
10:12:14 <ais523> I haven't checked yet
10:12:24 <ais523> the doors are generally quite good at opening from the inside, though
10:12:27 <AnMaster> ah
10:12:47 <AnMaster> ais523, space elevator though, that sounds quite sane nowdays
10:13:23 <ais523> compared to the fountain
10:13:28 <ais523> I think they're both insane, personally
10:13:47 <AnMaster> ais523, possibly
10:14:11 <AnMaster> ais523, would someone have thought the space shuttle insane back in 1850?
10:14:23 <ais523> again probably
10:14:31 <ais523> but then, some people think the space shuttle insane even in 2009
10:15:15 <AnMaster> well, from an environmental viewpoint the whole rocket launch concept is insane...
10:15:20 <ais523> yes
10:15:40 <AnMaster> in that case a space elevator would actually be sane :D
10:15:45 <ais523> hmm... maybe not, I reckon most rocket fuels could be derivable from renewable sources in theory
10:16:36 <AnMaster> ais523, what about emissions?
10:17:01 <ais523> AnMaster: well, CO2 would be removed from the atmosphere as the fuels were made
10:17:16 <ais523> water vapour is unlikely to be much of a problem, it can cause global warming but most of it won't be at the right height
10:17:22 <ais523> nitrous oxides might be problematic
10:17:29 <AnMaster> hm
10:17:34 <AnMaster> http://en.wikipedia.org/wiki/Launch_loop
10:17:36 <AnMaster> :D
10:18:48 <AnMaster> ais523, what about that one?
10:18:54 <AnMaster> also: http://en.wikipedia.org/wiki/Orbital_ring
10:18:55 <ais523> reading it now
10:30:39 <AnMaster> ais523, so what do you think?
10:31:01 <ais523> AnMaster: I think that they're probably less insane than space elevators
10:31:08 <ais523> but still, I'm not entirely sure they'll be relevant any time soon
10:31:14 <ais523> we just don't have high-volume space traffic yet
10:31:16 <AnMaster> true
10:31:31 <AnMaster> ais523, well that is maybe because of the costs?
10:31:47 <ais523> could be
10:32:06 <AnMaster> but I think we need to solve the environment issues first instead
12:44:33 -!- ais523 has quit ("lunch").
13:16:22 -!- FireFly has joined.
13:22:26 -!- psygnisfive has quit (Remote closed the connection).
13:33:02 -!- puzzlet has quit (Remote closed the connection).
13:33:06 -!- puzzlet has joined.
14:01:05 <ehird> oklopol: learn APL. trust me: http://se.youtube.com/watch?v=a9xAKttWgP4
14:01:55 <AnMaster> ehird, se.? why?
14:02:02 <ehird> because the reddit link was se.
14:02:11 <ehird> AnMaster: when did ais523 part
14:02:22 <ehird> ah...
14:02:24 <AnMaster> 13:44:33
14:02:24 <ehird> about an hour ago
14:02:25 <AnMaster> ...
14:02:27 <ehird> for lunch
14:02:32 <ehird> okay
14:02:35 <AnMaster> well you have scrollback
14:02:36 <AnMaster> ;P
14:02:59 <ehird> except I was in #haskell overnight
14:03:12 <ehird> so when the bouncer spewed the backlog at me, it crashed my poor client because #haskell is really fucking active
14:03:18 <ehird> well, froze it up.
14:03:24 <ehird> so I'd have to open the logfile.
14:04:40 <ehird> <AnMaster> I was testing the best way to search for fingerprint to load
14:04:47 <ehird> Does it occur to you that that is not your bottleneck?
14:04:57 <AnMaster> was watching that video...
14:05:01 <AnMaster> APL is insane :D
14:05:19 <ehird> also awesome.
14:05:24 <AnMaster> true
14:05:26 <AnMaster> ehird, also how comes your client froze from it?
14:05:33 <AnMaster> I mean, sounds like a poorly designed one
14:05:39 <ehird> AnMaster: because #haskell is really damn active (it's hard to keep up with)
14:05:43 <ehird> and I was offline for many hours
14:05:50 <ehird> and the bouncer doesn't do delays
14:05:53 <ehird> it just shoots it
14:06:12 <ehird> AnMaster: for example
14:06:13 <AnMaster> I'm also in #haskell, and ##linux, and #gentoo, all very active. And lots of other channels. When I reconnect the client is kind of slow for about 5 seconds or so
14:06:25 <AnMaster> when left over night
14:06:26 <ehird> haskell logs are 500KB on average
14:06:27 <ehird> per day
14:06:34 <AnMaster> ehird, yes and? I'm in there too
14:06:43 <AnMaster> and I have been disconnected over night as well
14:06:47 <ehird> so for the whole of 500KB, my client - written in Ruby, and using Cocoa... not the fastest combination -
14:06:53 <ehird> gets the line
14:06:53 <AnMaster> oh right
14:06:55 <ehird> processes it
14:06:57 <ehird> puts it in the log
14:07:00 <AnMaster> well my client is written in elisp
14:07:03 <ehird> and puts it in the "view of everything else"
14:07:07 <ehird> at the bottom of the sceen
14:07:09 <AnMaster> and the logging is done in bouncer
14:07:11 <AnMaster> not in client
14:07:12 <ehird> repeat for ~500KB worth of lines
14:07:16 <ehird> AnMaster: umm, no shit
14:07:27 <ehird> it gets the log from the server
14:07:29 <ehird> and puts it in its log
14:08:38 <ehird> <AnMaster> what is "Mind of Mencia"
14:09:05 <ehird> Carlos Mencia is a douchebag "comedian" that steals all his jokes and isn't funny in the slightest. At least, that's what the interwebs hivemind says.
14:09:26 <AnMaster> ah
14:11:52 <AnMaster> ehird, ok APL is really "wow", but the keyboard layout must be horrible
14:11:59 <ehird> it's not a keyboard layout, IIRC
14:11:59 <ehird> just a font
14:12:06 <ehird> you type with a regular ascii keyboard and get APL instead
14:12:13 <ehird> multi-key operators, I think
14:12:21 <ehird> well, in modern ones
14:12:24 <ehird> old ones had their own keyboard
14:12:33 <ehird> also check out J and K, which are basically ascii apl
14:12:36 <ehird> but they're less cool.
14:12:37 <AnMaster> that sounds rather irritating to type, I mean somewhat like { is AltGr-7 on Swedish keyboards
14:12:43 <AnMaster> which is irritating when coding in C
14:12:52 <ehird> I think it balances out because you barely need to type.
14:12:59 <AnMaster> ah maybe
14:13:24 <ehird> http://www.dyalog.com/linux.htm Dyalog APL (used in that video) for Linux
14:13:28 <ehird> I see no download linnk, though.
14:13:33 <ehird> It's non-free, of course.
14:13:37 <ehird> Linux License Fees
14:13:40 <ehird> Developer 32 bit incl. Support & Upgrades
14:13:45 <ehird> annual license fee
14:13:46 <ehird> £1050
14:14:04 <ehird> I can't believe APL is popular enough for that to actually be profitable :-P
14:15:28 <AnMaster> very expensive
14:15:32 <AnMaster> I guess not a lot buy it
14:15:51 <AnMaster> it is like those VHDL stuff, so few buy it that the per-unit price must be very very high
14:16:19 <FireFly> [15:12:43] <AnMaster> which is irritating when coding in C
14:16:23 <AnMaster> hm.... that isn't correct... stuff is singular
14:16:25 <FireFly> It's stuck in my hands
14:16:31 <AnMaster> so replace "those"
14:16:34 <AnMaster> FireFly, um?
14:16:45 <FireFly> I press altgr+7 so often that I'm used t o it
14:16:47 <FireFly> to*
14:17:01 <AnMaster> FireFly, well too, but it is still irritating
14:17:27 <AnMaster> ehird, I wonder if there is any open source APL implementation
14:17:36 <ehird> Probably. They probably suck too.
14:17:55 <AnMaster> also I wonder what befunge-98 in APL would look like. Apart from that most people wouldn't be able to read it
14:17:56 <ehird> The APL/J/K kind of languages seem to have something about them leading to that.
14:17:57 <ehird> shrug
14:18:01 <ehird> AnMaster: Concise. :p
14:18:07 <ehird> I mean, heck, fungespace would be trivial
14:18:07 <AnMaster> yeah
14:18:18 <AnMaster> ehird, yes, but what about IO?
14:18:28 <AnMaster> you need to read/write files
14:18:44 <ehird> well... I think most APL implementations have system interface libraries
14:18:52 <ehird> but you're not meant to use them
14:18:56 <AnMaster> oh?
14:18:59 <AnMaster> closed world style?
14:19:11 <ehird> Well, most APL programmers don't make binaries.
14:19:23 <AnMaster> <ehird> The APL/J/K kind of languages seem to have something about them leading to that. <-- maybe because they seem to be write-once languages?
14:19:26 <ehird> Primarily, as far as I can tell, they develop in the REPL and stuff,
14:19:30 <ehird> then it's run from there
14:19:41 <ehird> AnMaster: Nah, I can read that stuff to a degree
14:19:44 <ehird> it's just a learning curve
14:19:56 <AnMaster> ehird, well, and a different paradigm
14:20:02 <ehird> -> learning curve
14:20:23 <AnMaster> yes, that makes the learning curve unusually steep
14:20:52 <ehird> AnMaster: http://nsl.com/papers/befunge93.htm Befunge-93 in K, with a GUI interface
14:21:04 <ehird> very impressive.
14:21:05 <AnMaster> a GUI?
14:21:09 <AnMaster> ah
14:21:10 <AnMaster> right
14:21:11 <ehird> AnMaster: yes, you can watch the IP go around
14:21:12 <ehird> and edit there
14:21:18 <ehird> and it also has a console interface.
14:21:24 <AnMaster> wonder about speed
14:21:27 <ehird> AnMaster: http://nsl.com/k/befunge93.k
14:21:38 <ehird> it's so short!
14:21:41 <AnMaster> concise yes
14:21:52 <ehird> that INCLUDES the gui
14:22:02 <AnMaster> befunge-98 would of course be a bit longer, but yes very concise
14:22:03 <ehird> and it's only like 2 pages of code
14:22:16 <AnMaster> ehird, it isn't very readable though
14:22:24 <ehird> do you know K?
14:22:27 <ehird> no? that explains it then :P
14:22:39 <FireFly> I don't know a single command of that
14:22:40 <FireFly> But
14:22:41 <FireFly> W.P:80 25#,," "/ program window
14:22:42 <FireFly> W.P..bg:{:[_i~|P[1;2];999900;999999]}/ yellow cell is current pointer
14:22:47 <AnMaster> it looks like some of those "lots of operators, but 1D" languages "B::"";b:{[f]if[~#B;B::0:`];r:f B;B::(#r)_ B;r}"
14:22:48 <FireFly> Looks pretty small
14:22:55 <ehird> FireFly: hm?
14:22:56 <FireFly> Or, short
14:22:59 <FireFly> The code
14:23:00 <FireFly> Compact
14:23:01 <ehird> ah
14:23:02 <ehird> :P
14:23:06 <ehird> yes
14:23:17 <ehird> I don't think that has any explicit loops at all
14:23:22 <ehird> most APL/J/K programs don't
14:23:39 <ehird> (they use vector operations instead, since array programming language)
14:23:55 <AnMaster> ehird, also I wonder how fast it would run game of life? as fast as jitfunge?
14:24:00 <ehird> http://nsl.com/ has a bunch of other APL/J/K code btw
14:24:03 <ehird> AnMaster: um... no :P
14:24:11 <ehird> It'll probably be not very fast.
14:24:13 <AnMaster> ehird, probably not as fast as cfunge either ;)
14:24:22 <AnMaster> and cfunge is very fast at it
14:24:24 <ehird> Probably around ccbi speed, I guess.
14:24:39 <AnMaster> well... that isn't too bad
14:24:41 <ehird> (The array programming language family have _very_ optimised vector operations)
14:24:47 <AnMaster> yes indeed
14:25:00 <AnMaster> they would have to
14:25:48 <AnMaster> hm
14:26:09 <ehird> AnMaster: here's something impressive:
14:26:23 <AnMaster> gcc-befunge, someone should make it... (yes I realise this means me probably... and I might if I have time at some point)
14:26:26 <AnMaster> ehird, ?
14:26:30 <ehird> sec
14:26:42 <AnMaster> "sec" is impressive?
14:26:43 <AnMaster> ;P
14:27:02 <ehird> AnMaster: shortest sudoku solver, evar, in K:
14:27:03 <ehird> f:{$[&/x;,x;,/f'@[x;i;:;]'&27=x[,/p i:x?0]?!10]}
14:27:07 <ehird> written by the creator of K
14:27:12 <ehird> that's _really_ short
14:27:31 <ehird> and a comment from him:
14:27:32 <ehird> "a few more bytes with a greedy algorithm is one million times faster on some harder puzzles .. (30ms instead of 1 hour) "
14:27:34 <AnMaster> <ais523> AnMaster: OK, that's very clever, but insane <-- that comment *could* have been about APL, but in fact it was about http://en.wikipedia.org/wiki/Space_fountain
14:27:48 <ehird> yeah I read the logs :P
14:28:01 <AnMaster> ehird, have you seen the sudoku solved in *.deb
14:28:04 <AnMaster> as in the package manager
14:28:07 <ehird> I think so yes
14:28:12 <AnMaster> dpkg or apt or whatever it is
14:28:25 <AnMaster> don't remember which part handles what
14:28:55 <AnMaster> ehird, did he post that longer version?
14:29:06 <ehird> not that I can see, it's probably on the google somewhere
14:30:06 <AnMaster> well... lets invent AQ9+
14:30:11 <ehird> let's not :p
14:30:20 <AnMaster> which is like HQ9+ but has s for "solve sudoku"
14:30:29 <FireFly> Then why A?
14:30:35 <FireFly> Why not SQ9+ ?
14:30:37 <AnMaster> FireFly, because it doesn't make sense :D
14:30:41 <FireFly> >.>
14:30:46 <FireFly> SudoKu
14:30:48 <FireFly> SudoQ
14:30:56 <AnMaster> hah
14:31:02 <AnMaster> sudo ku?
14:31:02 <ehird> someone make a sudoku program that only runs as root
14:31:03 <ehird> and call it ku
14:31:06 <ehird> grrrrrr AnMaster
14:31:09 <FireFly> Heh
14:31:09 <ehird> stop stealing my bad jokes
14:31:10 <AnMaster> ehird, hah I won by one second
14:31:22 <ehird> for me:
14:31:22 <ehird> 14:31 <ehird> someone make a sudoku program that only runs as root
14:31:23 <ehird> 14:31 <AnMaster> sudo ku?
14:31:28 <FireFly> Well I won by 5 secs in thinking
14:31:32 <ehird> (but it was clearly unconnected)
14:31:34 <ehird> FireFly: hee
14:31:42 <AnMaster> ehird, for me it was 15:31:01 <AnMaster> sudo ku? 15:31:02 <ehird> someone make a sudoku program that only runs as root
14:31:47 <ehird> ku would of course have to be a KDE program
14:31:55 <FireFly> Of course
14:31:56 <AnMaster> and yes, unconnected
14:32:05 <AnMaster> ehird, ksu ku then?
14:32:13 <FireFly> There'd had to be a "Q" program, so that the KDE one is Ku
14:32:15 <AnMaster> yes ksu exists
14:32:15 <ehird> AnMaster: isn't it kdesu
14:32:21 <AnMaster> ehird, hm?
14:32:22 <ehird> and I know, you're meant to use it
14:32:22 * AnMaster checks
14:32:26 <ehird> to avoid home directory stuff I think
14:32:40 <AnMaster> oh yes it seems to be
14:32:50 <ehird> I always read kdesu as "K desu" and then I read it as "K desu desu desu desu desu desu" and then I die.
14:32:59 <FireFly> :D
14:33:08 * AnMaster googles desu since he forgot what that meme was about
14:33:35 <ehird> I think by now it's more or less completely meaningless.
14:33:35 <AnMaster> "# A Japanese copula, or word used to grammatically link a subject and predicate. i.e. It is a Japanese verb meaning "to be"." "# An abbreviation for Delaware State University."
14:33:38 <ehird> And therefore zen.
14:33:41 <AnMaster> or the third meaning:
14:33:45 <AnMaster> "# The nickname of Suiseiseki, a fictional character in Rozen Maiden, which is also used as a meme."
14:33:56 <ehird> http://encyclopediadramatica.com/index.php/Desu, but the likelyhood of you clicking an ED link is approximately 0
14:34:14 <AnMaster> ehird, safe for work?
14:34:22 <ehird> Not later down the page.
14:34:41 <FireFly> http://www.youtube.com/watch?v=AcaW_ZYWSbo
14:34:47 <FireFly> Looks pretty od
14:34:47 <FireFly> d
14:35:08 <FireFly> Interesting how many meanings one word can have
14:35:14 <FireFly> Comparing the subs to the vocals
14:35:22 <ehird> haha.
14:35:47 <ehird> Cavemanime: "ug ug ug ug ug ug ug ug ug"
14:36:36 -!- BeholdMyGlory has joined.
15:00:06 <pikhq> FireFly: Perhaps one should study Japanese. ;)
15:00:16 <FireFly> Maybe
15:05:16 -!- BeholdMyGlory has quit ("yay, kde 4.2!").
15:11:16 -!- BeholdMyGlory has joined.
15:11:41 -!- BeholdMyGlory has quit (Client Quit).
15:12:15 <oklopol> ais523: impomatic: ah, I remember anagold <<< lul i did the same typo
15:15:18 <impomatic> I think I'm going to implement Underload
15:17:49 <ehird> underload is fun
15:19:47 <oklopol> ehird: The APL/J/K kind of languages seem to have something about them leading to that. <<< maybe because they're point-free for the most part?
15:20:00 <ehird> how is that related to having shitty open source implementations
15:20:02 <ehird> :s
15:20:06 <oklopol> ohh
15:20:33 <oklopol> i thought you were referring to being hard to read, based on what anmaster answered
15:20:57 <oklopol> no wait
15:21:00 <oklopol> blah.
15:21:06 <oklopol> forget i said that or i will kill you.
15:21:18 <ehird> oklopol learn apl
15:25:08 <oklopol> oooooooooo
15:25:13 <oklopol> when i'm done with my j's
15:25:29 <oklopol> i'm still far from good at it.
15:25:56 <ehird> apl is cooler.
15:26:06 <oklopol> i'll watch el vid now
15:34:41 <oklopol> j would do that the same way, except some of the stuff like "apply to each" there can be omitted in j
15:35:19 <ehird> oklopol: yeah but it looks cooler
15:35:26 <ehird> because it's ap fucking l and has its own character set
15:35:28 <oklopol> naturally. it's weirder.
15:36:26 <oklopol> anyway would be so cool to be able to write j/apl that fast
15:36:32 <oklopol> i mean it just looks so awesome
15:36:41 <ehird> i know.
15:36:59 <oklopol> of course i probably could if i wrote it a bit more, i haven't really tried writing anything in it, so i'm fairly slow.
15:37:29 <FireFly> Someone should implement Sir. Cut
15:37:39 <FireFly> I tried, but it didn't work out well
15:40:30 <ehird> http://www.hortont.com/racarr/?p=27
15:40:30 <ehird> gpu life
15:41:07 <ehird> not hashlife tho
15:41:07 <ehird> :<
15:43:12 <ehird> http://en.wikipedia.org/wiki/Video_Life
15:44:53 <FireFly> 'only "20 cartridges or less" of Video Life were ever made.'
15:45:01 <FireFly> They'd be quite valuable
15:45:08 <ehird> Yes. Also quite slow :P
15:55:35 <ehird> hmm
15:55:39 <ehird> oklopol: i have a GoL quesitonnnnnnnnnnnnnn
15:55:51 <ehird> wouldn't it be possible to be really efficient by storing the neighbour count of cells?
15:55:54 <ehird> then just switching based on that
15:57:48 <pikhq> One still needs to store each cell's state and update the state of the surrounding cells...
15:58:02 <pikhq> Also, that takes up a fuckton of memory.
15:58:40 <pikhq> If you want to be really efficient, go with hashlife. ;)
16:00:29 <oklopol> ehird: you just move the problem of checking all neighbors.
16:00:58 <oklopol> you'd get one check for deciding next state, but you'd have to propagate the state to neighboring neighbor counts
16:01:05 <oklopol> back to sp ->
16:44:52 <ehird> #tokipona in too many lines:
16:44:53 <ehird> 16:44 Potkan has joined (n=Potkan@a40-unl1-2-27.static.adsl.vol.cz)
16:44:53 <ehird> 16:44 <Potkan> Saluton.
16:44:55 <ehird> 16:44 <donri> toki :)
16:44:57 <ehird> 16:44 <Potkan> Good evening.
16:44:59 <ehird> 16:44 <Potkan> toki
16:45:01 <ehird> 16:44 <donri> coi
16:45:03 <ehird> 16:44 <donri> hej
16:45:05 <ehird> 16:44 <donri> hello
16:45:07 <ehird> 16:44 <Potkan> coi
16:45:09 <ehird> 16:44 <donri> saluton
16:45:11 <ehird> 16:44 <Potkan> hej
16:45:13 <ehird> 16:44 <Potkan> hello
16:45:15 <ehird> Seriously.
16:45:17 <ehird> They're still at it .
17:21:22 <AnMaster> ais is sure having a long lunch...
17:23:50 <ehird> indeed
17:28:50 -!- puzzlet_ has joined.
17:30:05 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
17:42:58 <ehird> GregorR:
17:47:53 <ehird> "A type system powerful enough to express exactly what a function does would be quite nice."
17:47:57 <ehird> Aka, a programming language.
17:48:03 <ehird> (ihope 2007-07-30)
17:54:43 <oklopol> so i was thinking about a stack-based logic programming language
17:58:33 <oklopol> and i made a program snippet that solved a sudoku with it
17:58:40 <oklopol> and it was longer than the k thing
17:58:41 <ehird> ooh
17:58:41 <ehird> show
17:58:43 <oklopol> and i was like k.
17:58:46 <ehird> showshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshowshow
17:59:27 <oklopol> well, i kinda deleted the thingie.
17:59:37 <oklopol> and it was fairly half-assed
17:59:39 <ehird> REWRITE IT
17:59:43 <oklopol> :D
17:59:51 <ehird> IT SOUNDS PHUN MOBILE
18:00:51 <oklopol> err wait
18:02:49 <oklopol> blah how the fuck does k do it :|
18:03:14 <ehird> JUST GIMME THE KOE
18:04:23 <oklopol> something like this: A(1,9)@A(3,3)/adA(1,9)/adA(9,1)/ad
18:04:52 <ehird> dude that's pretty um how did it work
18:04:54 <oklopol> basically the solving just means specifying the rules of sudoku
18:04:59 <oklopol> err wait
18:05:07 <oklopol> (i'm talked to)
18:06:01 <ehird> oklopol now write it IN APL
18:07:05 <oklopol> so, A(1,9)@ means all elements of A are from set {1, 2.. 9}
18:07:15 <ehird> neat
18:07:18 <ehird> but thats not stack based
18:07:21 <oklopol> the rest is predefined splicings.
18:07:25 <oklopol> well it is.
18:07:39 <oklopol> just you can't really see it because i named the array.
18:08:06 <ehird> don't name ANYTHING :|
18:08:45 <oklopol> A(3,3)/ad; (3,3)/ is a splicing that splits the axes evenly in three parts, same semantics as in oklotalk
18:09:02 <oklopol> ad is just alldiff, its rank is 1
18:09:09 <ehird> don't name ANYTHING :|
18:09:15 <oklopol> (it's also an array-processing language ofc)
18:09:39 <oklopol> stack-based logic programming array-processing language
18:10:03 <oklopol> well you don't have to name it, but here it's shorter that way
18:10:09 <ehird> don't name ANYTHING :|
18:10:10 <lament> s-blpa-pl
18:10:48 <oklopol> could just do the operations on shallow copies of A using ":"
18:10:58 <oklopol> and assume it's tos
18:11:03 <oklopol> hello lament
18:11:05 <oklopol> who are you?
18:12:35 <lament> hi
18:12:41 <lament> i'm a loser baby
18:12:44 <lament> so why don't you kill me
18:13:29 <oklopol> yeah that's a good song
18:14:56 <ehird> lol
18:15:02 <ehird> 18:11 <oklopol> hello lament
18:15:03 <ehird> 18:11 <oklopol> who are you?
18:15:04 <ehird> 18:12 <lament> hi
18:15:06 <ehird> 18:12 <lament> i'm a loser baby
18:15:08 <ehird> 18:13 <lament> so why don't you kill me
18:15:10 <ehird> 18:13 <oklopol> yeah that's a good song
18:15:12 <ehird> The best of #esoteric.
18:18:01 <lament> that's pretty depressing.
18:18:30 <ehird> lament: protip: oklopol is never serious
18:18:33 <ehird> even when he's serious
18:18:52 <lament> I'm always serious, even when I'm not.
18:19:13 <lament> Does that make me all that different from oklopol?
18:19:40 <ehird> Maybe.
18:20:41 <AnMaster> lament, you are an antipo[ld]
18:21:00 <AnMaster> actually... antipo(l|de)
18:21:17 <ehird> ...
18:26:05 <oklopol> lament: DO YOU STILL KNOW MENTAL IS AN ANAGRAMMAR OF YOUR NICK?
18:26:29 <oklopol> i was like "wow cool, wait old"
18:26:53 <lament> oklopol: have you noticed i was 'lamente' for a few days
18:27:01 <lament> it means 'the mind' in Spanish
18:27:14 <lament> my nick is punny
18:27:46 <AnMaster> AUGH!
18:28:08 <lament> actually ment means mind in catalan, i wonder if the article is still 'la'
18:29:10 <oklopol> http://es.wikipedia.org/wiki/Mente_(psicolog%C3%ADa)
18:29:56 <lament> yep, i think it works
18:30:01 <lament> my nick means 'the mind' in Catalan
18:32:36 <oklopol> ohh.
18:32:47 <oklopol> "actually 'ment' means..." i thought that was a typo of "meant"
18:33:28 <oklopol> was kinda wondering why you completely ignored what i said; now i realize it's because i was being an idiot.
18:40:49 -!- Azstal has quit (Connection timed out).
18:50:09 -!- Hiato has joined.
18:59:41 <ehird> <lament> is 23 your IQ?
18:59:52 <ehird> 2007-08-02, on the subject of asiekierka's IQ
19:00:00 <ehird> (using the nick "squazr23")
19:00:07 -!- KingOfKarlsruhe has joined.
19:02:12 <oklopol> i hear these iq tests are a bunch of woodoo magic.
19:05:36 <ehird> asiekierka's bot was amusing
19:05:37 <ehird> <asiebot> A computer is a body fluid that carries food and obtaining energy and vital substances from within the body.
19:06:06 <oklopol> that makes sense to me
19:08:12 <ehird> <asiebot> asiekierka: The lungs are organs used for filtering urine from the blood.
19:08:24 <ehird> <asiebot> ehird`: Asiebot is a tree native to australia where it is the basic living substance of all the judges i've had the strangest dream... I dreamed i killed you again.
19:08:30 -!- kar8nga has joined.
19:08:59 <oklopol> is it a markov thing or ?
19:09:07 <ehird> it was just a megahal
19:09:09 <oklopol> i should remember :|
19:09:12 <ehird> since asiekierka can't program
19:09:21 <ehird> so, markov chain essentially
19:09:40 <oklopol> i see i see
19:10:09 <oklopol> o
19:10:09 <oklopol> o
19:10:14 <ehird> <asiebot> asiekierka: You love ehird`.
19:10:15 * oklopol has some convobot ideas
19:11:24 <ehird> <asiebot> asiekierka: Blood is a cell which receives and transmits electrical impulses.
19:11:27 <ehird> <asiebot> asiekierka: Say stfu to the muzzle of a lot easier, just so long as i'm the dictator." - george w. Bush.
19:12:18 <ehird> <asiebot> ehird`: Ehird` is not a dumb computer program that translates high level language code into machine language code.
19:12:40 <ehird> 12:00:57 <asiekierka> asiebot: What is love?
19:12:40 <ehird> 12:01:09 <asiebot> asiekierka: I hate you.
19:13:12 <ehird> <asiebot> ehird`: I guess if someone says "fuck is a limb extending from the initials of other words.
19:14:15 <ehird> <asiebot> ehird`: Asiekierka is a sensory organ found on the head with the mzx community and pancake, and the anger from someone poking me.
19:14:26 <ehird> <asiebot> ehird`: Asiekierka is a bony girdle in vertebrates that connects the head with the mzx community and pancake, and the anger from someone poking me.
19:15:59 <ehird> <asiebot> A pub is a confectionery made from cocoa beans.
19:19:16 <AnMaster> um
19:19:20 <AnMaster> ehird, when is that from?
19:19:23 <ehird> 2007
19:19:26 <AnMaster> ah
19:19:32 <AnMaster> what sort of bot was asiebot?
19:19:35 <AnMaster> markov?
19:19:40 <ehird> megahal, so yes.
19:19:45 <ehird> it was more intelligent than its owner
19:19:46 <ehird> [asiekierka]
19:20:00 <AnMaster> not that hard
19:20:30 <ehird> inded
19:20:33 <ehird> *indeed
19:21:06 <AnMaster> ehird, so the bot would win in a turing test if asie was the human?
19:21:18 <ehird> shrug
19:22:25 <lament> smarter != wins the turing test
19:22:38 <AnMaster> lament, true
19:22:59 <AnMaster> also it would be fun if the bot faked being the human
19:23:01 <AnMaster> err
19:23:03 <AnMaster> the reverse
19:23:04 <AnMaster> I mean
19:23:11 <AnMaster> the human faked being the bot
19:23:31 <lament> Why do you think the human faked being the bot?
19:23:35 <AnMaster> would a human manage to act as incoherent as a bot?
19:23:38 <AnMaster> that is what I wonder
19:23:46 <AnMaster> so a kind of reverse turing test
19:23:58 <AnMaster> lament, and I don't think the human faked, I just suggest it would be fun to try
19:24:02 <lament> Sounds interesting. Tell me more.
19:24:06 <AnMaster> haha
19:24:21 <lament> Why do you think haha?
19:24:42 <AnMaster> You mentioned a faked human before? Tell me more about your faked human.
19:27:05 <AnMaster> lament, hey, running two Eliza against each other is fun, you need something to start them off though
19:29:35 -!- KingOfKarlsruhe has quit (Remote closed the connection).
19:31:05 <FireFly> I'd like to see two fungots talking to each other
19:31:06 <fungot> FireFly: do you think it's good that he knows what he's talking about a real bite though. more like doing what is in the same sentence as per bothner will probably give riastradh a fish!
19:31:11 <FireFly> Yeah, just like that
19:31:33 <AnMaster> FireFly, that cause an annoying endless loopi
19:31:34 <AnMaster> loop*
19:31:39 <AnMaster> it has happened before
19:31:40 <ehird> per bothner will probably give riastradh a fish!
19:31:42 <AnMaster> search logs
19:31:42 <ehird> :D
19:31:42 <FireFly> Ah
19:32:17 <AnMaster> FireFly, however after that fungot started limited number of same lines per person
19:32:17 <fungot> AnMaster: i don't have scheme48, i assume
19:32:20 <oklopol> annoying infinite loop? seriously, two bots talking to each other = annoying infinite loop? that's just.. surprising :O
19:32:32 <AnMaster> so it will only answer the same person 4 times in a row
19:32:39 <FireFly> :<
19:32:40 <AnMaster> before ignoring until someone else speak too it
19:32:42 <AnMaster> to*
19:32:45 <AnMaster> however
19:32:53 <AnMaster> a 3 bot loop is still possible
19:32:56 <AnMaster> and annoying
19:33:43 <oklopol> nyt
19:35:04 <AnMaster> oklopol, New York Times?
19:35:14 <oklopol> nope.
19:35:19 <AnMaster> oklopol, then what?
19:35:25 <oklopol> was writing on another channel
19:35:30 <oklopol> and my mouse was happy
19:35:32 <AnMaster> oh wrong tab
19:35:59 <oklopol> yes, accidentally clicked it open at the last few chars
19:35:59 <AnMaster> oklopol, then it is customary to write: "
19:36:01 <AnMaster> err...
19:36:05 <AnMaster> /w <some number>
19:36:06 <AnMaster> "
19:36:07 <AnMaster> ;P
19:36:15 <oklopol> WHUZ DAT MEAN
19:36:19 <AnMaster> ...
19:36:29 <AnMaster> ever used irssi?
19:36:35 <ehird> stfu
19:36:49 <AnMaster> ehird, not saying I like irssi
19:36:59 <oklopol> AnMaster: yep
19:37:06 <ehird> no, you think you're being funny
19:37:09 <ehird> you're not
19:37:11 <AnMaster> I'm just saying it is funny when they manage to write " /w 23" or such
19:37:20 <AnMaster> ehird, I'm not trying to be funny
19:37:25 <oklopol> ooooooooooo
19:37:53 <oklopol> en minä nyt oikein tajua mistä puhutte, taidan jatkaa algebran tehtävien kyöntiä
19:38:10 <AnMaster> oklopol, what does that mean?
19:38:14 <FireFly> And in English?
19:39:49 <oklopol> what's the point of writing in finnish if i just translate it right after
19:40:07 <oklopol> i mean what the fuck, i've been doing this exercise for 50 minutes now
19:40:13 <FireFly> Point taken
19:40:16 <oklopol> one voluntary exercise
19:40:23 <FireFly> Exercise?
19:40:26 <FireFly> What do you exercise?
19:40:42 <oklopol> well algebra, i'm never sure what term to use for uni schoolwork
19:40:53 <oklopol> we call them "demonstrations"
19:41:22 <oklopol> that's what the situation is called, but so are the exercises for some reason.
19:41:30 <oklopol> umm situation
19:41:40 <oklopol> i mean when you liek demonstrate them to the class and shit.
19:41:48 <oklopol> wellllll anyway
19:41:51 * oklopol continues
19:41:55 <FireFly> 'ay
19:41:57 <FireFly> 'kay*
19:42:02 <FireFly> But 'ay would work too
19:42:09 <FireFly> Or, maybe
19:42:19 <AnMaster> does google translate handle *.fi?
19:42:46 <AnMaster> hm yes
19:42:48 <AnMaster> "I now I really understand what you are talking about, going to continue the algebra of kyöntiä"
19:42:56 <AnMaster> oklopol, interesting
19:43:10 <AnMaster> why "really"?
19:43:13 <oklopol> first sentence is negated
19:43:31 <FireFly> Just add an ! in front of it
19:43:39 <AnMaster> oklopol, you mean it should have been "I now really doesn't understand what you are talking about"?
19:43:41 <oklopol> which is kinda weird.
19:43:44 <AnMaster> why "now" then
19:43:48 <oklopol> AnMaster: yes exactly.
19:44:03 <AnMaster> ok that is a major fail of google
19:44:04 <oklopol> AnMaster: "now i don't really understand what you're talking about..."
19:44:09 <AnMaster> ah
19:44:10 <AnMaster> right
19:44:15 <AnMaster> that makes more sense
19:44:26 <oklopol> it's just in a different place in finnish, but almost the same construct
19:44:37 <AnMaster> oklopol, and where is the negation bit?
19:44:49 <FireFly> do NOT
19:44:53 <oklopol> umm? right there?
19:44:55 <FireFly> NOT is the keyword
19:44:56 <AnMaster> oklopol, in the original...
19:44:58 <AnMaster> I mean
19:45:02 <FireFly> Ah
19:45:09 <oklopol> anyway, google did fail the latter part of the sentence, but so would fizzie.
19:45:19 <oklopol> i wasn't exactly expecting you to care what i said.
19:45:19 <AnMaster> oklopol, why would he fail?
19:45:32 <AnMaster> of course we care!
19:45:37 <oklopol> AnMaster: because "kyö" is a verb used only by vjn.
19:45:43 <oklopol> "kyödä" to be exact
19:45:45 <AnMaster> oklopol, fun
19:46:12 <FireFly> You lost me somewhere near token 1 on row 1
19:46:18 <FireFly> Eg. the first word
19:46:18 <oklopol> it means pretty much anything, we have tons of words you need to guess from context.
19:46:25 <FireFly> In the finnish version
19:46:28 <AnMaster> heh
19:46:35 <AnMaster> at least you can understand Norwegian but Finnish is just strange...
19:46:58 <AnMaster> language family mess up over there I'm afraid
19:47:13 <AnMaster> isn't it closest to Japanese or something? I forgot
19:47:19 <oklopol> okay second attempt at the exercise; fucked up an equation there
19:47:19 <FireFly> Hungarian I believe it is?
19:47:31 <oklopol> should probably get matlab or something
19:47:32 <oklopol> ->
19:47:58 <oklopol> hung yes
19:48:18 <AnMaster> FireFly, I think it was oklopol or fizzie that claimed that a Finnish thought a lot of foreign people thought "Noika" was Japanese
19:48:27 <ehird> *nookia
19:48:28 <ehird> er
19:48:30 <ehird> *nokia
19:48:42 <AnMaster> ah yes
19:48:52 <FireFly> Hm, maybe, I dunno
19:49:01 <AnMaster> I always thought it was Finnish
19:49:23 <AnMaster> whooo gcc 4.3.3 hit stable on arch linux
19:49:52 <AnMaster> released like 4 days ago...
19:50:14 <AnMaster> arch linux is probably the most bleeding edge distro I know
19:53:14 <FireFly> Brb
19:53:15 -!- FireFly has quit ("Later").
19:56:08 -!- puzzlet_ has quit (Remote closed the connection).
19:56:08 -!- FireFly has joined.
19:56:12 -!- puzzlet has joined.
19:57:39 <GregorR> Spam subject line: "There is a little mess in your pants - change it to a big order."
19:57:42 <GregorR> What the F***?!?!?!
19:57:48 <ehird> lol
19:57:54 <FireFly> Heh
19:58:18 <lament> by the well-ordering principle
20:04:11 -!- Hiato has quit ("Leaving.").
20:04:57 <ehird> <ihope> I should look at Lojban.
20:07:55 <lament> ouch.
20:08:28 <ehird> he certainly did :P
20:08:37 <ehird> hi kerlo,
20:11:20 -!- puzzlet_ has joined.
20:13:57 <oklopol> AnMaster: I always thought it was Finnish <<< probably living closer to nokia than i do, you're not exactly a prime example of a foreigner.
20:14:55 <oklopol> i finished the exercise!
20:15:38 -!- Judofyr has joined.
20:15:43 <oklopol> :|
20:15:48 <oklopol> where are all the immense congratulations
20:16:25 <FireFly> \o/'
20:16:30 <FireFly> Happy now?
20:17:37 <oklopol> what's that thing in yer hand is it a present for me
20:17:52 <FireFly> Well, it's a typo :D
20:17:57 <FireFly> You can have it for free
20:17:58 <oklopol> :O
20:18:02 <oklopol> I LOVE TYPOS!
20:18:06 <FireFly> Gdoo
20:22:25 <AnMaster> <oklopol> AnMaster: I always thought it was Finnish <<< probably living closer to nokia than i do, you're not exactly a prime example of a foreigner. <-- eh?
20:22:36 <AnMaster> how do you mean closer?
20:22:49 <oklopol> physically closer
20:22:52 <FireFly> nested quoting on IRC
20:22:53 <FireFly> :<
20:23:01 <oklopol> heh
20:23:08 <AnMaster> oklopol, Stockholm is closer to any part of Finland than I am
20:23:24 <oklopol> AnMaster: and do i live in stockholm?
20:23:26 <AnMaster> and I got no idea where in Finland Nokia is
20:23:39 <AnMaster> oklopol, no but Stockholm is pretty far from Finland
20:23:48 -!- puzzlet has quit (Read error: 110 (Connection timed out)).
20:24:04 <oklopol> i live about 150 km from stockholm, nokia is a lot farther.
20:24:31 * AnMaster opens google earth
20:24:31 <oklopol> so yeah i was indeed lying about you living closer than me; but the difference is not that great
20:24:44 <oklopol> hey
20:24:47 <oklopol> stop that you
20:24:51 <AnMaster> oklopol, so what is the distance for you?
20:24:56 <oklopol> you might catch my bullshits.
20:25:00 <oklopol> AnMaster: no idea.
20:25:10 <AnMaster> oklopol, what do you mean "your bullshits"?
20:25:16 <AnMaster> "We apologize for the inconvenience, but Google Earth has crashed."
20:25:18 <AnMaster> damn you
20:25:41 <AnMaster> reproducible every time I start it
20:25:57 <oklopol> AnMaster: i mean i'm throwing the numbers from absolutely nowhere.
20:25:58 <FireFly> It'd be nice if they wrote "the Earth"
20:26:09 <AnMaster> FireFly, eh?
20:26:23 <FireFly> "We're sorry, but the Earth has crashed."
20:26:32 <AnMaster> hah
20:26:32 <FireFly> Like, if it'd be their fault if the world ended
20:26:43 * AnMaster installs testing version
20:28:18 <oklopol> AnMaster: if your seriously going to measure, i live in turku
20:28:32 <AnMaster> oklopol, yes I am if I get google earth running
20:28:40 <oklopol> in case you don't know that, i've mentioned it quite a few times
20:29:20 <AnMaster> oklopol, indeed I didn't remember the name of the city
20:29:31 <oklopol> well just use the mesh-current method to find the branch currents
20:29:34 <AnMaster> oklopol, best would of course be from the correct house
20:29:47 <AnMaster> oklopol, what?
20:29:55 <oklopol> well. i'm not sure i want to divulge that
20:30:05 <AnMaster> oklopol, and your CC number of course too!
20:30:06 <AnMaster> ;P
20:30:09 <oklopol> very close to campus
20:30:21 <AnMaster> oklopol, anyway what did you mean with "<oklopol> well just use the mesh-current method to find the branch currents"
20:30:24 <oklopol> if that helps.
20:30:44 <AnMaster> what?
20:30:52 <AnMaster> wth were you talking about
20:30:55 <oklopol> AnMaster: lol just assume it's random if you don't get it :P
20:31:01 <oklopol> AnMaster: very close to campus, if that helps
20:31:02 <oklopol> i live
20:31:04 <AnMaster> ah
20:31:06 <oklopol> very, very close.
20:31:43 <AnMaster> Turku == Åbo?
20:31:47 <oklopol> yes
20:31:48 <AnMaster> Google Earth thinks so
20:31:58 <oklopol> turku is the international name afaik
20:32:03 <oklopol> at least i hope it is
20:32:10 <oklopol> åbo is the swedish name
20:32:53 <AnMaster> from you to Nokia about 132 km
20:33:07 <oklopol> that close :O
20:33:12 <AnMaster> from you to Stockholm around 265 km
20:33:24 <AnMaster> oklopol, by roads it may be longer
20:33:28 <AnMaster> this is straight line
20:33:59 <oklopol> there's a pretty straight highway there, it's just i thought it was a lot futher down it.
20:34:02 <AnMaster> from me to Nokia: ca 530 km
20:34:12 <oklopol> k. i guess a bit more then.
20:34:13 <AnMaster> I'm not going to give the distance to any other point
20:34:20 <AnMaster> don't want you to triangulate my position
20:34:20 <AnMaster> ;P
20:34:23 <oklopol> :)
20:34:47 <oklopol> how far do you live from me just out of curiosity
20:34:50 <AnMaster> actually put that marker wrong, it is more like 560 km
20:34:54 <AnMaster> oklopol, no!
20:35:05 <oklopol> :o
20:35:09 <oklopol> almost fooled you right
20:35:15 <AnMaster> oklopol, no I didn't
20:35:22 <AnMaster> you*
20:35:24 <AnMaster> and
20:35:30 <AnMaster> I was just correcting the distance to Nokia
20:37:27 <FireFly> [21:35:15] <AnMaster> oklopol, no I didn't
20:37:32 <FireFly> That'd been something
20:37:35 <FireFly> Fooling yourself
20:37:37 <AnMaster> FireFly, typoed
20:37:38 <FireFly> :P
20:37:45 <FireFly> Yeah, I understood
20:37:51 <oklopol> yeah the i and you keys are right next to each other
20:50:16 <AnMaster> yuio?
20:50:28 <AnMaster> new word meaning you/I
20:57:18 -!- olsner has joined.
21:36:47 -!- GreaseMonkey has joined.
21:37:41 <kerlo> Have I mentioned that I've decided to refer to everyone using first-person pronouns?
21:37:47 <kerlo> Not that I've actually been doing so.
21:38:01 <kerlo> Hi, everyone. How am I doing?
21:38:20 <ehird> hi.
21:40:43 -!- BeholdMyGlory has joined.
21:42:21 -!- kar8nga has left (?).
21:54:47 -!- BeholdMyGlory has quit (Remote closed the connection).
21:55:50 -!- Corun has joined.
22:01:52 <AnMaster> night
22:04:11 -!- BeholdMyGlory has joined.
22:33:02 -!- oerjan has joined.
22:37:27 -!- Corun has quit ("Leaving").
22:41:01 <oerjan> <ais523> water vapour is unlikely to be much of a problem, it can cause global warming but most of it won't be at the right height
22:42:06 <oerjan> i don't _really_ know but i would imagine that the atmosphere stays pretty much saturated with water vapour, so adding more is very temporary (hydrological cycle)
22:42:34 <oklopol> haha you and your silly anecdotes
22:42:41 <oerjan> i mean, we have huge oceans precisely because you _cannot_ add most of it to the atmosphere
22:43:43 <oerjan> so while water vapour is the most important greenhouse gas, it's much less important for global warming because it's self-regulating
22:44:34 <oerjan> also, why didn't i check if ais523 was here before starting blathering :(
22:46:01 <oerjan> (it could still _strengthen_ global warming i think, because warming the atmosphere makes it have a higher water vapor threshold)
22:46:34 <oerjan> obviously this stuff has to be well-known
22:48:51 * oklopol tries to come up with something completely nonsensical, but fails miserably.
22:49:16 <oerjan> i can help you with that by shaving this iguana
22:49:50 <oklopol> haha an iguana that's like givin birth to a sevenfold quilt :D
22:50:33 <oerjan> yes and without the lactose too
22:51:00 <oklopol> also a heinous predicate
22:51:13 <oklopol> you know how it is with these verifiables.
22:51:37 <oerjan> yes heine was known for his predicates
22:51:38 -!- GregorR has quit (Remote closed the connection).
22:51:41 -!- GregorR has joined.
22:56:08 <oklopol> so.
22:56:15 <oklopol> i use the word "heinous"
22:56:23 <oklopol> it's not all that common.
22:56:37 <oklopol> and i hear it in cracker a minute later
22:56:44 <oklopol> (tv show i don't even watch)
22:57:28 <oklopol> well it's not not that common, but, you know, i wasn't actually watching, i turn my head on the screen, and the guy uses it
22:57:37 <oerjan> it's a sign. you must now convert to tibetan buddhism and go live in a small hut at the base of mount everest.
22:58:01 <oklopol> wow
22:58:07 <ehird> nah
22:58:09 <ehird> there's a word for that
22:58:15 <oklopol> yes
22:58:15 <ehird> i.e., you just use/find out about something
22:58:17 <ehird> bam, there it is again
22:58:21 <ehird> it's a special condition thing
22:58:59 <oerjan> synchronicity is one word for it but i guess you mean something more specific
22:59:02 <ehird> yeah
22:59:03 <oklopol> yeah. a phenomenon i noticed when i was like 7, and heard about when someone here linked it
22:59:10 <ehird> something more specific yes
22:59:15 <ehird> it basically comes down to
22:59:20 <ehird> no, it isn't uncommon, your brain just didn't notice it
22:59:24 <ehird> because it wasn't interesting previous times
23:00:34 <oklopol> yeah
23:01:08 <oklopol> i don't recall when i last used the word, so i was very conscious when i did just now
23:02:28 <oklopol> but still, i did actually turn my head just before the guy used it, so there's definitely *some* magic involved (he yelled something during a lecture or something just before using it)
23:02:44 <oklopol> (and i was like huh whatchayellin)
23:03:15 <oklopol> (i still don't know what he yellin)
23:03:46 <oerjan> it's a law of nature. if any atheist hears about it, the evidence must be just vague enough that he can claim to explain it away.
23:04:13 * oerjan ducks
23:04:55 <oklopol> i had religious thoughts the other day. well more like spiritual. caffeine made me feel alive and philosophical.
23:05:19 <oklopol> then i proceeded reading about software engineering, and all was numb again
23:05:26 <oerjan> ic maybe i should drink more coffee
23:05:40 * oerjan is down to a couple cups a day
23:05:45 <oklopol> well caffeine, taurine and a few others
23:05:55 <oklopol> i don't really drink coffee anymore, it's too much work
23:05:59 <ehird> oklopol: i thought you said religious people were obsolete
23:06:09 <oklopol> ehird: yes, i still think so :D
23:06:25 -!- BeholdMyGlory has quit ("godnatt").
23:06:25 <ehird> <oerjan> it's a law of nature. if any atheist hears about it, the evidence must be just vague enough that he can claim to explain it away.
23:06:30 <ehird> Atheism != rationalism.
23:07:21 <oerjan> well ok if an _irrational_ atheist hears about it, the evidence can be conclusive and he still won't believe it :D
23:07:25 <oklopol> ehird: my religious thoughts are usually about greater universes containing this one as a simulation; i don't actually believe in that stuff, but it just sounds so appealing i might not die when i die.
23:07:39 <ehird> death is scary :(
23:07:39 <oklopol> because, you know, life is awesome
23:07:50 <ehird> i don't want to lose conciousness.
23:07:58 <oklopol> i'm much less afraid of it than i was, say, at your age
23:08:19 <oklopol> i think it's normal for the fear to lessen with time, at least it would make sense
23:08:24 <ehird> I used to not be afraid of death at all. Then I realised, you know, it was death. End of.
23:09:29 <oklopol> ehird: it's probably not that scary once you actually experience it ;)
23:09:50 <ehird> Well, that's the thing isn't it. You can't exactly reflect on death.
23:09:59 <oklopol> i should get back on my electronics
23:10:09 <ehird> It's just impossible to imagine not ... existing. I mean, obviously. Because existing is the only perspective you can percieve things through.
23:11:04 <oklopol> most definitely
23:12:08 <ehird> :(
23:12:13 <kerlo> When you die, you forget everything and become someone else instead.
23:12:35 <oklopol> that doesn't sound very plausible
23:12:47 <oklopol> somewhat appealing of course
23:12:52 <ehird> If you forget everything, whether you're you is... debatable.
23:13:16 <kerlo> That's why you become someone you had an especially great amount of impact on.
23:13:22 <ehird> I also hate the idea of a heaven... I don't like a segregated world where you can only watch life and everyone you know is dead.
23:13:40 <oklopol> i'd love that
23:13:42 <kerlo> That's why cool people are Alcor members.
23:13:45 <oklopol> just watching the world
23:13:51 <oklopol> not being a part of it
23:14:00 <oklopol> i've always wanted to be like a janitor in a big building
23:14:08 <oklopol> and
23:14:09 <oklopol> you know
23:14:11 <oklopol> never be seen
23:14:20 <oklopol> just watch people from my little peepholes in the walls
23:14:21 <kerlo> I've always wanted to quit everything and explore the world.
23:14:52 <oklopol> "quit everything"?
23:14:59 <kerlo> Preferably an enclosed world, so that I don't have to get cold when it snows.
23:15:03 <oklopol> YOU MEAN LIKE YOUR IRC CLIENT
23:15:05 <kerlo> School, I guess.
23:15:16 <kerlo> I'd bring an IRC headset along!
23:15:28 <kerlo> Type with my jaws. It's not that difficult once you get used to it, you see.
23:16:00 <oklopol> if you don't die, there's no reason to let your brain feel cold.
23:16:04 <oklopol> *can't die
23:16:18 <kerlo> I can die, though.
23:16:37 <oklopol> oh
23:16:45 <oklopol> nm then
23:17:26 <oklopol> if i'm doing mesh current and i have a current source, umm, how the fuck does that work? :\
23:17:32 <oklopol> hmm
23:17:35 <oklopol> ais might actually know
23:17:44 <oklopol> then again that's not very helpful either
23:17:58 <kerlo> So, transcranial brain stimulation.
23:18:15 <kerlo> No, not that.
23:18:20 <kerlo> Transcranial magnetic stimulation.
23:18:58 <kerlo> It blasts your brain for a while, so after you're done, that part of your brain doesn't work for a while.
23:19:12 <oklopol> what about it
23:19:58 <kerlo> And you become an autistic savant! Kind of.
23:20:03 <kerlo> Does that sound interesting?
23:20:06 * oklopol learned today about a condition where you can only perceive one object at a time :o
23:20:23 <oklopol> kerlo: definitely, i've always wanted to be an autistic savant
23:20:43 <oerjan> i vaguely thought magnetism had little effect on human biology
23:20:47 <oklopol> currently i'm just good at stuff, and not that practical.
23:20:53 <oklopol> that's not very extreme.
23:20:56 <oerjan> i mean, otherwise MRI would be dangerous
23:20:59 <ehird> http://en.wikipedia.org/wiki/Transcranial_magnetic_stimulation
23:21:24 <kerlo> Good at stuff like knowing what d^2f(x,y)/dxdy means?
23:21:42 <oklopol> kerlo: in general.
23:22:06 <oklopol> i do know what that means, but that's more about knowing stuff than being good
23:22:07 <oerjan> oh it's rapidly changing magnetism, which is essentially electromagnetic
23:22:34 <oklopol> kerlo: what i mean is i'm like the square root of autistic savant, like most nerds.
23:22:58 <kerlo> oklopol: how would you explain it?
23:23:13 <oklopol> ...explain what?
23:23:20 <kerlo> d^2f(x,y)/dxdy.
23:23:45 <oklopol> i would have to tell you what i know it means.
23:23:57 <oklopol> explaining has little to do with math
23:24:14 <kerlo> Please explain it, then?
23:24:28 <ehird> oklopol: he's trying to get you to do his homework
23:25:44 <oklopol> kerlo: umm how?
23:25:46 <kerlo> Yeah, since students of this class are all able to visualize things like that.
23:26:02 <oklopol> i mean how can i explain it without somehow telling you what it means?
23:26:15 <oklopol> that's impossible by definition
23:26:44 <kerlo> My explanation would be something like "d^2f(x,y)/dxdy is how twisty it is".
23:26:59 <oklopol> kerlo: what nice intuitive nonsense.
23:27:44 <kerlo> Useful intuitive nonsense.
23:27:50 <kerlo> ...or maybe it's not useful at all.
23:27:50 <oklopol> that's what my intuition about differentials says; but i do not know what differentials are.
23:28:33 <oklopol> it may be useful. but in math, you should keep intuition to yourself unless teaching.
23:28:34 -!- Corun has joined.
23:28:44 <oklopol> at least that's how i perceive the field
23:29:02 <kerlo> Should I continue trying to determine how intelligent you are compared to me?
23:29:26 <oklopol> kerlo: err go ahead.
23:29:31 <oklopol> while you're at it, answer my question
23:30:06 <kerlo> I don't know how possible it is to explain something without saying what it means. I don't think I asked you to do that.
23:30:41 <ehird> i think you're both stupid.
23:30:43 <oklopol> anyway, the calculus i'm taking does not define differentials. haven't seen a definition for them, and i've heard TRWBW say they are more of an intuitive concept.
23:30:51 <oklopol> so i'm kinda wary.
23:31:02 <oerjan> ouch
23:31:03 <oklopol> kerlo: no, you did not.
23:31:10 * kerlo nods
23:31:22 <oklopol> kerlo: it was my own addition.
23:31:31 <kerlo> You got TRWBW to call something an intuitive concept? Wow. :-)
23:31:32 <oklopol> oerjan: ouch? :)
23:31:45 <oklopol> kerlo: it's not a matter of opinion
23:31:49 <kerlo> I like ehird's frankness.
23:31:56 <ehird> Who is TRWBW?
23:32:05 <oklopol> in this case it's a matter of my lack of knowledge.
23:32:11 <oklopol> i don't know shit about calculus
23:32:18 <oklopol> ehird: a famous due
23:32:19 <oerjan> no definition of the differential by limits? oh well i guess they might do that in engineering courses
23:32:19 <oklopol> *dude
23:32:30 <ehird> What
23:32:30 <ehird> ?
23:32:36 <oklopol> oerjan: naturally there's a definition of the differential by limits
23:32:38 <kerlo> TRWBW is the guy in #math whose opinion is generally "mathematics is fundamentally about formal rules; therefore, most things in mathematics are generally best understood as formal rules".
23:32:41 <ehird> ... wait, is he a person in that #math place?
23:32:41 <oklopol> it's not *that* retarded
23:32:45 <ehird> kerlo: ah.
23:32:54 <ehird> kerlo: I assume he likes metamath, then.
23:32:56 <oklopol> oerjan: but differentials are used in actual calculations.
23:33:04 <ehird> Because it's soo easy to understand, right?
23:33:13 <oerjan> oklopol: you said "the calculus i'm taking does not define differentials. haven't seen a definition for them,"
23:33:14 <ehird> http://us.metamath.org/mpegif/2p2e4.html
23:33:19 <ehird> Best way to understand 2+2=4
23:33:21 <kerlo> ehird: how smart are you?
23:33:27 <oklopol> which makes absolutely no sense to me, i asked the lecturer what the fuck that was about, and he muttered something about the course being for non-mathematicians.
23:33:28 <ehird> kerlo: not.
23:33:32 <lament> ehird is incredibly smart for his age
23:33:38 <lament> he's the smartest 4-year-old i know
23:33:42 <oklopol> oerjan: oh right
23:33:47 <ehird> lament: harsh, man. harsh.
23:33:58 <oklopol> oerjan: yeah sorry, for differentials, no definition.
23:34:11 <oklopol> you're welcome to supply me with one
23:34:19 <kerlo> Well, he's obviously smart enough to be doing esoteric programming at the age of 12.
23:34:32 <ehird> Weren't you in here in 2005?
23:34:40 <ehird> If my calculations of everyone in #esoteric is correct, you'd have been 12 then.
23:34:44 <kerlo> I think I was also doing esoteric programming at the age of 12, indeed.
23:34:54 <oerjan> oklopol: um you are contradicting yourself
23:34:59 <ehird> I knew about Brainfuck since I was like 10, I think.
23:35:05 <oklopol> oerjan: not contradicting, correcting
23:35:10 <ehird> I only actually wrote programs in it when I was like 11 though. Even then barely
23:35:29 <oklopol> oerjan: derivatives and integrals were defined via limits, differentials not
23:35:36 <lament> I only learned about esoteric programming at 65
23:35:44 <lament> a latecomer to the field so to speak
23:35:47 <oerjan> oklopol: ok, d f(x) / dx = lim_{h -> 0} (f(x+h)-f(x))/h
23:35:56 <oerjan> oklopol: um wait no
23:35:58 <oklopol> oerjan: that's the definition of derivative
23:36:07 <oklopol> but what's dx there?
23:36:13 <oklopol> and what's d f(x)
23:36:17 <oklopol> those are the differentials
23:36:28 <oerjan> i am not aware of any distinction between derivative and differential :D
23:36:30 <oklopol> they gave us that definition, and started using them as if they were numbers.
23:36:39 <kerlo> For quite a while, I've wanted to take a GCSE and be done with high school.
23:36:44 <oerjan> they're the same thing
23:36:54 <oklopol> oerjan: well, does it sound feasible to you to multiply d f(x)/dx by dx?
23:37:03 <oklopol> that's what you do when dx is a differential
23:37:05 <oerjan> oh you mean separately
23:37:52 <oklopol> oerjan: yes, afaiu a differential means an infitesimal number two of whose division gives the derivative.... that is, blabber blabber nonsense nonsense whappidippydoo.
23:38:01 <kerlo> Or A-Levels or something.
23:38:22 <oerjan> oklopol: hm right. it's usually done wishy-washy
23:38:27 <kerlo> I like to think of things like dx as simply meaning the derivative of x with respect to a universal implicit variable.
23:38:40 <oklopol> another lecturer said on a different occasion differentials can be defined via multivariable functions.
23:38:54 <oerjan> you _can_ do it with non-standard analysis, which uses some heavy logic to embed infinitesimals in set theory
23:38:54 <oklopol> and that i should probably just try to live with them for now.
23:39:35 <oklopol> kerlo: everyone likes to think things. that's called nonsense :D
23:39:45 -!- oklopol has changed nick to okloWBW.
23:40:47 <oerjan> okloWBW: well kerlo's idea probably works best in practice
23:41:09 <oerjan> at least until you start with partial derivatives
23:41:35 <okloWBW> i don't really care what works. i don't learn math because it's useful
23:42:36 <oerjan> okloWBW: of course this all goes back to leibnitz's notation (That d/dx stuff) which was really based on noting that treating stuff as infinitesimals mostly works
23:42:38 <kerlo> Partial dx is the partial derivative of x with respect to a different, non-universal implicit variable.
23:42:48 <oerjan> centuries before anyone defined it properly
23:43:38 <oerjan> *leibniz
23:44:52 <okloWBW> kerlo: doesn't sounds all that formal to mea.
23:44:53 <okloWBW> *me
23:45:41 <oerjan> okloWBW: http://en.wikipedia.org/wiki/Gottfried_Leibniz#Calculus is very relevant to our discussion
23:46:35 <kerlo> I think it can be formalized.
23:46:45 <ehird> okloWBW: can I ask a J q
23:47:08 -!- FireFly has quit (Remote closed the connection).
23:47:20 <okloWBW> kerlo: most likely. but i can't do it in my head just like that.
23:47:25 <okloWBW> ehird: err sure
23:47:30 <okloWBW> i probably cannot answer.
23:47:39 <ehird> okloWBW: what's the "mean" code again? this leads onto another q
23:48:12 <okloWBW> mean=:+/%#
23:48:13 <oerjan> okloWBW: also, http://en.wikipedia.org/wiki/Differential_(infinitesimal) mentions several ways of making it rigorous
23:49:28 <ehird> okloWBW: so in (+ /% #), howcome it doesn't apply % to the functions themselves
23:49:35 <ehird> I mean, how does the implicit arg get fitted in?
23:51:39 <okloWBW> ehird: err
23:51:54 <okloWBW> ehird: that's a fork
23:51:59 <ehird> vwat
23:52:14 <okloWBW> x (a b c) y means (x a y) b (x c y)
23:52:26 <ehird> okay... why
23:52:28 <ehird> that seems arbitrary
23:52:55 <okloWBW> it may be arbitrary, but it's extremely useful, and lets you write most functions without naming your arguments
23:53:08 <ehird> but
23:53:10 <ehird> what about if I did
23:53:14 <okloWBW> although i definitely don't think it's arbitrary
23:53:20 <ehird> mean =: (+x)/%(#x)
23:53:23 <ehird> would it try and put the arg in?
23:53:31 <okloWBW> *(+/x)%(#x)
23:53:40 <ehird> er yes
23:53:41 <ehird> would it?
23:53:52 <okloWBW> it would crash because x isn't defined
23:54:05 <ehird> assume x is the formal parameter.
23:54:33 <okloWBW> if x is a list, then (+x)/%(#x) is the mean of that list.
23:54:37 <okloWBW> err
23:54:40 <okloWBW> *correction
23:54:47 <okloWBW> copypasted the wrong one
23:54:53 <ehird> okay
23:54:58 <ehird> so how come it doesn't feed in the arg automatically
23:55:01 <ehird> what's the rule for that
23:55:20 <okloWBW> oerjan: let's hope they teach me that in uni, i don't want to learn calculus on my own.
23:55:33 <okloWBW> because, well, i'm not really that interested in it
23:55:42 -!- olsner has quit ("Leaving").
23:55:47 <ehird> ?
23:55:50 <okloWBW> ehird: feed in the arg automatically..?
23:55:57 <okloWBW> i... don't know what you mean
23:55:59 <ehird> +/%#
23:56:02 <ehird> transforms into
23:56:09 <ehird> (+/x)%(#x)
23:56:10 <ehird> but why doesn't
23:56:11 <ehird> (+/x)%(#x)
23:56:13 <ehird> transform into, etc
23:56:16 <okloWBW> umm
23:56:17 <ehird> how does it know when to fork
23:56:23 <okloWBW> +/%# is just a fork
23:56:24 <ehird> what's the rule
23:56:26 <okloWBW> think of it as a lambda
23:56:31 <ehird> i see no lambda
23:56:36 <ehird> I see you dividing two functions.
23:56:48 <okloWBW> yes, the semantics of which i already defined
23:57:36 <okloWBW> essentially three adjacent functions evaluates to a lambda
23:57:43 <ehird> oh
23:57:43 <ehird> ok
23:57:47 <ehird> also
23:57:48 <ehird> +/%#
23:57:49 <ehird> +-----+-+-+
23:57:51 <ehird> |+-+-+|%|#|
23:57:53 <ehird> ||+|/|| | |
23:57:55 <ehird> |+-+-+| | |
23:57:57 <ehird> +-----+-+-+
23:57:59 <ehird> ascii art parse trees.
23:58:01 <ehird> I can't decide if that's fucking stupid or fucking awesome
23:58:02 <okloWBW> yes.
23:58:20 <okloWBW> just a notational thing, i think you can change that somehow
23:58:27 <oerjan> ehird: it's very common in math to apply things to functions that way ("pointwise")
23:58:31 <ehird> how do you retrieve the previous line into the prompt in J?
23:58:34 <ehird> oerjan: hm, okay
23:58:40 <okloWBW> yes, indeed
23:58:53 <okloWBW> say (x^2-4) + (sin x)
23:59:06 <okloWBW> x doesn't need to be bound, those can be functions too
23:59:19 <okloWBW> you're just adding funcs then
23:59:20 <okloWBW> o
23:59:20 <okloWBW> o
23:59:20 <okloWBW> o
23:59:20 <okloWBW> o
23:59:30 <ehird> 23:58 <ehird> how do you retrieve the previous line into the prompt in J?
23:59:35 <okloWBW> ehird: click, enter
23:59:37 -!- Corun has quit ("This computer has gone to sleep").
23:59:43 <ehird> ugh.
2009-01-29
00:00:02 <okloWBW> that's how i do it in idle, therefore also in j
00:00:03 <ehird> x=:+1
00:00:03 <ehird> x 2
00:00:05 <ehird> |syntax error
00:00:07 <ehird> :<
00:00:09 <okloWBW> there probably are better ways
00:00:21 <okloWBW> ehird: x=:+&1
00:00:29 <ehird> what
00:00:33 <okloWBW> +1 is just 1.
00:00:35 <lament> :+&
00:00:38 <ehird> what's the &
00:00:43 <okloWBW> ehird: it's an adverb
00:00:50 <ehird> how do you look up a functions doc in j
00:01:18 <okloWBW> wait it's a conjunction
00:01:36 <okloWBW> in j602, help->help
00:01:38 <ehird> like I wanna look up &
00:01:40 <okloWBW> that's all i know
00:01:47 <okloWBW> there's a reference card, googl it
00:01:48 <okloWBW> *google
00:01:51 <okloWBW> well.
00:01:55 <ehird> yeah I get all the &s in it.
00:01:58 <okloWBW> you'll probably need some basics first
00:02:08 <ehird> "vocabulary" helps
00:02:20 <ehird> also, fuck basics
00:02:22 <ehird> I'm just going to write code
00:02:24 -!- Corun has joined.
00:02:35 <okloWBW> hf.
00:02:48 -!- Corun has quit (Client Quit).
00:02:48 <ehird> how do you undefine somethin
00:02:48 <ehird> g
00:02:49 <ehird> :|
00:02:50 <okloWBW> tell me when you're better than me
00:02:55 <okloWBW> err
00:03:12 <okloWBW> hmm.
00:04:13 <okloWBW> i do not know.
00:04:56 * ehird tries j's life
00:04:57 <ehird> whoa
00:04:58 <ehird> that is fast
00:05:25 <okloWBW> btw
00:05:27 <okloWBW> coins
00:05:29 <ehird> ??
00:05:32 <okloWBW> god that's hard :|
00:05:34 <ehird> ??
00:06:27 -!- CakeProphet has joined.
00:07:04 <ehird> i think I love j
00:07:20 <ehird> !999999999
00:07:20 <ehird> _
00:07:23 <ehird> is _ "i dunno lol"
00:09:07 <ehird> okloWBW: in the vocab list
00:09:11 <ehird> is that _really_ it?
00:12:00 -!- jix_ has joined.
00:13:18 <okloWBW> umm?
00:13:25 <okloWBW> _ is infinity
00:13:33 <okloWBW> __ is negative infinity
00:13:53 <ehird> kay
00:14:02 <ehird> okloWBW: are strings, umm, lists of sth
00:14:05 <ehird> <.<
00:14:11 <ehird> i might read the tutorial
00:14:13 -!- Corun has joined.
00:14:33 <okloWBW> 'str'
00:14:44 <ehird> right
00:14:49 <ehird> what can you do wid them
00:14:58 <ehird> I tried
00:14:59 <ehird> print 's'
00:15:01 <ehird> and it opened up a printer dialog
00:15:02 <ehird> XDDDD
00:15:06 <ehird> too literal man
00:15:20 <okloWBW> haha :)
00:15:28 <okloWBW> umm i haven't done anything with strings
00:15:37 <ehird> cool, ++ doubles
00:15:39 <ehird> how does that work
00:15:43 <okloWBW> ehird: still don't know what coins meant?
00:15:46 <okloWBW> it's one of the demos
00:15:49 <ehird> o
00:16:00 <ehird> wut is it
00:16:09 <okloWBW> ++ doubles?
00:16:10 <okloWBW> wut?
00:16:16 <ehird> yep
00:16:22 <ehird> (++) 2 -> 4
00:16:22 <okloWBW> ehird: it's a game
00:16:33 <ehird> (++) 2 3 -> 4
00:16:34 <ehird> er
00:16:35 <okloWBW> ohh
00:16:35 <ehird> (++) 2 3 -> 4 6
00:16:40 <okloWBW> well yeah of course
00:16:46 <ehird> i dun geddit
00:17:23 <okloWBW> a (b c) d = (a b (c d))
00:17:36 <okloWBW> but
00:17:45 <okloWBW> monadically: (b c) d = (d b (c d))
00:17:50 <ehird> ah
00:17:53 <ehird> so
00:17:58 <ehird> (2 + (+ 2))
00:18:00 <ehird> ok
00:18:07 <ehird> cool
00:18:12 <okloWBW> yeah
00:18:35 -!- Corun has quit (Client Quit).
00:19:16 <ehird> ah, strings are documented in j602/help/user/script_strings.htm
00:20:47 <ehird> haha, + = --
00:21:05 <ehird> hrm, where's range...
00:22:04 <okloWBW> i.?
00:22:48 <ehird> yep
00:23:51 -!- jix has quit (Read error: 110 (Connection timed out)).
00:24:21 <ehird> omg omggggggggg
00:24:22 <ehird> 2 5$i.10
00:24:23 <ehird> 0 1 2 3 4
00:24:25 <ehird> 5 6 7 8 9
00:24:27 <ehird> awesome.
00:24:29 <ehird> too awesome.
00:24:38 <okloWBW> yes
00:24:45 <okloWBW> j makes you go like that a lot
00:24:59 <ehird> how do you input a multid array
00:25:01 <ehird> just reshape?
00:25:48 <ehird> 0 1 0
00:25:48 <ehird> glider=:3 3$1 1 1 1 0 0 0 1 0
00:25:50 <ehird> glider
00:25:52 <ehird> 1 1 1
00:25:54 <ehird> 1 0 0
00:25:56 <ehird> 0 1 0
00:25:58 <ehird> j is jawsome
00:26:06 <okloWBW> that's one way
00:26:13 <ehird> how would you do it
00:26:27 <okloWBW> well you can use raze........
00:26:31 <ehird> raze?
00:26:35 <okloWBW> yes
00:26:40 <ehird> wat
00:26:57 <okloWBW> >1 2 3; 3 4 5
00:27:37 <ehird> ooh, neat.
00:27:43 <ehird> how do you expand a matrix? :s
00:27:45 <ehird> I searched the docs...
00:27:50 <okloWBW> expand?
00:27:54 <ehird> yeah like
00:28:19 <ehird> 0 0 0 0 0 0 0 0 0
00:28:19 <ehird> 0 0 0 0 0 0 0 0 0
00:28:21 <ehird> 0 0 0 0 0 0 0 0 0
00:28:23 <ehird> 0 0 0 1 1 1 0 0 0
00:28:25 <ehird> 0 0 0 1 0 0 0 0 0
00:28:27 <ehird> 0 0 0 0 1 0 0 0 0
00:28:29 <ehird> 0 0 0 0 0 0 0 0 0
00:28:31 <ehird> 0 0 0 0 0 0 0 0 0
00:28:33 <ehird> 0 0 0 0 0 0 0 0 0
00:28:35 <ehird> from my glider
00:29:01 <okloWBW> you can consider the arrays lists of lists as long as you make sure length issues don't arise; / maps an operator over a list, and , concatenates
00:29:06 <okloWBW> ,/ >...
00:29:18 <ehird> 5 $!.0 glider
00:29:18 <ehird> 1 1 1
00:29:19 <ehird> 1 0 0
00:29:21 <ehird> 0 1 0
00:29:23 <ehird> 0 0 0
00:29:25 <ehird> 0 0 0
00:29:27 <ehird> that helped a bittttttttttt
00:29:46 <lament> 0 0 0 0 0 0 0 0
00:29:48 <lament> 0 0 0 0 0 0 0 0
00:29:51 <lament> 0 0 0 0 0 0 0 0
00:29:53 <lament> 0 0 0 0 0 0 0 0
00:29:55 <lament> 0 0 0 0 0 0 0 0
00:29:57 <ehird> ...
00:29:57 <lament> 0 0 0 0 0 0 0 0
00:30:00 <lament> 0 0 0 0 0 0 0 0
00:30:00 <okloWBW> o o o o o o o o o o o o o o o
00:30:01 <okloWBW> o
00:30:02 <ehird> stop it
00:30:02 <lament> 0 0 0 0 0 0 0 0
00:30:05 <lament> 0 0 0 0 0 0 0 0
00:30:09 <ehird> .....................................................
00:30:10 <okloWBW> o o o o o o o o o o o o o o o o o o o o o o o o o o
00:30:13 <lament> 0 0 0 0 0 0 0 0
00:30:17 -!- okloWBW has changed nick to oklopol.
00:30:22 <ehird> what the fuck are you doing lament
00:31:53 <lament> what? It's a game of life state
00:32:03 <ehird> yes it is.
00:32:18 <ehird> but yeah oklopol i can't figure out how to drown my glider in a sea of 0s <_<
00:33:20 <oklopol> oh umm
00:33:43 <oklopol> there's a way to do that, but umm.
00:33:50 <oklopol> i don't remember :'(
00:33:58 <ehird> :(
00:34:32 * ehird notes that neighbours are
00:34:36 <ehird> 0 0 |. x
00:34:39 <ehird> 0 1 |. x
00:34:44 <ehird> 1 0 |. x
00:34:46 <ehird> 1 1 |. x
00:34:51 <ehird> 0 _1 |. x
00:34:54 <ehird> _1 0 |. x
00:34:55 <ehird> _1 _1 |. x
00:35:11 <ehird> neighbour at point goes into point.
00:35:47 -!- jix_ has quit ("...").
00:37:25 <oklopol> o
00:37:37 <ehird> soooooooooooooooooooooooooooooksdfsdfsdf
00:38:22 <oklopol> o
00:38:22 <oklopol> o
00:38:40 <ehird> :|
00:38:53 <oklopol> slep!
00:38:54 <oklopol> ->
00:39:14 <ehird> noooooooo
01:26:17 -!- Corun has joined.
02:00:28 -!- psygnisfive has joined.
02:01:24 <psygnisfive> hey goise
02:01:53 <oerjan> *quack*
02:06:30 -!- MizardX has quit (Read error: 104 (Connection reset by peer)).
02:06:33 -!- MizardX has joined.
02:49:12 -!- Corun has quit ("This computer has gone to sleep").
04:05:01 -!- oerjan has quit ("Lost terminal").
04:15:59 <psygnisfive> ugh
04:15:59 <psygnisfive> so
04:16:17 <psygnisfive> i dont like the idea of having to create a parser that recognizes things character by character
04:16:33 <psygnisfive> but unfortunately, stupid regex's dont let me specify set intersections :(
04:16:48 <psygnisfive> EVEN THO regular languages are closed under intersection
04:16:58 <psygnisfive> set union? easy!
04:17:03 <psygnisfive> set intersection? hah!
04:17:10 <psygnisfive> supposedly perl allows it but ruby's regex doesnt. :|
04:18:21 <psygnisfive> i suppose i could also use subtraction. that would help too. but no.
04:18:24 <psygnisfive> none of that for me~!
04:19:07 -!- bsmntbombdood has changed nick to bsmntbombgirl.
04:38:55 <psygnisfive> bsmntbombgirl, are you transexual?
04:39:11 <bsmntbombgirl> psygnisfive: are you five?
04:39:46 <psygnisfive> yes.
04:40:01 <bsmntbombgirl> are you a pygmy?
04:40:10 <psygnisfive> well, no. im actually an irrational number but five is close enough for convenience.
04:40:19 <psygnisfive> yes, i am also a pygmy. how did you know?
05:12:34 <psygnisfive> ugh
05:12:36 <psygnisfive> someone talk
05:12:36 <psygnisfive> :|
05:16:02 <bsmntbombgirl> bo
05:20:42 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
05:20:57 -!- oklopol has joined.
05:40:21 <oklopol> o
06:59:39 -!- puzzlet_ has quit (Read error: 60 (Operation timed out)).
06:59:54 -!- puzzlet has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:13:43 <MizardX> psygnisfive: (?:(?=[a-r])[d-z]) == [d-r]
08:14:57 <MizardX> And a trick for the built-in classes: [^\W\d] == \w - \d
08:26:01 -!- GreaseMonkey has quit ("Client Excited").
08:37:52 <MizardX> >>> del __builtins__.__import__
08:37:56 <MizardX> >>> import sys
08:37:57 <MizardX> ImportError: __import__ not found
08:38:05 <MizardX> sandbox mode! :)
08:56:45 -!- ehird has quit ("Disconnecting from stoned server.").
08:57:08 -!- ehird has joined.
10:13:53 -!- puzzlet has quit (Remote closed the connection).
10:19:11 -!- puzzlet has joined.
10:49:09 -!- Slereah2 has joined.
11:00:21 -!- Slereah has quit (Read error: 110 (Connection timed out)).
11:07:24 -!- jix has joined.
12:18:12 -!- comexk has joined.
12:18:54 -!- comex has quit (Remote closed the connection).
12:18:54 -!- ehird has quit (Remote closed the connection).
12:18:54 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
12:18:56 -!- ehird has joined.
12:20:19 -!- puzzlet has joined.
12:40:21 -!- Corun has joined.
12:50:11 -!- AnMaster has quit ("ZNC - http://znc.sourceforge.net").
12:52:40 -!- AnMaster has joined.
12:57:31 -!- Corun has quit ("This computer has gone to sleep").
13:05:57 <MizardX> How is single \r and \n handled by *nix shells? On windows; a single \r moves the cursor to the start of the current line.
13:08:47 <MizardX> hmm... print 'foo\rx\nbar\rx' gives "xoo" on one line, and "xar" on the next, both on windows and SunOS
13:09:52 <MizardX> ... redhat too
13:10:36 <MizardX> could be python that makes it so though... >_>
13:14:11 <impomatic> Corewar will be 25 years old later this year :-)
13:39:30 <AnMaster> um
13:39:38 <AnMaster> depends on terminal rather than shell I think
13:39:47 <AnMaster> MizardX, ^
13:40:07 <MizardX> ok
13:40:16 <AnMaster> and yes python could mess with it
13:40:34 <AnMaster> so why not: echo -ne 'foo\rx\nbar\rx'
13:40:47 <AnMaster> possibly remove the -n
13:47:13 <MizardX> simple answer: they don't
13:47:47 <MizardX> probably putty that resets the cursor position on \r
13:48:23 <fizzie> If you manage to print out a raw \r, it probably does move the cursor to the start of the current line on just about any sensible terminal.
13:56:24 -!- bsmntbombgirl has quit (Read error: 110 (Connection timed out)).
13:56:56 -!- bsmntbombgirl has joined.
14:53:00 <ehird> oklopol: i am totally understanding j
14:53:37 <oklopol> that's cool
14:53:46 <ehird> yes, verily
14:54:02 <oklopol> what do you mean by that
14:54:08 -!- Hiato has joined.
14:54:10 <oklopol> do you know how raze works?
14:54:14 <ehird> i think I'm starting to "get" J
14:54:17 <ehird> and I think I know how raze works.
14:54:36 <ehird> i don't _entirely_ understand it all, but I think I'm getting the gist.
14:55:12 <oklopol> array languages are fun in that there actually is a gist
14:55:17 <oklopol> i mean
14:55:32 <oklopol> compared to learning liek umm what was the thing i was reading
14:55:34 <oklopol> well anyway.
14:55:39 <oklopol> it was this language
14:55:54 <oklopol> nevermind, probably proves my point even better than remembering
14:55:56 <oklopol> sp ->
14:56:00 <ehird> i kind of wish j gave things more conventional names though
14:56:05 <ehird> it's kind of hard to find something
14:56:18 <ehird> "reflex . passive / evoke" well duhhhhh
14:59:05 <ehird> okay hrmmmmmmmmmmmmmmm how could I run |. over the various args without troubles hrmmmmm
15:00:27 <oklopol> dunno what you mean
15:00:43 <ehird> well, yesterday I said:
15:00:52 <ehird> 16:34:32 * ehird notes that neighbours are
15:00:53 <ehird> 16:34:36 <ehird> 0 0 |. x
15:00:54 <ehird> 16:34:39 <ehird> 0 1 |. x
15:00:56 <ehird> 16:34:44 <ehird> 1 0 |. x
15:00:58 <ehird> 16:34:46 <ehird> 1 1 |. x
15:01:00 <ehird> 16:34:51 <ehird> 0 _1 |. x
15:01:02 <ehird> 16:34:54 <ehird> _1 0 |. x
15:01:04 <ehird> 16:34:55 <ehird> _1 _1 |. x
15:01:06 <ehird> 16:35:11 <ehird> neighbour at point goes into point.
15:01:08 <ehird> it's just like... i don't want to write out all those :D
15:02:37 -!- FireFly has joined.
15:02:56 <oklopol> hmmhmm. right.
15:02:56 -!- MigoMipo has joined.
15:03:09 <ehird> so I'm wondering how I could do lieeeeeek
15:03:16 <oklopol> i suggest you do some searching, i don't remember :|
15:03:21 <ehird> "lieeeeeeek length two permutations of _1 0 1, feed em to |. k"
15:03:32 <oklopol> there's a simple way to (1,0,1)2
15:03:44 <oklopol> *(-1,0,1)2
15:03:48 <oklopol> *(-1,0,1)^2
15:03:50 <oklopol> ...
15:04:00 <oklopol> wtf is it with my laptop constantly putting insert on
15:04:11 <oklopol> i've never actually pressed it except to off it.
15:04:45 <oklopol> well i don't know what length 2 permutations of _1 0 1 are, but i guess you mean the cartesian product because you listed it
15:04:49 <oklopol> more sp ->
15:13:00 <oklopol> (i:1) ((<@([;]))"0/) (i:1) holy fuck that was hard
15:13:19 <oklopol> that's the hardest part of j, getting ranks and all that right
15:14:18 <ehird> ranks are kind of confusing
15:14:19 <ehird> oklopol: what is sp
15:14:24 <oklopol> south park.
15:14:27 <ehird> o
15:14:33 <oklopol> o
15:14:42 <ehird> (_1 0 1)^2
15:14:42 <ehird> 1 0 1
15:14:57 <oklopol> i meant cartesian product
15:15:01 <oklopol> with itself
15:15:22 <ehird> isn't there, liek
15:15:24 <ehird> a function 4 dat
15:15:30 <ehird> i'm sure der is
15:15:35 <oklopol> "a oper/ b" applies oper to the cartesian product.
15:15:44 <oklopol> and there probably is a function that just gives the cp
15:15:50 <oklopol> but i don't know it atm.
15:15:54 <Slereah2> CP D:
15:15:56 <ehird> (_1 0 1) |./ glider
15:15:56 <ehird> |length error
15:15:58 <ehird> | (_1 0 1) |./glider
15:16:00 <ehird> my world is over
15:16:23 <oklopol> no no i mean
15:16:33 <ehird> u meen
15:16:37 <oklopol> (each of a) oper (each of b)
15:16:41 <oklopol> liek makes an array of them.
15:16:50 <ehird> lol can u c im confused lol
15:16:51 <ehird> :-|
15:17:15 <ehird> i mean it's not even all permutations
15:17:25 <ehird> because it's all permutations of (one elem, one elem)
15:17:40 <oklopol> something like that.
15:17:47 <ehird> you're so helpful :D
15:18:41 <oklopol> :DDDDDDDDDDDDDDD
15:19:33 <ehird> j is for people who
15:19:37 <ehird> DON'T NEED ANY HELP
15:19:56 <oklopol> ;;;)
15:20:03 <ehird> dude.
15:20:06 <ehird> there is a j channel
15:20:08 <ehird> #jsoftware
15:20:12 <ehird> they have j evaluation bots.
15:20:15 <ehird> !
15:20:30 <oklopol> OMG
15:20:39 <ehird> I KNOW
15:20:53 <ehird> there's only 4 people in ther
15:20:54 <ehird> e
15:20:54 <ehird> and us
15:20:56 <ehird> XD
15:21:00 <ehird> and 3 bots
15:29:44 -!- BeholdMyGlory has joined.
16:02:22 <ehird> % grep -i 'youtube' *|head
16:02:22 <ehird> 06.05.23:03:38:04 <SimonRC> http://www.youtube.com/watch?v=vD4OnHCRd_4
16:04:08 <ehird> 04.05.27:14:16:29 <lament> i have never even seen a breadboard, but they sure sound sexy
16:47:38 <ehird> whoa
16:47:41 <ehird> guy in #jsoftware, gnomon
16:47:45 <ehird> is in the logs of here im reading now
16:47:46 <ehird> :o
17:00:03 -!- BeholdMyGlory has changed nick to IllegalNameExcep.
17:00:59 -!- MigoMipo has changed nick to NullPointer.
17:01:04 -!- NullPointer has changed nick to MigoMipo.
17:01:30 -!- IllegalNameExcep has changed nick to BeholdMyGlory.
17:05:49 <AnMaster> ehird, there?
17:05:57 <ehird> Yes.
17:06:50 <AnMaster> I have a python question, if I want to dump everything python knows about a module, how would I do it? This is for debugging, basically I have a crash in a C program using python for an embedded scripting language. And I want to dump everything python knows about the module it implements.
17:06:55 <AnMaster> I have read python docs yes
17:07:05 <ehird> Be more specific.
17:07:08 <ehird> "Everything it knows" makes little sense.
17:07:11 <ehird> What do you want to dump?
17:07:18 <AnMaster> ehird, PyModule object
17:07:35 <AnMaster> and it's dict
17:07:41 <ehird> I'm afraid I'm not too familiar with the C API. Can you get the module from inside a Python prompt?
17:07:41 <AnMaster> recursively
17:07:52 <AnMaster> ehird, I can run python code yes
17:08:03 <AnMaster> I'm stepping in gdb to right before the point it crashes
17:08:04 <ehird> Try module.__dict__
17:08:08 <AnMaster> ah
17:08:09 <AnMaster> thanks
17:08:51 <AnMaster> ehird, yes that did what I wanted.
17:08:52 <AnMaster> :D
17:08:57 <ehird> hooray
17:09:04 <AnMaster> (gdb) call PyRun_SimpleString("print Crossfire.__dict__\n")
17:09:06 <AnMaster> fun :)
17:09:16 <AnMaster> now if it was a bit easier to read only :/
17:09:22 <ehird> AnMaster: import pprint
17:09:37 <ehird> pprint.pprint(Crossfire.__dict__)
17:09:40 <AnMaster> ah
17:10:06 <AnMaster> call PyRun_SimpleString("import pprint\npprint.pprint(Crossfire.__dict__)\n") I guess
17:10:08 * AnMaster tests
17:10:17 <AnMaster> yes :)
17:10:36 <AnMaster> 'Time': <module 'Crossfire_Time' (built-in)>,
17:10:37 <AnMaster> 'Type': <module 'Crossfire_Type' (built-in)>,
17:10:43 <AnMaster> hm, guess it isn't recursive
17:10:47 <AnMaster> oh well
17:10:53 <ehird> You can make it recursive.
17:10:56 <AnMaster> oh?
17:11:03 <ehird> Sure, sec.
17:11:24 <AnMaster> anyway the issue is something is wrong with reference count, python thinks that module, 'Crossfire_Type' has no references, but I think it has, to be specific: in that dict
17:11:40 <AnMaster> so does the python object think. but not the python gc
17:11:43 <AnMaster> :/
17:11:55 <AnMaster> result: crossfire-server: Modules/gcmodule.c:277: visit_decref: Assertion `gc->gc.gc_refs != 0' failed.
17:11:57 <AnMaster> :D
17:12:14 <AnMaster> ehird, so I'm digging deep into the internals atm
17:12:15 <ehird> def recdict(o):
17:12:15 <ehird> if hasattr(o, '__dict__'):
17:12:16 <ehird> r = {}
17:12:18 <ehird> for k, v in o.__dict__.iteritems():
17:12:20 <ehird> r[k] = recdict(v)
17:12:22 <ehird> return r
17:12:24 <ehird> else:
17:12:26 <ehird> return o
17:12:28 <ehird> pprint.pprint(recdict(Crossfire))
17:12:38 <AnMaster> oh nice, now to write it all in a C string :D
17:12:41 <AnMaster> with spaces
17:12:48 <ehird> "def recdict(o):\n if hasattr(o, '__dict__'):\n r = {}\n for k, v in o.__dict__.iteritems():\n r[k] = recdict(v)\n return r\n else:\n return o\n"
17:12:50 <ehird> well
17:12:56 <AnMaster> yeah
17:12:57 <ehird> "def recdict(o):\n if hasattr(o, '__dict__'):\n r = {}\n for k, v in o.__dict__.iteritems():\n r[k] = recdict(v)\n return r\n else:\n return o\npprint.pprint(recdict(Crossfire))\n"
17:13:06 <ehird> I got that by doing """(code)""" in python and looking at the output :P
17:13:27 <AnMaster> hm
17:13:29 <AnMaster> interesting
17:14:24 <ehird> btw, I would recommend against using python as an embedded scripting language.
17:14:30 <ehird> It isn't very...embeddable.
17:14:48 <AnMaster> ehird, well not my choice, has been like that since before I joined the project
17:14:55 <ehird> OK.
17:15:02 <AnMaster> ehird, I would have used lua
17:15:20 <ehird> Lua is... rather crappy.
17:15:21 <AnMaster> heh, 800 lines of output from that
17:15:29 <ehird> The syntax isn't very nice, and *arrays index at 1*
17:15:45 <AnMaster> ehird, well there is guile too, but I don't expect anyone else to have liked that idea.
17:16:04 <AnMaster> apart from that I can't think of any embedded scripting language
17:16:15 <ehird> guile is a rather crappy Scheme, too :P
17:16:23 <AnMaster> however since the embedded scripting language is in a plugin and not in core it should be easy to replace
17:16:24 <ehird> I'd go for elk, it's an embeddable Scheme with nice things like full continuations
17:16:28 <ehird> but that's a bit dormant
17:16:32 <ehird> (2 years of no dev, IIRC)
17:16:49 <AnMaster> well, that would make me rule it out probably
17:17:04 <AnMaster> anyway you could have it as well. just a cfelk plugin
17:17:13 <AnMaster> (dynamically loaded)
17:17:19 <ehird> I'd just rewrite the whole thing in Scheme, to be honest. :-P
17:17:53 <AnMaster> you mean the core too? hah, well the code is old in parts, there is stuff in common/porting.c that even Lovecraft would avoid writing about.
17:20:04 <AnMaster> ehird, is there any way from inside python to ask python what it thinks about reference count of objects?
17:20:04 <ehird> Yes, I believe so, let me find it in the library reference
17:20:04 <AnMaster> hm even better would be: if the GC thinks it can see a specific pointer in C
17:20:04 <ehird> AnMaster: http://python.org/doc/2.6/library/gc.html
17:20:04 <AnMaster> ehird, huh I looked there just a second ago *re-reads*
17:20:09 <ehird> get_referrers/get_referents is probably what you want
17:20:35 <AnMaster> yes indeed
17:20:39 <AnMaster> exactly indeed
17:21:07 <ehird> AnMaster: note: python does freaky shit to handle circular references.
17:21:18 <AnMaster> right
17:21:18 <ehird> if you have some of them, might wanna look there.
17:21:42 <AnMaster> I don't think I have it, but that recursive dump above was over 800 lines long
17:22:46 <AnMaster> NameError: name 'Crossfire_Time' is not defined
17:22:47 <AnMaster> uh
17:22:52 <AnMaster> that is supposed to be a module?
17:23:17 <AnMaster> ah I need to import it in the line too
17:23:19 <AnMaster> right
17:23:27 <ehird> AnMaster: make a script
17:23:30 <ehird> to check for circular references
17:23:39 <ehird> i.e., walk the recdict tree, remembering every object you see
17:23:43 <ehird> if you see one again, print it
17:25:10 <AnMaster> err
17:25:15 <AnMaster> the result of gc.get_referrers made no sense
17:25:19 <AnMaster> call PyRun_SimpleString("import pprint, gc, Crossfire_Time\npprint.pprint(gc.get_referrers(Crossfire_Time))\n")
17:25:23 <AnMaster> wouldn't that be correct?
17:25:57 <AnMaster> it seems to return a list of many modules instead of "who is holding a reference to the PyModuleObject for Crossfire_Time
17:26:51 <AnMaster> ehird, does http://rafb.net/p/0gPG5U88.html make any sense to you?
17:27:16 <ehird> AnMaster: I think that means that Crossfire_Time imports all those modules, directly or indirectly.
17:27:22 <ehird> Maybe you want referrents
17:27:33 <AnMaster> hm *reads docs again*
17:28:05 <AnMaster> that only lists what the module contains...
17:28:23 * ehird shrug
17:28:25 <ehird> Try #python?
17:28:38 <AnMaster> well I will after I debug this some more first
17:29:24 -!- Corun has joined.
17:29:26 <AnMaster> hm
17:30:05 <AnMaster> maybe there is some way to say "don't ever try to garbage collect this stuff because there is C side stuff you don't know about, so GC should just ignore this"?
17:30:34 <oklopol> there is
17:30:43 <oklopol> if talking about python
17:30:47 <AnMaster> yes
17:31:11 * oklopol waits for AnMaster to ask what it is
17:31:18 <AnMaster> oklopol, what is it?
17:31:28 <oklopol> HOW SHOULD I KNOW NOT HAVING GC IS A RETARDED IDEA
17:31:39 <oklopol> thanks for asking
17:31:51 <AnMaster> uh...
17:32:06 -!- Mony has joined.
17:32:27 <oklopol> anyway
17:32:29 <oklopol> it's python
17:32:32 <oklopol> so why do you have to ask
17:32:38 <oklopol> import gc, help(gc)
17:32:48 <Mony> plop
17:33:22 <AnMaster> oklopol, I mean from the C Embedding API point of view
17:34:51 <oklopol> hmm, i'm not actually sure you can ignore only some objects.
17:35:34 <ehird> why would you, AnMaster
17:35:41 <ehird> you're meant to fit your freeing to python's gc
17:37:02 <AnMaster> ehird, well the issue is it is freeing something that is used from C code. just increasing reference count doesn't work, then python thinks there is a bug due to a missing decrease:
17:37:07 <AnMaster> crossfire-server: Modules/gcmodule.c:277: visit_decref: Assertion `gc->gc.gc_refs != 0' failed.
17:37:15 <ehird> that's not what you're meant to do.
17:37:19 <ehird> you're meant to set up a proper reference
17:37:37 <AnMaster> ehird, well there is a proper reference to this object inside the dict of the Crossfire module
17:37:48 <ehird> If there is a reference it won't be freed.
17:42:35 <AnMaster> ehird, well following from the top module through the dict, using gdb, seems to indicate there is a reference there
17:42:57 <AnMaster> and if that is actually freed then python should certainly have decreased reference count by one?
17:43:54 <AnMaster> also this is a crazy line: print *(PyDictObject*)(((PyModuleObject*)CrossfireModule).md_dict)
17:43:54 <AnMaster> :D
17:44:13 <AnMaster> yes all show up as PyObject, but they are really the other ones basically
17:44:27 <ehird> <AnMaster> and if that is actually freed then python should certainly have decreased reference count by one?
17:44:28 <AnMaster> what python does is like manual union
17:44:34 <ehird> not sure.
17:44:37 <ehird> Ask #python.
17:44:40 <AnMaster> hm
17:44:50 * AnMaster searches the internet first
17:45:29 -!- Hiato has quit ("Leaving.").
18:04:06 <psygnisfive> MizardX: oh sir if that works and i hadn't thought of it, i love you.
18:06:21 -!- olsner has joined.
18:07:03 -!- Mony has quit ("Quit").
18:32:15 -!- Corun has quit ("This computer has gone to sleep").
18:41:58 -!- Corun has joined.
19:10:49 -!- Hiato has joined.
19:20:19 -!- monu has joined.
19:20:30 <oklopol> fungot: demonstrate yourself.
19:20:31 <fungot> oklopol: i could just not claw/ bite the network cable... they waxed the floors here and then think they have the same problem
19:21:05 <ehird> ^bf ,[.,]!runs brainfuck too
19:21:06 <fungot> runs brainfuck too
19:21:08 <ehird> ^ul (and underload)S
19:21:09 <fungot> and underload
19:21:11 <ehird> ^help
19:21:11 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
19:21:16 <ehird> ^bool
19:21:17 <fungot> Yes.
19:21:18 <ehird> ^bool
19:21:18 <fungot> Yes.
19:21:20 <ehird> ^bool
19:21:21 <fungot> Yes.
19:21:22 <ehird> ^bool
19:21:23 <fungot> Yes.
19:21:24 <ehird> ...
19:21:25 <ehird> ^bool
19:21:25 <fungot> Yes.
19:21:27 <FireFly> :D
19:21:28 <ehird> ... a no please?
19:21:30 <ehird> ^bool
19:21:31 <fungot> Yes.
19:21:33 <ehird> ^bool
19:21:33 <fungot> Yes.
19:21:37 <ehird> Worst. PRNG. Evar/
19:21:38 <ehird> ^bool
19:21:39 <fungot> No.
19:21:41 <ehird> finally
19:21:46 <FireFly> Nice randomness
19:21:50 <ehird> ^stylr
19:21:51 <ehird> er
19:21:52 <ehird> ^style
19:21:53 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
19:21:56 <ehird> ^style alice
19:21:56 <fungot> Selected style: alice (Books by Lewis Carroll)
19:21:58 <ehird> fungot: a
19:21:59 <fungot> ehird: and now how much of human suffering i fnord only relieved, but actually fnord!" her husband uneasily replied. " it would be fnord of entertainment!" the professor suggested. " a lady never knows on which side he will jump down.
19:23:02 <Slereah2> fnord the fnord game fnord
19:24:08 <olsner> yo dawg I heard u like fnord so I put a fnord in your fnord so you can fnord while you fnord
19:25:08 <lament> a lady never knows on which side he will jump down.
19:26:54 <ehird> I think that's a statement about sex changes/
19:27:09 <Slereah2> Yo dawg I herd yo dawg likes yoyos so I put a dog in a y if your brother worked on the civ 2 team
19:27:13 <Slereah2> Woops
19:27:17 <Slereah2> Wrong copypasta
19:27:31 <Slereah2> Disregard this, it is meaningless.
19:27:43 <monu> who is fungot ?
19:27:43 <fungot> monu: " there's more evidence to come yet, please your majesty," said sylvie.
19:27:55 <ehird> monu: a bot.
19:27:58 <monu> are you sure ?
19:27:59 <ehird> the bot written in befunge.
19:28:00 <ehird> :P
19:28:07 <monu> ehird: i know that :P
19:28:08 <ehird> o
19:28:17 <monu> ehird: u just told me
19:28:22 <ehird> hmm so i did.
19:28:41 <monu> is fungot an animal ?
19:28:42 <fungot> monu: 30. sometimes the conclusion, offered to us, with much pride, the handle of it caught her under the chin, and, in the course of the evening."
19:29:15 <monu> who is fungot ?
19:29:16 <fungot> monu: " but it's the wrong street. that's where we've made our mistake! our best plan, now, did you?
19:29:41 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
19:29:56 <ehird> fungot's a mineral
19:29:57 <fungot> ehird: though the barrister tried to appeal to its pride, and vainly proceeded to fnord his attention.
19:30:54 <monu> is fungot a storyteller ?
19:30:55 <fungot> monu: ' i know they're talking nonsense,' alice thought. still, she couldn't make out what it could possibly be. but lady muriel seemed to take it quite as a matter of course that doesn't do unless children are healthy: i quite allow that. well, well!' said alice, looking about in great fnord, that seemed to exist in the air a weary and wandering sigh then sounded like " fnord!"
19:31:06 <ehird> monu: to a degree
19:31:08 <ehird> it's a markov chain
19:31:09 <ehird> ^style
19:31:10 <fungot> Available: agora alice* darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp
19:31:18 <ehird> Currently it's spewing lewis caroll, feel free to change that.
19:31:24 -!- Hiato has quit ("Leaving.").
19:31:28 <monu> k
19:31:42 <monu> so fungot forgets, he doesnt remember ...
19:31:43 <fungot> monu: alice did not like shaking hands with either of them first, for fear of hurting my feelings). " you're nothing but a bottle of ink, and when he urged " for fnord sake: ' the nights are very damp!"
19:31:59 <FireFly> ^style wp
19:31:59 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
19:32:02 <FireFly> Yey
19:32:04 <FireFly> fungot
19:32:06 <fungot> FireFly: i began to try to thrust all that into the lead section's image: we haven't even explained heredity and variation yet, so great was his power." i suggest we begin to doubt the fnord as we called him, the reason for this?
19:33:47 <monu> ^style irc
19:33:47 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
19:34:09 <monu> fungot
19:34:10 <fungot> monu: going against th fnord of society in the quest for fnord beauty" by pointing to frth :) thanks again!) but with none of the stories are about robots.
19:34:51 <monu> douglasadams
19:34:57 -!- Corun has quit ("This computer has gone to sleep").
19:36:59 <monu> fungot
19:37:00 <fungot> monu: financial loss from feeding it anyway.
19:38:03 <monu> ...
19:38:17 <monu> financial ?
19:38:31 <monu> fungot
19:38:31 <fungot> monu: local person the question " how is a named-let different from a let that binds the variables it binds in their scope so functions bound to them so strong that you need anything lower-level than syntax-rules.)
19:39:18 <monu> sayonara fungot
19:39:18 <fungot> monu: after tusho writes a proposal that allows players to donate points, by creating a continuation at some other time
19:39:40 -!- monu has left (?).
19:43:25 <AnMaster> ehird, btw: I found and fixed the issue
19:43:47 <AnMaster> though the fix seems wrong... and disagree with the documentation.
19:43:50 <kerlo> Would you use fungot daily?
19:43:51 <fungot> kerlo: funet does, bash doesn't have, and that i'm not a wolf. you communicate by howling, but i'm doing sicp exercise 1.22 and wondering whether it just does
19:44:01 <AnMaster> kerlo, uh?
19:44:31 <kerlo> It's a question. A question is the kind of thing you can answer.
19:46:13 <kerlo> I wonder where the "i'm not a wolf. you communicate by howling" thing came from.
19:46:53 <kerlo> ^style agora
19:46:53 <fungot> Selected style: agora (a large selection of Agora rules, both current and historical)
19:46:58 <kerlo> fungot
19:46:59 <fungot> kerlo: a player becomes sitting. a zombie may not
19:47:06 <kerlo> fungot
19:47:07 <fungot> kerlo: an office is not impaired by contradiction between the announcement the scorekeepor. the
19:51:23 <AnMaster> ^style
19:51:24 <fungot> Available: agora* alice darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp
19:51:30 <AnMaster> ^style europarl
19:51:31 <fungot> Selected style: europarl (European Parliament speeches during approx. 1996-2006)
19:51:32 <AnMaster> fungot, hi
19:51:35 <fungot> AnMaster: mr president, a few members of a national side of the house to go back on what is being proposed for the reserved sector and the right of the presumption of guilt of terrorism for any person going through a period of 10 years for revision. i have several questions to the greek authorities, which includes ' pre-emptive strikes', such as poverty, public servants being unable to cope with the new initiatives for employme
19:51:46 <AnMaster> heh
19:53:18 <FireFly> Ooh, interesting, isn't it, fungot?
19:53:18 <fungot> FireFly: mr president, ladies and gentlemen, the third aspect concerns the role of the joint research centre. as you will be informed of the progress made should not be underestimated.
19:53:34 <AnMaster> ^style pa
19:53:35 <fungot> Selected style: pa (around 1200 transcribed Penny Arcade comics)
19:53:42 <AnMaster> no
19:53:44 <AnMaster> fungot, ?
19:53:45 <fungot> AnMaster: because i hate myself. and when you do play, it's like a copyright infringement kit. you want in on some of this stuff is actually really tasteful.
19:53:52 <AnMaster> ^style alice
19:53:53 <fungot> Selected style: alice (Books by Lewis Carroll)
19:53:56 <AnMaster> hello fungot
19:53:57 <fungot> AnMaster: ' it says " fnord!" that fnord is fnord to me is my fnord' doggie than a dozen sic' as thou! and through and through me without seeing me. " this is harder than fnord!" thundered the vice-warden.
19:54:01 <FireFly> ^style xkcd :>?
19:54:01 <fungot> Not found.
19:54:07 <AnMaster> ^style
19:54:08 <fungot> Available: agora alice* darwin discworld europarl ff7 fisher ic irc lovecraft pa speeches ss wp
19:54:10 <AnMaster> are the ones that exisgt
19:54:12 <AnMaster> exist*
19:54:12 <FireFly> Yep
19:54:21 <AnMaster> ^style fisher
19:54:21 <fungot> Selected style: fisher (Fisher corpus of transcribed telephone conversations)
19:54:22 <FireFly> But I'd like to see an xkcd one :D
19:54:35 <kerlo> fungot
19:54:35 <AnMaster> FireFly, you transcribe the comics+
19:54:36 <fungot> kerlo: ( ( closest to)) did we look at how the people over
19:54:36 <AnMaster> ?
19:54:42 <AnMaster> fungot, huh?
19:54:43 <fungot> AnMaster: you too how are you oh okay oh)) someone and they called him i think
19:54:52 <AnMaster> oh that one
19:54:53 <kerlo> ^stylp wp
19:54:55 <AnMaster> now I remember
19:55:00 <kerlo> ^style wp
19:55:01 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
19:55:05 <AnMaster> hi fungot
19:55:06 <fungot> AnMaster: look here fnord/ fnord/ tco/ fnord
19:55:09 <kerlo> Talk:, eh?
19:55:10 <AnMaster> ...
19:55:12 <FireFly> AnMaster: http://www.ohnorobot.com/index.pl?comic=56&s=test&search=Search
19:55:13 <kerlo> fungot: :-(
19:55:13 <AnMaster> fungot, poke
19:55:14 <fungot> kerlo: how come this section is about violence that has occurred at the beginning and end of each title's description, there is still a paramount pa., age 1) and ruby j. wilson ( born n.y., age 8).
19:55:14 <fungot> AnMaster: if there is other fair use media, consider checking that you have specified the fair use rationale on the other images used on this article.
19:55:17 <FireFly> [[A man sits at a computer connected through a wall to another computer.]]
19:55:17 <FireFly> TURING TEST EXTRA CREDIT: CONVINCE THE EXAMINER THAT HE'S A COMPUTER. / Man: You know, you make some really good points. I'm ... not even sure who I am anymore.
19:55:17 <FireFly> {{Title Text: Hit Turing right in the test-ees.}}
19:55:21 <FireFly> Enough for me
19:55:30 <AnMaster> hah
19:55:36 <AnMaster> ^style ss
19:55:37 <fungot> Selected style: ss (Shakespeare's writings)
19:55:59 <AnMaster> fungot, To be or not to be (a markov chain)
19:56:01 <fungot> AnMaster: gon. not since widdow dido's time to counsaile thee that art to me, and ile not wish thee to a shrew'd ill-fauour'd wife? thou'dst thanke me but a little, comfort a little, and legion himself possessed him, yet he talkes well, but that i am
19:57:13 <AnMaster> fungot, oh
19:57:14 <fungot> AnMaster: richard. then, heaven, i love thee well; and, by my faith, this league that we haue giuen thee faces of the groomes withall, for it is not that a good word
19:57:31 <AnMaster> ^style irc
19:57:31 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
19:57:44 <AnMaster> fungot, hu
19:57:44 <fungot> AnMaster: or even smalltalk ( see squeak) smalltalk to find that out.
19:57:45 <AnMaster> hi*
20:11:43 <impomatic> Hmmm...
20:13:09 <impomatic> Borland C++ Builder 5.0's license doesn't allow the user freedom of use for compiled files :-(
20:13:20 -!- bsmntbombgirl has changed nick to bsmntbombdood.
20:13:38 -!- bsmntbombdood has quit.
20:13:57 -!- bsmntbombdood has joined.
20:15:18 <bsmntbombdood> impomatic: use a real compiler?
20:16:37 <bsmntbombdood> i think the openbsd team should do a cc hackathon
20:18:33 <AnMaster> bsmntbombdood, "cc hackathon"?
20:18:34 -!- BeholdMyGlory has changed nick to ewih.
20:18:40 <ehird> A hackathon. On C compilers.
20:18:44 <ehird> Is that a difficult concept? :P
20:18:46 <AnMaster> also just use g++, or icc
20:18:52 -!- ewih has changed nick to BeholdMyGlory.
20:18:56 <bsmntbombdood> gcc is huge a bloated
20:19:03 <ehird> bsmntbombdood: clang?
20:19:14 <ehird> Reasonable license, advancing quickly, not bloated, etc.
20:19:15 <AnMaster> ehird, clang didn't codegen C++ last I looked
20:19:19 <ehird> Sure.
20:19:22 <ehird> I'm talking about the future.
20:19:27 <AnMaster> so not a solution today, for the future, sure
20:19:48 <bsmntbombdood> ehird: that's not even a real compiler
20:19:55 <ehird> Why not?
20:19:56 <AnMaster> creating build/temp.linux-x86_64-2.6-pydebug/home/anmaster/src/python/Python-2.6.1/Modules
20:19:58 <AnMaster> um?
20:20:01 <ehird> Does a real compiler need REAL MEN working on it or something, bsmntbombdood?
20:20:02 <AnMaster> strange
20:20:06 <bsmntbombdood> it compiles to some virtual machine
20:20:11 <ehird> no.
20:20:17 <ehird> LLVM compiles to native code.
20:20:31 <ehird> I'm incredibly surprised you haven't heard of it; it has a lot of backing.
20:20:58 <AnMaster> I'm surprised you didn't read the main text on llvm.org, it says "llvm can be a static compiler"
20:21:00 <AnMaster> iirc
20:22:12 <bsmntbombdood> sounds dumb
20:22:21 <bsmntbombdood> i want a classic, unix, cc
20:22:26 <bsmntbombdood> worse is better
20:22:39 <ehird> llvm is worse is better
20:22:39 <AnMaster> ...
20:22:53 <ehird> Dismissing it as "dumb" after you just hear of it is, um, dumb.
20:23:02 * AnMaster agrees with ehird here
20:23:15 <AnMaster> also if you like it that way just use tcc or pcc
20:23:28 <AnMaster> tcc is very fast because the only optimising it does is constant folding
20:23:32 <lament> lllllllllllllllllllvm
20:23:50 <AnMaster> lament, that wasn't very zen I'm afraid
20:24:03 <ehird> that was very zen
20:24:05 <ehird> because it wasn't zen
20:24:21 <lament> let's make it zen
20:24:26 * lament whacks AnMaster with a stick
20:24:31 <AnMaster> oh you are right ehird
20:24:37 * AnMaster dodges
20:24:53 * AnMaster uses Kung-fu on lament
20:25:09 <ehird> lament: you need an Oerjan-Approved A Grade IRC User Swatter from Oerjancorp.
20:25:10 <ehird> undodgable.
20:25:24 <lament> I will simply use my Zen skills.
20:25:26 * lament meditates
20:25:33 <AnMaster> ehird, that is a busted myth
20:25:43 <ehird> no. mythbusters are corporate drones.
20:25:50 <ehird> oerjancorp is a non-profit. despite the name.
20:26:04 <lament> corporate drones armed with guided missiles!
20:26:16 <ehird> the best kind!
20:26:31 <lament> if you want a zen compiler
20:26:34 <lament> just compile haskell to haskell
20:26:40 <AnMaster> nice!
20:26:45 <lament> ommmm
20:35:37 <ehird> oklopol:
20:35:37 <ehird> 07.03.18:06:15:42 <oklopol> noweach, lopoda, nopol implementation, oklotalk, nestor
20:35:40 <AnMaster> afk
20:35:44 <ehird> dude. you've had nopol since 2007
20:35:48 <ehird> lazy bum-ass
20:39:53 <ehird> <oklopol> that fucking K has almost all advantages of oklotalk... how dare it
20:43:28 <oklopol> hmm i don't remember what lopoda was...
20:45:03 <oklopol> noweach was one sick language, it was a cellular automaton kinda thing, except you could also refer to current state, so it was kinda constraint programming with an infinite datastructure
20:45:04 <oklopol> ...
20:45:22 <oklopol> my madness is probably decreasing :|
20:47:18 <AnMaster> oklopol, wow noweach sounds fun
20:47:21 <AnMaster> what was the syntax?
20:47:39 <oklopol> that i don't recall
20:47:58 <oklopol> probably something with a lot of < brackets.
20:48:01 <oklopol> *<>
20:52:45 <impomatic> Okay, I give up with C++ Builder. Is GCC a big download?
20:53:02 <Deewiant> Source or binary?
20:53:21 <impomatic> Binary
20:53:46 <Deewiant> Platform?
20:53:50 <Deewiant> Windows?
20:54:53 <impomatic> I only want to compile one thing, then I'll probably never use it again
20:54:53 <impomatic> I don't like C
20:54:53 <impomatic> Yes
20:55:10 <Deewiant> MinGW is around 200M when installed, for me
20:55:55 <Deewiant> But then I think I've got ada and objective-c there as well, along with some third party libraries possibly
20:56:21 <Deewiant> 6,4Mgcc-part-c++-4.3.0-20080502-2-mingw32-alpha-bin.tar.gz
20:56:21 <Deewiant> 7,8Mgcc-part-core-4.3.0-20080502-2-mingw32-alpha-bin.tar.gz
20:56:46 <Deewiant> So I guess around 15-20M for everything if you need C++, 10-15 if only C
20:57:02 <Deewiant> impomatic: but VC++ might be easier to get working
20:57:45 <impomatic> Thanks, I'll download next month :-)
20:57:45 <impomatic> My bandwidth limit is close!
20:58:31 <Deewiant> You poor common law countries and your bandwidth limits
20:59:10 <ehird> oklopol: (∼R∈R∘.×R)/R←1↓⍳R
20:59:12 <ehird> howdya write that in j
20:59:25 <Deewiant> implementing life?
20:59:33 <ehird> naw
20:59:36 <ehird> that's a prime number finder
20:59:43 <Deewiant> darn
20:59:43 <ehird> life is a bit longer :-P
20:59:51 <Deewiant> not much
20:59:56 <Deewiant> twice that or so
20:59:58 <ehird> Deewiant: about 50-60 chars
21:00:13 <ehird> Deewiant: http://www.catpad.net/michael/APLLife.gif
21:00:15 <Deewiant> was the whole thing that long?
21:00:28 <Deewiant> hmm, that's a different one
21:01:39 <ehird> you mean the video I linked to?
21:01:44 <ehird> that was kind of spread over multiple lines tbh
21:01:52 <ehird> but even with the infrastructure it was still ~60 chars
21:02:04 <Deewiant> I'd type it now if I had an APL keyboard :-P
21:02:19 <Deewiant> looks shorter to me
21:02:21 <Deewiant> let me count
21:02:41 <Deewiant> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
21:02:50 <Deewiant> I don't think it uses anything
21:02:56 <ehird> link?
21:02:58 <Deewiant> takes a matrix and outputs the next state
21:03:10 <ehird> "APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: It creates a new generation of coding bums."
21:03:11 <Deewiant> how does one link to specific points in youtube videos
21:03:12 <ehird> - Dijkstra
21:03:21 <ehird> Deewiant: #NmMs
21:03:23 <ehird> e.g. #4m33s
21:03:27 <ehird> at the end
21:03:33 <Deewiant> I tried that and it doesn't seem to work
21:03:46 <Deewiant> http://www.youtube.com/watch?v=a9xAKttWgP4#4m23s anyway
21:04:47 <ehird> hm, ok then
21:22:50 -!- MigoMipo has joined.
21:28:49 <Asztal> might be #/4m23s
21:29:04 <ehird> no.
21:31:38 -!- kar8nga has joined.
21:35:30 <Asztal> aha, http://uk.youtube.com/watch?v=a9xAKttWgP4#t=4m23s
21:35:46 <ehird> ah, t=
21:43:56 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
21:47:34 -!- GreaseMonkey has joined.
21:48:32 <ehird> aa
21:58:57 -!- sebbu has joined.
22:12:42 -!- GreaseMonkey has quit ("Client Excited").
22:15:16 -!- sebbu2 has quit (Read error: 113 (No route to host)).
22:19:13 <MizardX> Heh. #t=4m23s doesn't work when first loading the web-page in Google Chrome, but when stepping back or forward in browser-history it jumps to the correct time.
22:19:55 <MizardX> v1.0.154.43... just saw that there is a newer version
22:22:18 -!- yoR has joined.
22:23:21 <yoR> Hi all
22:23:57 <ehird> hi
22:24:24 <yoR> ehird: The 'bug' in bf languages still exists ;-)
22:24:30 <ehird> bug?
22:24:33 <yoR> (in anarchy golf)
22:24:52 <yoR> The 'feature' that allows cheating/using the codespace
22:25:05 <impomatic> Hi yoR :-)
22:25:17 <ehird> ah
22:25:19 <ehird> how does it work again
22:27:32 <yoR> +[+<]
22:27:42 <yoR> This finds the last instruction of your program itself
22:27:49 <ehird> ah
22:34:37 <yoR> I'm currently writing my first self-made-esolang-interpreter
22:35:01 <yoR> Since I aleady made subleq and bf interpreters, I created my own language this time
22:38:19 -!- BeholdMyGlory has quit ("TooTiredException").
22:41:19 <impomatic> I made another bf interpreter last night in 8086 asm
22:43:22 <yoR> You have too much time impy ;)
22:44:48 <impomatic> No, not enough time!
22:58:29 -!- jix has quit ("Computer has gone to sleep").
23:04:51 -!- jix has joined.
23:09:07 -!- oerjan has joined.
23:09:10 <ehird> oklopol: OMG OMG OMG
23:09:11 <ehird> J IS NOT PURE
23:09:15 <ehird> It cannot handle huge numbers :'(
23:09:17 <ehird> 69999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999
23:09:20 <ehird> 99999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699999999999999999999999996999999999999999999999999969999999999999999999999999699
23:09:25 <ehird> 999999999999999999999996999999999999999999999999969999999999999999999999999
23:09:27 <ehird> _
23:12:31 <oerjan> <ehird> lament: you need an Oerjan-Approved A Grade IRC User Swatter from Oerjancorp.
23:12:44 <oerjan> comes with a free fly simulator!
23:13:15 <FireFly> Lastest version of MS*
23:13:24 <FireFly> MS' Fly simulator*
23:14:19 * oerjan swats FireFly -----###
23:14:35 <FireFly> :<
23:14:42 <oerjan> free demonstration
23:14:47 * FireFly tries to dodge, but fails miserably
23:16:28 * oerjan notes the swatter is on fire and dips it in water
23:16:43 <oerjan> always a risk with fireflies
23:17:11 <oerjan> be especially careful with greek fireflies, as water doesn't work on greek fire
23:17:49 <oerjan> fortunately this one was swedish. they practically fly into the swatter by themselves.
23:19:01 <AnMaster> oerjan, it is a myth it is dodge proof
23:19:45 <oerjan> the swatter is sweeped in many myths
23:19:47 <ehird> oerjan: AnMaster thinks the swatter is dodge proof. this is because he has no brain.
23:19:47 * AnMaster dodges successfully
23:19:52 -!- GreaseMonkey has joined.
23:19:56 <ehird> everyone knows it's dodgeproof.
23:20:03 <ehird> typing a line on IRC saying you dodge post-swatting doesn't change that.
23:20:11 <AnMaster> ehird, yes
23:20:25 <AnMaster> it does since he swatted by typing a line on irc too
23:20:34 <oerjan> ehird: especially when you're not actually being swatted
23:21:40 <oerjan> actually the swatter is dodgeproof but not foolproof (there's always a better fool). therefore AnMaster can dodge it.
23:22:04 <AnMaster> hah
23:22:33 <ehird> oerjan: he dodges it but it still hits him
23:26:20 <FireFly> I'm not greek, just a geek
23:27:01 <oklopol> eek
23:28:13 <FireFly> "they practically fly into the swatter by themselves." :<
23:29:56 <oerjan> oklopol: gee
23:30:13 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
23:31:03 <oerjan> FireFly: do you reek?
23:31:25 <FireFly> Reek? ;o
23:32:18 <oerjan> do you reek of leek all the week?
23:32:42 <FireFly> Now you have to involve 'cheek' too
23:32:46 <FireFly> Don't ask me how
23:32:54 <FireFly> I'm having math homework for tomorrow, but boolean algebra seems more interesting
23:34:18 <oerjan> something else seeming more interesting is normal. the strange thing is that it is still math...
23:35:15 <FireFly> The things we currently do is a bit.. basic :<
23:35:26 <FireFly> Um, are*
23:40:02 -!- olsner has quit ("Leaving").
23:42:45 <oerjan> <ehird> Does a real compiler need REAL MEN working on it or something, bsmntbombdood?
23:43:17 <oerjan> no. real women and real small furry creatures from Alpha Centauri can also be utilized.
23:45:41 -!- jix has quit ("Computer has gone to sleep").
23:47:07 <oklopol> FireFly: i have boolean algebra on a course atm
23:47:15 <FireFly> :<
23:47:28 <FireFly> I'll have it in another two years
23:47:32 <FireFly> At least some, I think
23:47:37 <oklopol> what institution?
23:48:53 <FireFly> Um, well, I don't know the english term, but I'm only in the 'gymnasium' atm
23:49:05 <FireFly> I think the american equalient is high school, but I'm not sure :\
23:49:58 <ehird> well how old are you
23:50:04 <FireFly> 16 years old
23:50:17 <ehird> high school yeah
23:50:18 <oerjan> the gymnasium is where everyone runs around naked. at least that's the original meaning.
23:50:32 <FireFly> ._.
23:51:27 <oklopol> FireFly: then are you sure you mean boolean algebra and not like, say, digital logic?
23:51:51 <FireFly> I dunno, but I found what they talked about on some discrete math course interesting
23:51:57 <FireFly> A friend linked a video
23:52:05 <oklopol> not that the difference is all that crucial, i'm just very jealous if it's actual boolean algebra.
23:52:16 * oerjan 's first exposure to boolean algebra was from his father's digital logic book
23:52:42 <FireFly> I only know that we have a course called "descrete mathematics" in year 3 (me being in year 1 now)
23:53:35 <oklopol> i see. i think we had something like that too
23:53:57 <oklopol> of course by second year i was so fed up with the system i couldn't really enjoy even the nice courses.
23:53:59 <FireFly> And I just watched http://video.google.com/videoplay?docid=-2965569821331370765 <-- and that seems interesting
23:54:20 <oklopol> i hated it so much i cannot stop ranting about how much of a waste it was.
23:55:25 <FireFly> Hm, I wonder why i^-i = e^(pi/2) :\
23:55:25 -!- CakeProphet has quit ("lol").
23:55:41 -!- Judofyr has quit ("raise Hand, 'wave'").
23:55:57 <ehird> I wonder what the average age in here is
23:56:06 <oerjan> FireFly: i = e^(i*pi/2)
23:56:16 <ehird> probably the few really old (:P) people and the few really young people mess up the balance
23:56:49 <FireFly> Well, me, MigoMipo and BeholdMyGlory being 16 propably takes the average age down a bit
23:56:53 <impomatic> I'm 34, so I guess I'm with the few really old people!
23:57:02 <oklopol> FireFly: i doubt that.
23:57:17 <FireFly> But of course, there's a lot of people in here
23:57:24 <oerjan> <- 38
23:57:31 <oklopol> <- 42
23:57:39 * oerjan swats oklopol -----###
23:57:40 <FireFly> ooh, magic number
23:57:46 <oerjan> LIAR
23:57:53 <ehird> <FireFly> Well, me, MigoMipo and BeholdMyGlory being 16 propably takes the average age down a bit
23:57:54 <oklopol> *18
23:57:56 <oklopol> sorry, typo
23:58:00 <oklopol> err
23:58:03 <oklopol> *19
23:58:05 <oklopol> actual error
23:58:07 <ehird> FireFly: No, you're near the average :
23:58:08 <ehird> :P
23:58:09 * ehird = 13
23:58:19 <FireFly> :<
23:58:27 <ehird> asiekierka is I think 11 or 12, but his status as an intelligent being is... debatable.
23:59:02 <oklopol> yeah he's more like a bot.
23:59:17 <ehird> a bad bot
23:59:20 <oklopol> i wanna make a bot that uses a simple hand-woven conlang
23:59:25 <oklopol> i mean
23:59:30 <oklopol> so i don't have to parse english
23:59:35 <ehird> go for lojban, I mean then people will actually be able to understand it
23:59:36 <ehird> without learning it
23:59:38 <ehird> more impressive
23:59:40 <oklopol> i'm more interested in mimicing being social
23:59:47 <ehird> mvldo! :P
2009-01-30
00:00:10 <oklopol> i could maybe do lojban minus gismu.
00:00:14 <ehird> gismu
00:00:14 <ehird> ?
00:00:26 <oklopol> i was thinking you'd teach real life concepts to it yourself
00:00:27 <oklopol> umm
00:00:30 <oklopol> gismu are root words
00:00:33 <ehird> oh.
00:03:17 <oklopol> but probably i'd go for a simpler language.
00:03:35 <oklopol> and, you know, more mathy.
00:03:49 <oklopol> closer to Absolute Fundamental semantics
00:03:50 <oklopol> ...
00:04:06 * oklopol remembers a certain moment of madness
00:04:42 <impomatic> ^bf +++++++[>+++++++<-]>++.+.
00:04:42 <fungot> 34
00:04:58 <FireFly> Hm, is A XOR B = (A+B)(¬(AB)) ?
00:06:21 <oerjan> FireFly: yes
00:06:30 <FireFly> Good
00:06:42 <FireFly> I mananged to do the basics
00:06:44 <FireFly> :
00:06:45 <FireFly> :>*
00:07:08 <oerjan> also, ¬(AB) = ¬A + ¬B
00:11:25 <FireFly> Hm, yeah
00:11:33 <FireFly> Bleh, I'd better sleep
00:11:39 <FireFly> Until tomorrow
00:11:40 <FireFly> Or
00:11:45 <FireFly> Later today, actually
00:11:53 -!- FireFly has quit ("Later").
00:12:11 <oklopol> buy.
00:12:29 <oerjan> sell!
00:18:47 -!- Corun has joined.
00:30:16 -!- yoR has left (?).
00:48:15 -!- Corun has quit ("Leaving").
00:48:20 -!- CakeProphet has joined.
01:10:16 -!- Sgeo has joined.
01:26:07 <psygnisfive> heys
01:26:56 <oerjan> haze
01:29:50 -!- Corun has joined.
01:31:36 -!- Sgeo_ has joined.
01:31:36 -!- Sgeo_ has quit (Client Quit).
01:31:50 <psygnisfive> so
01:33:08 <psygnisfive> ive rewriting my interp for AntiGravity
01:33:31 -!- Corun has quit (Client Quit).
01:39:31 * AnMaster goes insane
01:39:53 <AnMaster> I shall try to port it to python 3 while keeping it working under python 2
01:40:07 <AnMaster> and the C API differs a lot
01:42:20 <oerjan> i think that's - not recommended.
01:47:51 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
01:48:33 -!- CakeProphet has joined.
01:51:43 <AnMaster> oerjan, going insane?
01:52:17 <AnMaster> oerjan, one of the devs use debian stable, if we didn't support both it would take like 5 years before we could upgrade!
01:52:41 <oerjan> no, trying to make something both Python 2 and 3
01:52:52 <AnMaster> oerjan, well the C module, not the python code
01:53:03 <AnMaster> oerjan, for the code you could just use 2to3
01:53:04 <AnMaster> but
01:53:15 <AnMaster> not so for the C code embedding python
01:53:27 <AnMaster> http://docs.python.org/3.0/howto/cporting.html#cporting-howto
01:54:09 <oerjan> oh i was thinking you were going for a complete polyglot. at least that would be the properly insane thing.
01:54:25 <AnMaster> oerjan, impossible for the C API
01:54:37 <AnMaster> oerjan, as for that, it is just avoiding "print" and a few other things
01:54:53 <AnMaster> 2to3 shows that is basically one of the few changes
01:57:56 <AnMaster> $ LD_LIBRARY_PATH=$HOME/local/python-3.0-dbg/lib PYTHON_HOME=/home/arvid/local/python-3.0-dbg ~/local/python-3.0-dbg/bin/2to3 *.py
01:57:56 <AnMaster> RefactoringTool: Skipping implicit fixer: buffer
01:57:56 <AnMaster> RefactoringTool: Skipping implicit fixer: idioms
01:57:56 <AnMaster> RefactoringTool: Skipping implicit fixer: set_literal
01:57:56 <AnMaster> RefactoringTool: Skipping implicit fixer: ws_comma
01:57:57 <AnMaster> RefactoringTool: No files need to be modified.
01:58:00 <AnMaster> for some files
01:58:07 <AnMaster> of course it could still break
02:27:20 <AnMaster> night
02:35:52 -!- psygnisfive has quit (Remote closed the connection).
02:50:33 <GregorR> There once was a man from Man-Fuck-Dick,
02:50:33 <GregorR> Whose horse enjoyed when he sucked it,
02:50:33 <GregorR> His limericks reversed,
02:50:33 <GregorR> The humor inversed,
02:50:33 <GregorR> 'til the day that he moved to Nantucket.
02:52:16 <AnMaster> Nantucket?
02:52:51 <GregorR> Meta-humor FAIL.
02:54:01 <oerjan> Meta-meta-humor success?
02:55:54 <AnMaster> ^style
02:55:54 <fungot> Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp
02:55:59 <AnMaster> fungot, hi
02:56:03 <AnMaster> ...
02:56:08 <AnMaster> someone talk to him?
02:56:17 <oerjan> fungot, how do you do
02:56:18 <fungot> oerjan: i don't think exists? and all?
02:56:21 <AnMaster> thanks
02:56:31 <AnMaster> oerjan, I need some data to feed into an eliza
02:56:34 <AnMaster> hm
02:56:37 <AnMaster> which style
02:56:41 <oerjan> fungot is being descartian today
02:56:42 <fungot> oerjan: hmn. first dead fnord family member in years. mother's father died when i was a big php advocate for awhile. not so much
02:56:52 <AnMaster> eww
02:56:57 <AnMaster> "mother's father died when i was a big php advocate for awhile"
02:56:59 <AnMaster> :D
02:57:07 <oerjan> goes to show
02:57:53 <oerjan> PHP KILLS PEOPLE
02:57:53 <AnMaster> yes
02:57:55 <AnMaster> ^style lovecraft
02:57:56 <fungot> Selected style: lovecraft (H. P. Lovecraft's writings)
02:58:00 <AnMaster> fungot
02:58:02 <fungot> AnMaster: the tiles on graves and rotting temples flash like ripples, as earth's gods dance against it; i shall see the dancing forms of the people always represented by the sacred reptiles appeared to be, while the boys were overseas. some fateful mood impelled me to ask for work.
02:59:54 <AnMaster> fungot, oh?
02:59:55 <fungot> AnMaster: after a time he became very numb and somnolent, moving more from automatic impulse than from reasoned fnord nor did he neglect a small store of gold for earthly use.
03:00:45 <oerjan> i'm not sure reasoned fnord is an improvement
03:32:10 -!- psygnisfive has joined.
03:32:20 <psygnisfive> ja
03:32:50 <psygnisfive> i need to add built ins to antigravity to allow for things like IO i think ya
03:32:58 <psygnisfive> what sorts of built ins should i have??
03:35:11 <oerjan> something uplifting
03:35:14 * oerjan ducks
03:36:16 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
03:38:32 <psygnisfive> hmm
03:38:35 <psygnisfive> uplifting huh
03:38:37 <psygnisfive> sounds good!
03:39:06 <psygnisfive> also, "uplift" is occasionally used as a verb to mean "increase the intelligence of some animal to the point of sentience"
03:39:18 <psygnisfive> so an uplifting function would be quite interesting to have!
03:39:43 <psygnisfive> also, observe as i only now get the pun
03:40:21 <oerjan> it's a *whoosh* ... but but ... it comes back ... and hits!
03:40:39 <psygnisfive> :p
03:40:49 <psygnisfive> it left a dent in my head! D:
03:41:10 <oerjan> well dent do that then
03:41:18 <psygnisfive> :P
03:42:46 -!- CakeProphet has joined.
04:10:31 <psygnisfive> !!
04:10:41 <psygnisfive> i just had another idea for something to add to the AntiGravity system
04:10:51 <psygnisfive> besides types, which i will add eventually
04:11:29 <psygnisfive> you'll also be able to define attributes on the grammatical rules
04:11:54 <psygnisfive> so that you can not only define new parts of the grammar
04:12:20 <psygnisfive> but you'll also be able to perform attribute grammar types of computation while parsing
04:12:59 <psygnisfive> hm.
04:14:03 <psygnisfive> maybe.
04:14:06 <psygnisfive> :P
04:34:26 -!- psygnisfive has quit (Remote closed the connection).
04:45:40 -!- psygnisfive has joined.
05:21:31 -!- oerjan has quit ("leaving").
06:22:21 <psygnisfive> TALK WON'T YOU
06:22:22 <psygnisfive> :|
07:11:19 <ski__>
07:11:51 <ski__> .. oh attribute grammars, shiny !
07:13:28 <psygnisfive> ski__: :P
07:14:44 <psygnisfive> well, the language itself is actually an unrestricted grammar engine, so it can do things attrgrams cant do, ofcourse. but im considering making the parsing engine capable of handling attrgrams for the potential odd kinds of solutions it might permit
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:19:25 -!- jix has joined.
08:21:13 <ski__> hmhm
08:21:40 * ski__ want to experiment with coupling AGs with LP
08:22:41 -!- jix has quit (Client Quit).
08:23:57 <fizzie> Antigravity with linear prediction.
08:24:40 <ski__> why do you call it "AntiGravity" ?
08:29:16 <psygnisfive> just felt like it.
08:29:20 <psygnisfive> fizzie: linear prediction?
08:29:40 <psygnisfive> its a working name, i think. ill rename it something more nice eventually
08:30:22 * ski__ called a language `contagion', once
08:30:31 <psygnisfive> i like that name
08:30:52 <ski__> the only abstraction primitive was anonymous continuations
08:31:01 <psygnisfive> huh.
08:31:35 <fizzie> I don't know why, but I've seen AG used as an abbreaviation for antigravity. And linear prediction is a rather fundamental signal processing thing.
08:32:10 <ski__> oh .. i used `AG' as abbreviation of "Attribute Grammar"
08:32:18 <psygnisfive> AG is indeed a standard abbreviation for antigravity
08:32:31 <psygnisfive> so what exactly IS linear prediction
08:32:32 <ski__> (maybe that was psygnisfive's point in calling it "AntiGravity", though)
08:32:51 <psygnisfive> no. the name preceded the potential use of attribute grammar qualities
08:33:20 <ski__> (never heard of `AG' as abbreviation of "Anti-Gravity")
08:33:26 <psygnisfive> hm.
08:33:28 -!- Sgeo has quit ("Leaving").
08:34:29 <fizzie> Linear prediction is just "predict next sample as a linear combination of p earlier samples"; you can use it for statistically modeling signals, and things like that.
08:35:44 <psygnisfive> ahh ok.
08:35:54 <psygnisfive> markov chains.
08:39:10 <fizzie> Er, not really, there are no state transition probabilities involved anywhere.
08:43:49 <fizzie> But sure, in the sense that both could be used for somewhat similar things. Although when modeling a random process, linear prediction is usually called autoregressive modeling. LP is used a lot in things like compressing speech to very low bitrates. The GSM codecs are linear-predictive.
08:45:10 <psygnisfive> hm.
08:47:57 <psygnisfive> so fizzie what /other/ built ins should i have? :P
08:48:10 <psygnisfive> since i dont know how i'd incorporate LP
08:48:30 -!- GreaseMonkey has quit ("Client Excited").
08:59:34 <psygnisfive> no?
08:59:35 <psygnisfive> nothing?
09:03:42 <fizzie> I was: eating lunch.
09:04:48 <fizzie> Oh, antigravity was mentioned earlier too. I didn't bother to read the context.
09:05:12 <fizzie> I don't really know how linear prediction would be related to whatever-it-is-you-were-doing.
09:05:32 <psygnisfive> :p
09:05:40 <psygnisfive> what should i build in! D:
09:20:41 * ski__ just realizes fizzie might have interpreted `LP' as "Linear Prediction"
09:21:22 <fizzie> Yes, your "AGs with LP" is what made me say what I did.
09:21:34 <ski__> i feared that :)
09:22:00 <ski__> by `LP' i meant "Logic Programming"
09:23:59 <psygnisfive> ski__: regarding logic programming
09:24:16 <psygnisfive> AG does do some unification stuff, so you might be able to do some LP kind of stuff
09:24:36 <ski__> yes
09:24:39 <ski__> also
09:24:44 <psygnisfive> but
09:25:29 <ski__> some AG systems statically stage tree traversal in several steps, to compute inherited and synthesized attributes
09:25:30 <psygnisfive> it wouldn't be elegant like prolog because you'd be building it on top of a non-logical system, and you could only prove truths, not discover truths, i think.
09:25:50 <psygnisfive> "some AG systems"?
09:25:52 <ski__> i want to have a system that allows such static (maybe dynamic, too ..) staging of predicates
09:26:03 <ski__> yes
09:26:32 <psygnisfive> i didn't realize there were things related to AG that _i_ wasn't making. :P
09:26:58 <psygnisfive> oh oh
09:27:01 <psygnisfive> Attribute Grammar
09:27:04 <psygnisfive> haha ok :)
09:27:14 <psygnisfive> dont abbreviate that :P
09:27:20 <psygnisfive> or atleast not like that
09:27:28 <psygnisfive> AG = AntiGravity XD
09:30:21 <ski__> no :)
09:30:49 <ski__> i believe that is a standard abbreviation, in relation to grammars, and programming languages
09:31:01 <psygnisfive> :P
09:32:24 <psygnisfive> so cmon! what should i add to my language as a primitive.
09:32:32 <psygnisfive> what is useful
09:32:47 <ski__> continuations ?
09:32:55 <ski__> variables ?
09:32:55 <psygnisfive> and what do i need to consider for laziness/forced evaluation
09:33:14 <psygnisfive> it cant have continuations, really. or it might be able to but im not sure how.
09:33:20 <psygnisfive> and it does have variables
09:33:21 <ski__> (you might note that i have no idea what you already have in your language)
09:33:24 <psygnisfive> :p
09:33:32 <psygnisfive> it is right now literally just
09:34:29 <psygnisfive> a unrestricted tree rewriting engine with variables in the grammar's rules, and a unification system for pattern matching
09:35:17 <psygnisfive> thats really it. the core functionality is math rules, and a rule for substitution of an item in a tree
09:35:45 <ski__> could you give some contrived samples to exemplify what you mean ?
09:35:58 <psygnisfive> no. it just ends up looking like haskell.
09:35:59 <psygnisfive> :P
09:36:28 <ski__> how about giving a BNF, then ?
09:36:56 <psygnisfive> there is no real grammar for it either.
09:37:09 <psygnisfive> i mean, there are really only two things that define the language. maybe three.
09:37:15 <psygnisfive> = is used for definitions.
09:37:32 <psygnisfive> () define subtrees
09:37:55 <psygnisfive> and starting a symbol with a capital defines a syntactic variable
09:38:04 -!- impomatic has quit ("programming @ http://tr.im/xey").
09:38:06 <ski__> meaning ?
09:38:20 <psygnisfive> well, you know what an unrestricted grammar is, right?
09:39:06 <ski__> i don't recall details .. but i imagine it's a couple or rules with no context-insensitive restriction ..
09:39:30 <psygnisfive> well, its basically just arbitrary rewrite rules
09:40:04 <psygnisfive> so that the kind of string you replace can look like anything
09:40:17 <psygnisfive> e.g. abc -> def
09:40:29 <ski__> so you replace trees instead of strings
09:40:39 <ski__> (i assume you have congruence)
09:40:46 <psygnisfive> congruence?
09:41:22 <psygnisfive> the important part is, if you know what an unrestricted grammar is, just imagine the rules that can have variables in them
09:41:37 <ski__> if `blah' can be rewritten into `bleh', then any tree with `blah' inside it can be rewritten to the same tree with (some) occurance(s) of `blah' exchanged into `bleh'
09:41:57 <psygnisfive> e.g. abcX -> XXabc where X can be any symbol or tree part
09:42:05 <psygnisfive> so abcd -> ddabc, etc.
09:42:08 <ski__> how about
09:42:25 <ski__> aXbXc -> Xd
09:42:25 <ski__> ?
09:42:27 <psygnisfive> oh i see what you mean
09:42:32 <psygnisfive> yeah thats fin too
09:42:34 <psygnisfive> fine*
09:43:15 * ski__ is btw irritated by the direction the `->' arrow in grammar rules point ..
09:43:35 <psygnisfive> in some sense, yes, it has congruence, but its not like a rule blah -> bleh will actually transform that tree, necessarily, because its lazy.
09:43:54 <ski__> (when i add support for grammars to my LP language, i'll have it point the other direction ..)
09:43:59 <psygnisfive> why are you irritated??
09:44:49 <ski__> in `aXbXc -> Xd', the `->' is really a kind of implication .. but it is `Xd' which implies `aXbXc', and not the other way around
09:45:09 <psygnisfive> -> is not an implication :P
09:45:20 <psygnisfive> -> is an arrow telling you what gets rewritten as what :P
09:45:38 <ski__> i'm pretty sure it can be interpreted as an implication in an ordered logic
09:45:56 <psygnisfive> it can be, and in THAT case you're right
09:46:16 <ski__> (which, imo, is what grammars is all about)
09:46:19 <psygnisfive> but thats not how rewriting systems are termed
09:47:34 <ski__> hm .. will you have confluence in your term-rewriting system ?
09:47:46 <psygnisfive> ^
09:48:11 <psygnisfive> oh no that was congruence
09:48:13 <psygnisfive> whats confluence?
09:48:45 <ski__> basically that which rewriting rules you choose in which order doesn't matter for the "end result"
09:49:10 <ski__> there might be several possible rewriting rules you could use to rewrite a term
09:49:26 <ski__> say `A' can be rewritten into `B', but also into `C'
09:50:10 <ski__> then there should be a `D' such that both `B' and `C' will eventually be rewritten into `D'
09:50:30 <ski__> (there might be some details regarding termination which i forget here, but that's the gist of it)
09:51:15 <psygnisfive> oh yeah no it is ordered because of pattern matching and stuff
09:51:51 <psygnisfive> but thats amongst definitions of "the same function", so to speak
09:52:13 <ski__> <http://en.wikipedia.org/wiki/Confluence_(term_rewriting)>
09:52:24 <ski__> yes
09:52:27 <ski__> consider
09:52:46 <ski__> foo (bar x (baz y z))
09:53:02 <ski__> you might rewrite according to `bar' or according to `baz' first
09:53:22 <ski__> confluence says that it doesn't matter which you actually do
09:54:18 <psygnisfive> yah, im not entirely sure if thats going to happen. i mean, because its pattern matching, you could have a pattern that looks inside another "function application"
09:54:29 <psygnisfive> e.g. you could have a rule bar x y -> z
09:54:48 <psygnisfive> but you could also have another pattern foo (bar x y) -> w
09:55:00 <psygnisfive> or something like that
09:55:04 <ski__> ok
09:55:18 <psygnisfive> where like.. if bar x y = 5
09:55:34 <ski__> i suppose another example of confluence is
09:55:44 <psygnisfive> and foo (bar x y) = 10
09:55:49 <psygnisfive> foo 5 doesnt have to = 10
09:56:19 <ski__> A + (B + C) --> (A + B) + C
09:56:29 <psygnisfive> yah
09:56:39 <ski__> 0 + A --> A
09:56:46 <ski__> so if you have
09:57:00 <ski__> 0 + (x + y)
09:57:09 <ski__> you could use either rule first
09:57:20 <psygnisfive> yah.
09:57:58 <psygnisfive> but anyway
09:58:01 <psygnisfive> thats what it is
09:58:10 <psygnisfive> and i need some ideas for what primitive rules should exist
09:58:19 <psygnisfive> e.g. IO and stuff
09:58:39 <psygnisfive> since its very purely functional, should i think about monad sorts of things, etc etc
09:58:52 <ski__> (iirc, there's five ways to go from `a + (b + (c + d))' to `((a + b) + c) + d' here .. that they are all equal is called the pentagonal law)
09:59:06 <psygnisfive> :P
09:59:27 <psygnisfive> anyway, i need to run off to sleep.
09:59:45 <ski__> maybe you could use some kind of unique state for I/O
09:59:48 <ski__> (like Mercury)
09:59:51 <psygnisfive> private message me any ideas that you think would be important to include :p
10:00:05 <psygnisfive> well IO i can really just implement pretty naively
10:00:08 <psygnisfive> but whether i should or not
10:00:18 <ski__> well, i don't know what you want, so it's hard to say what's important for you
10:00:50 <psygnisfive> well i just mean whats important in a usable programming language in general.
10:01:05 <ski__> mhm
10:01:18 <psygnisfive> anyway, night. <3
10:01:23 <ski__> m, night
12:46:24 -!- blAckEn3d has joined.
12:47:33 -!- blAckEn3d has quit (Client Quit).
12:54:19 -!- Hiato has joined.
13:04:45 <ehird> where has ais gone
13:04:45 <ehird> :\
13:29:11 -!- Hiato has quit (Read error: 110 (Connection timed out)).
13:33:59 <ehird> <oklopol> well do like ehird and just start coding in it... :D
13:34:00 <ehird> <oklopol> god i hate that dood sometimes
13:34:02 <ehird> <oklopol> (read: "envy")
13:34:07 <ehird> --2008-04-09
13:35:55 <fizzie> [2008-04-10 04:33:07] < oklopol> ehird is a guy who lives here
13:36:03 <ehird> yes
13:36:54 <fizzie> There is also a nice definition for "atom" by oklopol in that log: "a retarded string, somewhat"
13:37:05 <ehird> verily
13:37:14 <ehird> oklotalk-- is pretty cool.
13:37:26 <ehird> it's very... orthogonal
13:38:37 <ehird> i have the oklotalk-- source UNLIKE ANYONE ELSE :DD
13:39:06 <ehird> i mean it even has tests.
13:39:07 <ehird> holy fuck.
13:39:24 <ehird> # Needs to be set quite high because the implementation has the massive
13:39:25 <ehird> # conceptual defect of not supporting tail recursion in a
13:39:26 <ehird> # language without any other type of iteration.
13:39:28 <ehird> sys.setrecursionlimit(3000)
13:39:30 <ehird> CONCEPTUAL DEFECT
13:39:56 <fizzie> Hang on to that source code, it'll surely be worth millions some day.
13:41:01 <ehird> # TODO
13:41:01 <ehird> # standard representation of oklotalk-- object, not implemented
13:41:02 <ehird> def obj_to_str(a,cxt,depth=0):
13:41:04 <ehird> return a.call([Atm('get')],"oo",cxt,depth=0).val
13:41:06 <ehird> wut
13:41:57 <ehird> # store all functions on stack, a function needs to evaluate (to a copy of itself)
13:41:58 <ehird> # if it is already on stack when called
13:41:59 <ehird> dyn_cls=set([])
13:42:01 <ehird> w h a t
13:42:08 <ehird> # Verbose may be helpful when debugging, but prolly not.
13:42:09 <ehird> verbose=False
13:42:41 <ehird> # jsussiuuidfhsaudfh PRIVMSG #chan :::
13:42:51 <ehird> it's drunk code
13:56:02 -!- Hiato has joined.
14:11:07 <ehird> <lament> (we actually talk about programming stuff once in a while as opposed to just talking about manga and social incompetence)
14:11:11 <ehird> -- 2008-04-10
14:19:58 <ehird> Andreou, the founder of #esoteric, was last here 2008-08-31
14:22:42 <ehird> oklopol:
15:02:43 <oklopol> o
15:07:54 <ehird> oklopol write my j for m
15:07:54 <ehird> e
15:07:55 <ehird> :'(
15:11:53 -!- ski__ has quit (brown.freenode.net irc.freenode.net).
15:12:39 <ehird> http://love2d.org/screenshot_data/seaotters.png
15:12:40 <oklopol> ehird: yeah what about that stack thing :D
15:12:49 <ehird> oklopol: wut stack thing
15:12:55 <oklopol> that one you linked
15:13:05 <oklopol> # store all functions on stack, a function needs to evaluate (to a copy of itself)
15:13:09 <oklopol> # if it is already on stack when called
15:13:11 <oklopol> dyn_cls=set([])
15:13:15 <ehird> its from oklotalk--
15:13:19 <oklopol> i know.
15:13:20 <ehird> I don't know it XD
15:13:23 <ehird> it makes no sense
15:13:23 <ehird> :DD
15:13:28 <ehird> omfg hackety redesigned
15:13:52 <oklopol> it makes sense, just not... in a conventional way
15:14:16 -!- ski__ has joined.
15:14:45 <ehird> oklopol: also I totally thought of the best way to make oklotalk
15:14:56 <ehird> it's sort of like feather but not rly
15:15:19 <ehird> it'd let you literally add anything.
15:15:24 <ehird> even continuations, if it didn't have them.
15:15:27 <oklopol> litter ally
15:15:37 <ehird> ya
15:15:39 <oklopol> cunt in your asians
15:16:06 <oklopol> wait did you actually say something
15:16:08 * oklopol reads
15:16:13 <oklopol> oh okay.
15:16:20 <oklopol> well good for you
15:16:21 <ehird> lol, cunt in your asians
15:16:21 <oklopol> :)
15:16:35 <ehird> also oklopol will you ever make oklotalk
15:16:36 <ehird> :|
15:16:37 <oklopol> what do you want from j
15:17:03 <oklopol> well. i currently *do not code at all*. so nothing gets done really.
15:17:22 <oklopol> but i will probably be in a more productive state at some point again.
15:17:55 <ehird> i want to do dis in J:
15:17:58 <ehird> 14:23 <ehird> 21:07 <ehird> How would I get all length-two permutations? e.g., 1 2 3 -> 1 1, 1 2, 1 3, 2 1, 2 2, 2 3, 3 1, 3 2, 3 3?
15:17:59 <ehird> 14:23 <ehird> 21:07 <ehird> Specifically, giving each of those permutations as the left-argument of another application
15:18:06 <oklopol> probably after my fourth period, if you know what i mean
15:18:45 <oklopol> umm
15:18:45 <oklopol> wait
15:25:46 <oklopol> (,/@:(([,])"0/~))
15:26:29 <oklopol> but they aren't permutations :P
15:26:54 <oklopol> they are elements of the cartesian exponentiation
15:27:57 <oklopol> of course that probably isn't a word, but it should be.
15:30:15 <ehird> oklopol: right but
15:30:25 <ehird> surely there's a way to get that shorter if you're just giving them each to another func
15:30:31 <ehird> I mean in APL it's liek one char, iirc
15:33:18 <ehird> 9:49:01 <ehird> alternatively, you could put the jewnicode into auschwitz09:49:12 <ehird> but then you'd be an nascii
15:35:29 <oklopol> ehird: maybe there is, i don't see it.
15:35:35 <oklopol> more sp : |
15:35:36 <oklopol> ->
15:35:40 <ehird> waiiiit oklopol
15:35:44 <oklopol> <-'
15:35:44 <ehird> when I have those permutations
15:35:47 <oklopol> mmmk
15:35:48 <ehird> how do I give them to a funnnnnnnnnnction
15:35:51 <ehird> <.<
15:36:11 <oklopol> hey, if you want to put them in a function, you can just do func/~ list :D
15:36:18 <ehird> except
15:36:22 <ehird> it has to be the left argu
15:36:23 <ehird> ment
15:36:25 <ehird> not the right wun
15:36:39 <ehird> also, nope
15:36:40 <ehird> +/~ 1 2 3
15:36:41 <ehird> 2 3 4
15:36:43 <oklopol> err.
15:36:43 <ehird> 3 4 5
15:36:45 <ehird> 4 5 6
15:36:54 <ehird> that's not length 2 picks
15:36:55 <oklopol> yeah, then just ,/ it
15:37:00 <ehird> ,/?
15:37:07 <ehird> ,/ 1 2 3
15:37:07 <ehird> 1 2 3
15:37:12 <oklopol> yeah, do you know what / does as monadic
15:37:15 <ehird> no
15:37:23 <oklopol> it's err
15:37:25 <oklopol> fold
15:37:29 <oklopol> foldr
15:37:43 <oklopol> ,/ +/~ 1 2 3
15:37:43 <oklopol> 2 3 4 3 4 5 4 5 6
15:37:54 <ehird> so how does that help me feed all length-2 picks from a list as the left arg into another func
15:37:55 <ehird> :|
15:38:27 <oklopol> oh as the left arg. then prolly use what i gave you earlier
15:39:05 <ehird> ;_; i dunno how
15:39:18 <ehird> ~ commutes or crosses connections to arguments: x u~ y ↔ y u x .
15:39:22 <ehird> ok that helps a bit
15:39:30 <ehird> now to figure out how to do x y z -> z y x
15:39:33 <ehird> wait...
15:39:35 <ehird> that's it
15:39:35 <ehird> okay
15:39:40 <ehird> but ummmmmmmmmmm
15:39:46 <ehird> you still haven't told me anythign I didn't know.
15:40:27 <oklopol> cartprodapplier =: ((,/@:(([,])"0/~))@[) funtoapply ]
15:40:35 <oklopol> wel.
15:40:37 <oklopol> *well
15:40:42 <oklopol> i've answered your questions.
15:40:54 <oklopol> i don't claim to have done any more
15:40:55 <ehird> no you give me answers to qs I don't ask :|
15:41:18 <ehird> (((,/@:(([,])"0/~))@[) |. glider) )_1 0 1
15:41:18 <ehird> |syntax error
15:41:18 <oklopol> k
15:41:26 <oklopol> sp ->
15:41:42 <oklopol> yeah that makes no sense, no wonder it's an erro
15:41:43 <oklopol> r
15:41:45 <oklopol> sp ->
15:42:27 <ehird> "use this"
15:42:29 <ehird> "it errors"
15:42:32 <ehird> "duh, that makes no sense"
15:43:06 <oklopol> i told you to write (((,/@:(([,])"0/~))@[) |. glider) )_1 0 1?
15:44:07 <oklopol> cartprodapplier =: ((,/@:(([,])"0/~))@[) * ]
15:44:07 <oklopol> 1 2 3 cartprodapplier 5
15:44:21 <ehird> wtf is * ]
15:44:42 <ehird> plus, I can't exactly believe you that a 2-char thing in APL is that long in j,
15:44:43 <oklopol> multiply, by left argument
15:45:20 <oklopol> then maybe you should learn j and learn whether it is?
15:51:58 <ehird> i've tried.
15:53:43 <oklopol> well i'd sing you a song if i was an australian woman, but, well.
15:53:50 <ehird> oklopol: write a muture interp.
15:53:51 <ehird> KTHx
15:54:05 <oklopol> i've already started doing one actually
15:54:16 <oklopol> but progress is infinitely slow
15:54:38 <ehird> well make it faster i wanna try it
15:55:05 <ehird> ;I,;mc,[]{"[]"},=}!!b->"+"+mC1"-"-mC1">"+C1"<"-C1{;X}Wh=mC0=}X??b
15:55:08 <ehird> I wonder how that works
15:55:50 <ehird> http://www.vjn.fi/oklopol/clue.txt
15:55:51 <ehird> wut wut wut
16:04:46 -!- Slereah has joined.
16:07:41 <ehird> <SimonRC> you will need a large black cock
16:07:43 <ehird> [time passes]
16:07:49 <ehird> <SimonRC> s/cock/rooster/
16:11:27 <oklopol> ehird: clue is a language.
16:11:42 <ehird> howitwurk
16:11:49 <oklopol> based on giving certain clues to the interp
16:12:04 <ehird> aha
16:12:08 <ehird> whut about the cise bf
16:12:11 <oklopol> it basically sets up a recursive procedure based on a bag of functions and examples
16:12:19 <ehird> I mean
16:12:21 <ehird> I don't see any , or .
16:12:25 -!- MigoMipo has joined.
16:12:26 <oklopol> ehird: i'd have to reverse-engineer it again, i don't remember how it works atm
16:12:32 <ehird> does it do , and .
16:12:38 <oklopol> ehird: it's probably just an ioless subset
16:12:42 <ehird> sux
16:12:46 <oklopol> oooooooooooooo
16:12:50 -!- MigoMipo has left (?).
16:12:56 <oklopol> what's bf size in golfscript btw?
16:12:58 <ehird> how does cise work :P
16:12:59 <ehird> aldo
16:13:00 <ehird> also
16:13:02 <ehird> lemme look it up
16:13:18 <ehird> dunno
16:13:23 <ehird> not on http://golf.shinh.org/p.rb?Brainfuck+FIXED
16:13:26 <oklopol> cise is weird.
16:13:39 <ehird> http://www.golfscript.com/golfscript/examples.html
16:13:40 <ehird> not there
16:13:55 <ehird> also the sudoku solver is lolbig
16:14:19 <oklopol> is that so
16:15:47 -!- MigoMipo has joined.
16:15:57 <oklopol> i was thinking about constraint programming stuff for cise
16:16:07 <oklopol> there's already a pretty clear framework where it'd fit
16:16:36 <oklopol> basically a function consists of actual program logic statements, and certain kinda pattern matching statements
16:16:55 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
16:17:06 <oklopol> the pattern matching stuff can be used for certain constraint programming needs too
16:18:10 <oklopol> of course i haven't thought about the operators yet, but they are completely separate from the imperative stuff, so at least there won't be a charset size issue, unlike with imperative features, where ascii just isn't enough.
16:18:11 <oklopol> o
16:18:11 <oklopol> o
16:18:14 <oklopol> more sp :<
16:19:02 <ehird> :(((((((
16:19:04 <ehird> oklopol:
16:19:07 <ehird> j sux at golf
16:19:09 <ehird> output is sooo verbose
16:19:13 <ehird> 'foo' (1!:2) 4
16:19:34 <ehird> also, omfg
16:19:37 <ehird> j is written in java oklopol
16:19:38 <ehird> jav
16:19:40 <ehird> a
16:19:54 <ehird> i know it is because I just opened the .jar with java
16:19:56 <ehird> and it's j
16:19:58 <ehird> OKLOPOL :(
16:37:12 -!- oklopol has quit (Read error: 110 (Connection timed out)).
16:38:04 -!- oklopol has joined.
16:48:47 <ehird> hmm
16:48:58 <ehird> I wonder if you can have a lang with no partial functions without type checking
16:49:03 <ehird> liek, you basically need to stop _|_
16:49:08 <ehird> so all builtin functions must be total
16:49:10 <ehird> but then like
16:49:11 <ehird> the y combinator
16:49:13 <ehird> or f x = f x
16:49:15 <ehird> must be stopped
16:49:15 <ehird> hm
16:55:31 -!- FireFly has joined.
17:00:59 -!- Hiato has quit (Read error: 110 (Connection timed out)).
17:04:00 <ehird> lol, j actually has oop
17:04:01 <ehird> weird
17:04:14 <ehird> coclass 'Stack'
17:04:14 <ehird> create =: 3 : 'items =: 0 $ 0'
17:04:15 <ehird> push =: 3 : '# items =: (< y) , items'
17:04:17 <ehird> top =: 3 : '> {. items'
17:04:19 <ehird> pop =: 3 : '# items =: }. items'
17:04:21 <ehird> destroy =: codestroy
17:04:23 <ehird> cocurrent 'base'
17:04:25 <ehird>
17:04:27 <ehird>
17:21:59 * ehird plots language like J, but more golfy for less conventional things
17:23:11 <ehird> oklopol: I figured out how to get the last input in j
17:23:13 <ehird> ctrl-d enter
17:23:19 <ehird> ctrl-d brings up the log, enter puts it in the current line
17:23:23 <ehird> two lines up: ctrl-d up enter
17:23:23 <ehird> etc
17:25:57 -!- BeholdMyGlory has joined.
17:36:53 -!- X-Scale has joined.
17:40:49 -!- Judofyr has joined.
17:48:58 <ehird> hmm
17:48:59 * ehird ponders
17:50:13 <ehird> hmm
17:50:18 <ehird> you can't make circular data structs in j :(
18:01:05 <lament> what a useless language
18:01:10 <lament> all best things in life are circular
18:02:03 <Slereah> Like balls?
18:05:22 <lament> yes.
18:06:22 <Slereah> Example of balls : http://membres.lycos.fr/bewulf/Divers2/balls.gif
18:32:34 <ehird> pl
18:32:35 <ehird> oklopol:
18:32:39 <ehird> can you make circular data structs in j
18:35:20 -!- kar8nga has joined.
18:36:03 <ehird> i wonder if I should make my variation lazy
18:49:37 -!- impomatic has joined.
18:56:54 -!- BeholdMyGlory has quit (Remote closed the connection).
18:58:27 -!- BeholdMyGlory has joined.
18:59:50 <impomatic> I've created a new page for Redcode on the Esoteric Languages Wiki, http://tr.im/dpty
19:00:36 -!- BeholdMyGlory has quit (Remote closed the connection).
19:01:28 <lament> wow, the wiki didn't have a redcode page?
19:03:12 -!- BeholdMyGlory has joined.
19:06:13 <impomatic> No :-(
19:06:39 <lament> :(
19:06:43 <impomatic> It was on the language list, but no page. I've added some basics to begin with
19:06:48 <lament> impomatic: you play corewars?
19:07:23 <impomatic> Yes, and also do some programming in redcode
19:07:31 <ehird> he said he's played corewars since 1993 IIRC
19:08:19 <lament> impomatic: is it fun? Has the state-of-the-art progressed since the 80s?
19:08:35 <impomatic> About that :-)
19:09:37 <impomatic> It's fun, but slow at the moment. There's a history at http://corewar.co.uk/history.htm which give brief details of what's happened each year
19:10:39 <impomatic> Basically, there's been a new standard, there's now various online tournaments with instantaneous results, and new techniques keep getting invented.
19:11:49 <impomatic> There are several irregular newsletters too, http://corewar.co.uk/journals.htm
19:12:21 -!- psygnisfive has quit (Remote closed the connection).
19:12:41 -!- MigoMipo has left (?).
19:32:07 -!- Mony has joined.
19:33:27 <Deewiant> impomatic: a new standard? When was that?
19:34:59 <Mony> plop
19:35:00 <Deewiant> Oh, right, since the 80s :-P
19:35:17 <Deewiant> I was hoping something had happened in, say, the past two years that I wasn't aware of
19:46:22 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
20:00:05 <ehird> Prelude> iterateUntilStable (\(x,y) -> (x+y,y/2)) (1,0.5)
20:00:05 <ehird> (2.0,0.0)
20:00:09 <ehird> Correct for all the wrong reasons.
20:15:33 <oklopol> huh?
20:16:06 <impomatic> Deewiant cw standards = 1986, 1988 and 1994
20:16:16 <oklopol> o
20:19:43 <Deewiant> impomatic: yep, I was hoping for something after 94 :-)
20:20:41 <impomatic> No need for a new standard
20:20:46 <impomatic> Although opcodes for character input / output have been added
21:00:25 -!- alex89ru has joined.
21:02:46 -!- sebbu2 has joined.
21:06:27 -!- Mony has quit ("Quit").
21:14:48 -!- sebbu has quit (No route to host).
21:14:48 -!- sebbu2 has changed nick to sebbu.
21:55:58 -!- MigoMipo has joined.
21:56:18 -!- MigoMipo has left (?).
22:03:34 <AnMaster> the last xkcd... surreal...
22:04:36 <AnMaster> also, fun hobbit joke in iwc today!
22:06:53 -!- ski__ has quit (brown.freenode.net irc.freenode.net).
22:06:53 -!- Leonidas has quit (brown.freenode.net irc.freenode.net).
22:06:57 -!- ski__ has joined.
22:06:57 -!- Leonidas has joined.
22:16:25 <ehird> <oklopol> huh?
22:16:34 <ehird> It's mathematically correct, but i only get that result because floating point is inaccurate.
22:16:43 <ehird> (Getting it properly would involve infinite computation.)
22:24:22 <impomatic> Has anyone got any really old corewar stuff? I'm building a big online archive
22:25:06 <impomatic> Unfortunately there's lots of stuff that used to be online, but has now disappeared.
22:25:29 <impomatic> The same seems to go for some other Esolang stuff :-(
22:26:30 <ehird> http://esoteric.sange.fi/
22:26:31 <ehird> look ther
22:26:32 <ehird> e
22:26:35 <ehird> for eso archive
22:26:42 <ehird> people can give you access there
22:26:43 <ehird> :)
22:26:45 <ehird> and there might be stuff.
22:26:52 <oklopol> AnMaster: the duckling thing?
22:26:56 <Deewiant> impomatic: I might, somewhere, but I think it's all from corewar.co.uk anyway
22:26:58 <oklopol> i lolled so hard :D
22:26:58 <impomatic> Thanks, looking
22:26:59 <AnMaster> oklopol, yes
22:27:03 <AnMaster> oklopol, same
22:27:05 <ehird> Deewiant: isn't that impomatic's site? :P
22:27:09 <AnMaster> but surrealistic still
22:27:16 <Deewiant> ehird: I don't know
22:27:19 <ehird> oklopol: it's the SHC.
22:27:21 <ehird> small duckling collider.
22:27:21 <impomatic> Deewiant, I should have all of the corewar.co.uk stuff! :-)
22:27:23 <oklopol> well. it's like "oh my god would that work"
22:27:28 <ehird> er.
22:27:29 <Deewiant> but in any case, my point was that it's on the 'Net anyway
22:27:29 <ehird> SDC.
22:27:31 <Deewiant> impomatic: :-)
22:27:50 <AnMaster> <ehird> <oklopol> huh? <-- can't find that in scrollback, about when is it from?
22:27:58 <ehird> <AnMaster> <ehird> <oklopol> huh?
22:28:01 <ehird> whee quote towerrrrrrrrrrr
22:28:05 <AnMaster> yay!
22:28:11 <ehird> <ehird> <AnMaster> <ehird> <oklopol> huh?
22:28:18 <AnMaster> <ehird> oklopol: it's the SHC. <-- fun!
22:28:26 <AnMaster> however
22:28:32 <AnMaster> you need two streams
22:28:34 <AnMaster> opposite
22:28:40 <ehird> no
22:28:46 <ehird> the xkcd comic is incorrect
22:28:52 <AnMaster> oh?
22:28:55 <ehird> they would look for their mother, thus randomly swirl
22:29:00 <ehird> then colliding into a central singularity
22:29:06 <AnMaster> ehird, ah
22:29:09 <ehird> since they don't want to stray too far from each other
22:29:18 <ehird> then, the higgs boson...
22:29:21 <ehird> ...wait, nevermind
22:29:36 <AnMaster> hah
22:29:45 <Slereah> Are we discussing SCIENCE?
22:29:56 <ehird> Slereah: We're discussing making ducks hit together.
22:29:59 <ehird> Also known as science.
22:30:03 <oklopol> ehird: all joking aside, what if they were circling some kinda circular circularity? that is, if they could only see the duckling before them
22:30:20 <AnMaster> ooh cool
22:30:25 <ehird> oklopol: well, the front one wouldn't go to the last one
22:30:25 <oklopol> higgs boson probably wouldn't appear, because the circle couldn't get smaller
22:30:27 <ehird> it'd try to find its mother
22:30:31 <oklopol> so would they continue?
22:30:34 <impomatic> The Minus webpages have disappeared, hopefully I'll find them in the archive
22:30:36 <oklopol> ehird: umm
22:30:38 <ehird> so it'd swirl around and probably turn back
22:30:41 <ehird> causing everything to collide.
22:30:49 <impomatic> There was something else too which I noticed had gone. Not ever in the internet archive :-(
22:30:51 <oklopol> how would it know someone didn't just overtake it?
22:30:58 <oklopol> i mean, they're retarded animals.
22:30:59 <AnMaster> indeed
22:31:11 <oklopol> and even if it would realize something happened
22:31:25 <AnMaster> does it have exception handling?
22:31:41 <ehird> oklopol: if they get confused, they're also likely to hit themselves together
22:32:10 <oklopol> that's just a technicality, what if you just managed to start the loop some other way, say with simultaneously removing blindfolds and having them circulating using somekinda machinery already, so they'd think they were already following the next duckling
22:32:33 <ehird> im talking about what the comic did
22:32:34 <ehird> :P
22:32:34 <oklopol> ^ continuation to what i said last, not what you said
22:32:41 -!- Corun has joined.
22:33:07 <AnMaster> oklopol, blindfolds? Think that would work?
22:33:26 <AnMaster> only if each can't see the colour of it's own blindfold!
22:33:35 <oklopol> my point is something would, given a lab environment.
22:33:57 <ehird> oklopol: what if you just bashed them together with your hands
22:34:00 <ehird> then they would bash them together
22:34:04 <ehird> see, fuck hypotheticals
22:34:07 <ehird> i'm talking about the comic's situation
22:34:38 <AnMaster> oklopol, what about making a fake duck "backend" and mount it on one of the ducklings?
22:34:40 <oklopol> well, i care about the loop, not how it's started; i'm not sure what bashing has to do with that
22:34:43 -!- oerjan has joined.
22:34:53 <AnMaster> oklopol, true
22:34:58 <oklopol> except i guess it's very hypothetical, therefore similar to my point of view.
22:35:04 <oerjan> NO IT'S A LIE
22:35:05 <AnMaster> oerjan, hi! IWC rocked today
22:35:13 <oerjan> well don't tell me
22:35:17 <AnMaster> oerjan, so did xkcd!
22:35:29 <oerjan> i saw that
22:35:54 <oklopol> AnMaster: indeed, removing a *duckling* from the cycle probably won't confuse the first one, it'd just go for the next on in the queue
22:36:15 <oklopol> i mean, assuming you want the loop to be autonomous at some point
22:36:18 <AnMaster> oerjan, I think dmm should really stop with this bad hob^Whabbit of his.
22:36:30 <oklopol> i don't really know what ducklings do if one of them happens to, say, die
22:36:31 <oklopol> i'
22:36:41 <oklopol> m assuming they don't care
22:36:43 <AnMaster> oklopol, um? ok
22:36:57 <AnMaster> oklopol, duck graveyards?
22:37:05 <AnMaster> or wait, was that elephant graveyards?
22:37:17 <oerjan> wait, today was hobbit pun day?
22:37:34 <oerjan> ah indeed
22:37:38 <AnMaster> oerjan, no spoiler!
22:37:44 <oklopol> link
22:37:55 <oerjan> AnMaster: you started it
22:37:56 <AnMaster> oklopol, IWC!
22:38:04 <AnMaster> oerjan, no that was a typo ;P
22:38:06 <AnMaster> http://www.irregularwebcomic.net/
22:38:09 <AnMaster> oklopol, ^
22:38:14 <oerjan> AnMaster: i don't believe you
22:38:29 <AnMaster> oerjan, fun fact: I don't believe me either about that
22:38:40 <oerjan> i believe that
22:38:46 <AnMaster> um I don't
22:38:49 <AnMaster> that you do
22:38:55 <AnMaster> that I don't
22:39:18 <oerjan> yes you do!
22:39:23 <AnMaster> no
22:39:34 * oerjan swats AnMaster -----###
22:39:41 <AnMaster> since not believing myself is a paradox
22:39:45 <AnMaster> it would be impossible
22:39:59 <AnMaster> basically if I don't believe myself I can't believe that I don't believe myself either
22:40:02 <AnMaster> which is a paradox
22:40:13 <oerjan> i see you haven't heard about the concept of "lies"
22:40:35 <AnMaster> oerjan, I have heard about it, but I haven't understood it
22:40:41 <AnMaster> I mean it makes no sense
22:40:42 <oerjan> figures
22:40:49 -!- Corun has quit ("This computer has gone to sleep").
22:42:04 <AnMaster> oerjan, btw I have to ask you a thing, have you heard the name "Joseph Martin Kraus" before?
22:42:20 <oerjan> not that i recall
22:42:40 <oerjan> a very weak bell may be ringing
22:42:53 <AnMaster> oh well, not internationally known I guess. Famous Swedish composer. 1756-1792
22:44:29 -!- alex89ru has quit ("Verlassend").
22:45:04 <oerjan> famous swedish composers only really rings one bell with me. although it's a big bell, man.
22:46:20 <AnMaster> oerjan, ?
22:46:25 <impomatic> Anyone heard of TWINC, TWo INstruction Computer? :-)
22:46:43 <oerjan> AnMaster: your pun detector needs a good polishing
22:47:05 <AnMaster> oerjan, even after you said there was a pun I'm unable to detect it
22:47:18 <oerjan> last two words
22:47:24 <AnMaster> oh
22:47:24 <AnMaster> right
22:47:25 <AnMaster> GAH
22:47:35 <AnMaster> oerjan, what about Johan Helmich Roman then?
22:47:42 <oerjan> no bell there
22:47:57 <AnMaster> 1694-1758
22:48:03 <AnMaster> http://en.wikipedia.org/wiki/Johan_Helmich_Roman
22:48:20 <AnMaster> http://en.wikipedia.org/wiki/Joseph_Martin_Kraus
22:52:43 <AnMaster> oerjan, do you get http://www.mezzacotta.net/garfield/ today?
22:53:10 <ehird> "Steganographic"
22:53:11 <ehird> google it
22:53:14 <oerjan> i've just logged on, don't expect me to have read any webcomics
22:53:24 <oerjan> oh
22:53:41 <AnMaster> oh
22:53:45 <AnMaster> diffimg solved
22:53:46 <oerjan> well there was some steganography discussed in the forums, this may be the result of that
22:53:47 <AnMaster> solve it
22:53:54 <AnMaster> wget the original
22:54:03 <AnMaster> wget the changed one
22:54:03 <AnMaster> then
22:54:04 <oklopol> oerjan: famous swedish composers only really rings one bell with me. although it's a big bell, man. <<< awesome
22:54:05 <oklopol> :D
22:54:12 <AnMaster> diffimg 0034.png ga980112.gif > diff.png
22:54:15 * oerjan bows
22:54:28 <AnMaster> oerjan, indeed great when I found it
22:54:58 <AnMaster> oerjan, if it had been audio communication it would have been obvious
22:55:17 <GregorR> AnMaster: I wrote a diffvideo script once :P
22:55:27 <AnMaster> GregorR, wow
22:55:32 <AnMaster> GregorR, link?
22:55:55 <oklopol> i don't get the garfield thing even though i know what steganography is.
22:56:09 <AnMaster> oklopol, I got it now
22:56:10 <AnMaster> :)
22:56:34 <GregorR> Never published it, one sec I can throw it somewhere.
22:56:44 <AnMaster> oklopol, just download the original (linked at the bottom) and square root one
22:56:50 <AnMaster> then diff them
22:56:55 <AnMaster> oklopol, using diffimg or such
22:57:01 <GregorR> Although it's a total of 118 lines :P
22:57:25 <oklopol> oh.
22:57:32 <GregorR> Incidentally, I don't actually have any idea what diffimg is, I assume it just produces an image that is the pixel-per-pixel difference of two images?
22:57:50 <GregorR> (Like R2 - R1, G2 - G1, B2 - B1)
22:57:54 <oklopol> AnMaster: no need, i can read that without diffinh.
22:57:56 <oklopol> *diffing
22:59:37 <AnMaster> oklopol, what?
22:59:38 <GregorR> AnMaster: http://pastebin.ca/1323168 and http://pastebin.ca/1323170
22:59:49 <oklopol> AnMaster: what what?
22:59:53 -!- BeholdMyGlory has quit (Excess Flood).
22:59:58 <oklopol> the strip behind garfield.
23:00:05 <AnMaster> <GregorR> Incidentally, I don't actually have any idea what diffimg is, I assume it just produces an image that is the pixel-per-pixel difference of two images? <-- no, it produces a black and white image, black for differences
23:00:17 <AnMaster> white for unchanged
23:00:19 <GregorR> Oh, well that's even simpler than what I wrote :P
23:00:37 <GregorR> (Even ignoring the image-vs-video thing)
23:00:52 <oklopol> in both it's much more work opening the pic files than the actual computation
23:01:03 <GregorR> Yuh :P
23:01:13 <AnMaster> depends on language
23:01:18 <AnMaster> in C certainly yes
23:01:19 <oklopol> just map a==b over the zip of the arrays
23:01:28 <oklopol> in C yes, in real languages fuck yeah.
23:01:34 <ehird> wonder if J has zip
23:01:35 <ehird> if not it should.
23:01:41 <ehird> on N-dimensional arrays, ofc.
23:01:43 <oklopol> in surreal languages maybe not.
23:01:49 <oklopol> it has implicit zip
23:01:56 <oklopol> for arrs of equlength
23:01:56 <ehird> um wat
23:01:58 <GregorR> I made mine to get an idea of how much different video compression algorithms eff up the video :P
23:02:02 <AnMaster> heh
23:02:06 <ehird> (1 2 3), (4 5 6)
23:02:06 <ehird> 1 2 3 4 5 6
23:02:08 <ehird> that's no zip
23:02:09 <AnMaster> GregorR, yes
23:02:19 <oklopol> ehird: 1 2 3 + 5 6 7 = 1+5 2+6 3+7 is what i meant
23:02:26 <ehird> oh well yeah
23:02:38 <ehird> and yeah
23:02:39 <ehird> 1 2 3 = 1 5 3
23:02:40 <ehird> 1 0 1
23:02:40 <oklopol> , has infinite rank, it won't zip evah
23:02:45 -!- pikhq has quit ("leaving").
23:02:56 <ehird> of course, this works great if just about everything is a number subtype.
23:02:59 <ehird> including pixels.
23:03:07 <ehird> just mark them as 0xFFFFFF or w/e, ofc.
23:03:12 <oklopol> 1 2 3 (,"0) 4 5 6 <<< but you can change rank manually
23:03:14 <ehird> since, y'know, then the program is just
23:03:22 <AnMaster> ehird, as far as computer cares, everything *IS* numbers
23:03:25 <ehird> dump image (load image 1 = load image 2)
23:03:26 <ehird> tadaaaaaaaaaaa
23:03:35 <ehird> AnMaster: umm yeah except that's totally irrelevant
23:03:38 -!- pikhq has joined.
23:03:44 <AnMaster> ehird, indeed
23:04:09 <oklopol> yeah the whole diff program is indeed =
23:04:39 <ehird> in fact, if stringifying an image gives a reasonable format of some kind you can omit the dump image
23:06:15 <oerjan> now could someone please explain today's Lightning Made of Owls to me...
23:07:04 <ehird> haha
23:07:07 <ehird> it's funny and i don't get it
23:07:13 <oerjan> or is it just lousy
23:07:38 <oerjan> maybe it's just meant to be absurd
23:08:02 * impomatic checks he's still in #esolang
23:08:19 <ehird> you're not
23:08:20 <ehird> BUT I AM
23:08:28 <oklopol> or maybe there aren't save rolls if you're wielding a double-handed weapon
23:08:52 <oerjan> impomatic: everything is on topic here except esolangs. the # is logical negation.
23:08:57 <oklopol> in $rpg_mezzacotters_play
23:09:23 <impomatic> Hmmm... let me try something :-(
23:09:29 <impomatic> ehird: am I here now?
23:09:38 <ehird> Here is not #esolang.
23:09:41 <ehird> Here is #esoteric.
23:09:42 <ehird> :P
23:09:44 <ehird> But yes, you are here.
23:09:54 <oerjan> oh right
23:10:06 <oklopol> indeed, this is where we are not esoteric
23:10:06 <oerjan> darn suffixes
23:10:13 <oklopol> plain old ppl talking about things
23:10:23 <oklopol> oerjan: did you agree with my joke explanation
23:10:36 <oklopol> i mean it's funny in a conventional sense that way.
23:11:17 <oerjan> oklopol: when you said you could read the strip behind garfield without diffing, you were lying, right?
23:11:25 <oklopol> oerjan: i was not.
23:11:28 <oerjan> hm
23:11:39 <impomatic> While we're talking comics, http://corewar.co.uk/cwcomics.txt
23:11:49 <oerjan> food ->
23:12:17 <oklopol> oerjan: if you're not satisfied with me just being superior to humans, i guess i could mention i have a laptop.
23:13:59 <AnMaster> oklopol, oh hah
23:14:06 <AnMaster> that explains it
23:14:06 <oklopol> so, impomatic, i hate you; and now let me elaborate on that, it's less insulting than you think.
23:14:20 <AnMaster> oklopol, I have a TFT with really really wide viewing angle
23:14:44 <oklopol> basically you've gotten me to desperately want to try both corewars and code golfing.
23:15:19 <impomatic> Yay :-)
23:15:20 <oklopol> which will take a lot of my time, if i succumb
23:15:34 <impomatic> I think they're both going to be around a while, no hurry
23:16:04 <impomatic> If they'd add redcode to code golfing, you could kill two birds with one stone
23:16:12 * oerjan has a laptop too although his first attempt to read at an angle failed. will try again.
23:16:18 <ehird> http://golf.shinh.org/reveal.rb?Text+Compression/flagitious%28sym%29/1190091541&rb
23:16:20 <ehird> Wow.
23:18:32 <oerjan> a laptop which ironically never leaves the table
23:18:54 <oklopol> mine almost never leaves the house, but it's always in my lap
23:19:26 <oklopol> then again i sit on my bed 24/7, a bit hard to use a table.
23:19:34 <oerjan> does that imply you almost never leave the house?
23:19:47 * oerjan had a bit different impression
23:19:51 <oklopol> it would.
23:20:03 <oklopol> i only leave the house for uni stuff really
23:20:14 <oklopol> and you know shoppe time.
23:21:17 <oklopol> but yeah i guess i meant it never leaves my lap when i use it
23:21:25 <oklopol> that is, when i'm home
23:21:34 <oklopol> well okay that's not true either.
23:21:52 <oerjan> logic is such a bitch
23:21:56 <oklopol> i usually put it down when i'm doing my stuffs.
23:22:07 <oklopol> which i should start doing right now btw.
23:22:31 <oklopol> if i don't prove these structures to be abel groups, no one will.
23:23:39 <ski__> abelian ?
23:23:59 <oklopol> yeah i guess that's the term
23:25:50 <oklopol> okay, cya ~}
23:30:36 -!- Slereah has quit (Read error: 60 (Operation timed out)).
23:32:30 -!- Slereah2 has joined.
23:42:40 -!- impomatic has quit (Read error: 110 (Connection timed out)).
2009-01-31
00:25:46 -!- FireFly has quit ("Later").
00:26:44 <MizardX> What's with the quit message "This computer has gone to sleep"? Google gives > 8000 hits, all of which is IRC logs.
00:27:36 <oerjan> hm
00:28:06 <oerjan> and not a single person?
00:28:10 <MizardX> no
00:29:13 <oerjan> so next try to find which client they are using...
00:29:53 <oerjan> lessee Corun uses it
00:30:12 <oerjan> but not here now
00:31:38 <ehird> MizardX: xchat aqua
00:31:41 -!- Corun has joined.
00:31:42 <ehird> (os x xchat)
00:31:48 <ehird> Corun: you use os x rite?
00:31:48 <MizardX> !taf2! VERSION X-Chat Aqua 0.16.0 (xchat 2.6.1) Darwin 9.6.0 [i386/1.80GHz/SMP]
00:31:51 <ehird> you made that app thing
00:31:58 <ehird> that you linked here
00:32:03 <ehird> and I liked but didn't because it required leopard
00:32:09 <ehird> we're investigating your quit message
00:32:10 <ehird> you see
00:32:12 <oerjan> oh nice timing
00:32:14 <ehird> and we think it's xchat aqua
00:32:21 -!- Corun has quit (Client Quit).
00:32:24 <ehird> fuck you.
00:32:38 <oerjan> CTCP VERSION reply from Corun: X-Chat Aqua 0.16.0 (xchat 2.6.1) Darwin 9.5.0 [i386/2.20GHz/SMP]
00:32:46 <ehird> glad to know his COMPUTER talks to us.
00:33:02 <oerjan> i'll try another nick i found on google
00:33:27 <oerjan> CTCP VERSION reply from Lachy: X-Chat Aqua 0.16.0 (xchat 2.6.1) Darwin 9.6.0 [i386/2.40GHz/SMP]
00:33:32 <oerjan> yep, seems so
00:34:02 * oerjan hopes lachy doesn't get paranoid from being ctcp'ed out of the blue :D
00:37:20 -!- GreaseMonkey has joined.
00:48:42 <ehird> SLOWNESS, n.
00:48:42 <ehird> <AnMaster> hm fizzie, you are from Finland?
00:48:48 <ehird> {2008-04-16}
00:49:32 <oerjan> you mean fizzie hasn't answered yet? how rude!
00:49:38 <ehird> XD
01:14:50 -!- Judofyr has quit ("raise Hand, 'wave'").
01:25:39 -!- sebbu2 has joined.
01:30:56 -!- sebbu has quit (Read error: 110 (Connection timed out)).
01:30:57 -!- sebbu2 has changed nick to sebbu.
01:58:30 <AnMaster> ehird, well did he answer then or?
01:59:42 <AnMaster> or did someone else answer?
02:05:35 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
02:55:36 <kerlo> Hy gys, s ths TF-8?
02:57:45 <oerjan> Nöpe, äccördïng tö mÿ chëck öf thë lögs ït's ISO-8859-1. Thïs shöüld bë, thöügh.
02:58:19 <oerjan> (My client auto-translates so I cannot tell from it)
02:58:37 <kerlo> Mm.
03:00:04 <kerlo> Hw bt ths?
03:02:57 * oerjan chëcks ägäïn
03:03:21 <oerjan> Nope
03:03:33 <kerlo> Darn.
03:03:54 <oerjan> ah irssi too
03:04:05 <oerjan> let me paste my relevant settings
03:04:20 <kerlo> Okay.
03:04:48 <oerjan> 04:04 recode_autodetect_utf8 = ON
03:04:48 <oerjan> 04:04 recode_fallback = CP1252
03:04:48 <oerjan> 04:04 recode = ON
03:04:48 <oerjan> 04:04 recode_out_default_charset = utf8
03:04:48 <oerjan> 04:04 recode_transliterate = ON
03:06:22 <kerlo> Tëstïng ägäïn.
03:06:37 <kerlo> How did that look?
03:06:43 <oerjan> Grëät süccëss!
03:06:49 <kerlo> Great.
03:06:58 <kerlo> Now all I have to do is make it actually display properly.
03:07:17 <kerlo> ?t's d?spl?y?ng l?k? th?s.
03:07:31 <oerjan> note my terminal is actually not set to Unicode itself
03:07:45 <kerlo> Except when I type it, in which case it displays as weird boxy things.
03:08:28 <kerlo> Tstng nc gn.
03:08:29 <oerjan> so i only see things right that fall within Latin-1 part of Unicode
03:08:39 <kerlo> Did it still work?
03:08:47 <oerjan> no
03:08:54 <kerlo> Darn!
03:09:17 <oerjan> but, does that look right to you?
03:09:30 <kerlo> Currently, that looks right to me and the UTF-8 stuff doesn't.
03:09:33 <oerjan> because that comes out as ISO
03:10:09 <oerjan> my client shows all of them properly
03:10:25 <oerjan> let me check...
03:10:39 <kerlo> I'm guessing this is happening: I type, PuTTY sends UTF-8 to screen, screen sends ISO to irssi, irssi sends ISO to the server.
03:11:38 <kerlo> scrëën -d -r döës thïs.
03:11:59 <kerlo> Which displays as fuzzy boxes in the input line and question marks in chat.
03:12:07 <kerlo> But it's apparently sending it correctly.
03:12:13 <oerjan> 04:04 term_charset = iso8859-1
03:12:18 <oerjan> do you have that?
03:12:30 <kerlo> No, I have ANSI_X3.4-1968.
03:12:32 <kerlo> Is that horrible?
03:12:42 <oerjan> i don't know what that is :D
03:12:53 <oerjan> possibly something 7-bit
03:13:10 <oerjan> try changing that
03:13:32 <oerjan> -1968 would seem like before anything beyond ASCII was invented
03:14:16 <oerjan> (that's my setting. if you manage to set PuTTY to use actual unicode, you probably should use that
03:14:32 <kerlo> I think PuTTY is set to UTF-8 currently.
03:14:44 <kerlo> Let me try starting a new irssi with -U.
03:15:16 <oerjan> well then you should probably do term_charset = UTF-8
03:15:24 <kerlo> It would seem so.
03:16:17 <kerlo> PuTTY sending UTF-8, screen called without -U, term_charset = ANSI_X3.4-1968: bläh
03:16:54 <kerlo> PuTTY sending UTF-8, screen called without -U, term_charset = ANSI_X3.4-1968: bläh
03:17:06 <kerlo> Er, s/ANSI_X3.4-1968/UTF-8/ on that last one.
03:17:26 <oerjan> both are unicode
03:17:33 <kerlo> Both are UTF-8?
03:17:52 <oerjan> as far as my browser window of the logs implies
03:19:01 <kerlo> Ökäy, thïs dïspläys möstlÿ rïght.
03:19:09 <kerlo> The Ö doesn't, though.
03:19:18 <oerjan> huh
03:19:47 <oerjan> looks correct here
03:19:58 <kerlo> I'm guessing Ö isn't within the Latin-1 part of Unicode or something.
03:20:05 <oerjan> of course it is
03:20:11 <kerlo> Mm.
03:20:14 <oerjan> Ö
03:20:29 <kerlo> None of that is showing properly.
03:20:40 <kerlo> The capital letters, anyway.
03:20:49 <oerjan> <kerlo> Ökäy, thïs dïspläys möstlÿ rïght.
03:21:11 <kerlo> That looks roughly like this: #Vkay, this displays mostly right.
03:21:22 <kerlo> The # is one of those fuzzy boxes, the V is inverse color.
03:21:36 <oerjan> without any " on top of anything?
03:21:45 <kerlo> It has those over the lowercase letters.
03:21:50 <oerjan> ok then
03:21:56 <oerjan> bizarre
03:22:14 <kerlo> I know that there is something that supports only lowercase accented characters.
03:23:59 <oerjan> also, ANSI_X3.4-1968 is the canonical name for ASCII
03:24:07 <kerlo> Oh, cute.
03:25:38 <oerjan> do you still have those recode* settings?
03:26:06 <kerlo> Apparently, CP437 supports Ä, Ö and Ü but not Ë or Ï, as well as a seemingly arbitrary set of Greek letters.
03:26:15 <kerlo> Also, everything messes up when I type Ä.
03:26:19 <oerjan> heh
03:26:24 <oerjan> ic
03:26:32 <kerlo> 03:26 recode_autodetect_utf8 = ON
03:26:32 <kerlo> 03:26 recode_fallback = CP1252
03:26:32 <kerlo> 03:26 recode = ON
03:26:32 <kerlo> 03:26 recode_out_default_charset = UTF-8
03:26:32 <kerlo> 03:26 recode_transliterate = ON
03:26:41 <oerjan> what happens when i type à in here?
03:27:18 <kerlo> It displays as fuzzy-box inverse-color-C.
03:27:51 <oerjan> it should be A with ~ on top
03:28:23 <kerlo> Ã
03:28:37 <oerjan> right
03:28:44 <kerlo> Your à is the same as my Ã; both display as box-C here.
03:29:55 -!- AnMaster has quit (Read error: 104 (Connection reset by peer)).
03:29:58 <oerjan> curious. i'll leave this to the actual experts.
03:30:54 <kerlo> Mmkay.
03:39:43 -!- AnMaster has joined.
03:46:28 <MizardX> My guess is that the [c] is a replacement character for symbols not representable in the font you are using...
03:49:05 -!- olsner has joined.
04:22:14 -!- Slereah has joined.
04:23:14 -!- Slereah2 has quit (Read error: 60 (Operation timed out)).
04:47:09 -!- X-Scale has left (?).
04:51:16 -!- Sgeo has joined.
05:06:02 -!- oerjan has quit ("leaving").
05:38:27 -!- ab5tract has joined.
05:38:48 -!- ab5tract has quit (Client Quit).
05:57:34 -!- psygnisfive has joined.
05:58:27 -!- psygnisf_ has joined.
05:58:38 <psygnisf_> hey bois :D
06:07:56 <bsmntbombdood> gurls
06:08:29 <psygnisf_> theres no girls here :P
06:14:21 <bsmntbombdood> http://pastebin.ca/1323277
06:14:28 <bsmntbombdood> everybody read that and tell me what you think
06:16:28 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
06:22:58 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
07:29:27 -!- Slereah2 has joined.
07:36:04 <Ilari> bsmntbombdood: It is easy to hand read-only snapshot of file or directory tree, but how to share something read-write?
07:36:29 <bsmntbombdood> you don't
07:41:56 -!- Slereah has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:17:04 -!- sebbu2 has joined.
08:18:42 -!- SpaceManPlusPlus has joined.
08:19:07 -!- SpaceManPlusPlus has quit (Client Quit).
08:22:02 -!- Mony has joined.
08:34:14 -!- sebbu has quit (Read error: 110 (Connection timed out)).
08:43:44 -!- BeholdMyGlory has joined.
08:50:04 -!- BeholdMyGlory has quit ("bye").
08:50:28 <psygnisf_> bwahahahaha
08:50:30 <psygnisf_> http://www.mitpressjournals.org/doi/abs/10.1162/ling.2006.37.2.271
08:51:05 <psygnisf_> Optimality Theoretic models of phonology are NP-hard, while normal rule-derivation phonologies are P.
08:51:07 <psygnisf_> bwahaha
08:51:12 <psygnisf_> fuck you optimality theory :)
08:56:42 <Ilari> Probably optimality theoretic models can express more phonologies than rule-derivation...
09:04:09 -!- MigoMipo has joined.
09:04:26 -!- GreaseMonkey has quit ("Client Excited").
09:12:26 <psygnisf_> ilari, they can express different ones.
09:13:04 <psygnisf_> but there are some mindnumbingly trivial rules that OT has a bitch of a time with, but that rule-derivation handles with hardly any interesting effort at all.
09:14:08 <lament> i'd go with whichever one makes more sense
09:14:23 <psygnisf_> that'd be rule-derivation :p
09:14:26 <psygnisf_> OT is like
09:14:39 <lament> ot is a bit weird yeah
09:14:48 <psygnisf_> "ok, so you've got these constraints, right"
09:14:57 <psygnisf_> "and then you generate an INFINITE number of candidates, see"
09:15:17 <psygnisf_> "then you filter out candidates until you have one that violates the least constraints. tada!"
09:17:34 <lament> 'and then you pick the one you like the most out of a bunch of equally likely candidates'?
09:17:44 <psygnisf_> i guess.
09:18:01 <psygnisf_> its not very informative, to be honest.
09:18:36 <lament> is any linguistics outside phonetics?
09:18:44 <psygnisf_> yeah?
09:18:46 <psygnisf_> this isnt phonetics
09:18:49 <psygnisf_> this is phonology, for one. :P
09:20:26 <lament> exactly!!
09:21:12 <psygnisf_> what?
09:21:41 <psygnisf_> personally i find phonetics and phonology to be boring
09:21:55 <psygnisf_> i go for syntax/semantics, personally.
09:25:30 <lament> what field of linguistics, outside phonetics, has produced anything of value?
09:25:34 <lament> (to linguistics)
09:26:02 <lament> syntax is ridiculous
09:26:09 <lament> it's a joke science
09:26:16 <oklopol> o
09:26:16 <psygnisf_> i dont think you know much about it sir :)
09:29:20 <psygnisf_> why do you say it's a joke science, lament
09:32:16 <MizardX> http://www.aiforge.net/ - website about programming games ... most interesting one I've found (only got to M in the list so far) is Fleet Commander, which happen to be mentained by the site owner
09:33:17 <MizardX> 90% of the games is about controlling a single robot, using some low level interface...
09:35:58 <oklopol> wow cool
09:44:15 <lament> psygnisf_: i guess i just mean the theoretical part
09:45:18 <psygnisf_> yeah but why do you say that
09:46:00 <lament> because it hasn't done anything of value :)
09:46:18 <psygnisf_> what is "of value"?
09:46:40 <psygnisf_> i'd say it's done LOTS of value. if you care about the workings of grammar.
09:47:26 <lament> it produced a bunch of toy models of varying complexity
09:47:39 <psygnisf_> such as?
09:48:01 <psygnisf_> im skeptical about whether you actually know what syntax is actually doing
09:48:07 <psygnisf_> i mean, toy models? which ones?
09:48:12 <psygnisf_> describe why they're toy models.
09:50:45 <lament> um, they don't work?
09:50:59 <psygnisf_> sure they do
09:51:06 <lament> they don't come close to reflecting the reality
09:51:08 <psygnisf_> they work wonderfully.
09:51:21 <lament> okay.
09:51:32 <lament> nevermind then.
09:51:41 <psygnisf_> i eman, cmon, what models do you perceive as toy models?
09:51:58 <psygnisf_> just name three, and give examples of how they fail to reflect reality
09:52:48 <psygnisf_> and why that single failure justifies them being toy theories, while other theories, like say quantum mechanics, also have glaringly obvious inabilities to reflect reality that don't qualify them as toy theories.
09:53:57 <lament> quantum mechanics has awesome predictive power and important real-world applications
09:54:04 <psygnisf_> it does!
09:54:13 <psygnisf_> but so do the various theories of syntax. :)
09:54:20 <lament> oh?
09:54:21 <psygnisf_> im still waiting for your examples.
09:54:55 <psygnisf_> oh indeed.
09:55:19 <psygnisf_> but cmon, what are YOUR contentions
09:55:28 <psygnisf_> since thats really the issue here.
09:56:02 <lament> any theory which tries to treat language as a formal system (generative grammar) is laughable
09:56:08 <psygnisf_> why?
09:57:09 <oklopol> cuz ppl are ppl they aren't no machines...............
09:57:22 <psygnisf_> oklopol you certainly are
09:57:25 <lament> because languages are obviously not formal systems
09:57:25 <psygnisf_> beep boop
09:57:26 <psygnisf_> :O
09:58:47 <psygnisf_> lament: i'd say languages obviously ARE formal systems
09:58:57 <psygnisf_> they sure as hell look it to me
09:59:09 <lament> really, you think that?
09:59:12 <lament> interesting
09:59:31 <psygnisf_> i've seen the data. all sorts of crazy shit that you dont realize until you actually dive into it
10:00:06 <psygnisf_> ridiculous things like purely tree structural relations that govern the acceptability of the use of this kind of pronoun or that kind of expression
10:00:32 <psygnisf_> you dont realize how insanely formulaic and well defined language is until you study it
10:01:34 <psygnisf_> granted, there are all sorts of complications when you get into use of language vs. structure of the utterances, e.g. pragmatics, but even THAT has so many amazingly well defined, systematic ways of operating
10:01:57 <lament> err
10:02:09 <psygnisf_> youre european, right?
10:02:10 <lament> what's the difference between language and structure of utterances?
10:02:32 <psygnisf_> well no no, the diffrence is betwen the act of using an utterance, and the utterance itself
10:03:45 <psygnisf_> the utterances themselves, ignoring things like false starts, and other illformed things, are fairly well defined formal systems, and the way you use them is also fairly well defined.
10:04:23 <psygnisf_> they're by no means perfectly understood, but it's not as tho we're just dicking around with silly theories that dont really reflect anything in the language.
10:04:33 <lament> is human behaviour a formal system?
10:05:46 <psygnisf_> well, at some level, undoubtedly. and the more you look at experimental psychology the harder it becomes to /not/ think of human behavior as a very neat, computational system.
10:10:04 <psygnisf_> where are you from, lament? which country?
10:11:27 <lament> it's a difficult question
10:12:19 <oklopol> he's russocanadian
10:12:32 <psygnisf_> where do you LIVE, lament. :P
10:12:37 <oklopol> would be fun to study human social interaction as a formal system
10:12:40 <oklopol> canada
10:13:34 <oklopol> or well theoretical social interaction, i'm not interested in how humans do it specifically, just in general
10:13:37 <psygnisf_> also, regarding human behavior as a formal system, its basically inescapable unless you believe in a soul. if everything is material, of a sort, then all there is is what amounts to a formal system of enormous scale. even at the level of neurons its obviously necessarily formal, in a sense.
10:14:11 <psygnisf_> neurons dont know. neurons are just neurons. they're signal processors and the signals have no meaning, outside of the context of the system that they're used in, namely, the brain.
10:14:13 <oklopol> studying game of life as a formal system on a macroscopic level would be pretty stupid
10:14:37 <oklopol> even though it's fairly well defined
10:14:40 <psygnisf_> ive been interested in trying to explore a formal model of memetics
10:16:36 <psygnisf_> well, semi-formal. something that explores the ways in which the smallest memetic items combine and interact
10:16:54 <psygnisf_> but! i must be off to bed.
10:17:04 <oklopol> have funnn
10:18:00 <psygnisf_> lament, if you can think of an example of why you think modern syntactic theories fail, or even if you can just name one that you don't like, do mention it. it'd be more substantial and worthwhile than just a proclamation of invalidity. :)
10:18:02 <psygnisf_> night :D
10:19:22 <oklopol> lament belongs in the ehird category of not having to justify your opinions because they right anyway. lament is just a bit older and lazier.
10:19:28 <oklopol> *they're
10:19:56 <oklopol> i think he mentioned he's like 2 already
10:20:03 <psygnisf_> and probably not quite as wrong as ehird tends to be. :)
10:20:20 <psygnisf_> but he seems to have no clue even what modern syntax is like.
10:20:23 <psygnisf_> anyway, really, im off.
10:20:32 <oklopol> well, why would he.
10:20:34 <oklopol> yes
10:20:35 <oklopol> byes
10:24:03 -!- MigoMipo has quit ("QuitIRCException: MigoMipo out of IRC").
11:25:48 -!- Slereah has joined.
11:39:09 -!- Slereah2 has quit (Read error: 110 (Connection timed out)).
13:08:42 -!- kar8nga has joined.
13:28:42 -!- jix has joined.
13:37:15 -!- AnMaster has quit ("ZNC - http://znc.sourceforge.net").
13:48:00 <ehird> <AnMaster> ehird, well did he answer then or?
13:48:05 <ehird> The previous question: slowness.
13:48:08 <ehird> This: idiocy.
13:51:26 -!- impomatic has joined.
13:51:30 -!- AnMaster has joined.
13:56:11 <impomatic> Has befunge.org moved, or just disappeared?
13:56:45 <ehird> 13:56 <ehird> Fizzie from #esoteric owned it.
13:56:45 <ehird> 13:56 <ehird> It just pointed to his site, zem.fi.
13:56:46 <ehird> 13:56 <ehird> He let the reg drop sometime this year.
13:56:48 <ehird> 13:56 <ehird> I might register it.
13:56:50 <ehird> crossposting woo
13:57:53 <impomatic> Sorry :-/
13:58:03 <ehird> s'ok :P
14:09:33 <AnMaster> hm
14:09:48 <AnMaster> I wonder if you could use setcontext/getcontext to implement co-routines in C?
14:15:12 -!- CakeProphet has joined.
14:20:32 <ehird> YES.
14:20:33 <ehird> *Yes.
14:20:36 <ehird> They are also continuations.
14:51:35 <SimonRC> headline: Google sneezes; Internet catches cold
14:51:59 <SimonRC> their bad-website-spotter has started saying everything is potentially malicious
14:52:29 <ehird> yep...
14:52:40 <ehird> http://www.google.com/interstitial?url=http://www.google.com/
14:52:43 <ehird> click 'n lol
14:53:03 <AnMaster> google fail
14:53:06 <AnMaster> yes
14:53:23 <AnMaster> ehird, wonder how soon they will correct it
14:54:20 <ehird> http://www.reddit.com/r/technology/comments/7tutu/google_is_marking_every_site_as_malicious/
14:54:23 <ehird> Capitalise time!
14:54:53 <SimonRC> ehird: fucking hell that's quick
14:54:59 <ehird> :)
14:55:28 <ehird> <me> "copyright infringement is not theft."
14:55:31 <ehird> <idiot> "yup, and oral sex is not really sex."
14:55:40 <ehird> I like the analogy apart from the part where it makes no sense whatsoever.
14:57:00 <AnMaster> ehird, http://digg.com/tech_news/Someone_is_about_to_get_fired_at_Google
14:57:01 <AnMaster> ;P
14:57:16 <ehird> digg?
14:57:24 <ehird> further confirming your intelligence, I guess.
14:57:25 <AnMaster> (hm, someone should digg a page on reddit that reddits the page that digg's reddit!)
14:57:31 <ehird> already done.
14:57:33 <ehird> it wasn't funny.
14:57:37 <AnMaster> ehird, I hate both reddit and digg
14:57:41 <AnMaster> and slashdot
14:57:52 <ehird> So why did you link me to digg?
14:57:58 <ehird> http://www.reddit.com/r/programming/comments/7tuou/google_thinks_reddit_is_an_attack_site_wtf/
14:58:00 <ehird> Aw, I'm too late.
14:58:03 <AnMaster> ehird, because I know you prefer reddit
14:58:10 <ehird> Uh huh.
14:58:15 <ehird> AnMaster: OS X!
14:58:21 <ehird> I said that because I know you prefer gentoo.
14:58:23 <ehird> ha ha ha
14:58:29 <AnMaster> wait a sec
14:58:32 <AnMaster> this could be fun
14:58:40 <AnMaster> http://www.google.com/interstitial?url=foo
14:58:48 <AnMaster> now to try HTML injection!
14:59:00 <AnMaster> "Your client does not have permission to get URL /interstitial?url=%3Cb%3Efoo%3C/b%3E from this server. (Client IP address: 90.130.2.10)" <-- damn
14:59:08 <AnMaster> wait
14:59:14 <AnMaster> that makes no sense
14:59:44 <AnMaster> hm
14:59:48 <ehird> If you think Google have an html injection on one of their most prominent pages (even before this bug), you're... rather deluded
15:00:02 <AnMaster> ehird, I was thinking it wouldn't work
15:00:05 <AnMaster> I was just trying
15:00:15 <AnMaster> I mean if it had worked it would have been awesome
15:00:28 <AnMaster> and would have made it first on reddit or such I bet ;)
15:00:45 <AnMaster> so worth trying I mean, slim chance
15:01:20 <SimonRC> you'd have thought that the reddit posters would check the existing 9999 stories on a topic before posting a new one
15:01:26 <SimonRC> sigh
15:01:26 <ehird> SimonRC: but but but KARMA
15:01:37 <ehird> also: wasn't there when I posted it.
15:01:40 <SimonRC> I don't know how reddit works
15:01:46 <ehird> AnMaster: 1) If by "awesome" you mean "boring and rather unexploitable"
15:01:52 <ehird> 2) I think that's more digg territory.
15:01:57 <AnMaster> ehird, http://xinutec.org/~pippijn/files/sc/osiris-20090131160126.png
15:02:09 <ehird> AnMaster: Ha ha ha, it's funny because it makes fun of microsoft!
15:02:11 <ehird> Ohohohohohohoho
15:02:32 <AnMaster> ehird, yeah I thought more sophisticated humor would be too advanced for you
15:02:33 <AnMaster> ;P
15:02:36 <AnMaster> bbl
15:02:44 <ehird> aha
15:02:45 <ehird> what's wrong is
15:02:48 <ehird> stopmalware.org is down
15:02:49 <ehird> and google use it
15:03:14 <ehird> ITT: One of the hugest companies evar completely relying on a third party service that isn't also huge:
15:03:18 <ehird> dumb
15:04:07 <ehird> let's all switch to cuil
15:04:13 <SimonRC> lolol
15:04:34 <ehird> Still not fixed.
15:04:36 <ehird> Jeez, how hard can it be?
15:04:44 <ehird> def is_malware(site):
15:04:46 <ehird> return False
15:04:51 <ehird> comment out the rest
15:04:53 <ehird> push to server.
15:04:57 <SimonRC> it's harder than that, obviously
15:04:59 <ehird> end-of-lack-of-profit
15:05:04 <ehird> SimonRC: why should it be? :P
15:05:16 <ehird> sure, that's not exactly a durable solution
15:05:23 <ehird> but, umm, when your whole search is completely disabled for everyone..
15:06:02 <SimonRC> I wonder why it doesn't assume things are safe instead
15:06:31 <ehird> because the idiots that added it presumably never thought it could ever go down.
15:06:37 <SimonRC> slashdot have it too
15:06:49 <ehird> they will be fired and will move to cuil :P
15:07:10 <ehird> Google Results Considered (Potentially) Harmful
15:15:19 * SimonRC eats food
15:16:12 <ehird> I do that sometimes too
15:16:16 <AnMaster> ehird, odd side effect of this: the cached links are gone
15:16:42 <ehird> This is an awful mess.
15:16:51 <ehird> hurry UP google.
15:17:03 <AnMaster> ehird, cuil is still alive?
15:17:12 <ehird> AnMaster: for some definitions of "alive"
15:17:22 <AnMaster> ehird, maybe no one noticed yet at the googleplex
15:17:25 <ehird> the traffic is near nil, they're financially fucked, ...
15:17:32 <ehird> AnMaster: Come on, I highly doubt that
15:17:37 <AnMaster> ehird, same
15:17:56 <AnMaster> Cuil
15:17:56 <AnMaster> This site may harm your computer.
15:17:56 <AnMaster> Search engine with results shown with images and a drill-down menu. General feature, webmaster and investor information.
15:17:56 <AnMaster> www.cuil.com/ - Similar pages -
15:17:56 <AnMaster> :D
15:19:12 <SimonRC> they're back
15:19:27 <ehird> nope
15:19:29 <ehird> still broken for me
15:19:31 <ehird> oh
15:19:32 <ehird> nope
15:19:34 <ehird> it's fixed
15:19:35 <ehird> YAY
15:19:53 <ehird> Losses: $50 million
15:20:22 <AnMaster> partly fixed yes
15:20:28 <AnMaster> ehird, source?
15:20:39 <ehird> AnMaster: Humanity's collective butt.
15:20:44 <AnMaster> ah
15:21:02 <ehird> I wonder how on earth this happened.
15:21:07 <ehird> I mean, surely they stresstest this thing.
15:21:46 <AnMaster> ehird, oh even google agreed the Swedish gov sucks: http://omploader.org/vMTZ6Nw
15:22:13 <ehird> AnMaster: does it censor the internet?
15:22:17 <ehird> if so, that's amusing. if not, meh.
15:22:40 <AnMaster> ehird, someone took a pic of searching for RIAA too btw
15:22:49 <ehird> that's not even funny.
15:22:54 <ehird> it says "This site may harm your computer"
15:22:57 <ehird> not "This site sucks"
15:23:44 <AnMaster> ehird, and yes Swedish gov wants to do that I believe. Swedish police makes the ISPs filter child porn at least, not sure about other stuff.
15:23:59 <AnMaster> ehird, and there was the FRA law
15:24:36 <AnMaster> <ehird> stopmalware.org is down <-- redirects to nist now?
15:25:17 <ehird> Huh.
15:25:24 <AnMaster> ehird, or did you mean stopbadware.org ?
15:25:27 <ehird> oh.
15:25:28 <ehird> yes.
15:25:33 <ehird> which is still down
15:25:34 <AnMaster> that explains it
15:25:36 <AnMaster> indeed
15:28:18 <AnMaster> ehird, oh I had paul graham in google search before and with that "this site may cause harm..."
15:28:25 <AnMaster> I found that quite amusing
15:28:26 <ehird> heh
15:28:37 <AnMaster> didn't take a screenshot though
15:28:40 <ehird> sun.com/java
15:28:41 <AnMaster> forgot that
15:28:46 <AnMaster> ehird, ?
15:28:47 <ehird> this site may cause harm to your computeromobile
15:28:56 <AnMaster> computeromobile?
15:28:57 <AnMaster> heh?
15:28:59 <ehird> yes.
15:29:03 <ehird> it's a computer. on wheels
15:29:05 <AnMaster> um
15:29:14 <ehird> think of the possibilities, man.
15:29:20 <AnMaster> ehird, I fail to see how that makes sense for "java"?
15:29:26 <ehird> it doesn't.
15:29:33 <ehird> the omobile was an afterthought
15:29:59 <Slereah> *homobile
15:30:38 <ehird> It's a computer. On wheels. With hos.
15:30:43 <ehird> Think of the possibilities. Man.
15:37:53 -!- X-Scale has joined.
15:40:57 <impomatic> Hi X-Scale :-)
15:41:01 <ehird> hi X-Scale
15:41:07 <ehird> haven't seen you here before?
15:42:26 <impomatic> X-Scale: I think I've seen you in #corewars ;-)
16:06:03 <X-Scale> Hello there, impomatic & ehird :)
16:06:12 <X-Scale> haha...yes...NorthStar :)
16:06:26 <X-Scale> #corewars ftw
16:13:53 -!- FireFly has joined.
16:22:24 <ehird> oklopol: i'm writing an oklotalk-- compiler. again :o
16:27:01 -!- Slereah2 has joined.
16:27:53 -!- Slereah2 has quit (Client Quit).
16:33:59 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
16:35:43 -!- Slereah2 has joined.
16:38:56 -!- Slereah has quit (Read error: 110 (Connection timed out)).
16:58:58 <oklopol> err google results showed pages as harmful for a while?
16:59:57 <oklopol> i don't see why anyone should care even if they went down altogether
17:00:37 <ehird> 1) yes, and so didn't let you click to them
17:00:43 <ehird> 2) because google is popular/useful?
17:00:47 <oklopol> ah.
17:01:02 <ehird> (you had to manually copypaste the URL to go somewhere)
17:01:24 <oklopol> or use another engine
17:01:44 <ehird> the other engines aren't particularly good
17:01:51 <oklopol> neither is google
17:02:56 <oklopol> the others were good enough back when i last used them ;) maybe they suck even more nowadays, dunno.
17:03:14 <oklopol> i've used only google for many years now
17:03:46 <oklopol> but i refuse to acknowledge i'm in any way dependant on it, therefore i refuse to understand why anyone would care about its problems.
17:03:49 <ehird> i think pattern matching will be oklotalk---compiling's downfall. _again_
17:03:58 <oklopol> heh
17:04:06 <ehird> i wonder if it's heretical to write an oklotalk-- parser that produces no errors.
17:04:16 <oklopol> hmm
17:04:28 <ehird> (a ]) actually parses the ] as a var name atm
17:04:33 <oklopol> umm. what errors could the parser produce?
17:04:35 <ehird> though i dunno what (a) would be
17:04:38 <oklopol> oh --
17:04:38 <ehird> atom (, atom a, atom )
17:04:42 <ehird> perhaps
17:05:20 <ehird> (a b c d parses as (a b c) d :D
17:10:20 <ehird> oklopol: what is your officially deemed parsing of (a)
17:15:15 <ehird> % python parse.py
17:15:15 <ehird> [('name', '('), ('name', 'a'), ('name', ')')]
17:15:16 <ehird> :D
17:15:36 <ehird> (a b (c) d)
17:15:37 <ehird> ->
17:15:39 <ehird> [('app', [('name', 'a'), ('name', 'b'), ('name', '('), ('name', 'c'), ('name', ')')]), ('name', 'd'), ('name', ')')]
17:15:44 <ehird> parses as
17:15:57 <ehird> (a b ( c )) d )
17:16:02 <oklopol> umm parsing opinions for hypothetical extensions of oklotalk--? :) how about you make oklotalk
17:16:03 <ehird> where a ( or ) surrounded by a space is the atom
17:16:15 <ehird> oklopol: making oklotalk is hard when there's no reference to implement it from :-D
17:17:05 <oklopol> yes, maybe it is somewhat unsimple.
17:28:06 <SimonRC> this is an excelently-done rpg parody: http://uk.youtube.com/watch?v=wwLrgxtALWs
17:28:29 <ehird> oklopol: can we have oktobot
17:28:40 <ehird> SimonRC: i watched that in 2007.
17:32:46 * ehird pirates mathematica!!
17:33:38 <ehird> oklopol:
17:38:18 <oklopol> ooo
17:38:25 <ehird> oklopol: oktabot
17:38:28 <ehird> plzzz :)
17:38:56 <oklopol> oooooooooooooooo
17:38:59 -!- oktabot has joined.
17:39:04 <oklopol> hello dar
17:39:21 <ehird> haihai
17:39:22 <ehird> :: $2
17:39:22 <oktabot> 2
17:39:26 <ehird> :: (+ $2 $2)
17:39:27 <oktabot> +
17:39:31 <ehird> lol ok, so it's 2 the name
17:39:32 <ehird> :D
17:39:35 <ehird> atom, rather
17:39:59 <oklopol> ya
17:40:25 <ehird> mathematica in 30 MINUTES :D
17:40:27 <ehird> oklopol: hokie
17:40:32 <ehird> writing parser, y'see.
17:40:42 <ehird> :: $()
17:40:43 <oktabot> An error: Unmatching parens @ row 1.
17:40:45 <ehird> lol :D
17:40:53 <oklopol> :: $(
17:40:53 <oktabot> (
17:40:58 <oklopol> mm
17:41:09 <ehird> :: $(a
17:41:09 <oktabot> (a
17:41:11 <ehird> :: $(a)
17:41:12 <oktabot> An error: Unmatching parens @ row 1.
17:41:15 <oklopol> $)
17:41:18 <oklopol> :: $)
17:41:18 <oktabot> )
17:41:21 <ehird> lol
17:41:21 <oklopol> ...
17:41:23 <oklopol> xD
17:41:46 <oklopol> wellllll you see i took the i don't care what happens in boundary cases approach.
17:41:55 <oklopol> because, well, it was kinda a language stub.
17:43:12 <ehird> huh
17:43:15 <ehird> I actually parse the same as you
17:43:22 <ehird> ) -> the atom ')'
17:43:29 <ehird> $(a) -> the atom '(a', then the variable name ')'
17:43:36 <ehird> well, you parse ) as a real close paren, I just parse it as a var name
17:43:39 <ehird> since there's no (
17:43:40 <ehird> xD
17:43:50 <ehird> making sense is not required, never erroring is.
17:44:16 <oklopol> :=)
17:44:49 <ehird> wonder how (->) should parse
17:44:52 <ehird> welllllllllllllllllllllll
17:45:01 <ehird> it'll parse as var (, var ->, var )
17:45:19 <ehird> (-> a) will prolly return $f.
17:45:34 <ehird> i mean
17:45:37 <ehird> when you run it
17:46:45 <ehird> hmm.
17:46:51 <ehird> oklopol: "$ a" parses as "the atom ' a'"
17:46:53 <ehird> feature or bug?
17:47:08 <ehird> ("$" parses as "the atom ''", so I was expecting (atom '', name 'a'))
17:47:52 <ehird> [('atm', ''), ('name', 'a')]
17:47:53 <ehird> tha's better
17:48:13 <oklopol> :: $ a
17:48:13 <oktabot> a
17:48:23 <oklopol> :: (+ $ a)
17:48:23 <oktabot> +
17:48:40 <ehird> lol :D
17:48:43 <oklopol> wait that didn't test anything.
17:48:46 <oklopol> well anyway
17:48:48 <ehird> no shit :D
17:48:50 <oklopol> i gotta go i thinks
17:48:51 <ehird> :: [$ a]
17:48:51 <oktabot> [ a]
17:48:57 <oklopol> exactly
17:48:59 <ehird> oklopol: did you ever impl nopol?
17:49:03 <oklopol> sure
17:49:09 <oklopol> nopol2, to be specific
17:49:10 <ehird> o rly??
17:49:12 <ehird> bot??
17:49:14 <oklopol> umm yeah
17:49:23 <ehird> i musta missed this
17:49:26 <ehird> :DDDD
17:49:37 <ehird> bot plz??
17:49:48 <oklopol> nopol has an object oriented bot 8|
17:49:56 <ehird> 8|
17:49:58 <ehird> rly?
17:49:58 <oklopol> wutwut
17:50:04 <oklopol> i thought i always use that same one :D
17:50:08 <ehird> lolz
17:50:36 -!- nopolie has joined.
17:50:38 <oklopol> hello dar
17:50:44 <ehird> hi nopolie
17:50:46 <ehird> whats ur prefix
17:51:02 <oklopol> ^parse :::
17:51:02 <nopolie> (+::: )
17:51:06 <oklopol> mmkay
17:51:17 <oklopol> ^parse <: <...> <::>>
17:51:17 <nopolie> (+ (+: (+... ) (+:: )))
17:51:21 <ehird> ^eval <>
17:51:24 <ehird> :<<
17:51:27 <oklopol> ^run <: <...> <::>>
17:51:27 <nopolie> global name 'rawunparse_' is not defined
17:51:30 <oklopol> :D
17:51:34 <oklopol> nice erroring
17:51:36 <ehird> :DDD lol
17:51:38 <oklopol> oh wait
17:51:50 <oklopol> was that the bot that got broken and i didn't fix it
17:51:55 <ehird> :D
17:52:05 <oklopol> i mean the nopol interp never errors iirc
17:52:50 <ehird> :.
17:53:01 <ehird> thassa smiley
17:53:03 <ehird> look at it sideways
17:53:13 -!- nopolie has quit (Read error: 104 (Connection reset by peer)).
17:53:34 -!- nopolie has joined.
17:53:37 <oklopol> no idea what i changed, but i'm optimistic about this.
17:53:41 <oklopol> ^run <:>
17:53:41 <nopolie> list index out of range
17:53:43 <oklopol> xD
17:53:50 -!- Judofyr has joined.
17:54:02 <oklopol> okay, i have unparse, unparse_ and rawunparse
17:54:11 <oklopol> (now what the fuck are those)
17:54:16 -!- CakeProphet has quit (brown.freenode.net irc.freenode.net).
17:54:16 -!- fungot has quit (brown.freenode.net irc.freenode.net).
17:54:16 -!- fizzie has quit (brown.freenode.net irc.freenode.net).
17:54:20 -!- nopolie has quit (Read error: 104 (Connection reset by peer)).
17:54:30 <ehird> such peer pressue
17:54:31 <ehird> pressure
17:54:33 <ehird> it saw a netsplit
17:54:36 <ehird> and had to go alongwith it
17:55:31 -!- nopolie has joined.
17:55:35 <oklopol> let's try one more random thing
17:55:37 <ehird> ^run <:>
17:55:38 <nopolie> list index out of range
17:55:41 <oklopol> :|
17:55:44 <oklopol> well fuck you
17:55:45 <ehird> sorry to ruin your hopes and ruin your dreams
17:55:46 <ehird> :(
17:58:22 -!- sebbu2 has changed nick to sebbu.
17:59:12 <oklopol> well. maybe i'll look into that some day. i don't remember what was broken about it, and i'd have to debug to find out.
17:59:21 <ehird> :<<
17:59:30 <ehird> ^parse :<<
17:59:30 <nopolie> (+: (+ (+ )))
17:59:52 <oklopol> so um parse works
17:59:59 <oklopol> and
18:00:00 <oklopol> err
18:00:03 -!- CakeProphet has joined.
18:00:13 <oklopol> unparse works too
18:00:27 <oklopol> so somehow after evaluation the code has changed its structure
18:00:28 <oklopol> ...somehow
18:00:31 <oklopol> well
18:00:33 <oklopol> i don't care
18:00:37 <oklopol> i mean i do
18:00:38 <oklopol> but i don't
18:00:41 <ehird> :<<
18:02:43 <AnMaster> what is the language?
18:02:51 <oklopol> nopol2
18:03:24 <AnMaster> I see. What sort of language is it? I guess there is no specs?
18:03:27 <AnMaster> are*
18:05:29 <ehird> it's nopular
18:05:38 <ehird> it has turing complete NOPs
18:05:41 <ehird> using negative-depth lists
18:05:46 <ehird> (a) is depth 1, ((b)) is depth 2
18:05:49 <ehird> it has depth -1, -2, etc
18:05:50 <AnMaster> ah this sounds familiar...
18:05:54 <ehird> a is depth 0, naturally
18:06:07 <AnMaster> is this an old one?
18:06:12 <ehird> basically, a negative depth list snatches all the elements around it to create a new positive list with its elements and those
18:06:15 <ehird> AnMaster: yeah
18:06:20 <oklopol> iz weird tree rewriting stuphs.....
18:06:29 <oklopol> old is yes quite.
18:06:34 <AnMaster> because this thing with nop and negative depth list sounds very familiar
18:06:42 <AnMaster> and one I remember confused me a lot
18:06:49 <oklopol> yeah ehird just didn't know i'd implemented it
18:06:52 <oklopol> apparently
18:06:56 <AnMaster> ah
18:07:03 <ehird> oklopol's languages are just awesome
18:07:05 <oklopol> of course, it seems i technically haven't implemented it anymore, because it doesn't work.
18:07:13 <ehird> happy australian mailman reminders day
18:07:25 * AnMaster opens mail client
18:07:33 <AnMaster> none yet
18:07:43 <ehird> i said australian
18:07:47 <AnMaster> ah
18:08:03 <oklopol> unfortunately the really insane ones refuse to be realized. except graphica. but for some reason people aren't interested in languages you can only use to create graphs.
18:08:04 <AnMaster> well I noticed lots of mailing lists sends the message one day late
18:08:13 <AnMaster> oklopol, oklotalk?
18:08:20 <oklopol> oklotalk-- isn't that insane
18:08:25 <AnMaster> hm ok
18:08:31 <oklopol> i implemented the sane subset with a semisane syntax
18:08:59 <ehird> Al/_:¨
18:09:12 <ehird> I wonder what A-hat and .. do
18:09:16 <oklopol> of course the way you can do imperative kinda control flow using pattern matching, and how things are functions and objects are kinda weird features.
18:09:18 <AnMaster> ehird, A hat?
18:09:18 <ehird> (Cise prime)
18:09:20 <oklopol> but, they aren't insane
18:09:21 -!- fizzie has joined.
18:09:22 <ehird> AnMaster: A with ^ on top.
18:09:25 <AnMaster> hm
18:09:26 <AnMaster> right
18:09:28 <ehird> Â
18:09:35 <AnMaster> ehird, that is A with 2 dots here..
18:09:46 <AnMaster> small font
18:09:50 <Deewiant> AnMaster: no, your font just sucks
18:09:53 <oklopol> ehird: encoding issue
18:09:57 <AnMaster> Deewiant, indeed that is the issue
18:09:57 <oklopol> should be just umlaut.
18:10:08 <ehird> ah
18:10:08 <Deewiant> Â has a caret
18:10:12 <Deewiant> Ä has an umlaut
18:10:16 <Deewiant> or diaeresis
18:10:22 <Deewiant> is what it's actually called IIRC
18:10:23 <ehird> the correct program is Al/_Ä
18:10:25 <oklopol> Al/_: <umlaut character>
18:10:30 <ehird> so what does Ä do, oklopol
18:10:32 <ehird> oh wait
18:10:33 <ehird> just the ¨
18:10:35 <ehird> not the A?
18:10:37 <AnMaster> ehird, and that is nopol?
18:10:38 <ehird> Al/_¨
18:10:42 <ehird> AnMaster: no, that's Cise
18:10:44 <oklopol> ehird: i think it's [0..n]
18:10:47 <ehird> which is oklopol's golfing lang
18:10:52 <AnMaster> ehird, oh I see
18:10:56 <ehird> AnMaster: brainfuck without IO in cise:
18:10:57 <ehird> ;I,;mc,[]{"[]"},=}!!b->"+"+mC1"-"-mC1">"+C1"<"-C1{;X}Wh=mC0=}X??b
18:11:07 <oklopol> or was it [1..n] or [0..n] based on whichever made more sense in context...
18:11:08 <AnMaster> ehird, more golfed than golfscript?
18:11:11 <ehird> yes.
18:11:14 <AnMaster> cool
18:11:16 <ehird> mergesort '/,)#<
18:11:18 <ehird> quicksort /2;A b:C,',JnB
18:11:27 <AnMaster> ehird, they should add on anarchy golf
18:11:32 <AnMaster> if it isn't there already
18:11:32 <oklopol> yeah sure
18:11:34 <ehird> no interp.
18:11:38 <oklopol> add it without an interp or a spec
18:11:38 <AnMaster> oh
18:11:42 <ehird> AnMaster: it actually tries all possible parsings (it's very ambiguous) and picks the one that uses types most "correctly"
18:11:52 <AnMaster> nice
18:11:59 <Deewiant> does it have a spec or anything?
18:12:05 <oklopol> there's a parser though, i just haven't implemented the less interesting parts
18:12:06 <AnMaster> ehird, so this is one instruction per char with jumps or such?
18:12:46 <oklopol> Deewiant: there's a small spec-kinda thing on my computer, but it's not public. but i'm planning to add specs to all the languages on /oklopol/ as soon as possible.
18:12:54 <oklopol> i mean
18:12:56 <Deewiant> roger roger
18:13:05 <oklopol> at lest the parts that exist in my head.
18:13:08 <oklopol> *least
18:13:12 <ehird> AnMaster: way more complex.
18:13:16 <ehird> it's funcitonal, sorta.
18:13:17 <ehird> *functional
18:13:27 <AnMaster> interesting
18:13:35 <oklopol> yeah functional, and ...pattern matchingal
18:13:50 <AnMaster> oklopol, well I like that
18:14:00 <AnMaster> pattern matching functional languages are fun to code in
18:14:01 <AnMaster> and easy
18:14:08 <AnMaster> usually at least
18:14:10 <SimonRC> hm
18:14:17 <oklopol> pattern matching is a crucial part of making it terse, you do stuff to input, cut it in parts with pattern matching syntax, and introduce assertions to guide the syntax-error backtracking, repeat
18:14:18 <AnMaster> but with that terse syntax, no idea
18:14:34 <AnMaster> oklopol, oh nice backtracking too
18:14:36 <AnMaster> :D
18:14:39 <AnMaster> TC I assume?
18:14:48 <oklopol> well there's that bf interp.
18:14:53 <AnMaster> ah yes
18:14:54 <AnMaster> forgot that
18:15:13 <SimonRC> ehird: did Ursala inspire that much?
18:15:19 <ehird> SimonRC: I don't think so.
18:15:35 <oklopol> AnMaster: the pattern matching is not easy. it's a mindfuck; but, let's hope you can read it in /cise.txt after a while.
18:15:51 <AnMaster> oklopol, /cise.txt where?
18:16:23 <ehird> http://www.vjn.fi/oklopol/cise.txt
18:16:30 <SimonRC> what is the topic all about?
18:17:03 <ehird> (= a)
18:17:04 <ehird> ->
18:17:05 <ehird> [('name', '('), ('name', '='), ('name', 'a'), ('name', ')'), ('name', ')')]
18:17:08 <ehird> SimonRC: Stuff that happens there.
18:18:08 <oklopol> okokokokokokokokokokokokokokokokokokokokokokokokokokokokoko
18:18:19 <oklopol> to be doing the happening
18:18:38 <ehird> ugh a bug.
18:19:33 <AnMaster> oklopol, um that link doesn't really explains how it works
18:19:53 <ehird> [('assign', ('name', 'a'), ('lst', [('int', 1), ('int', 2), ('app', [('name', '+'), ('int', 2), ('int', 2)])])), ('name', ']'), ('name', ')')]
18:19:54 <ehird> fail
18:20:01 <AnMaster> for example how does merge sort work '/,)#<
18:20:15 <AnMaster> oklopol, can you describe how it is parsed and executed
18:20:45 <oklopol> AnMaster: i can and i have, on this channel
18:20:53 <AnMaster> oklopol, where/when?
18:21:01 * AnMaster looks in scrollback
18:21:20 <AnMaster> oklopol, not recently?
18:21:34 <oklopol> AnMaster: don't remember; anyway seriously, i will try to spec up the languages enough to quench ppl's curiosity, once i have the time
18:21:44 <AnMaster> oklopol, right :)
18:21:44 <oklopol> currently all my non-irc time is pretty much university time.
18:21:51 <ehird> yay it works
18:22:04 <oklopol> AnMaster: nope not recently.
18:22:06 <ehird> (= a [1 2 (+ 2 2
18:22:08 <ehird> parses as
18:22:09 <oklopol> around the time it was invented
18:22:11 <ehird> (= a [1 2 (+ 2 2)])
18:22:13 <ehird> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
18:22:17 <AnMaster> oklopol, and that was?
18:22:27 <AnMaster> 2008?
18:23:16 <ehird> :: "\n"
18:23:24 <ehird> where da oktabot @
18:24:48 <ehird> omg omg omg 2 minutes tom athematica
18:24:49 <ehird> :DDDD
18:25:34 <Slereah2> Who is Tom Athematica, ehird?
18:25:45 <ehird> i wish i knew.
18:27:59 <ehird> OMG
18:28:03 <ehird> MATHEMATICA IS FREAKING MIIIIIINE
18:28:04 <ehird> ^___________^
18:28:20 <ehird> LET's try this |:
18:29:10 <MizardX> Image^2
18:29:19 <Slereah2> Yay
18:29:22 -!- oerjan has joined.
18:32:06 <ehird> OMG INSTALLING MATHEMATICA GUYZ
18:32:11 <ehird> bye bye 1.3GB
18:32:37 <oerjan> ehird: look at the positive side, you cannot lose your sanity - again
18:34:59 -!- kar8nga has joined.
18:48:03 <oerjan> also, if google's harmful site detection breaks, it should say so rather than choosing either true or false as default
18:48:44 <oklopol> MAYBE THEY CAN'T A CODE LOL :DDD
18:59:49 -!- impomatic has quit (Read error: 110 (Connection timed out)).
19:02:22 <AnMaster> oerjan, IWC was interesting today
19:02:27 <AnMaster> I wonder how/if that will develop
19:02:46 <oerjan> whew! i actually managed to read IWC before AnMaster commented on it :D
19:03:02 <AnMaster> oerjan, I read it around 15:00 or so every day
19:03:06 <AnMaster> why don't you?
19:03:57 <oerjan> i would, if that was about the time i logged on. but today it isn't.
19:06:12 <oerjan> usually i go email -> log on irc -> irc logs -> IWC, and the last days you managed to get me before i finish the logs
19:06:21 <oklopol> haha
19:07:14 <AnMaster> oerjan, just read IWC before irc?
19:07:17 <AnMaster> solves the issue neatly
19:07:42 <oerjan> um but irc is a continuous matter
19:07:49 <AnMaster> also darth and droids and square root of minus garfield of course (on those days)
19:08:00 <AnMaster> what?
19:08:41 <oerjan> oh well i guess it could work
19:08:49 -!- alex89ru has joined.
19:09:11 * oerjan read that domain as gesundheit.de
19:25:24 <AnMaster> ehird, there?
19:26:42 <AnMaster> http://googleblog.blogspot.com/2009/01/this-site-may-harm-your-computer-on.html
19:26:47 <AnMaster> if you haven't seen it already
19:28:11 <AnMaster> also it seems that stopbadware went down due to lots of people trying to access it after the issue
19:28:19 <AnMaster> so
19:28:53 <AnMaster> <oerjan> also, if google's harmful site detection breaks, it should say so rather than choosing either true or false as default <-- irrelevant since that wasn't the issue. The issue was according to google human error adding '/' as a bad url which for some reason matched all urls
19:29:41 <oklopol> ooooooooooooooooooooo
19:29:43 <AnMaster> http://blog.stopbadware.org/2009/01/31/google-glitch-causes-confusion (if that loads for you, seem to be very slow atm)
19:30:00 <AnMaster> lllllllllllllllllllll
19:30:15 <AnMaster> (as in several minutes load time)
19:30:42 <ehird> bacj
19:30:43 <ehird> back
19:31:09 <AnMaster> "[Update 1:36] Google updated its statement to reflect that StopBadware does not provide Google’s badware data."
19:31:10 <AnMaster> also
19:32:07 <ehird> MATHEMATICA TIME
19:32:15 <oklopol> mathe mathe maaaa
19:32:27 <ehird> pirated software is so... yummu
19:32:28 <ehird> yummy
19:33:07 <AnMaster> public logs
19:35:35 <ehird> umm, so?
19:35:59 <oklopol> you could be arrested
19:36:03 <oklopol> maybe even killed
19:36:04 <ehird> haha
19:36:10 <oklopol> (or worse)
19:36:31 <psygnisf_> za!
19:36:35 * ehird runs keygen ^.^
19:36:36 <psygnisf_> ehird
19:36:41 <ehird> uh oh
19:36:47 <psygnisf_> u want your opinion
19:36:52 <ehird> what
19:36:57 <psygnisf_> i*
19:37:08 <ehird> lalala
19:37:11 <ehird> parallels desktop
19:37:13 <ehird> keygen.exe
19:37:19 <ehird> You will not be able to start virtual machines until you activate Parallels Desktop. If you have a valid activation key, click Activate Product. You can find the activation key in the product box from a retail store or in the e-mail confirming your online purchase. Otherwise, purchase a permanent activation key or obtain a free trial activation key.
19:37:21 <ehird> fuck yooooooouuuuuu
19:37:30 * ehird gets another free trial lol
19:37:58 <AnMaster> ehird, what about free ones
19:38:03 <ehird> AnMaster: what
19:38:21 <AnMaster> I mean wouldn't qemu work just fine for something as simple as running a keygen?
19:38:31 <AnMaster> if it exists for OS X
19:38:34 <ehird> yeah but i'm used to parallels and I have windows already installed on it
19:38:36 <AnMaster> which iirc it does?
19:38:36 <oklopol> qeqeqeqeqeqe
19:38:38 * ehird boots up
19:38:38 <psygnisf_> what do you think i should include as a primitive operation in my language? i've got +-*/ and a generic substitute operation
19:38:41 <AnMaster> ehird, ok good point
19:38:59 <ehird> and parallels is kind of like winzip
19:39:03 <ehird> you can sign up for new free trial keys
19:39:03 <psygnisf_> plus predefined but not primitive logic operations
19:39:04 <ehird> forever
19:39:06 <oklopol> psygnisf_: have you considered (a xor b - 7)
19:39:15 <psygnisf_> why no, i haven't!
19:39:17 <AnMaster> psygnisf_, only one: substract and branch if not zero
19:39:33 <oklopol> golfing might be interesting for languages with complicated and somewhat random primitives.
19:39:49 <psygnisf_> that would make sense, anmaster, if there was an actual sequence of instructions to be followed.
19:39:53 <psygnisf_> but there isnt. :P
19:39:53 <AnMaster> oklopol, abbreviated intercal?
19:40:02 <ehird> WOULD YOU LIKE TO INSTALL PARLLELS INTERNET SECURITY POWERED BY KASPERSKY AND GET A FREE ANUAL SUBSCRIPTION?
19:40:04 <ehird> no, go away.
19:40:06 <AnMaster> psygnisf_, well what I described was OISC basically
19:40:13 <psygnisf_> i know :P
19:40:15 <oklopol> AnMaster: i'm thinking more randomize_instruction_set()->golf().
19:40:21 <oklopol> wait
19:40:26 <oklopol> *" -> " rather
19:40:33 <ehird> Unable to connect Floppy Disk 1.
19:40:34 <ehird> A file or device required for the operation of Floppy Disk 1 does not exist or is used by another process, or you have no permission to access it. The virtual machine will continue running, but the device will be disconnected.
19:40:37 <ehird> how will I do without a floppy!!11
19:40:54 <AnMaster> ehird, why would anyone need a floppy these days!?
19:41:01 <ehird> this is a VM floppy.
19:41:03 <AnMaster> well
19:41:05 <AnMaster> even so
19:41:05 <ehird> and, for running old stuff
19:41:05 <ehird> duh
19:41:08 <AnMaster> oh
19:41:09 <AnMaster> right
19:41:24 * ehird keygen.exe -->drag into parallels-->
19:41:25 <AnMaster> well, I thought *mac* users wouldn't need any floppy!
19:41:26 <AnMaster> ;P
19:41:37 <ehird> woop, it's just like all keygens
19:41:44 <ehird> it draws its own gray-on-black window
19:41:49 <AnMaster> ehird, you mean, built in spyware too?
19:41:50 <ehird> and has a demo with weird music and gfx in the top
19:41:56 <ehird> AnMaster: naw, hardly any keygens have tht
19:41:57 <ehird> *that
19:42:04 <ehird> it's very ... demoscene
19:42:10 <AnMaster> well that is common too
19:42:36 <AnMaster> ehird, I have a theory about that though...
19:42:42 <psygnisf_> also alternatively, what should i be considering for things like IO, since the language is lazy
19:42:45 <ehird> WOO
19:42:46 <ehird> IT WORKED
19:42:49 <AnMaster> It use the user reaction as random seed.
19:42:54 <AnMaster> that is, if a webcam exists
19:42:55 <ehird> psygnisf_: monads.
19:42:58 <ehird> AnMaster: ha, that would be fun
19:42:58 <psygnisf_> i dont want to construct the whole monad thing :|
19:43:05 <ehird> psygnisf_: it's two functions
19:43:16 <psygnisf_> monads a) confuse me, b) confuse me, c) confuse me.
19:43:30 <ehird> 1. understand them
19:43:31 <ehird> 2. profit.
19:43:39 <AnMaster> ehird, well that is the only plausible explanation of demos in keygens
19:43:40 -!- ski__ has quit (SendQ exceeded).
19:43:49 <ehird> AnMaster: why?
19:43:51 <ehird> it's all about scene cred
19:43:53 <AnMaster> ehird, hey you need at least three steps
19:43:57 <ehird> the cooler your keygen demo, the cooler your group.
19:43:59 <AnMaster> and one should be ???
19:44:07 <ehird> no, ??? is in fact "make internet meme"[1]
19:44:09 <ehird> [1] gaucho theory
19:44:25 <AnMaster> ehird, well I thought that was what you were trying to do
19:44:26 <ehird> and haskell nomads is already a /prog/ meme.
19:44:30 <ehird> so you can skip that step.
19:44:35 <MizardX> psygnisf_: You could evaluate those functions that call non-lazy (=I/O) functions immediately.
19:44:39 <AnMaster> ah
19:44:40 <AnMaster> ok
19:44:44 <psygnisf_> I was thinking that I could just have a universal variable that was defined at the beginning of each program execution called IO, and when you did like (read IO) it would evaluate to some new item that represented the next io state
19:44:44 <ehird> MizardX: or just evaluate the IO bits strictly
19:44:46 <ehird> my WIP lang has that
19:44:51 <ehird> it's rather complicated and non-intuitive
19:44:55 <AnMaster> ehird, /prog/? Does that actually exist on 4chan or whatever?
19:45:01 <ehird> AnMaster: it's a text board on 4chan
19:45:05 <ehird> i.e. no images
19:45:21 <AnMaster> mhm
19:45:28 <ehird> In[1]:= 2 + 2
19:45:29 <ehird> Out[1]= 4
19:45:32 <AnMaster> ehird, is it as silly as the rest of it?
19:45:32 <ehird> yay.
19:45:33 <psygnisf_> MizardX: yes, thats what i intend to do, the problem is more whether or not i want to consider side effects with IO given the laziness.
19:45:48 <ehird> AnMaster: rather.
19:45:59 <AnMaster> rather >what>
19:46:00 <AnMaster> err
19:46:04 <AnMaster> s/>/</
19:46:16 <AnMaster> (hey that almost looks like a smiley)
19:46:16 <ehird> rather silly.
19:46:19 <AnMaster> ah
19:46:45 <ehird> but, you know, they're [b][i][u][spoiler]EXPERT [spoiler]BB[sup]Code[/sup][/spoiler] PROGRAMMERS[/spoiler][/u][/i][/b] so it all balances out.
19:47:09 <AnMaster> ehird, I'm not very familiar with this markup language you use
19:47:17 <ehird> It's BBCode
19:47:20 <psygnisf_> ehird, any other things you think i should consider?
19:47:25 <AnMaster> oh that forum thing
19:47:39 <AnMaster> what does "[spoiler]" do?
19:47:47 <ehird> Makes it black on black text until you hover over
19:47:49 <ehird> and it becomes white on black
19:47:55 <ehird> I compiled it just for you:
19:47:55 <ehird> http://dis.4chan.org/read/prog/1233430884/1-40
19:47:58 <AnMaster> oh I just had an idea, a forum software using LaTeX for markup
19:48:00 <ehird> Needs CSS2.0(TM)
19:48:22 <MizardX> Easier with markdown
19:48:29 <AnMaster> "Specified thread ID does not exist"?
19:48:39 <ehird> AnMaster: that's the error it gave me when I didn't enter a subject.
19:48:42 <ehird> shiichan is... rather buggy.
19:48:42 <AnMaster> ah
19:48:50 <ehird> shiichan's bbcode even has comments.
19:48:54 <ehird> [rem]can't touch this[/rem]
19:49:00 <Slereah2> DID SOMEONE SAY SHII? (*__)
19:49:04 <AnMaster> ehird, um dis.*?
19:49:07 <ehird> AnMaster: discussion
19:49:09 <AnMaster> ah
19:49:16 <ehird> Slereah2: Quite. Btw, why is Mathematica's input method weird?
19:49:20 <ehird> When the cursor goes horizontal.
19:49:26 <Slereah2> Because it is shit
19:49:33 <ehird> Apart from that
19:49:48 <ehird> In[11]:= 1/0
19:49:48 <ehird> During evaluation of In[11]:= Power::infy: Infinite expression 1/0 encountered. >>
19:49:49 <Slereah2> Also beware : when you change something, you have to re-confirm EVERY LINE
19:49:49 <ehird> Out[11]= ComplexInfinity
19:49:53 <ehird> the 1/0 actually displays as
19:49:54 <Slereah2> If it's far back
19:49:54 <ehird> 1
19:49:55 <ehird> 1
19:49:57 <ehird> -0
19:49:59 <ehird> err
19:50:01 <ehird> 1
19:50:03 <ehird> -
19:50:05 <ehird> 0
19:50:07 <ehird> :D
19:50:38 <ehird> Slereah2: how come you have to press enter to complete
19:50:39 <ehird> not return
19:50:40 <ehird> :<
19:51:37 <ehird> AGH
19:51:40 <ehird> I defined x and now it's persisting
19:51:49 <X-Scale> I've done some Mathematica too and really hated it. They should have used scheme instead.
19:51:57 <ehird> Quite.
19:52:03 <ehird> I just wanna play with it for its graphical manipulation and stuff.
19:52:05 <AnMaster> <ehird> Slereah2: how come you have to press enter to complete <ehird> not return <-- ???
19:52:07 <ehird> The actual languagei s perverse.
19:52:11 <ehird> AnMaster: Well, shift-enter also words.
19:52:13 <ehird> but enter = numpad return
19:52:15 <ehird> on macs
19:52:26 <AnMaster> um didn't you have a laptop?
19:52:44 <AnMaster> also as far as I know they are the same key? Both generate same scancode I think
19:52:53 <AnMaster> actually scratch that
19:53:18 <ehird> AnMaster: Since when do I use a laptop?
19:53:28 <ehird> Also, yes, I believe so, but not in the GUI env.
19:53:32 <AnMaster> ehird, I thought you had a macbook of some type?
19:53:34 <ehird> They're distinguished quite often.
19:53:36 <ehird> AnMaster: no, iMac
19:53:39 <AnMaster> ah right
19:53:43 <ehird> which is a stupid name btw.
19:53:47 <ehird> i cringe whenever I type it.
19:53:48 <AnMaster> hm xev claims both generate the event KP_Enter
19:54:00 <AnMaster> wait no
19:54:02 <AnMaster> I misread
19:54:08 <AnMaster> gah
19:54:14 <AnMaster> hm indeed Return and KP_Enter
19:54:16 <AnMaster> interesting
19:54:33 <AnMaster> ehird, iAgree with you about the problem with the name iMac
19:54:46 <ehird> you think PHP's "just shit everything into the main namespace" is bad?
19:54:48 <ehird> mathematica has
19:54:51 <ehird> almost 3,000
19:54:53 <ehird> built in functions
19:55:04 <ehird> 3 0 0 0
19:55:07 <AnMaster> but php has namespaces now with \ iirc
19:57:01 -!- oerjan has quit ("Bussy").
19:57:08 <AnMaster> "Bussy"
19:57:09 <AnMaster> ?
19:57:13 <FireFly> Does complex numbers' square roots also always have two roots? (as with real ones)
19:57:28 <ehird> AnMaster: bus -sy
19:57:30 <Slereah2> Yes.
19:57:31 <ehird> as in, he's going to the bus.
19:57:34 <ehird> to go home.
19:57:34 <AnMaster> aha
19:57:35 <ehird> I assume.
19:57:39 <AnMaster> makes sense
19:57:42 <Slereah2> There are two square roots for all numbers, FireFly
19:57:51 <ehird> I have to admit... Mathematica is quite fun, even if it sucks.
19:57:54 <FireFly> Yeah, just wondering if it applies to complex ones too
19:57:57 <Slereah2> Because they are 180 rotations in the complex plane
19:58:00 <ehird> I mean, the glob of functions is just... fun.
19:58:10 <AnMaster> ehird, better or worse than php?
19:58:14 <Deewiant> ehird: it sucks?
19:58:21 <FireFly> Hm..
19:58:21 <ehird> AnMaster: Well, PHP isn't even fun.
19:58:34 <AnMaster> also what do you mean "glob of functions"? as in sq*() -> sqrt()?
19:58:34 <ehird> AnMaster: But like I said, Mathematica has *3,000* mainspace builtins.
19:58:39 <Slereah2> (R * e^if)^1/2 = sqrt(R) * e(if/2)
19:58:43 <ehird> glob = a gloopy heap
19:58:56 <ehird> gloopy: slimy, etc
19:59:00 <AnMaster> ehird, glob == wild card expanding, see jargon dictionary
19:59:03 <ehird> I know.
19:59:06 <AnMaster> but ok it means what you said too
20:02:47 <ehird> ArrayPlot[CellularAutomaton[30, {{1}, 0}, 50]] works.
20:02:48 <ehird> Neat.
20:04:00 <ehird> I'm not fond of the language, but the environment is neat.
20:04:21 <ehird> Of course, no way in hell I'd pay Wolfram thousands of pounds for it...
20:05:14 <X-Scale> yes, the whole package is powerful.
20:06:40 -!- yoR has joined.
20:06:57 <ehird> ColorNegate[
20:06:57 <ehird> ArrayPlot[CellularAutomaton[30, {{1, 0, 1, 0, 0, 1}, 0}, 50]]]
20:07:00 <ehird> hee, that works.
20:08:58 <X-Scale> ehird: try Maxima
20:09:15 <ehird> It uses Tk.
20:09:18 <ehird> Consider me unimpressed. :P
20:09:29 <ehird> What language does it use?
20:09:32 <ehird> Looks like a C-esque.
20:11:45 <X-Scale> I'm not sure. I know it's coded on Common Lisp.
20:13:59 <psygnisf_> lalala
20:14:41 <psygnisf_> that looks like it could be logo maybe. im fairly certain logo has wonky []-for-() stuff
20:14:43 <psygnisf_> same with tcl
20:14:59 <ehird> no.
20:15:02 <ehird> that's Mathematica.
20:15:06 <ehird> I was talking about maxima.
20:15:07 <psygnisf_> oh is it?
20:15:16 <ehird> btw, logo has [] as lambda
20:15:16 <psygnisf_> ah ok.
20:15:22 <ehird> tcl has [] as "evaluate this"
20:15:23 <psygnisf_> hm.
20:15:23 <ehird> that is
20:15:27 <ehird> + 2 [+ 3 3]
20:15:29 <ehird> or
20:15:31 <ehird> "hello [expr]!"
20:16:02 <AnMaster> hrrm, usenet is slow today
20:16:16 <AnMaster> or could be my ipv6 tunnel that is slow
20:16:40 <fizzie> Mathematica 6 is "only" 200 eur for students, and when you graduate you must upgrade it to the full version, but with a 75 % discount. (I think the student license used to be something significantly <200 back when it was 5.something.)
20:19:01 <ehird> #+2&/@{1,2,3}
20:19:02 <ehird> J or K?
20:19:04 <ehird> Nope. Mathematica.
20:19:20 <ehird> fizzie: I'm not sure they'd count me as a "student"
20:19:23 <ehird> also, that parses as
20:19:29 <ehird> ((# + 2) &) /@ {1,2,3}
20:19:36 <ehird> where & postfix is the "make a function yo" operator
20:19:40 <ehird> # is the first arg in a function
20:19:41 <ehird> and /@ is map
20:20:39 <ehird> (# + ## &)[2, 3] -> 7
20:21:06 <fizzie> Didn't it do #1, #2, ... too?
20:21:32 <ehird> yep
20:21:45 <AnMaster> interesting syntax
20:21:50 <AnMaster> quite esoteric
20:22:02 <ehird> fizzie: it also has ##2
20:22:06 <ehird> which I assume is the third argument.
20:22:24 <ehird> aha, wait
20:22:29 <ehird> (##1&)[1,2]
20:22:30 <ehird> ->
20:22:32 <ehird> Sequence[1,2]
20:22:33 <ehird> odd.
20:23:00 <fizzie> MATLAB has anonymous functions defined like @(a, b) a+b
20:23:13 <ehird> that's like so less fun though.
20:23:21 <ehird> a postfix operator that you give an expression is so much more... lulzy
20:24:07 <ehird> also, Function[x] == (x&)
20:24:13 <ehird> You can do the more "conventional":
20:24:17 <ehird> Function[x, x+2]
20:24:18 <ehird> And also
20:24:23 <ehird> Function[{x,y}, x+y]
20:24:32 <ehird> But #+##& is so much more fun, no?
20:26:13 <X-Scale> Mathematica syntax is ideal for all those brainf*ck lovers. :)
20:26:31 <ehird> Quite.
20:26:34 <X-Scale> I remember hammer it for hours till it worked.
20:26:35 <ehird> Hmm, I wonder how it does scoping.
20:28:06 <fizzie> Lexical or dynamic, depending on whether you use Module[vars, body] or Block[vars, body].
20:28:09 <ehird> Y[f] := Function[x, f[x[x][#] &]][Function[x, f[x[x][#] &]]]
20:28:22 <ehird> Excersize for the reader: remove the [f] and the Function parts, and make it all #s and &s.
20:30:18 <AnMaster> Excersize?
20:30:25 <ehird> Uh, I can't spell
20:30:26 <AnMaster> hah
20:30:26 <ehird> :p
20:30:33 <ehird> mathematica needs a "give me something to do" button.
20:30:36 <AnMaster> ehird, the typo was funny
20:30:47 <fizzie> Meh, MATLAB syntax is so crummy. I can't make it call an anonymous function without sticking it in a variable; the only form of function call is "name(args)", which must have a name in there.
20:31:05 <AnMaster> ehird, I can provide that: Solve one of unsolved the millennium problems
20:31:51 <ehird> :<
20:31:52 <Deewiant> ehird: Y[f] := (f[#[#][#2] &]&)(f[#[#][#2] &]&) ?
20:32:12 <ehird> Deewiant: hmm, so #2 works if it's the first argument?
20:32:15 <ehird> i mean, it 'remembers'?
20:32:18 <ehird> and stacks them?
20:32:27 <Deewiant> hmm, right
20:32:32 <Deewiant> not sure actually
20:32:38 <ehird> i mean that's be awesome if so.
20:32:41 <Deewiant> probably not
20:32:46 <Deewiant> I kinda misread what you were doing
20:33:00 <Deewiant> ehird: but anyhoo, you also need the LHS to say f_ and not f
20:33:07 <ehird> In[109]:= Sin[1000]
20:33:07 <ehird> Out[109]= Sin[1000]
20:33:11 <ehird> umm, thanks Mathematica
20:33:20 <Deewiant> ehird: most precise answer it can give.
20:33:25 <ehird> :-D
20:33:48 <AnMaster> Sin[]?
20:33:52 <fizzie> Well, you can just N[] it.
20:33:52 <AnMaster> weird notation
20:34:00 <ehird> AnMaster: [] is function call
20:34:07 <AnMaster> ehird, yes I find that weird
20:34:13 <ehird> it is weird.
20:34:19 <AnMaster> normally in math notation you just write sin 1000
20:34:25 <Deewiant> it's not "weird"
20:34:29 <Deewiant> it's unusual
20:34:32 <ehird> tru.
20:34:35 <Deewiant> but it is not, by any meaning of the word, weird
20:34:38 <ehird> AnMaster: That kind of fails when you nest anything
20:34:48 <ehird> it turns into lisp
20:34:51 <AnMaster> ehird, then you use ()
20:34:52 <Deewiant> ehird: works well enough in Haskell :-P
20:34:54 <AnMaster> as in
20:35:00 <AnMaster> sin(1000 * 2000)
20:35:02 <ehird> Deewiant: sure, but haskell doesn't have the massively-nested exprs mathematica does.
20:35:21 <Deewiant> ehird: sure it would if we didn't have . and $ :-P
20:35:26 <AnMaster> that reminds me, check out the channels #1,000 and #2,000
20:35:28 <ehird> tru tru
20:35:38 <ehird> AnMaster: umm, welcome to jackassville
20:35:41 <ehird> population++
20:35:47 <ehird> wtf made you think that was a good idea
20:35:53 <AnMaster> ehird, I would never think anyone here would fall for it
20:35:55 <AnMaster> ---
20:35:56 <AnMaster> -_-*
20:36:07 <ehird> i'm pretty sure not everyone here is an irc whiz
20:36:27 <AnMaster> well no one parted yet?
20:36:49 <AnMaster> proves I'm right
20:36:57 <Deewiant> what'd be special about those?
20:36:58 <AnMaster> and if someone does it now
20:37:04 <ehird> no, proves that nobody online is
20:37:12 <AnMaster> Deewiant, join 0 == part all channels
20:37:13 <ehird> 1. non-apathetic enough to try
20:37:17 <ehird> 2. not an irc whiz
20:37:18 <Deewiant> AnMaster: aha
20:37:20 <AnMaster> and join #1,#s
20:37:21 <AnMaster> so
20:37:30 <AnMaster> it turns into join #1 followed by join 0
20:37:37 <Deewiant> I always forget the syntax for joining multiple channels :-P
20:38:00 <AnMaster> Deewiant, a comma in between
20:38:07 <Deewiant> no shit
20:40:06 -!- Mony has quit ("Quit").
20:41:47 <ehird> "Based on original algorithms developed at Wolfram Research"
20:41:53 <ehird> I swear if I read this one more time I will kill somebody.
20:42:48 <Slereah2> Did you know that Wolfram Research proved that the 2,3 machine is TC?
20:43:15 <ehird> lulz
20:43:54 <ehird> (newbies: Wolfram Research ran a prize to prove that, #esoteric denizen ais523 did so.)
20:44:49 <AnMaster> Slereah2, they claim that?
20:44:56 <ehird> no
20:45:00 <ehird> he was making a "joke"
20:45:08 <ehird> an odd thing; it's a lie where people know it's a lie
20:45:12 <ehird> but it's a lie in a way that it's funny.
20:45:35 <Slereah2> It's funny because it's untrue
20:45:39 <ehird> (I figure if I explain humour enough times you're bound to catch on eventually)
20:45:57 -!- jix has quit ("Computer has gone to sleep").
20:46:04 <Slereah2> It's like love.
20:46:30 <lament> funny because untrue?
20:52:45 <ehird> ListAnimate[
20:52:45 <ehird> ArrayPlot @/ CellularAutomaton[GameOfLife, InitialGrid, 100]]
20:52:47 <ehird> Let's try this then.
20:52:54 <ehird> Fail :(
20:52:57 <ehird> It's /@.
20:53:03 <Deewiant> argh
20:53:08 <ehird> Now it works!!
20:53:09 <ehird> Woo!!
20:53:23 <Deewiant> I said that it's /@ before you noticed but I forgot to IRC-escape the /
20:53:28 <ehird> :DD
20:53:30 <ehird> Hrm....
20:53:34 <ehird> Now how do I make this infinite...
20:53:37 <ehird> As opposed to just 100 steps.
20:53:41 <ehird> Well, I guess I'll try passing Infinity.
20:53:46 <ehird> As I am blissfully naive
20:53:48 <Deewiant> You might run out of memory
20:53:53 <ehird> o_O
20:53:54 <ehird> Why?
20:53:58 <ehird> It only needs the previous state...
20:54:02 <Deewiant> I think it precomputes the whole thing
20:54:08 <ehird> ,,lol
20:54:11 <Deewiant> Something similar did, anyway
20:54:14 <Deewiant> Feel free to try
20:54:21 <ehird> Well hrm.
20:54:28 <ehird> I just need a sort of... transitionanimate.
20:54:33 <ehird> i.e., result becomes input
20:55:10 <Deewiant> Try that, it might work
20:55:17 <Deewiant> Or just raise it to 10000 first or something
20:55:20 <ehird> The Infinity thing?
20:55:21 <ehird> It phailed.
20:55:30 <Deewiant> meh
20:55:41 <ehird> 10,000 is just eating my memory up nicely.
20:55:49 <Deewiant> Thought so
20:55:57 <ehird> You crashed mathematica I think :<
20:56:07 <Deewiant> I didn't do anything, you did :-P
20:56:21 <ehird> You told me to :P
20:56:41 <Deewiant> It was more a suggestion than an order :-P
20:57:00 <ehird> u suk
20:57:23 <ehird> Duuuuuuuude
20:57:26 <ehird> You crashed the ENGINE
20:57:26 <ehird> !
20:57:27 <ehird> :|
20:57:33 <Deewiant> s/ENGINE/KERNEL/
20:57:37 <ehird> whatev
20:57:37 <Deewiant> Just quit it
20:57:47 <Deewiant> Or kill it if that doesn't work
20:57:47 <ehird> Yeah but now I lost my initial grid
20:57:48 <ehird> :P
20:57:55 <ehird> And my game of life spec
20:57:58 <Deewiant> You don't have to kill the UI
20:58:03 <Deewiant> Phool
20:58:03 <ehird> no
20:58:04 <ehird> it lost my vars
20:58:11 <ehird> when I quit the engine
20:58:20 -!- ais523 has joined.
20:58:24 <ehird> hi ais523
20:58:26 <Deewiant> It should still have whatever you typed in before
20:58:31 <Deewiant> Unless you deleted it, of course :-P
20:58:32 <ehird> Deewiant: notebook crashed
20:58:43 <ehird> ais523: I'm trying out mathematica.
20:59:17 <ais523> ehird: finally got your trial copy?
20:59:19 <ais523> anyway, I'm very busy in RL
20:59:28 <ais523> I've been very ill since Wednesday afternoon
20:59:32 <ehird> For values of trial copy equal to pirate.
20:59:34 <ehird> And oh dear.
20:59:41 <ais523> and haven't been able to do anything really, RL work or anything else
20:59:43 <ehird> What values of "very ill" are we talking?
21:03:00 <ehird> I'll take that as "high ones".
21:03:25 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
21:03:33 -!- ais523 has joined.
21:03:42 <ehird> Or perhaps "IRC problems".
21:06:48 <ehird> ais523: hi
21:11:02 -!- alex89ru has quit (Remote closed the connection).
21:11:53 -!- ais523__ has joined.
21:12:04 -!- ais523__ has changed nick to ais523_.
21:12:14 -!- ais523 has quit (Nick collision from services.).
21:12:16 -!- ais523_ has changed nick to ais523.
21:25:06 <oklopol> i like being sick, but i never am
21:25:09 <oklopol> well, i also hate being sick
21:25:17 <oklopol> depends who you ask.
21:25:53 <ehird> hi ais
21:25:55 <ehird> ais523:
21:28:33 <fizzie> oklopol: I'm sure they have some sort of pills to make you sick by now. Shouldn't be all that difficult.
21:30:08 -!- ais523_ has joined.
21:30:16 <ehird> hi ais523_
21:31:40 -!- ais523 has quit (Connection timed out).
21:32:09 <ehird> As you may have guessed, the wireless internet here is being really
21:32:10 <ehird> temperamental at the moment; I'm only getting a few seconds of
21:32:10 <ehird> connectivity every few tens of minutes. So I'm writing this in an email,
21:32:12 <ehird> and I'll set my mail client to send it to you the next moment I get a
21:32:15 <ehird> connection.
21:32:18 <ehird> ais523's connection is fucked up so he has to use batch mode communication.
21:33:50 -!- ais523_ has quit (Read error: 104 (Connection reset by peer)).
21:33:56 -!- ais523__ has joined.
21:35:18 <ehird> ais523__: are you reading this?
21:35:23 <ehird> I sent off a batch email summary.
21:35:28 <ais523__> ehird: yes, I'm reading that
21:35:31 <ais523__> not sure if you'll get my reply
21:35:35 <ehird> I see it.
21:35:40 <ais523__> but this connection's been stable for over a minute, possibly a record
21:35:44 -!- ais523__ has changed nick to ais532.
21:35:46 -!- ais532 has changed nick to ais523.
21:36:06 <ais523> lifting the laptop a metre off the floor seems to help
21:36:10 <ehird> ...
21:36:12 <ehird> wat
21:36:29 <ais523> and got your batch summary
21:37:26 <fizzie> Maybe you should switch to carrier pigeons, they sound more reliable.
21:39:10 -!- X-Scale has left (?).
21:43:14 <fizzie> I've always wanted to build a http://ronja.twibright.com/ (there's just something attractive about the idea) but I don't know anyone who'd live line-of-sight-nearby enough.
21:43:39 <ehird> ais523: Your connection still ticking?
21:45:20 <AnMaster> hello ais523
21:45:21 <ehird> I will take that as a "no".
21:45:24 <ehird> AnMaster: His connection is b0rked.
21:45:37 <ehird> He's also been ill since wednesday.
21:45:39 <ehird> Try email if you need to tell him anything.
21:45:44 <AnMaster> oh
21:46:05 <AnMaster> ehird, no was just going to chat aimlessly
21:46:05 <AnMaster> ;P
21:46:10 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
21:46:25 <ehird> doo doo
21:50:24 <psygnisf_> doo doo dee doo
21:50:34 <psygnisf_> ehird, since you think monads are so trivial, you explain them to me
21:50:38 <ehird> sure
21:50:45 <ehird> a is a type taking one argument
21:50:47 <ehird> return :: a -> m a
21:50:52 <ehird> -> is a function
21:50:58 <ehird> bind :: m a -> (a -> m b) -> m b
21:51:01 <ehird> tada
21:51:03 <psygnisf_> i know -> for type notations :P
21:51:04 <ehird> gonads.
21:52:57 <psygnisf_> and strife.
21:53:14 <ehird> also
21:53:21 <ehird> there's additional constraints:
21:53:30 <ehird> bind (return a) f
21:53:34 <ehird> must =
21:53:34 <ehird> f a
21:53:41 <ehird> bind m return
21:53:42 <ehird> must =
21:53:42 <ehird> m
21:53:51 <ehird> bind (bind m f) g
21:53:53 <ehird> must =
21:54:01 <ehird> bind m (\x -> bind (f x) g)
21:54:04 <ehird> tada.
21:54:46 <oklopol> yeah psygnisf_ behold the axioms of monads
21:54:54 <oklopol> and see.
21:54:57 <ehird> naw.
21:55:00 <ehird> the type sigs are the axioms.
21:55:00 <psygnisf_> wait what? bind m return == m?
21:55:05 <ehird> the constraints are the laws.
21:55:08 <ehird> psygnisf_: yes.
21:55:20 <psygnisf_> so return for monads is the id function
21:55:25 <oklopol> i don't see a difference
21:55:26 <ehird> not really
21:55:31 <ehird> psygnisf_:
21:55:32 <oklopol> or a similarity.
21:55:35 <ehird> return :: a -> m a
21:55:41 <ehird> bind :: m a -> (a -> m b) -> m b
21:55:43 <ehird> so
21:55:45 <ehird> if we do
21:55:47 <ehird> bind m return
21:55:51 <ehird> return gets the unwrapped value of m
21:55:54 <ehird> and wraps it again
21:55:59 <ehird> thus, (bind m return) must = m
21:58:28 * SimonRC finds it clearer with let x >>= f = bind f x
21:58:34 <ehird> no
21:58:37 <ehird> bind x f
21:58:39 <ehird> in mine
21:58:42 <SimonRC> oops
21:58:46 <ehird> I was just avoiding the symbolzz
21:58:46 <ehird> :P
21:59:01 <Slereah2> Symbolzz
21:59:06 <Slereah2> They have more shizzle
21:59:28 <SimonRC> Oddly, IO have just been learning about comonads. They are some of the things that look like you could make into a monad but turn out not to work really.
21:59:33 <SimonRC> s/IO/I/ X-D
21:59:34 <ehird> s/IO/I/
21:59:37 <ehird> snap
21:59:46 <SimonRC> heh
22:00:05 -!- ais523_ has joined.
22:00:17 <ehird> hi ais523_
22:00:20 -!- psygnisf_ has quit (Remote closed the connection).
22:00:21 <ais523_> yay, it actually stayed connected long enough for me to join the channel
22:00:25 <ais523_> and even see ehird say hi!
22:00:31 <ehird> woop woop!
22:00:38 <SimonRC> comonads are like bizarro-monads
22:01:13 <SimonRC> instead of having (a -> m a) and (m a -> (a -> m b) -> m b) as operations...
22:01:15 -!- psygnisfive has joined.
22:01:24 <ehird> ais523_: still thar?
22:01:35 <ais523_> yes
22:01:36 -!- psygnisf_ has joined.
22:01:37 <ais523_> I think
22:01:40 <ehird> yay
22:01:42 <SimonRC> they have (w a -> a) and ... erm...
22:01:45 <psygnisf_> ugh
22:01:51 <ais523_> fizzie: I agree, carrier pigeons would be more reliable, if slower on average
22:02:04 <SimonRC> ... w a -> (w a -> b) -> w b
22:02:04 <ais523_> SimonRC: looks a bit like a backwards monad
22:02:15 <psygnisf_> ehird if you said something after i mentioned binding m being id, i didnt get it
22:02:15 <psygnisf_> :(
22:02:20 <SimonRC> ais523_: hence me saying they are bizarro-monads
22:02:22 <Slereah2> ais523_ : Well, carrier pigeons could be faster
22:02:29 <ehird> psygnisf_: read the logs
22:02:32 <ehird> I explain it
22:02:43 <Slereah2> Like if a carrier pigeon carried an 8GB flash drive
22:02:51 <SimonRC> where for monads you can't easily "get things out of" them, for comands you can't easily "get things into" them
22:03:28 <SimonRC> there is no general function for (Comonad w) => a -> w a
22:03:36 <Deewiant> What kinds of things are comonads
22:03:47 <Deewiant> That is to say, do you have examples of them
22:03:47 <SimonRC> analogous to there being no general function for (Monad m) => m a -> a
22:04:29 <SimonRC> Deewiant: try here http://www.eyrie.org/~zednenem/2004/hsce/index.html
22:05:03 <ehird> "Yes, I am aware that this is an unlikely scenario."
22:05:28 <SimonRC> I am beginning to see how Data.InfiniteTree qualifies
22:06:12 <Deewiant> Okay, now is there a use case for these :-P
22:06:59 <SimonRC> maybe the idea is if you find yourself writing repetative code a lot, you might be able to spot that you need a comonad
22:07:24 <Deewiant> I'm having trouble thinking of use cases for those types
22:10:13 <SimonRC> I am asking about this on #haskell
22:12:02 -!- MigoMipo has joined.
22:14:23 <psygnisf_> ehird
22:14:28 <psygnisf_> the problame i guess is that like
22:15:38 -!- Judofyr has quit (Remote closed the connection).
22:16:01 <psygnisf_> i _get_ bind
22:16:08 <psygnisf_> and i _get_ return
22:16:53 <ehird> psygnisf_: but...
22:17:28 <psygnisf_> what i _dont_ get is.. wtf do i do with this shit
22:17:40 <ehird> well.
22:17:43 <ehird> for an IO monad
22:17:46 <ehird> wait, lemme type th is out
22:17:49 <psygnisf_> ok
22:17:51 -!- psygnisfive has quit (Read error: 110 (Connection timed out)).
22:18:15 -!- MigoMipo has left (?).
22:18:37 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
22:19:43 <psygnisf_> its more that ive never seen any explanation of wtf good monad's are. the form is trivial. bind just unwraps a value and applies a function that wraps it back up
22:20:04 <psygnisf_> in a sense, bind is a flat-map
22:20:06 -!- kar8nga has joined.
22:20:11 <psygnisf_> or thats how ive learned it
22:20:29 <ehird> psygnisf_: http://pastie.org/private/5dk2ijnlme4ikoghy5h0bw
22:20:32 <ehird> that's an IO monad
22:20:38 <ehird> there are more "theoretical" monads
22:20:44 <ehird> but that will get you pure IO in your lang
22:20:52 <ehird> another way is to build up a bind tree as the main value
22:20:54 <ehird> lazily
22:20:58 <ehird> and recurse through it
22:21:00 <ehird> performing the actions
22:21:53 <ehird> er
22:21:55 <ehird> return b(result);
22:21:56 <ehird> ofc
22:22:28 -!- ais523_ has quit (Read error: 110 (Connection timed out)).
22:22:53 <ehird> psygnisf_: basically, what a monad gives you there
22:22:56 <ehird> is that IO stuff can't "escape"
22:23:03 <ehird> you can't put IO into a function that doesn't return an IO value
22:23:03 <psygnisf_> o.o?
22:23:09 <ehird> due to the types of bind
22:23:14 <ehird> there's no way to go from (m a) to a
22:23:17 <ehird> permanently
22:23:20 <ehird> well
22:23:22 <ehird> if you have global variables
22:23:28 <ehird> but that's not purely functional any more either.
22:24:07 <psygnisf_> there are no real variables as such
22:24:13 <oklopol> ehird enjoys his warm monad pie
22:24:24 <ehird> psygnisf_: as long as you can't mutate global shit, IO is safe.
22:24:27 <psygnisf_> i enjoy ehirds warm monad pie too ;D
22:24:34 <ehird> :|
22:25:00 <psygnisf_> i mean, the language is a rewriting system, so its inherently nothing but state
22:25:00 <psygnisf_> but
22:25:32 <psygnisf_> at the same time, its just a rewrite system, so there are no variables in the normal sense that we think of variables, etc.
22:25:47 <oklopol> it's a real brain teaser
22:25:52 <psygnisf_> and theres certainly no mutation of those variables.
22:25:57 <oklopol> no sirrydoo
22:26:00 <oklopol> wait
22:26:03 <oklopol> i'm not contributing
22:26:04 <oklopol> sorry.
22:26:49 <oklopol> don't you just love it when you make a program that only has half an ass, and you hand it out as the course project
22:26:59 <oklopol> and then the prof sends you an email telling you how great you did in the exam
22:27:02 <psygnisf_> also, ehird, i dont know wtf that pastie is telling me
22:27:11 <oklopol> and says he's waiting eagerly to see how great my project was.
22:27:20 <ehird> i think psygnisf_'s main problem is that he doesn't understand english
22:27:31 <oklopol> psygnisf_: that you should use it wisely
22:27:43 <psygnisf_> i understand english fine. you're just not explaining anything :P
22:27:55 <psygnisf_> i need to see process to understand these things
22:28:11 <ehird> you asked a question, I answered it, shrug.
22:28:11 <psygnisf_> i need to see what the hell is going on as this thing is used to understand what it actually does
22:28:22 <ehird> it would help if your questions made sense
22:28:24 <psygnisf_> you answered it in a way that makes no sense, which amounts to not answering it at all.
22:28:41 <ehird> makes sense to me, ymmw
22:28:42 <ehird> *ymmv
22:28:55 <psygnisf_> yes but you understand monads already
22:33:52 <psygnisf_> i dont know. i dont think i can properly comprehend monads nevermind use them in this language.
22:33:58 <oklopol> monad pie getting cold?
22:34:04 -!- ais523 has joined.
22:34:06 <oklopol> a cool pie.
22:34:09 <oklopol> hi ais523
22:34:14 <oklopol> i'm feeling extremely insane atm
22:34:19 <oklopol> just fyi
22:34:26 <psygnisf_> i might just use impure IO stuff. i dont think it'd matter all that much, really.
22:34:37 <psygnisf_> oklopol: you're ALWAYS extremely insane
22:34:40 <ehird> is it lazily evaluate, psygnisf_?
22:34:43 <ehird> if so, don't even bother
22:34:45 <ehird> ais523: hi
22:34:47 <psygnisf_> it is lazy
22:34:57 <ehird> psygnisf_: then impure functions won't work
22:35:02 -!- jix has joined.
22:35:03 <psygnisf_> :\
22:35:29 <psygnisf_> well, i was thinking that IO stuff would force evaluation in the appropriate fashion.
22:35:42 <oklopol> psygnisf_: you can probably come up with semantics just as good as monads, maybe even essentially the same ones, just go for it.
22:35:54 <ehird> lol
22:35:58 <ehird> BELIEVE IN YOURESLF
22:36:00 <psygnisf_> i dont know how to go about that, oklopol.
22:36:18 <ehird> use your thinking machine.
22:36:19 <ehird> brain.
22:36:20 <ehird> you know.
22:36:20 <oklopol> psygnisf_: impure + solve problems if they occur.
22:36:22 <ehird> and think.
22:36:54 <oklopol> you could do like oklotalk, and evaluate lazily what (probably) has no side-effects :-)
22:37:05 -!- BeholdMyGlory has joined.
22:37:43 <ehird> I actually have semantics that let you have a 100% lazy, 100% impure system.
22:37:48 <ehird> They involve seeing. I've told oklopol about them
22:37:54 <psygnisf_> if i understoof monads i might be able to do something. but.. nobody explains monads adequately to me.
22:38:02 <oklopol> to see is to necessitate........
22:38:02 <ehird> It also means that pure equivalent programs can differ...
22:38:06 <psygnisf_> all i get is a bunch of "here are your axioms kthxbye"
22:38:09 <ehird> psygnisf_: ITYM "I don't understand them"
22:38:14 <ehird> Not our fault; your problem.
22:38:28 <psygnisf_> durr?
22:38:33 <psygnisf_> i didn't say it was your fault
22:38:39 <psygnisf_> stop being a defensive little cunt
22:38:55 <ehird> uh huh.
22:39:01 <ehird> "nobody explains monads adequately to me."
22:39:06 <psygnisf_> yes.
22:39:08 <psygnisf_> thats note blame
22:39:09 <psygnisf_> not*
22:39:23 <psygnisf_> its not "its your FAULT i dont get monads!"
22:39:26 <ehird> i never said it was blame.
22:39:32 <psygnisf_> sure you did
22:39:37 <psygnisf_> "Not our fault"
22:39:40 <psygnisf_> fault is blame
22:39:43 <oklopol> it's my fault, i broke the vase
22:39:53 <oklopol> so.
22:40:02 <oklopol> i think i should do some tunstall encoding now
22:40:34 <ehird> whoa you're coding nao?
22:40:36 <ehird> badum TISH
22:40:38 <oklopol> because clearly this ircing stuff isn't working.
22:41:07 <oklopol> haha LOL kinda like *programming* but then well i guess it's not lol :DDDD
22:41:18 <oklopol> .
22:41:25 <oklopol> bad oklo.
22:43:24 <ehird> ping ais523
22:43:57 <ais523> pong
22:44:39 -!- kar8nga has left (?).
22:47:35 <fizzie> My first association to "carrier pigeons could be faster" was "unholy scramjet-equipped cyborg-pigeons, an abomination against nature" and not "normal pigeons carrying flash drives".
22:47:48 <ais523> heh#
22:47:53 <ehird> fizzie: your mind is awesome.
22:48:06 <fizzie> I'm not sure if that's the word.
22:48:33 <ais523> why would scramjet-equipped cyborg-pigeons necessarily be an abomination against nature?
22:48:45 <ais523> they could have evolved, you know...
22:48:46 <ehird> ais523: I think asking that question makes you an abomination against nature.
22:49:06 <olsner> psygnisf_: don't worry about understanding them, start by just *using* them and understanding will appear
22:49:17 <ehird> olsner: he's trying to write a language.
22:49:25 <ehird> that is lazy. and IO.
22:49:47 <olsner> trying to write haskell? but that's already been written!
22:49:54 <ehird> it uses rewriting.
22:50:21 <olsner> understanding is over-rated anyways
22:50:25 <oklopol> fizzie: i was thinking painting pigeons black or white to encode 1/0.
22:50:43 <olsner> just breed them in two colors
22:50:43 <Deewiant> ais523: I think 'cyborg' implies 'not natural'
22:50:45 <ehird> oklopol: brilliant
22:50:48 <ehird> make them spotted.
22:50:57 <oklopol> why?
22:51:02 <oklopol> quantum pigeons?
22:51:08 <olsner> or use three colors, and encode in balanced ternary
22:51:34 <olsner> approx. half a bit extra per pidgeon!
22:51:35 <oklopol> well, quantum pigeons. no question about it.
22:51:52 <ehird> fizzie: I'm still laughing
22:52:48 <oklopol> there is no room for understanding in exact sciences.
22:53:09 <oklopol> which hacking undoubtedly is (unlike programming)
22:56:48 <ehird> kerlo's name is steve
22:57:09 <kerlo> ehird, you're just jumping to conclusions.
22:57:15 <ehird> yep
22:57:24 <kerlo> I'm using a computer that used to belong to someone named Steve.
22:57:58 <ehird> o
22:59:34 <olsner> kerlo killed steve and stole his computer
23:00:07 <kerlo> No, Steve is still alive. Killing him may still have been an effective way of receiving his computer, though.
23:01:02 <olsner> you're obviously in chock after killing steve, imagining him to still be alive
23:01:15 <olsner> and if you deny it you're in denial!
23:01:37 <SimonRC> ow ... head ... going ... to ... explode ... from ... comonads
23:01:42 * SimonRC eats pizza
23:02:23 <kerlo> That's a shame.
23:07:40 <ais523> * SimonRC eats pizza <kerlo> That's a shame
23:07:46 <ais523> a nice juxtaposition there
23:08:34 <oklopol> come on, ads
23:09:13 <oklopol> guess you could do comb-on ads
23:09:36 -!- ais523 has quit ("going home").
23:13:42 -!- X-Scale has joined.
23:30:15 <oklopol> X-Scale: i always read your nick as an action
23:30:25 * oklopol checks how similar it actually is
23:30:31 <oklopol> mm. not very.
23:32:46 <AnMaster> argh
23:32:53 <AnMaster> I'm away for an hour or so
23:32:59 <AnMaster> and way too much to read above
23:33:04 <oklopol> :-)
23:33:15 <oklopol> it's not that much.
23:33:31 <oklopol> o
23:33:32 <oklopol> o
23:33:32 <oklopol> o
23:33:32 <oklopol> o
23:33:33 <oklopol> o
23:33:34 <oklopol> o
23:33:36 <oklopol> o
23:33:39 <oklopol> if you know what song that was
23:33:42 <oklopol> then
23:33:43 <oklopol> umm
23:33:46 <oklopol> well, you won't know.
23:34:07 <AnMaster> afk
23:35:21 <kerlo> I'll sing a song, too!
23:35:22 <kerlo> oooo
23:35:22 <kerlo> oooo
23:35:23 <kerlo> ee
23:35:26 <kerlo> ii
23:35:28 <kerlo> oooo
23:35:29 <ehird> aaaaaaaaaaaaaaaaaaaaaxxxxxxxxxxx
23:42:41 -!- oerjan has joined.
23:49:02 <oerjan> 11:57:31 <ehird> as in, he's going to the bus.
23:49:02 <oerjan> 11:57:34 <ehird> to go home.
23:49:08 <oerjan> actually, away from home
23:49:11 <ehird> o
23:49:15 <ehird> but
23:49:16 <ehird> it's late
23:49:17 <ehird> is it not
23:49:25 <oerjan> indeed
23:49:33 * oerjan is back home now
23:49:40 <ehird> what does the bus do, then
23:50:00 <oerjan> home -> town, then later town -> home
23:50:07 <ehird> okay.
23:50:14 <ehird> ... town is open at this time?
23:50:15 <oerjan> well, approximately. there's also a small walk involved :D
23:50:31 <oerjan> it's a city
23:50:33 <oklopol> can towns be closed
23:50:34 <oklopol> ?
23:51:15 <oerjan> town ~= city center, in this usage
23:51:24 <oerjan> i guess "downtown" is more accurate
23:51:45 <oerjan> s/small/short/
23:52:15 <oerjan> also, my day schedule is completely chaotic, in case anyone hadn't noticed
23:53:52 <oklopol> chaotic is good
23:55:47 <oerjan> <FireFly> Does complex numbers' square roots also always have two roots? (as with real ones)
23:55:58 <oerjan> as Slereah2 said, except for zero.
23:56:20 <oklopol> i fought myself so hard not to make that useless addition :P
23:56:27 <oerjan> heh :D
23:56:57 <Slereah2> WHAT ABOUT -0
23:57:13 * oerjan swats Slereah2 -----###
23:57:16 <oklopol> also, you know, DID YOU KNOW YOU CAN GENERALIZE THAT FOR NTH ROOTS.
23:57:20 <oklopol> but NO. bad oklo.
23:57:30 <oerjan> yes i knew
23:58:02 <oklopol> i mean i almost said that.
23:58:11 <oklopol> but maybe you understood that.
23:58:36 <Slereah2> oklopol : nth root has n results
23:58:39 <oerjan> basically, x^n = y^n <=> (x/y)^n = 1, which means everything non-zero has exactly has many roots as 1 has
23:58:48 <oerjan> *as
23:58:57 <Slereah2> Each one being a rotation of 2pi/n in the complex plane
23:59:26 <oklopol> Slereah2: exactly, that's the trivial useless thing i managed not to tell firefly.
←2008-12 2009-01 2009-02→ ↑2009 ↑all