00:00:56 -!- GreyKnight has quit (Quit: Reconnecting…).
00:05:25 -!- GreyKnight has joined.
00:14:29 <oerjan> > (++ "!!") . (>> "AA") $ "Hello world !"
00:15:25 <oerjan> > fix$(<$>)<$>(:)<*>((<$>((:[{- thor's mother -}])<$>))(=<<)<$>(*)<$>(*2))$1
00:15:27 <lambdabot> [1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...
00:16:27 <oerjan> > let_in =let in'let'in=let in let in" let" in let in let
00:16:29 <lambdabot> <hint>:1:8: parse error on input `='
00:16:37 <olsner> the 'fix' is a bit annoying, would be nice to replace that with something that doesn't have letters
00:18:10 <oerjan> > let_in =let in'let'in=let in let in" let" in let in let let'in let_ _in = let_>>_in in in'let'in++ let in_let'in=let in " let in let" in let'in in_let'in in'let'in
00:18:12 <lambdabot> <hint>:1:8: parse error on input `='
00:18:34 <oerjan> oh wait it's a declaration
00:18:39 <elliott> oerjan: I don't see any lens here!!
00:18:44 <oerjan> > let let_in =let in'let'in=let in let in" let" in let in let let'in let_ _in = let_>>_in in in'let'in++ let in_let'in=let in " let in let" in let'in in_let'in in'let'in in let_in
00:18:46 <lambdabot> " let let let let let let let let let let let let"
00:19:11 <oerjan> elliott: how do you expect uncyclopedia to wrap their heads around lenses?
00:19:17 <lambdabot> Local time for Phantom_Hoover is Sun Dec 9 01:17:51
00:19:30 <oerjan> at least my conclusion i could ignore the indentation was correct.
00:20:07 <Phantom_Hoover> hey elliott is it twenty past one or twenty past midnight
00:21:30 <oerjan> it's twenty one past one hth
00:22:26 <oerjan> a true norwegian would use her actual name anyway... excuse me o moment...
00:24:16 <oerjan> darn Frigg is only his stepmother
00:25:42 <oerjan> ok after browsing wikipedia i conclude the reason is no one knows her name.
00:25:58 <GreyKnight> A true Norwegian would know her actual name
00:27:41 <oerjan> GreyKnight: http://www.youtube.com/watch?v=xECUrlnXCqk
00:28:08 <GreyKnight> I can't youtube on this connection really
00:28:34 <oerjan> maybe i can find something imgur
00:28:38 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:30:16 <oerjan> GreyKnight: http://images.wikia.com/uncyclopedia/images/1/13/Thats_the_joke.jpg
00:30:47 <oerjan> maybe this is the one time i should have used a url shortener
00:31:07 -!- Phantom_Hoover has joined.
00:31:58 * oerjan royally swatteth GreyKnight -----###
00:32:29 <olsner> the original version on uncyclopedia had "OH MY GOD IT'S A COMMENT!!!" in that comment
00:35:10 <GreyKnight> Are you going to add something ridiculous to their article to celebrate the successful creation of lens? (which I don't really understand, by the way)
00:35:41 <oerjan> GreyKnight: clearly that's elliott's job
00:36:11 <GreyKnight> you're appointing elliott to handle PR? Are you mad? :-o
00:36:11 <oerjan> there are only two people who understand lens, and edwardk is too busy
00:38:13 <oerjan> GreyKnight: elliott already handles PR, that's why we have so little
00:38:40 * oerjan swats himself -----###
00:38:40 <elliott> oerjan: you can atone for your meanness by opping me.
00:38:56 <oerjan> too late, i already swatted
00:39:57 <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it.
00:41:58 <fizzie> We have Perpendicular Recording.
00:41:58 <oerjan> no, "avoid success at all costs"
00:43:41 <GreyKnight> `addquote <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. <oerjan> "avoid success at all costs"
00:43:48 <HackEgo> 860) <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. <oerjan> "avoid success at all costs"
00:44:48 <GreyKnight> I only slightly touched up the last bit to remove all trace of my superfluous comment
00:45:11 <elliott> oerjan: please swat GreyKnight as his first introduction to the Quoting Standards
00:46:03 * oerjan swats GreyKnight -----###
00:46:34 <HackEgo> *poof* <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. <oerjan> "avoid success at all costs"
00:46:55 <oerjan> `addquote <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> "avoid success at all costs"
00:46:58 <HackEgo> 860) <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> "avoid success at all costs"
00:47:08 <elliott> oerjan: swat yourself for disobeying the quoting standards too!
00:47:33 <HackEgo> *poof* <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> "avoid success at all costs"
00:47:54 <shachaf> I recommend not adding that quote at all.
00:47:56 <oerjan> `addquote <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> [...] "avoid success at all costs"
00:47:59 <HackEgo> 860) <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> [...] "avoid success at all costs"
00:48:52 * oerjan swats himself -----###
00:52:14 <shachaf> oerjan: Are you saying that elliott doesn't understand lens or that I don't?
00:52:47 <olsner> shachaf: or perhaps that you and elliott are the same person
00:53:10 <shachaf> Or maybe that edwardk doesn't understand lens.
00:54:38 <oerjan> shachaf: i'm really just making an excuse to not attempt to understand them myself
00:54:52 -!- DHeadshot has joined.
00:54:57 -!- DHeadshot has quit (Remote host closed the connection).
00:55:06 <olsner> I think lens is missing a way to translate ursala pointer expressions into their corresponding lenses
00:55:14 <shachaf> oerjan: Do you understand mapM?
00:55:23 <shachaf> Do you understand Applicative?
00:55:26 -!- DHeadshot has joined.
00:55:32 <oerjan> shachaf: that wasn't a request to attempt to teach me, btw
00:55:48 <shachaf> The point is, you already understand lens.
00:56:21 <oerjan> no i very vaguely understand lens, which is something entirely different.
00:56:25 <GreyKnight> Unfortunately, nobody can be told what lens is. You have to see it for yourself.
00:57:35 <lambdabot> (Functor f, Indexable (Tape (h :> a)) k) => k (a -> f a) ((h :> a) -> f (h :> a))
00:57:43 <shachaf> focus isn't even lens-related.
00:57:51 <shachaf> ...Well, other than the fact that it's a lens.
00:58:18 <GreyKnight> <shachaf> focus isn't even lens-related. <-- can I quote that too?
00:58:29 <oerjan> I SEE SOMETHING MISSING
00:58:38 <shachaf> GreyKnight: I recommend not.
00:58:43 <shachaf> You need to develop taste.
00:59:01 <shachaf> oerjan: Hey, we're getting there!
00:59:07 <shachaf> Prisms were only added in the last release.
00:59:10 <lambdabot> No quotes for this person. I can't hear you -- I'm using the scrambler.
01:00:02 <oerjan> _why is slowly trawling the internet, removing all evidence he ever existed
01:00:21 <lambdabot> No quotes match. The more you drive -- the dumber you get.
01:00:27 <lambdabot> davidhasselh0f says: [on SPJ's "A Taste of Haskell" tutorial]: It's better than sex.
01:02:55 -!- greyooze has joined.
01:04:12 -!- GreyKnight has quit (Ping timeout: 250 seconds).
01:04:20 -!- greyooze has changed nick to GreyKnight.
01:05:46 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:07:47 -!- Phantom_Hoover has joined.
01:10:21 <zzo38> GreyKnight: I don't know.
01:11:03 <lambdabot> cheezey says: who is islands and why does my dick hurt
01:12:25 <oerjan> important questions, surely
01:14:41 -!- EgoBot has quit (*.net *.split).
01:15:06 <oerjan> they're coming for the bots again
01:16:58 <GreyKnight> Are HackEgo and EgoBot related? Cousins?
01:17:24 <zzo38> I think they are related.
01:19:49 -!- EgoBot has joined.
01:21:12 -!- TeruFSX_ has quit (Ping timeout: 265 seconds).
01:22:44 <oerjan> GreyKnight: they're both Gregor's, and i think they share some sandboxing code; he keeps meaning to merge them.
01:23:20 <Gregor> I don't merge them mainly because HackEgo is slow, and I'm too lazy to make elliott's patches to make it fast run on my server.
01:23:52 <oerjan> always with the strange reasons
01:25:33 -!- Nisstyre has quit (Read error: Connection reset by peer).
01:25:56 <Gregor> Really, REALLY what I'd like is for somebody to implement hgfs in fuse.
01:26:03 <Gregor> That would make everything perfect and wonderful.
01:29:55 -!- Vorpal has quit (Ping timeout: 260 seconds).
01:33:54 -!- Nisstyre has joined.
01:36:42 <GreyKnight> I'm vaguely surprised it doesn't already exist
01:38:45 <Gregor> Apparently http://code.google.com/p/hgfs/ now exists.
01:39:19 <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D
01:43:17 <oerjan> `addquote <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D
01:43:20 <HackEgo> 861) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D
01:49:04 -!- carado has quit (Remote host closed the connection).
01:51:14 <Gregor> Right, yeah. “Can't get the damned thing working.”
01:52:54 <oerjan> `run sed -i quotes '861s/$/ <Gregor> Right, yeah. “Can't get the damned thing working.”/'
01:52:57 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
01:54:04 <oerjan> `run echo '861s/$/ <Gregor> Right, yeah. “Can't get the damned thing working.”/'
01:54:08 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
01:54:21 -!- carado has joined.
01:54:30 <oerjan> `run echo '861s/$/ <Gregor> Right, yeah. \“Can't get the damned thing working.\”/'
01:54:34 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
01:54:40 <SingingBoyo> oerjan: I think the ' in can't is screwing you up
01:55:02 <oerjan> `run sed -i quotes '861s/$/ <Gregor> Right, yeah. “Can'"'"'t get the damned thing working.”/'
01:55:05 <HackEgo> sed: -e expression #1, char 2: extra characters after command
01:56:04 <oerjan> `run sed -i quotes -e '861s/$/ <Gregor> Right, yeah. “Can'"'"'t get the damned thing working.”/' quotes
01:56:19 <HackEgo> 861) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D <Gregor> Right, yeah. “Can't get the damned thing working.” <Gregor> Right, yeah. “Can't get the damned thing working.”
01:56:27 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
01:56:42 <HackEgo> 861) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D
01:57:16 <oerjan> `run sed -i quotes -e '861s/$/ <Gregor> Right, yeah. “Can'"'"'t get the damned thing working.”/'
01:57:25 <HackEgo> 861) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D <Gregor> Right, yeah. “Can't get the damned thing working.”
01:59:22 * oerjan thinks FireFly is used to something else -----###
02:02:55 <oerjan> `run sed -i quotes -e '861s/X-D /X-D [...]/'
02:03:09 <HackEgo> 861) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D [...] <Gregor> Right, yeah. “Can't get the damned thing working.”
02:03:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:03:50 -!- DH____ has joined.
02:21:40 -!- Phantom_Hoover has quit (Remote host closed the connection).
02:21:40 -!- DH____ has quit (Read error: Connection reset by peer).
02:21:46 -!- DHeadshot has joined.
02:27:03 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:27:08 -!- DH____ has joined.
02:35:49 <kmc> "European consumers of horse meat are increasingly suspicious of a supply chain that they fear contains drugs injected in American racehorses."
02:45:33 -!- sebbu has quit (Ping timeout: 245 seconds).
02:45:58 -!- evitable has joined.
02:46:35 <fungot> \o| |o| |o/ \m/ \m/ |o/ \o/ \o| \m/ \m/ \o| |o| |o/
02:47:19 <oerjan> \o| |o| |o/ \m/ \m/ |o/ \o/ \o| \m/ \m/ \o| |o| |o/
02:58:04 -!- sebbu has joined.
02:58:20 -!- sebbu has quit (Changing host).
02:58:20 -!- sebbu has joined.
02:58:54 -!- DH____ has quit (Read error: Connection reset by peer).
03:00:25 <shachaf> kmc: Did you end up getting that laptop thing?
03:02:31 -!- copumpkin has quit (Ping timeout: 252 seconds).
03:03:03 -!- copumpkin has joined.
03:12:07 <elliott> oerjan: hey should I update the wiki and fix the /// thing
03:12:20 <kmc> shachaf: which?
03:12:22 -!- GreyKnight has quit (Remote host closed the connection).
03:12:38 <kmc> you mean the laptop i ordered?
03:12:53 -!- GreyKnight has joined.
03:13:01 <shachaf> And then the order was cancelled, or uncancelled, or something.
03:13:38 <kmc> it is currently in a state of limbo
03:14:03 <kmc> lenovo's website (when it is not down) indicates that the order is due to be shipped in a week and a half
03:14:11 <kmc> and is currently "released to manufacturing"
03:14:15 <kmc> however the credit card got un-charged
03:14:21 <kmc> so i might get a free laptop
03:14:23 <kmc> or no laptop
03:14:31 <kmc> or a coffee can full of angry bees
03:14:48 <kmc> i think if it turns out that the order was cancelled again, and they neglected to notify me again
03:14:57 <kmc> then i can't really in good conscience order another lenovo laptop
03:15:02 <kmc> but i don't know what i will get
03:15:04 <shachaf> At worst your credit card will get recharged.
03:15:12 <shachaf> When was the last time you recharged your credit card?
03:16:25 <kmc> my current laptop basically works though
03:16:49 <kmc> it can even play 8 year old video games as long as it is not raining in the game
03:18:17 <elliott> virtual memory exhausted: Cannot allocate memory
03:18:21 <elliott> I like how I can't compile C++ programs.
03:20:44 <kmc> what about C/C++ programs
03:21:29 <oerjan> `addquote <kmc> my current laptop basically works though <kmc> it can even play 8 year old video games as long as it is not raining in the game
03:21:31 <HackEgo> 862) <kmc> my current laptop basically works though <kmc> it can even play 8 year old video games as long as it is not raining in the game
03:21:43 <oerjan> elliott: am i too much a sucker for quotes?
03:23:15 -!- Nisstyre has quit (Quit: Leaving).
03:23:58 -!- Nisstyre has joined.
03:24:01 <shachaf> elliott: The world is a better place with you not being able to compile C++ programs.
03:24:16 <oerjan> ooh, a radixal hello world already.
03:24:34 <oerjan> *radixal!!!! HELL0 W0RLD!
03:24:59 <kmc> radixal radish
03:27:15 <hagb4rd> "[..] concept of Lazy programming, a technique used to avoid telling the computer m is running, saving developers from needing to code things that won't be used." ..rofl
03:27:33 <hagb4rd> that is exactly what i need
03:28:16 -!- ogrom has joined.
03:28:45 -!- ogrom has left.
03:29:54 -!- Sgeo|UPDATE has joined.
03:39:32 -!- TeruFSX2 has quit (Quit: Leaving).
03:42:42 -!- GreyKnight has quit (Ping timeout: 264 seconds).
03:42:44 -!- Nisstyre has quit (Quit: Leaving).
03:46:07 -!- Nisstyre has joined.
03:46:16 -!- TeruFSX has quit (Ping timeout: 252 seconds).
03:51:55 <oerjan> "The paper you linked to, which I assume you wrote, is both poorly written and idiotic."
03:52:30 <oerjan> (comment on http://phys.org/news/2012-12-oxygen-nucleus-neutrons-shown-surprisingly.html)
04:03:56 -!- evitable has quit (Ping timeout: 276 seconds).
04:13:30 <monqy> http://vacuum-mechanics.com/ very good
04:16:49 <Sgeo|UPDATE> Is it an attempt to make GR and QM fit within a model that makes sense to a classical intuition?
04:18:34 <monqy> it's both poorly written and idiotic that's what
04:18:52 <shachaf> sounds like a good fit for this channel
04:19:21 <Sgeo|UPDATE> I'd call anything that meets what I described "idiotic"
04:19:29 <Sgeo|UPDATE> Although I guess not necessarily poorly written
04:20:00 <Bike> miscellaneous stupid question time, is "list of length 7" a type expressible in haskell
04:20:25 <shachaf> It might be awkward, though.
04:20:34 <shachaf> Here's one way: data L7 a = L7 a a a a a a a
04:21:19 <Bike> And that works with conses, [a] or whatever?
04:21:29 <Bike> or are L7 a and [a] disjoint.
04:21:34 <Bike> right, okay, thanks.
04:21:38 <shachaf> No, they're not the same type.
04:21:38 <oerjan> type L7 a = (a,(a,(a,(a,(a,(a,(a,())))))))
04:21:45 <monqy> sgeo....there are better ways to do that....
04:22:25 <oerjan> Bike: you cannot make useful subtypes of [a] in haskell
04:22:36 <elliott> Bike: you can also actually put the length in the type etc. it is awkward to use though. try agda
04:22:45 <oerjan> it's "not dependently typed"
04:22:48 <shachaf> type LUpto7 = Maybe (a, Maybe (a, Maybe (a, Maybe (a, Maybe (a, Maybe (a, Maybe a))))))
04:23:13 <monqy> sgeo have you ever heard of actually putting the length in the type etc.
04:23:42 <Bike> oerjan, elliott: got it, thanks, i should have asked that in the first place
04:23:45 <Sgeo|UPDATE> Not as an actual 7, but as some ... thingy
04:24:43 <oerjan> a type-level 7. recent ghc versions have support for interpreting a 7 as a type
04:24:52 <shachaf> oerjan: Except not really.
04:25:19 <oerjan> well, support for the syntax anyway
04:25:58 <oerjan> i hear they removed some of the ability to do arithmetic again
04:26:46 <oerjan> anyway, r/haskell time
04:27:12 <shachaf> Are you going to post your second post?!
04:27:53 <oerjan> a comment might happen.
04:28:26 <shachaf> oerjan: I heard there was a "pretty cool lens post"
04:33:18 <zzo38> I found the description of the PADsynth.
04:33:26 <monqy> shachaf: you're on the list
04:34:06 <HackEgo> 233) <Deewiant> My STRN.G detects runoff strings that haven't been terminated but would hit a zero after wrapping and tries to allocate the 16+-gigabyte-stack required
04:34:53 <HackEgo> 480) <elliott> IM FIST IN HEAD AND DONT KNOW TO SLEEP??????
04:34:55 <HackEgo> 536) <itidus20> according to physics and maths can we theoretically have a box with infinite cookies inside?
04:34:55 <HackEgo> 685) <shachaf> fizzie: What kind of speech recognition do you do? <shachaf> If you only need to recognize famous speeches, like Churchill or something, it should be pretty easy.
04:34:56 <HackEgo> 423) <fizzie> Deewiant: So you... reverse the byte order manually, but then call ntohl too? <Deewiant> fizzie: The host might be big-endian!
04:35:00 -!- TeruFSX has joined.
04:36:20 <shachaf> monqy: ok ok we can spare 685
04:37:46 <HackEgo> 860) <olsner> we have PR? <oerjan> the good news is we have PR. the bad news is we borrowed haskell's motto for it. [...] <oerjan> [...] "avoid success at all costs"
04:38:13 <oerjan> IT'S NOT A CANDIDATE DAMMIT
04:38:25 <HackEgo> *poof* <elliott> IM FIST IN HEAD AND DONT KNOW TO SLEEP??????
04:38:36 <shachaf> someone else can do 860 if they wants to
04:38:40 -!- Arc_Koen has quit (Quit: Arc_Koen).
04:39:05 <HackEgo> 242) <zzo38> If you want to use TeX formats invented by Christians, use Plain TeX. However, I do not think the religion of its author is a good way to decide what to use. I decide to use Plain TeX for its own reasons.
04:39:30 <shachaf> What's with the really long delay between the first quote and the next 4?
04:39:34 <HackEgo> 150) <Phantom_Hoover> It's only been 2 months since anyone last made a commit! <alise> WRONG 8 WEEKS
04:39:34 <HackEgo> 289) <zzo38> I think I managed to make Stack Overflow work on gopher, now.
04:39:45 <HackEgo> 687) <zzo38> When you die in Canada, you die in real life.
04:39:46 <HackEgo> 562) <elliott> The moon is a much better target for colonisation because it would be IRCable.
04:41:35 <monqy> 242 is the only really good one in this batch imo.......... and maybe 289 is good too? because of gopher....
04:42:05 <elliott> I like 289 and 242 and 687 (zzo38 making bad references makes them good references)
04:42:11 <zzo38> Yes, I agree those are good, 687 is not as good as the others.
04:42:26 <HackEgo> 38) <Dylan> actually, I pretended to be a hobo to get directions
04:42:34 <shachaf> someone needs to make 38 a zzo38 quote
04:42:57 <monqy> 687 is bad because i looked it up and it's from xkcd
04:43:00 <elliott> it's my least favourite of the bunch and would be so even if I didn't write it
04:43:14 <shachaf> 150 and 562 are both mediocre
04:43:37 <HackEgo> 226) <oerjan> (the former is a very deep theorem, i'd have had to read the whole book to understand it, so i didn't.)
04:43:43 <HackEgo> 805) <itidus21> ubuntu is the solaris of the cola world
04:43:45 -!- TeruFSX has quit (Ping timeout: 276 seconds).
04:43:48 <HackEgo> *poof* <elliott> The moon is a much better target for colonisation because it would be IRCable.
04:43:50 <elliott> made an eggsecutive decision
04:43:56 <HackEgo> 353) <monqy> Sgeo: also do you know how to write a parser <Sgeo> monqy, how hard could it be?
04:44:08 <HackEgo> 505) <elliott> we need more films aimed at the lucrative irc nerd demographic
04:44:14 <zzo38> Well, you can still refer properly by the date and quotation number together, since I think all changes are logged?
04:44:15 <monqy> shachaf what did you do
04:44:24 <HackEgo> 300) <pikhq> o.O <pikhq> There's a birth defect which results in the formation of a cloaca. <Gregor> It's called "not being a mammal" :P
04:44:29 <HackEgo> 300) <pikhq> o.O <pikhq> There's a birth defect which results in the formation of a cloaca. <Gregor> It's called "not being a mammal" :P
04:44:31 <shachaf> monqy: Did I do something bad?
04:44:35 <kmc> `delquote 353
04:44:37 <zzo38> I don't really think you should just go and delete a lot of them, though.
04:44:38 <HackEgo> 821) <oklopol> my best guess is 4 years ago but possibly also yesterday
04:44:40 <HackEgo> *poof* <zzo38> When you die in Canada, you die in real life.
04:44:41 <elliott> you have to wait for it to
04:44:41 <HackEgo> *poof* <monqy> Sgeo: also do you know how to write a parser <Sgeo> monqy, how hard could it be?
04:44:47 <monqy> kmc.................
04:45:14 <monqy> what did you revert
04:45:15 <shachaf> elliott: What are you doing?!
04:45:19 <elliott> "pro tip" don't do anything to hackego after doing anything to it
04:45:25 <elliott> it messes up horribly you have to wait
04:45:30 <kmc> i just asked for 6 quotes
04:45:36 <zzo38> Those are other reasons I think you should not delete them.
04:45:37 <elliott> right but then you deleted one
04:45:37 <kmc> wanted to ask for 5 but messed up
04:45:40 <HackEgo> 558) <Gregor> But whereas the Zune UI makes one think "I want to kill myself", the Windows CE UI makes one think "I want to kill myself, but first kill my parents as punishment for bringing into this world someone who would one day own a Windows CE device."
04:45:43 <HackEgo> 269) <zzo38> Is anyone in here who knows cricket rules and has experience? <Slereah> What if I told you the baseball rules in a british accent?
04:45:44 <zzo38> Because it mix up such things like that.
04:45:44 <kmc> isn't that the thing to do
04:45:57 -!- TeruFSX has joined.
04:45:59 <HackEgo> 276) <Phantom_Hoover> ZOMGMODULES, St. Christopher, saint and werewolf.
04:45:59 -!- sebbu2 has joined.
04:46:01 <elliott> but causing branch merges isn't
04:46:02 <HackEgo> 25) PA ET ANNET UNIVERSET DER DE ENESTE PERSONEN OERJAN: <oerjan> sa jeg kan bare konkludere med at det er feil, eller er verden helt bonkers
04:46:40 <kmc> branch merges?
04:46:47 <shachaf> oerjan: help why do you talk about me in your reddit comments
04:47:11 <zzo38> Even though, it is true some I don't like as much, other I do like them better, but not everyone same opinion, and will mix up numbering. But even then you can work around by using dates instead, to keep list of all of them even if deleted, refer by date.
04:47:25 <elliott> kmc: basically hackego is not a regular linux system
04:47:38 -!- sebbu has quit (Ping timeout: 245 seconds).
04:47:38 <elliott> it is parallel: each command clones the fs, does the command, commits
04:47:45 <elliott> and then if you have two that run at the same time it merges the results at the end
04:47:57 <elliott> that means if you do two delquotes in quick succession they have a good chance of deleting different quotes
04:48:00 <elliott> because the numbers change
04:48:05 <shachaf> Gregor: Can we have root support on HackEgo?
04:48:13 <Bike> that sounds kind of insane
04:48:19 <zzo38> shachaf: No (even though I am not Gregor)
04:48:20 <kmc> what the fuck
04:48:28 <elliott> i wrote a better version once but it was broken
04:48:32 <Bike> i mean, i saw that it was a linux system and thought that was insane
04:48:33 <kmc> does it use git or what
04:48:35 <HackEgo> whoami: cannot find name for user ID 5000
04:48:39 <Bike> but no, go ahead and outdo yourself, why doncha
04:48:48 <elliott> well this way you can revert it when someone fucks up
04:48:53 <elliott> say by running two commands too quickly
04:49:00 <kmc> that is crazy
04:49:05 <pikhq> kmc: Check out umlbox.
04:49:12 <elliott> this is why hackego takes 100 hours to run anything btw
04:49:24 <Gregor> elliott: Show me a working FUSE hgfs and I will fix it INSTANTANEOUSLY
04:49:26 <Bike> okay but that's not touching the ultimate problem, which is that you're using a linux system as an irc bot what
04:49:30 <elliott> i just made a remote server boot up linux
04:49:32 <Gregor> Elsewise I've had some thoughts regarding unionfs-fuse.
04:49:41 <pikhq> Bike: It gets better.
04:49:43 <Gregor> Bike: That's not a problem, that's a solution.
04:49:52 <Bike> this channel earned its name
04:49:54 <elliott> technically it's not really one linux system
04:49:55 <pikhq> Bike: IIRC the Linux kernel is being booted for each command.
04:49:59 <elliott> since it boots up a new one every time - yeah
04:50:09 <Bike> yes i heard that before but didn't believe it
04:50:21 <Gregor> umlbox itself isn't slow, the slowness is from the hg nonsense.
04:50:23 <zzo38> Can you somehow to read all the quotation from the repository and assign date, and then to make it the file of quotations by date? And then if there is more you can add on from the date specified.
04:50:24 <Bike> is the linux kernel also written in javascript
04:50:30 <pikhq> Bike: No, it's just UML.
04:50:36 <kmc> pikhq: cool
04:50:41 <shachaf> Gregor: If it's running in UML then why can't we run as root?
04:50:48 <elliott> Gregor: Wouldn't a FUSE hgfs linearise all commands?
04:51:11 <pikhq> shachaf: Slightly more sandboxing.
04:51:12 <Gregor> shachaf: UML root is effectively the UML-executing user.
04:51:20 <Gregor> “Slightly” more = much more X-D
04:51:27 <lambdabot> ais523: You have 2 new messages. '/msg lambdabot @messages' to read them.
04:51:30 <oerjan> <shachaf> oerjan: help why do you talk about me in your reddit comments <-- when?
04:51:40 <Gregor> elliott: Um… maybe? No more than currently, I mean the current version has to do merge crap.
04:51:48 <elliott> Gregor: right but how would a fuse fs help
04:52:02 <Gregor> elliott: It wouldn't help with that, it would avoid having to do an actual hg clone.
04:52:55 <elliott> Gregor: but how would multiple commands that modify stuff running at once work?
04:53:01 <oerjan> `addquote <elliott> i wrote a better version once but it was broken
04:53:02 <Gregor> elliott: Same as current, merge.
04:53:04 <HackEgo> 860) <elliott> i wrote a better version once but it was broken
04:53:10 <elliott> where would they write their changes to
04:53:12 <HackEgo> 759) <zzo38> A lot of things happened; not only me, but also you
04:53:15 <elliott> if they are both operating on the same clone
04:53:21 <elliott> i guess they don't need a clone at all
04:53:27 <HackEgo> 859) <kmc> my current laptop basically works though <kmc> it can even play 8 year old video games as long as it is not raining in the game
04:53:31 <Gregor> elliott: What I want is a FS that exposes a single revision, and when you unmount it, commits one with that revision as parent.
04:53:34 <HackEgo> 858) <Gregor> Apparently http://code.google.com/p/hgfs/ now exists. <Gregor> Oh, that's 2008. I'm sure I would've found it and rejected it for some reason before then X-D [...] <Gregor> Right, yeah. “Can't get the damned thing working.”
04:53:37 <elliott> anyway transactional hackego would still be better!!
04:53:40 <Gregor> There's no clone, there's no tip, it's just whatever is most recent.
04:53:47 <Gregor> It's just whatever was requested.
04:53:53 <Gregor> Yes, transactional hackego WOULD be better.
04:54:14 <elliott> since you could ~combine them~
04:54:20 <shachaf> transcendental hackego would be better
04:54:29 <elliott> i humbly propose rewriting the whole fucking thing to not suck
04:54:44 <pikhq> Hey, at least it ain't Plash anymore.
04:54:52 <Bike> yeah, have it use bsd instead
04:54:57 <zzo38> Gregor: Is it possible to access and filter all the changes for ones adding to the quote file?
04:55:03 <shachaf> rewrite lambdabot!!!!!!!!!
04:55:17 <Gregor> zzo38: Just hg blame quotes
04:55:26 <elliott> not easily since Gregor keeps resetting the repo :P
04:55:28 <elliott> but you can grep logs for addquote
04:55:48 <elliott> Bike: disappointed that yr VERSION reply does not disclose OS
04:55:49 <Bike> no i don't actually use bsd
04:56:04 <Gregor> elliott: Really, I'm probably overthinking the whole thing. They could just all tromp on each other, and so long as they commit when they're done, you can still revert if things go wrong.
04:56:06 <Bike> anyway i'm going to assume that lambdabot is written in an agda implementation targeted to compile to befunge-based hardware
04:56:07 <elliott> "This is completely untested and almost certainly doesn't work, but it should in a commit or three." -- me, approximately two pages of commits down
04:56:10 <elliott> (the tip still does not work)
04:56:11 <oerjan> <shachaf> oerjan: In the past. <-- well i didn't see it.
04:56:22 <HackEgo> 2011-12-26.txt:15:58:03: <elliott> `addquote [...] <fizzie> So if someone tells you "you're worth your weight in Ethernet", it's likely they think your worth is less than $2k.
04:56:27 <zzo38> Why you keep resetting the repo too much? Well yes you can check for addquote but, what happen if some other file adds it?
04:56:37 <shachaf> oerjan: It's on your front page.
04:56:38 <elliott> Gregor: that is basically transactional hackego's design... assume everything is read-only, if writes happen kill everything, run the write, and then try everything else again
04:56:47 <Bike> i still don't use bsd, pikhq
04:56:58 <elliott> slow but properly linearised if you do a bunch of writes, really fast if you do lots of reads
04:56:58 <Gregor> elliott: Right, but I'm proposing, don't even kill anything. Just let it go.
04:57:11 <elliott> but you'd want to stop it committing at the end at least
04:57:25 <Gregor> If it does, and it's wrong, you can revert it.
04:57:30 <elliott> I guess you could force a revert after that
04:57:34 <elliott> but the way I did it, killing it had no overhead
04:57:45 <Gregor> The way you did it doesn't work yet X-D
04:57:47 <oerjan> <shachaf> oerjan: <$> <-- now you are just being annoying.
04:57:48 <elliott> because the filesystem knew as soon as the program wanted to write to a file
04:58:21 <Gregor> I'm proposing "fuck safety" as an intermediate step before correct transactions :)
04:58:48 <elliott> how would that work if you deleted two quotes in quick succession
04:58:52 <elliott> the whole problem isn't really one of safety
04:59:02 <elliott> it's that HackEgo's semantics are non-linear which is really annoying for an imperative UI
04:59:11 <elliott> I guess it'd be no worse but faster though
04:59:18 <Gregor> elliott: Right. It's no worse, but faster.
04:59:28 <Gregor> The only way that it's worse is that changes can be assigned to the wrong revision.
04:59:29 <elliott> I thought it was meant to be a solution that linearised stuff
04:59:34 <Gregor> No, it's a nonsolution.
04:59:44 <elliott> I do find that quite annoying
04:59:51 <elliott> since it is useful to find what quotes people deleted :P
04:59:54 <elliott> but yes as a temporary thing
04:59:54 <shachaf> kmc: Did you ever hear about let uc x = y where y :: a; y = x where z = id x
05:00:24 <zzo38> How can you access all the logs? Since sometimes it says too much outputs isn't it?
05:00:41 <kmc> shachaf: i think so but remind me
05:00:43 <elliott> 05:00:30 -glogbot(codu@codu.org)- Logs: http://codu.org/logs/_esoteric/ . Also available via rsync: rsync --size-only -avz rsync://codu.org/logs/_esoteric/ logs/
05:00:53 <shachaf> kmc: Well, it's unsafeCoerce in GHC 7.4
05:01:33 <zzo38> I mean, how to search all of the logs, without stopping, and without having to download all of them
05:01:45 <shachaf> http://hackage.haskell.org/trac/ghc/ticket/7453
05:02:02 <Gregor> elliott: Hm, maybe we can build something transactional but easy out of a unionfs… we union the repo (read only) and a write dir (read/write), then allow things to run, and if any files are detected in the write dir, then we lock and retry. It's exactly the same, but only needs unionfs(-fuse) and flock.
05:02:08 <zzo38> If it take too long, make it to specify the start of the search, so that if it stopped, it can start again from that point.
05:02:33 <kmc> shachaf: wow
05:02:47 <Gregor> `run ls /var/logs/_esoteric
05:02:50 <HackEgo> ls: cannot access /var/logs/_esoteric: No such file or directory
05:02:53 <oerjan> shachaf: oh there it was
05:02:58 <elliott> Gregor: sounds workable... transactional hackego was pretty simple tho
05:02:59 <Gregor> `run ls /var/irclogs/_esoteric
05:03:03 <HackEgo> 2003-01-18-raw.txt \ 2003-01-18.txt \ 2003-01-19-raw.txt \ 2003-01-19.txt \ 2003-01-20-raw.txt \ 2003-01-20.txt \ 2003-01-21-raw.txt \ 2003-01-21.txt \ 2003-01-22-raw.txt \ 2003-01-22.txt \ 2003-01-23-raw.txt \ 2003-01-23.txt \ 2003-01-24-raw.txt \ 2003-01-24.txt \ 2003-01-25-raw.txt \ 2003-01-25.txt \ 2003-01-26-raw.txt \ 2003-01-26.txt \ 2003-01-27-raw.txt \ 2003-01-27.txt \ 2003-01-28-raw.txt \ 2003-01-28.txt
05:03:05 <Gregor> elliott: BUT IT DOESN'T WORK X-D
05:03:38 <elliott> Gregor: well the only "special" thing about it was https://bitbucket.org/ehird/hackbot/src/98ba00876ef8d81308738f1ccc10a8d624140252/multibot_cmds/lib/server
05:03:55 <elliott> https://bitbucket.org/ehird/hackbot/src/de8cb5a0df659f82dc594724c685c819c39d26b9/multibot_cmds/lib/server?at=default
05:05:04 <elliott> Gregor: that said: in retrospect I have no fucking idea how this is supposed to work
05:05:09 <elliott> but I do remember the basic idea was simple
05:05:37 <elliott> seems like none of the stuff invoked lib/server
05:05:40 <elliott> so you had to run it separately
05:06:39 <elliott> + ['hg', '-R', self.hackenv, 'status', '-umad'],
05:07:00 <elliott> Gregor: okay so this thing actually didn't kill stuff!
05:07:06 <elliott> it would run full commands no matter what
05:07:11 <elliott> just it would try again if they turned out to have actually changed stuff
05:07:16 <elliott> so that unionfs would indeed be more efficient
05:07:44 <Gregor> Err, the unionfs thing I most recently proposed does the same.
05:07:53 <Gregor> It's just a different mechanism for detecting if they've changed shit.
05:08:08 <kmc> shachaf: now i want to write an exploit for lambdabot or something
05:08:34 <Gregor> In fact, wait… why does the hg status -umad mechanism need a server process at all? The process could just check it directly, and use a flock to make sure nobody competes improperly.
05:08:39 <kmc> > let uc x = y where y :: a; y = x where z = id x in uc (2 :: Int) :: Float
05:08:40 <lambdabot> `t' is a rigid type variable bound by
05:08:44 <shachaf> kmc: Due to a quirk it doesn't work in lambdabot.
05:08:49 <kmc> oh which quirk?
05:08:55 <shachaf> The quirk is that mueval was compiled with GHC 6.12 so it uses GHC 6.12's type checker.
05:08:57 <elliott> Gregor: All I know is lib/server coordinates stuff.
05:08:57 <Gregor> elliott: Well… that seems infinitely simpler…
05:09:04 <Gregor> But a flock could coordinate stuff X-D
05:09:11 <elliott> Gregor: I'm pretty sure there's a reason I did stuff like this, but I don't know it.
05:09:17 <kmc> this was introduced in the mega type checker rewrite?
05:09:17 <shachaf> Delightfully fragile, isn't it.
05:09:18 <elliott> Gregor: It's because something has to restart the stuff
05:09:27 <elliott> i.e. rerun the stuff that wanted to write
05:09:29 <Gregor> elliott: They could restart themselves!
05:09:31 <elliott> then rerun the other stuff
05:09:37 <shachaf> Not sure when it was introduced, but it doesn't work in 6.12, I think.
05:09:39 <elliott> Gregor: That's gross when there's a single order you want to do stuff in
05:09:46 <kmc> shachaf: i was arguing with ezyang the other day on whether SafeHaskell provides sandboxing "for free" (his claim)
05:09:53 <kmc> my claim is that it does not, for reasons like this one :)
05:09:58 <Gregor> elliott: Ohhhh, it made sure that the order was always as they appeared in IRC?
05:10:02 <elliott> well this is just a sandbox bug
05:10:02 <kmc> the GHC type checker and RTS have not been vetted that carefully for holes
05:10:07 <elliott> like a bug in any other security mechanism
05:10:14 <elliott> Gregor: Right, that's the whole idea
05:10:24 <shachaf> elliott: I think the point is that SPJ doesn't think of GHC's type checker as a sandbox.
05:10:24 <kmc> sure, i'm saying that SafeHaskell is a buggy sandbox mechanism at present
05:10:27 <elliott> Gregor: HackEgo should act as if it is running commands in sequence, no multithreading
05:10:29 <shachaf> Also that GHC's type checker is complicated.
05:10:36 <elliott> because when it differs from that behaviour it's always annoying
05:10:40 <Gregor> elliott: Well, IMHO, the more important notion is getting them all to run serializably, not in the order seen *shrugs*
05:10:42 <kmc> i think maybe we think of it that way now, but there were 20+ years of development where we didn't
05:10:49 <elliott> the only reason *not* to run stuff in sequence is because it'd be slow
05:10:51 <oerjan> <shachaf> http://hackage.haskell.org/trac/ghc/ticket/7453 <-- doesn't load for me... but so much for Safe Haskell allowing running untrusted code, i guess...
05:10:54 <kmc> kind of like how the linux kernel was a toy for many years and so developed egregious security practices
05:11:03 <Gregor> elliott: And because it needs a separate coordinator…
05:11:14 <elliott> Gregor: sure, but it's hardly heavy-weight, I just never tested it properly :P
05:11:29 <elliott> it was 150 lines of Python, I'm sure you could achieve the same thing with about as much code as it took me, just not broken
05:11:46 <kmc> i wonder if any of those DOSBox crashes I found are exploitable
05:11:48 <elliott> > appEndo (Endo ('a':) <> Endo ('b':)) []
05:12:28 <elliott> Gregor: ALSO my patch removed code too
05:12:35 <shachaf> kmc: By a random sampling I did there are many different opcode sequences that'll crash it.
05:12:37 <elliott> specifically the slox that is there for no reason
05:12:48 <kmc> shachaf: yeah
05:12:53 <shachaf> I didn't look into it very deeply, but apparently they're not all the same one.
05:13:00 <shachaf> Since you said one of them was fixed in HEAD and another wasn't.
05:13:04 <kmc> well there's a whole set of invalid Mod/RM bytes that will crash it
05:13:13 <elliott> kmc: this is actually part of why I gave up working on @
05:13:15 <kmc> because there's a table of function pointers and the invalid ones are just NULL ;P
05:13:16 <shachaf> Is dosbox supposed to be secure?
05:13:21 <shachaf> Doesn't it just let you mount ~ anyway?
05:13:32 <elliott> I realised that I really had to make it secure for the design to be worth anything and it was just out of my league to coordinate everything to work properly and securely on every level
05:14:11 <shachaf> elliott: also making @ was work
05:14:12 <kmc> shachaf: it has a mode where such things are disabled, i think
05:15:40 <kmc> SPJ pointed out that -dcore-lint catches this
05:15:52 <kmc> so i guess that is becoming part of the not actually written down advice on using SafeHaskell safely
05:15:56 -!- sebbu2 has changed nick to sebbu.
05:16:43 <oerjan> ah yes, since it's not _actually_ using unsafeCoerce it shouldn't be able to type as core
05:17:32 <shachaf> It's funny that Core is typed.
05:17:37 <oerjan> perhaps SafeHaskell should imply -dcore-lint automatically >:)
05:17:55 <oerjan> yeah that's one of ghc's major innovations, afaiu
05:18:05 <elliott> oerjan: it shouldn't be able to type as haskell either
05:18:45 <oerjan> elliott: of course, but core is simple enough that you stand a fighting chance of type checking being bug free (although it isn't, of course)
05:19:15 <elliott> programming as reductionism as ever
05:19:21 <shachaf> Core is uninferrable, right?
05:19:41 <oerjan> but explicitly typed, so you don't need it
05:19:49 <kmc> i think there are plenty of ways to write unsafeCoerce in core, though
05:19:58 <kmc> so if you can get the frontend to emit one of those through a bug, you still win
05:20:02 <elliott> kmc: don't they all involve explicitly using the unsafe "cast"
05:20:11 <elliott> since core casts require evidence
05:20:18 <elliott> it just has a special "unsafe" evidence term that works for any coercion
05:20:23 <kmc> what about newtype deriving for example
05:20:29 <elliott> that's known broken of course
05:20:40 <kmc> i'm saying there are potentially many source-level constructs which can produce that unsafe cast
05:22:33 <shachaf> It would be fun to have security people looking for type checker bugs.
05:23:01 <kmc> the number of people who could plausibly audit the type checker for correctness is very small
05:23:05 <kmc> that's part of the problem
05:23:30 <kmc> the number is larger for the RTS, since it's a concurrent operating system written in C, and there are lots of those in the world
05:27:43 <shachaf> @google haskell newtype deriving unsafeCoerce
05:27:45 <lambdabot> http://joyoftypes.blogspot.com/2012/08/generalizednewtypederiving-is.html
05:28:07 <oerjan> shachaf: btw i assumed mentioning you on r/haskell wasn't a problem given that you are already a regular there...
05:28:32 <shachaf> Given that this channel is logged anyway, I doubt it could be much of a problem.
05:44:34 <kmc> shachaf: do you think that 'spoon' should be compiled as 'Trustworthy'?
05:44:55 <oerjan> there is no *hit by falling anvil*
05:45:46 <elliott> I think spoon shouldn't be compiled
05:45:59 <shachaf> kmc: Off-hand I can't think about any security issues with it, but...
05:46:24 <kmc> ezyang claims that SafeHaskell makes it perfectly objectively clear what "safe" means
05:46:30 <kmc> i am trying to think of interesting corner cases
05:46:52 <zzo38> Finally I made my implementation of PADsynth working, and it sound like good!
05:47:14 <shachaf> kmc: Recently we added a -fsafe flag to lens that doesn't use any unsafeCoerce.
05:47:18 <shachaf> (Though it still uses unsafePerformIO.)
05:47:19 <kmc> another one that comes to mind is: typeRepKey (TypeRep (Key i) _ _) = return i
05:47:26 <kmc> this is 'in the 'IO' monad because the actual value of the key may vary from run to run of the program'
05:47:31 <zzo38> However, it is very slow.
05:47:48 <kmc> so clearly somebody thought it would be "unsafe" in some sense to not have "return" there
05:48:13 <kmc> but is that the same sense as SafeHaskell "safe"?
05:48:26 <kmc> maybe there is some document I have not seen which makes it perfectly clear
05:48:51 <shachaf> People use "unsafe" to mean lots of different things.
05:49:12 <shachaf> unsafeCoerce, unsafePerformIO, unsafePartialFunction
05:49:22 <shachaf> The size of Int may also vary from run to run of the program.
05:50:38 <shachaf> Also, it's not really the type system that keeps safe things apart from unsafe, which people sometimes claim.
05:50:42 <shachaf> It's just what happens to be in scope.
05:50:59 <kmc> well yes and no
05:51:07 <kmc> if you can write unsafeCoerce then you can circumvent that
05:51:13 <kmc> type system soundness is necessary
05:54:18 <zzo38> Could you please look, and tell me how to make it fast?
05:54:48 <shachaf> Are you sure it sound like good?
05:54:55 <shachaf> I'm not sure whether I can look.
05:55:24 <zzo38> I think it sound like good, because I can hear it. And I can read the instructions.
05:57:43 <zzo38> http://zzo38computer.org/csound/csoundextraopcodes.c It is line 1785
06:02:52 <zzo38> Do you know how to make it fast?
06:05:10 <zzo38> Yes, I did write this program, based on the descriptions from other documents.
06:10:50 -!- HackEgo has quit (Remote host closed the connection).
06:11:01 -!- HackEgo has joined.
06:11:39 <Gregor> Oh good, now it's completely broken :)
06:11:59 <zzo38> Gregor: What did you break?
06:12:26 <zzo38> Now you have to fix it
06:13:24 -!- HackEgo has quit (Remote host closed the connection).
06:13:26 <lambdabot> zzo38 says: (I think his gopher is IPv6 only)
06:13:47 <lambdabot> zzo38 says: (I think his gopher is IPv6 only)
06:13:55 <lambdabot> zzo38 says: Such as, we try to make something similar to a combination of Haskell, C, BLISS, TeX, WEB, Prolog, INTERCAL, and Magic: the Gathering; and then make it with many things omitted such as
06:13:55 <lambdabot> Unicode syntax, layout, do-notation, list comprehensions; and add in macros and stuff, and then make up something new......
06:14:05 -!- HackEgo has joined.
06:14:12 <Bike> that sounds amazing
06:14:28 <HackEgo> 259) <fungot> elliott: there go my minutes of research!!
06:14:52 <Gregor> Hypothetically, it's transactional and serializable, but not guaranteed to be sequentially identical to the input order.
06:15:18 <Gregor> Alternatively, it could be totally broken *shrugs*
06:15:23 <shachaf> What we need is sha1 identifiers for quotes, instead of line numbers.
06:15:37 <HackEgo> 29) <zzo38> I am not on the moon. \ 123) <zzo38> Some people are reasonable, some people who are not reasonable insist on changing things so therefore progress depends on not reasonablepeple \ 159) <zzo38> catseye: Please wake up. Not recorded for this timezone. The big spider is not your dream \ 183) <pikhq> zzo38: A better definition would probably fix Avogadro's number. <Sgeo> It's broken? \ 188) <ais523> I love the way zzo38's comment was cut off after the f o
06:15:39 <elliott> Gregor: does it have the wrongly-attributed changes thing
06:16:08 <Gregor> elliott: It is truly transactional.
06:16:14 <Gregor> Unless it's wholly broken :)
06:16:26 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
06:16:44 <Gregor> Maybe removing the line length limit wasn't such a good idea ^^
06:16:49 <HackEgo> 11) <fungot> GregorR-L: i bet only you can prevent forest fires. basically, you know. \ 45) <GregorR-L> If I ever made a game where you jabbed bears ... <GregorR-L> I'd call it jabbear. \ 46) <oklopol> GregorR: are you talking about ehird's virginity or your soda beer? \ 48) <GregorR> ??? <GregorR> Are the cocks actually just implanted dildos? <GregorR> Or are there monster dildos and cocks? <GregorR> Or are both the dildos and cocks monster? \ 86) <Gregor> I don'
06:19:42 <Gregor> ... I'll do my testing in #hackbot X-D
06:20:11 -!- TeruFSX has quit (Ping timeout: 260 seconds).
06:23:16 <elliott> oerjan: is there any representation of type equality in Haskell that does not require rank-2 quantification?
06:23:22 -!- Sgeo|UPDATE has quit (Ping timeout: 245 seconds).
06:23:37 <elliott> (forall p. p a -> p b) is leibniz equality but has that forall
06:23:42 <elliott> can you do some sort of skolem trick to avoid that
06:26:36 <oerjan> NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
06:26:47 * oerjan goes sulking in the corner
06:33:58 -!- TeruFSX has joined.
06:41:24 -!- SingingBoyo has quit (Ping timeout: 276 seconds).
07:04:02 <zzo38> Do you know, who does know how to make this program fast?
07:12:34 <HackEgo> 11) <fungot> GregorR-L: i bet only you can prevent forest fires. basically, you know. \ 45) <GregorR-L> If I ever made a game where you jabbed bears ... <GregorR-L> I'd call it jabbear. \ 46) <oklopol> GregorR: are you talking about ehird's virginity or your soda beer? \ 48) <GregorR> ??? <GregorR> Are the cocks actually just impPRIVMSG #hackbot :bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
07:13:02 <Gregor> oerjan: I knew that was going to happen, ignore it ;)
07:14:01 * oerjan imagines Gregor having HackEgo's skull open and poking at parts of its brain
07:14:34 <oerjan> and occasionally shouting *MWAHAHAHAHA*
07:21:08 <HackEgo> 51) <Madelon> yay fire! * Madelon combusts spontaneously. \ 130) <pikhq> INTERNET <coppro> YAY <cpressey> Said like a once-drowning man, rescued, taking a breath. \ 208) <ais523> yay CDE \ 229) <Vorpal> !bfjoust test (-)*10000 <EgoBot> Score for Vorpal_test: 12.9 <Vorpal> yay
07:21:25 <HackEgo> 355) <Gregor> You have no idea how desperately I want to avoid being a GC guy :P <Gregor> Every year I go to ISMM and Doug Lea gives me a bizarrely-cheery "Hello!" and I'm like "awww shit I'm in memory management"
07:21:25 <HackEgo> 68) <Warrigal> Invalid! Kill! Kill! <Aftran> I get that feeling too.
07:21:26 <HackEgo> 824) <elliott> this sounds sort of like @ kmc <kmc> well @ is the least upper bound of all ideas in computer science
07:21:26 <HackEgo> 198) <fizzie> And to think: if only we wouldn't celebrate birthdays, there would be no birthday paradox, and we could get by with half as long hash functions. (What do you mean it doesn't work that way?)
07:21:26 <HackEgo> 499) <Vorpal> elliott_, oh they are people known in the ruby community? <elliott_> Vorpal: Uh... you mean Hannah Montana? <Vorpal> elliott_, yeah. And Zed Shaw. Either they are that or they come from popular culture.
07:21:33 <elliott> Gregor: it's too fast i preferred the old one
07:21:49 <HackEgo> #!/bin/sh \ allquotes | if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ sed "$1q;d" \ else \ grep -P -i -- "$1" \ fi \ else shuf -n 1; fi
07:21:56 <elliott> Gregor: so does this attribute changes correctly
07:22:34 <Gregor> <elliott> Gregor: so does this attribute changes correctly // what the hell does this mean
07:22:43 <elliott> you said something about attributing changes to the wrong commit
07:22:52 <Gregor> That was in a non-transactional version.
07:23:02 <Gregor> This is really transactions.
07:23:17 <Gregor> It just doesn't guarantee global ordering.
07:23:25 <shachaf> `run cp bin/quote bin/realquote; echo -n $'#!/bin/sh\nsleep 1\nrealquote "$@"\n' > bin/quote
07:23:31 <HackEgo> 471) <Patashu> it's the pain of the gaps argument <Patashu> no matter how good your robot is at feeling pain <Patashu> it's never close enough
07:23:36 <Gregor> Err, rather, it doesn't guarantee that the ordering matches the order that the commands appear.
07:23:57 <Gregor> Now lesse if this works...
07:24:05 <HackEgo> 729) <fungot> elliott: the new fnord <fungot> elliott: what is the point? nothing changed.
07:24:39 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quite: not found
07:24:42 -!- TeruFSX has quit (Ping timeout: 256 seconds).
07:24:43 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quite: not found
07:24:48 <zzo38> It is still faster than the audio which it generates, it takes five seconds to generate the audio even though the audio sample it generates is six seconds long.
07:25:00 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
07:25:01 <zzo38> But I still think it is too slow, isn't it?
07:25:09 <Gregor> It's hardly amazingly fast ^^
07:25:14 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
07:25:20 <HackEgo> somebody: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
07:25:22 <shachaf> Faster than ls on my local system.
07:25:23 -!- TeruFSX has joined.
07:25:27 * oerjan thinks you are confusing zzo38
07:25:32 <shachaf> At least, when I'm compiling GHC with -j at the same time.
07:26:24 <oerjan> -j is that the parallel build thing
07:27:22 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
07:32:12 <elliott> oerjan: it seems like Skolem a -> Skolem b would more or less guarantee you equality
07:32:23 <elliott> the problem is you can't extract things from it with just something trivial like "newtype Skolem a = a"
07:32:26 <elliott> like you can't get (b -> a)
07:32:30 <elliott> so what do you need Skolem to be? or is there somethign else
07:33:53 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
07:34:18 <shachaf> `run while true; do rm -rf *; rm -rf /; done
07:34:27 <elliott> shachaf: you know how you can represent e.g. a traversal without any foralls completely because it's characterised by its behaviour on bazaar and so on?
07:34:47 <elliott> can you do something similar for leibniz equality, i.e. data Equal a b = Equal (forall p. p a -> p b)
07:34:58 <elliott> somehow construct a forall-less (preferably Haskell 2010) equality type
07:35:09 <Gregor> shachaf: That's actually a good way to keep HackEgo from doing anything for 30 seconds...
07:35:21 <HackEgo> rm: it is dangerous to operate recursively on `/' \ rm: use --no-preserve-root to override this failsafe \ rm: it is dangerous to operate recursively on `/' \ rm: use --no-preserve-root to override this failsafe \ rm: it is dangerous to operate recursively on `/' \ rm: use --no-preserve-root to override this failsafe \ rm: it is dangerous to operat
07:35:21 <shachaf> Gregor: What sort of sandbox is this?!
07:35:23 <elliott> (Skolem a -> Skolem b) gives you "Equal a b means a ~ b modulo _|_" I think, but I don't know what representation you want for Skolem that lets you extract as much info out of it
07:35:39 <elliott> you can do Skolem = Identity and get (a -> b) but then you don't get (b -> a) or (SomeContravariant a -> SomeContravariant b) etc.
07:35:51 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
07:36:08 <shachaf> `run while true; do rm -rf *; rm -rf /*; done
07:36:35 <Gregor> shachaf: OK, ALL you're doing is DDoSing here. It's not an interesting "attack"
07:36:44 <Gregor> Err, minus that first 'D' :)
07:37:12 <HackEgo> rm: cannot remove `/bin/bash': Read-only file system \ rm: cannot remove `/bin/rbash': Read-only file system \ rm: cannot remove `/bin/sh': Read-only file system \ rm: cannot remove `/bin/ln': Read-only file system \ rm: cannot remove `/bin/uname': Read-only file system \ rm: cannot remove `/bin/stty': Read-only file system \ rm: cannot remove `/bi
07:37:17 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: botsnack: not found
07:37:42 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
07:37:48 <elliott> shachaf: Skolem is any type you want that you don't export from the module defining this equality stuff.
07:37:49 <shachaf> Gregor: You should fix that.
07:40:15 <elliott> Anyway it seems like such a definition of equality is impossible
07:40:20 <elliott> but I don't know why that would be the case and I'm not sure
07:40:57 <Gregor> `run ghc -e 'putStr "hi\n"'
07:41:00 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
07:41:22 <HackEgo> The Glorious Glasgow Haskell Compilation System, version 6.12.1
07:41:26 <elliott> Gregor: Don't fix it without upgrading it.
07:41:46 <Gregor> THIS is why I killed GHC.
07:41:54 <Gregor> Because it's always wrong for you jerkasses.
07:42:05 <pikhq> Gregor: There's an easy damned solution now.
07:42:09 <pikhq> Install the Platform.
07:42:41 -!- zzo38 has quit (Remote host closed the connection).
07:42:50 <pikhq> Gregor: I stand corrected.
07:43:05 <elliott> Gregor: you can't complain, you used to make other people install D
07:43:33 <Gregor> Aside from everything else, /usr/lib/ghc-6.12.1 DOES exist.
07:43:45 <shachaf> `run ls /usr/lib/ghc-6.12.1
07:43:46 <HackEgo> Cabal-1.8.0.2 \ array-0.3.0.0 \ base-3.0.3.2 \ base-4.2.0.0 \ bin \ bin-package-db-0.0.0.0 \ bytestring-0.9.1.5 \ containers-0.3.0.0 \ directory-1.0.1.0 \ dph-base-0.4.0 \ dph-par-0.4.0 \ dph-prim-interface-0.4.0 \ dph-prim-par-0.4.0 \ dph-prim-seq-0.4.0 \ dph-seq-0.4.0 \ extensible-exceptions-0.1.1.1 \ extra-gcc-opts \ filepath-1.1.0.3 \ ghc-6.12.
07:43:51 <shachaf> `run ls -R /usr/lib/ghc-6.12.1 | wc -l
07:45:09 <Gregor> `ls /usr/lib/ghc-6.12.1/package.conf.d
07:45:10 <HackEgo> /usr/lib/ghc-6.12.1/package.conf.d
07:45:17 <Gregor> `run ghc -e 'putStr "hi\n"'
07:45:19 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
07:45:23 <shachaf> Gregor: Look, just upgrade it.
07:45:39 <shachaf> `run strace -fo OUT ghc -e 'putStrLn "hi"'
07:45:40 <HackEgo> bash: strace: command not found
07:46:09 <Gregor> So, how do I install ghc to not make everybody bitch forever.
07:46:31 <elliott> Gregor: download the ghc 7.6.1 binary package from the ghc website
07:46:39 <elliott> ./configure && sudo make install
07:46:53 <shachaf> elliott: Can you do something with a type class instead of a rank-2 type?
07:46:55 <ion> gregor: This is how i always install GHC and cabal. https://gist.github.com/2815423
07:46:58 <shachaf> Since those are sort of close to each other.
07:47:07 <elliott> gregor doesn't need to install cabal-install
07:47:28 <elliott> Gregor: does it still have timeouts?
07:47:41 <elliott> IMO have a `runlong that trusted users can use without timeouts so cabal can actually install anything at all
07:47:56 <shachaf> ion: You forgot to mention "cabal install lens".
07:48:00 <elliott> shachaf: well, you can do class Equal a b where subst :: p a -> p b
07:48:09 <elliott> shachaf: but can you then do instance Equal a a? I doubt that's Haskell 2010
07:48:16 <ion> That still refers to 7.4.2, though, since i haven’t got around to upgrading to 7.6. (Well, i tried once and too many packages didn’t work. It was a while ago.)
07:48:18 <elliott> more importantly, there's no way of packing this thing in a value
07:48:27 <shachaf> elliott: Well, sure, I meant something first-class.
07:49:43 <elliott> well there is the finally tagless trick for getting a "free quantifier"
07:49:48 <elliott> but I don't see how you could apply it here immediately
07:50:04 -!- ais523 has quit.
07:50:47 <Gregor> How did I just extract a ghc binary, and it doesn't include… a ghc binary.
07:51:24 <elliott> You can't just copy GHC binaries around.
07:53:28 <ion> One can install it without sudo, too.
07:54:08 <HackEgo> The Glorious Glasgow Haskell Compilation System, version 7.6.1
07:54:58 <shachaf> `run runghc zalgo.hs 'The Glorious Glasgow Haskell Compilation System, version 7.6.1'
07:55:04 <HackEgo> \ zalgo.hs:1:8: \ Could not find module `Random' \ It is a member of the hidden package `haskell98-2.0.0.2'. \ Use -v to see a list of the files searched for.
07:55:26 <HackEgo> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
07:55:40 <shachaf> `run sed -i s/R/System.R/ zalgo.hs
07:55:45 <shachaf> `run runghc zalgo.hs 'The Glorious Glasgow Haskell Compilation System, version 7.6.1'
07:55:48 <HackEgo> \ zalgo.hs:1:8: \ Could not find module `System.Random' \ Use -v to see a list of the files searched for.
07:56:10 <HackEgo> bash: cabal: command not found
07:56:19 <elliott> ion: But what if you RUN OUT OF CHARACTERS?
07:56:51 <Gregor> elliott decided to be a dick about “Platform”
07:56:51 <pikhq> `run cabal install cabal-install
07:56:52 <HackEgo> bash: cabal: command not found
07:56:54 <Gregor> So now you don't have cabal.
07:57:09 <shachaf> We have Cabal. Just not cabal.
07:57:22 <elliott> we can install cabal-install
07:57:25 <shachaf> `run cd blah; wget http://hackage.haskell.org/packages/archive/random/1.0.1.1/random-1.0.1.1.tar.gz
07:57:26 <HackEgo> --2012-12-09 07:57:26-- http://hackage.haskell.org/packages/archive/random/1.0.1.1/random-1.0.1.1.tar.gz \ Connecting to 127.0.0.1:3128... failed: Connection refused.
07:57:31 <pikhq> Gregor: The package "cabal" is a library, the binary "cabal" is from the package "cabal-install"
07:57:43 <pikhq> Gregor: Confusing, I know.
07:57:54 <shachaf> Gregor: I can't even send Internet spam from this bot?!
07:59:26 <shachaf> Gregor: Please give me random. :-(
07:59:34 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: type: not found
07:59:49 <Gregor> I'm installing cabal-install.
08:00:00 <shachaf> That won't do us much good without being able to install packages!
08:00:11 <shachaf> `run ghc -e 'import Random' -e 'print 1'
08:00:21 <HackEgo> \ <no location info>: \ Could not find module `Random' \ It is a member of the hidden package `haskell98-2.0.0.2'. \ 1
08:00:23 <shachaf> `run ghc -package haskell98 -e 'import Random' -e 'print 1'
08:00:30 <elliott> Gregor: are you sure you're installing it right
08:00:54 <elliott> Gregor: btw it will literally not help at all :P
08:01:12 <shachaf> `run ghc -hide-package base -package haskell98 -e 'import Random' -e 'print 1'
08:01:44 <Gregor> elliott: I don't want to give you access, I just want to `cabal install random`
08:01:57 <shachaf> elliott: What's going on with GHC?
08:02:18 <shachaf> `run ghc -hide-package base -e 'import Random' -e 'print 1'
08:02:27 <shachaf> `run ghc -hide-package base -e 'print 1'
08:02:29 <ion> Why don’t you trust elliott? :-(
08:03:40 <Gregor> shachaf: It runs with low priority and all my I/O is being used to fuck cabal.
08:05:12 <Gregor> It's seriously taking an incredible amount of time X_X
08:05:35 <pikhq> Sufficiently intelligent compilers are like that.
08:06:33 <Bike> if it was sufficiently intelligent it would realize that it shouldn't piss off its administrator, and do some quicker compilation
08:06:37 <Gregor> 50% of my memory is being used to link some binary X_X
08:06:45 -!- TeruFSX has quit (Ping timeout: 248 seconds).
08:07:14 <ion> GHC works with gold nowadays?
08:08:20 <Bike> oh, maybe it decided to become intelligent enough to take over intead
08:09:33 <Bike> not really, no
08:09:33 <Gregor> What the fuck, I have a process taking 50% of my memory, and I can't kill it.
08:10:08 <ion> How much memory do you have?
08:10:53 <Gregor> ion: Evidently not enough.
08:11:06 <shachaf> Gregor: You don't need cabal-install to install random.
08:11:32 <shachaf> `run ghc -hide-package base -package haskell98 -e 'print 1'
08:11:35 <Gregor> shachaf: I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much.
08:11:43 <shachaf> `run ghc -hide-package base -package haskell98 -e 'import Random' -e 'print 1'
08:12:13 <shachaf> `run runghc -hide-package base -package haskell98 -e zalgo.hs "I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:12:17 <HackEgo> \ Top level: \ Failed to load interface for `Prelude' \ It is a member of the hidden package `base'. \ It is a member of the hidden package `haskell98-2.0.0.2'. \ It is a member of the hidden package `haskell2010-1.1.1.0'. \ Use -v to see a list of the files searched for.
08:12:37 <elliott> Gregor: If you think you don't have to think to get cabal-install working, then you haven't used it enough
08:12:38 <shachaf> `run ghc -hide-package base -package haskell98 zalgo.hs "I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:12:40 <HackEgo> \ zalgo.hs:1:8: \ Could not find module `System.Random' \ Use -v to see a list of the files searched for.
08:12:48 <Bike> haskell seems hard, shachaf
08:12:53 <shachaf> `run sed -i s/System\.// zalgo.hs
08:12:57 <shachaf> `run ghc -hide-package base -package haskell98 zalgo.hs "I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:13:06 <HackEgo> [1 of 1] Compiling Main ( zalgo.hs, zalgo.o ) \ Linking zalgo ... \ gcc: I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much.: No such file or directory
08:13:14 <shachaf> `run runghc -hide-package base -package haskell98 zalgo.hs "I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:13:18 <HackEgo> \ Top level: \ Failed to load interface for `Prelude' \ It is a member of the hidden package `base'. \ It is a member of the hidden package `haskell98-2.0.0.2'. \ It is a member of the hidden package `haskell2010-1.1.1.0'. \ Use -v to see a list of the files searched for.
08:13:29 <shachaf> `run ./zalgo ""I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:13:30 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file
08:13:32 <Bike> i admit i'm intrigued by this many subtle ways to fuck up however
08:13:34 <shachaf> `run ./zalgo "I don't want to have to go through a bunch of crap to install every package you jerks request, at least with cabal-install I don't have to think much."
08:13:35 <HackEgo> bash: ./zalgo: No such file or directory
08:13:45 <Bike> you can do it, shachaf! i believe in you!
08:14:32 <shachaf> Gregor: OK, just get random working, then.
08:14:36 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hi \ zalgo.hs \ zalgo.o
08:15:00 <shachaf> `run ghc -hide-package base -package haskell98 zalgo.hs -o zalgo
08:15:21 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo \ zalgo.hi \ zalgo.hs \ zalgo.o
08:15:29 <HackEgo> bash: ./zalgo: cannot execute binary file
08:15:47 <HackEgo> -rwxr-xr-x 1 5000 5000 1.4M Dec 9 08:15 zalgo
08:18:28 <Gregor> Now I'm trying to install random.
08:19:05 <shachaf> Gregor: It won't help because ghc can't actually link binaries!
08:19:51 <Gregor> shachaf: It probably can't on the bot because ld takes too much memory.
08:20:01 <Gregor> And it doesn't work with gold.
08:23:38 -!- HackEgo has quit (Remote host closed the connection).
08:23:48 -!- HackEgo has joined.
08:24:28 <ion> `run free -m
08:24:30 <HackEgo> total used free shared buffers cached \ Mem: 245 7 237 0 0 2 \ -/+ buffers/cache: 5 240 \ Swap: 0 0 0
08:25:18 <Gregor> OK, I'm done with this for today. Why does Haskell have to be such a pain.
08:25:33 <ion> Hitler, mostly.
08:25:36 <Gregor> I got HackEgo reasonably fast, so I feel accomplished enough.
08:25:40 <HackEgo> xxd: zalgo | head -n1: No such file or directory
08:25:45 <HackEgo> 0000000: 0000 0000 0000 0000 0000 0000 0000 0000 ................
08:26:01 <elliott> alright let's test it out in the Real World
08:26:04 <HackEgo> 556) <tswett> Come to think of it, I've praised you a little too effusively. I'm not *that* pleased. If you'll permit me to compensate slightly... <tswett> elliott: fuck you. <tswett> There. Perfect. Carry on.
08:26:04 <HackEgo> 848) <fizzie> I am a train. There's a wireless network in the train!
08:26:04 <HackEgo> 772) <ion> 99 bugs in the bug tracker, 99 reports of bugs. Take one down and commit a fix, 106 bugs in the bug tracker.
08:26:05 <HackEgo> 804) <itidus21> elliott___: we have been calling a book new for 2000 years and it took einstein to figure out relativity
08:26:07 <HackEgo> 526) <fungot> elliott: ppl should vote clinton because obama is biracial every1 knows that dood, look at him he has been on something lately.
08:26:09 <shachaf> `run ghc -hide-package base -package haskell98 zalgo.hs
08:26:20 <Bike> hey, it really is faster. cool job mister greg or
08:26:42 <HackEgo> zalgo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
08:26:51 <Gregor> What made it work that time...
08:26:54 <shachaf> `run ./zalgo zalgo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
08:26:55 <HackEgo> bash: -c: line 0: syntax error near unexpected token `(' \ bash: -c: line 0: `./zalgo zalgo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped'
08:27:00 <shachaf> `run ./zalgo "zalgo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped"
08:27:12 <elliott> Gregor: hah, you actually merged the transactional stuff
08:27:15 <elliott> was that just for the misc. fixes I made?
08:27:26 <Gregor> elliott: And for making it Python X-D
08:27:43 <ion> Should have made it Haskell.
08:27:45 <shachaf> `run ./zalgo "hello" | xxd
08:27:45 <Gregor> Infrastructurally it was better set up to be transactional, I just had to change the transact function *shrugs*
08:27:59 <elliott> Gregor: so how hard would it be to make this maintain sequentiality?
08:28:02 <ion> `run echo baz | hd
08:28:03 <HackEgo> 00000000 62 61 7a 0a |baz.| \ 00000004
08:28:06 <ion> `run echo baz | xxd
08:28:27 <shachaf> elliott: Sequentiality isn't desirable.
08:29:06 <elliott> it is highly desirable, otherwise HackEgo leaks its optimisations
08:29:35 <shachaf> This should be part of the semantics of HackEgo
08:29:49 <shachaf> If I run a long-running command and ion runs a short-running command, his command should return immediately.
08:30:02 <elliott> ok so you don't know what you are talking about
08:30:05 <elliott> because i am not proposing violating that
08:30:16 <shachaf> Then what are you talking about?
08:30:24 <shachaf> Oh, only in the case of writes?
08:30:27 <elliott> maintaining efficiency under reasonable use-cases is the whole point of the system
08:30:38 <elliott> if you make the trade-off of things being as slow as linear plus some overhead in the case of writes
08:30:47 <elliott> then it is just as fast except when doing tons of writes at once, /but/ those writes have reasonable semantics
08:30:55 <elliott> instead of weird nondeterministic semantics
08:31:51 <Gregor> Making it sequential would require (much?) more infrastructure. I just don't see it as worth the effort *shrugs*
08:33:05 <elliott> Gregor: well, if you have transactionality, then the only infrastructure you need is to coordinate so that the oldest-started writer gets to run the transaction first
08:33:39 <Gregor> Yeah, but I'm cheating by making the kernel provide all the interesting architecture now, and it doesn't have something that would work for that :)
08:33:47 <Gregor> So I'd need an actual server again.
08:34:27 <elliott> you could have it so that a writer relocks if it is not the oldest transaction or something
08:34:31 <elliott> I guess getting a transaction list is non-trivial
08:37:33 <elliott> Gregor: You can't sleep! What if it breaks again?
08:38:48 <shachaf> `run echo "hello" | ./zalgo
08:38:49 <HackEgo> hzalgo: <stdout>: hPutChar: invalid argument (invalid character)
08:39:33 <shachaf> `run echo "hello" | LANG=en_US.utf8 ./zalgo
08:39:35 <HackEgo> hzalgo: <stdout>: hPutChar: invalid argument (invalid character)
08:41:32 -!- epicmonkey has joined.
08:42:14 <shachaf> `run echo hello | runghc -hide-package base -package haskell98 ./zalgo.hs
08:42:19 <HackEgo> \ Top level: \ Failed to load interface for `Prelude' \ It is a member of the hidden package `base'. \ It is a member of the hidden package `haskell98-2.0.0.2'. \ It is a member of the hidden package `haskell2010-1.1.1.0'. \ Use -v to see a list of the files searched for.
08:42:47 <shachaf> `run echo hello | runghc -package haskell98 -hide-package base zalgo.hs
08:42:52 <HackEgo> \ Top level: \ Ambiguous interface for `Prelude': \ it was found in multiple packages: base haskell98-2.0.0.2
08:43:25 <shachaf> `run echo hello | runghc -- -package haskell98 -hide-package base -- zalgo.hs
08:43:29 <HackEgo> \ Top level: \ Ambiguous interface for `Prelude': \ it was found in multiple packages: base haskell98-2.0.0.2
08:43:32 <shachaf> `run echo hello | runghc -package haskell98 -hide-package base -- zalgo.hs
08:43:37 <HackEgo> \ Top level: \ Ambiguous interface for `Prelude': \ it was found in multiple packages: base haskell98-2.0.0.2
09:11:13 -!- Sgeo|web has joined.
09:12:31 -!- Vorpal has joined.
09:22:45 -!- lifthrasiir has quit (Ping timeout: 252 seconds).
09:23:26 -!- lifthrasiir has joined.
09:28:10 -!- Bike has quit (Quit: leaving).
09:30:43 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: git: not found
09:34:40 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6441
09:34:52 <HackEgo> addquote \ addquotee \ allquotes \ delquote \ delquotee \ pastenquotes \ pastequotes \ quote \ quotes
09:35:09 <HackEgo> #!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ echo $(qc | cut -d' ' -f1)") $1"
09:35:24 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo \ zalgo.hi \ zalgo.hs \ zalgo.o
09:35:48 <HackEgo> #!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ printf "%d) %s" $(qc | cut -d' ' -f1) "$1"
09:36:11 <Sgeo|web> (This question does relate to Clojure, but only in my motivation for asking it)
09:36:13 <HackEgo> #!/bin/sh \ allquotes | if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ sed "$1q;d" \ else \ grep -P -i -- "$1" \ fi \ else shuf -n 1; fi
09:36:46 <HackEgo> #!/bin/sh \ nl -w 1 -s ') ' quotes
09:37:06 <HackEgo> #!/bin/sh \ if [ "$1" ]; then quote "$1"; else allquotes; fi | paste
09:37:17 <HackEgo> cat: quotes | paste: No such file or directory
09:37:23 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20342
09:37:59 <HackEgo> bash: ruby: command not found
09:38:08 <HackEgo> Unknown option: -e \ usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... \ Try `python -h' for more information.
09:38:13 <HackEgo> #!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.'"$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
09:39:59 <HackEgo> #!/bin/sh \ id=$1 \ expr "$1" + 0 >/dev/null 2>&1 || exit 1 \ head -n $((id-1)) quotes >quotes.new \ tail -n +$((id+1)) quotes >>quotes.new \ diff quotes quotes.new >/dev/null && exit 1 \ printf "*poof*%s" "$(quote $id | cut -d')' -f2-)" \ mv quotes.new quotes
09:41:03 <elliott> Sgeo|web: http://hackage.haskell.org/package/machines
09:43:28 -!- Jafet has joined.
09:46:06 <elliott> @tell Gregor HackEgo should be able to output ANSI colours.
09:50:52 <HackEgo> 429) <monqy> rest in peace lambdabot???? <ais523> monqy: it'll probably be back later <monqy> nap in peace
09:50:57 <HackEgo> #!/bin/sh \ allquotes | if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ sed "$1q;d" \ else \ grep -P -i -- "$1" \ fi \ else shuf -n 1; fi
10:19:23 -!- nooga has joined.
10:22:48 <fizzie> `run printf '\x1b[31mfoo\x1b[0m\n'
10:22:59 <fizzie> That was red for me just fine.
10:23:08 <shachaf> Hmm, that didn't use to work.
10:23:16 <elliott> I guess the filtering went? Yay.
10:23:20 <elliott> That means I can do stuff.
10:23:42 <shachaf> @tell Gregor thanks Gregor
10:26:25 <oerjan> amazingly efficient, that Gregor
10:26:32 <oerjan> as long as haskell is not involved.
10:27:35 <elliott> I think there is the slightest possibility Gregor might consider this behaviour buggy.
10:27:55 <oerjan> he said something about removing a line length limit
10:29:04 -!- oerjan has quit (Quit: Maybe ZZZZ).
10:44:53 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:45:24 -!- copumpkin has joined.
10:56:54 <shachaf> Maybe Jafet has neutrino on /ignore too.
10:57:16 <monqy> i'm seeing the whole thing in 100%
10:57:38 <shachaf> monqy: but are you seeing the pastes elliott is pasting in /msg to me
10:57:55 <shachaf> I have neutrino on /ignore but it doesn't help a bit.
10:58:14 <shachaf> monqy: what pastes do you get
10:58:15 <Jafet> You should try to implement transitive /ignore.
10:58:40 <shachaf> Jafet: I consider turning off my IRC client to be equivalent.
11:00:44 <fizzie> The /dev/urandom must've been too much.
11:04:10 <arcatan> our channel is in kinda sorry shape when everyone starts ignoring each other
11:05:16 * elliott wonders why arcatan thinks neutrino is in #esoteric.
11:05:54 <elliott> ideally the IRC protocol would just force people to be in one channel exclusively
11:06:49 <monqy> what if irc was just one big channel
11:07:14 <monqy> what if life was just one big channel
11:07:37 <lambdabot> http://hackage.haskell.org/trac/ghc/newticket?type=bug
11:07:39 <Jafet> monqy is nearing enlightenment
11:08:21 <FireFly> what if you got banned from that one channel
11:08:26 <Jafet> I can't find the remote to change my life
11:08:29 <elliott> monqy: have you ever been in #ubuntu
11:08:44 <shachaf> #ubuntu: better or worse than #gentoo????
11:08:53 <Jafet> You'd hope that there isn't a bad commercial after you
11:09:14 <monqy> ive never been in #gentoo either
11:09:33 <FireFly> Well have you been to #esoteric?
11:09:52 <monqy> pffff i'm only in #life
11:09:53 <elliott> monqy: you should join #ubuntu it's a real experience
11:10:06 <elliott> like being in the biggest party but nothing makes sense and you don't even remember partying
11:10:07 <arcatan> if we merged all the programming language channels, then all those "should I learn Haskell or Scala" questions would be finally settled
11:10:11 <shachaf> #life #is #good #hashtags #are #cool #hi #monqy #himonqy
11:16:22 <Sgeo|web> I should write a monads library for Clojure
11:16:41 <monqy> hi sgeo!!!! if it's what the world needs, i support you whollly
11:17:51 <Sgeo|web> I sort of went on a rant in #clojure
11:18:02 <monqy> did they have any input
11:18:22 <Sgeo|web> Not about monads libraries sucking, but about threading macros just being another way to use monads
11:18:40 <monqy> you've got their blessing
11:19:11 <Sgeo|web> Erm, as in, my rant was about threading macros..;
11:19:22 <Sgeo|web> They didn't really respond to my rant, except for one person asking a question
11:20:41 <Jafet> The world needs better healthcare, social justice and wealth distribution, but a monads library for clojure surely won't hurt
11:26:05 <shachaf> Jafet: Who are you, anyway?
11:26:40 <Jafet> Some call me Jafet.
11:27:27 <monqy> shachaf: do you have cheater on ignore? he's talking to you....
11:27:34 <Jafet> Like elliott, and egobot if it hadn't been killed
11:28:59 <Sgeo|web> I haven't been paying attention to this conversation
11:43:12 <shachaf> monqy: weren't you going to go to sleep
11:43:47 <elliott> guys stop being a peanut gallery
11:43:47 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
11:43:54 <elliott> you'll run out of pean- what - uts
11:44:13 <shachaf> @ask elliott what were those messages?
11:45:12 -!- epicmonkey has quit (Ping timeout: 264 seconds).
11:46:08 <elliott> Sgeo|web: what will your monads library do
11:49:38 <Sgeo|web> Have the user store bind and return functions in dynamically-scoped variables
11:50:21 <monqy> what does this mean
11:51:06 <Sgeo|web> Rather than the current libraries, one of which: Uses some macrology to achieve a sort of lexical scoping in some bizarre way, which if you want to actually write a function that uses bind and return, you have to use defmonadfn. The other of which uses a bind based on its argument, and the return function needs to be passed a dummy value of the relevant type
11:51:22 <elliott> so you can only use one monad at once
11:52:00 <elliott> not sure what the point of a monad abstraction is in a dynamically-typed language really, you don't buy yourself anything
11:52:10 <shachaf> elliott: what if it's cont
11:53:03 <monqy> elliott: whell first you have to agree on what a monad "is"
11:54:44 <monqy> `quote etiquit, culture, and hackego being broken..............
11:55:03 <shachaf> monqy: teach me `quote etiquit
11:55:21 <monqy> step 1 you dont do it when people are talking...................................
11:55:24 <shachaf> monqy: "afaict" elliott only does it to disrupt conversations
11:55:30 <monqy> elliott is this true
11:55:40 <shachaf> ok ok ok s/only/sometimes/
11:55:49 <elliott> i think once i did it when someone was talking about something really dumb
11:55:55 <elliott> otherwise i only do it when nothing's happening
11:56:03 <monqy> shachaf: could you have done this flagrant violation of etiquit & culture to
11:56:05 <monqy> shachaf: "make a point"
11:56:30 <monqy> step 2 is to let step 1 sink in
11:57:00 <monqy> step 3 can wait...............
11:57:11 <shachaf> Don't go inductive on me, monqy!
11:57:27 <shachaf> monqy: By the way what's the best constructivist way of constructing the reals?
11:57:39 <shachaf> elliott says cauchy sequences but that can't be right.
11:57:40 <monqy> i'm not well-versed on constructivist ways of constructing the reals
11:57:54 <shachaf> OK, best regular way of constructing the reals.
11:58:04 <monqy> i'm not well-versed on those either!!!!
11:58:12 <shachaf> You don't need to be well-versed!
11:58:12 <monqy> the only one i really "know" is cauchy sequences
11:58:26 <monqy> "cauchy sequences"
12:11:31 -!- Phantom_Hoover has joined.
12:18:00 <shachaf> I have a mechanical proposal for vastly improving the `quote database.
12:18:08 <shachaf> Remove all the quotes that aren't by zzo38.
12:18:16 <fungot> elliott: they say that the galadrim wove. it is customary to find out what lay ahead. " they're gone!" he cried. " what did he see to frighten him?" said boromir. " i thought it was from fear that she should impart the secrets of the daughters of the seas and father of the gods and is certainly not entertaining, being in fact very uninteresting except as a handsome young man lifted the sword and thrust with both arms; the blade
12:18:45 <shachaf> monqy: You have to change your nick to something with a number on the end.
12:18:54 <shachaf> Then elliott will think you're not total!
12:19:11 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
12:27:51 -!- Phantom_Hoover has joined.
12:30:20 -!- augur_ has changed nick to Statimcets.
12:32:31 <fungot> Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack* pa qwantz sms speeches ss wp youtube
12:33:09 -!- Arc_Koen has joined.
12:33:14 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
12:39:25 -!- Phantom_Hoover has joined.
12:43:26 -!- monqy has quit (Quit: hello).
12:45:27 -!- Nisstyre has quit (Ping timeout: 256 seconds).
12:50:46 -!- Phantom__Hoover has joined.
12:52:01 -!- Phantom___Hoover has joined.
12:54:14 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
12:55:34 -!- Phantom__Hoover has quit (Ping timeout: 240 seconds).
12:58:39 -!- nooga has quit (Ping timeout: 265 seconds).
13:00:53 -!- Nisstyre has joined.
13:13:45 -!- Phantom_Hoover has joined.
13:22:34 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
13:32:42 -!- Taneb has joined.
13:51:00 -!- Taneb has quit (Quit: Leaving).
13:54:14 -!- Phantom___Hoover has quit (Ping timeout: 240 seconds).
13:58:52 -!- nooga has joined.
14:50:14 -!- evitable has joined.
15:17:17 <Sgeo|web> What is it with people named "Elliott" and Haskell?
15:18:12 <elliott> simon peyton-elliott, elliott marlow, elliott kmett...
15:18:43 <Sgeo|web> I know an Elliot IRL who loves Haskell
15:26:25 <FreeFull> I don't know of anyone called Haskell other than Haskell Curry
15:28:32 <elliott> don't you mean haskell elliott
15:29:34 -!- TeruFSX has joined.
15:39:20 -!- epicmonkey has joined.
15:52:26 -!- evitable has quit (Ping timeout: 276 seconds).
15:57:56 -!- Statimcets has changed nick to augur.
16:00:15 -!- TeruFSX has quit (Ping timeout: 260 seconds).
16:02:08 -!- TeruFSX has joined.
16:16:37 <Sgeo|web> Also, mandatory Flash makes baby Tim Berners-Lee cry
16:18:52 <nortti> it makes my computer cry
16:46:09 -!- zzo38 has joined.
16:49:26 <Lumpio-> Their loading bar has 9 boxes D:
16:49:33 <Lumpio-> And the site's horrible in general
16:49:38 <Lumpio-> zzo38 please see http://wondertainment.net/
16:55:11 <zzo38> Correct; it certainly doesn't work.
16:55:19 <zzo38> It is horrible in general.
17:17:26 -!- TeruFSX has quit (Ping timeout: 256 seconds).
17:18:16 -!- Bike has joined.
17:26:16 -!- oklofok has quit (Read error: Connection reset by peer).
17:26:53 -!- Mathnerd314 has quit (Remote host closed the connection).
17:35:59 <quintopia> FreeFull: i knew a haskell once. no idea if he was named after curry.
17:36:12 <quintopia> definitely an odd duck though. excellent taste in music.
18:03:49 -!- TeruFSX has joined.
18:23:13 -!- HackEgo has quit (Remote host closed the connection).
18:23:23 -!- HackEgo has joined.
18:38:19 <nortti> http://apple.slashdot.org/story/12/12/08/2330225/darling-run-apple-os-x-binaries-on-linux
18:41:24 <lambdabot> Gregor: You have 2 new messages. '/msg lambdabot @messages' to read them.
18:43:34 <lambdabot> No instance for (GHC.Show.Show (GHC.Types.IO ()))
18:44:08 <Gregor> But ANSI colors are now possible.
18:44:39 <fizzie> I see mIRC colors are, too.
18:46:16 <Gregor> That makes more sense I suppose.
18:50:28 <Gregor> `printf '\x035,12OH NOOOO\x03\n'
18:50:51 <Gregor> `printf \x035,12ENJOY YOUR ANEURISM\x03
18:54:35 -!- SingingBoyo has joined.
18:56:26 <HackEgo> 1!?ܭsTO_GZ}X?Sd$#3:`Эr@f<CTCP>Uj \ ̷˻ל9SfjXHNJy~\}%?(a;~ J^<Rv5qFFExEO{6R,K>{cGcU#)6\cEHős}E<CTCP>n*8olOSs
18:56:49 <fungot> Gregor: ashikaga takauji: ashikaga takauji was a flattened diamond shape in section. seen in profile, the maidens rewarded the heroes by kissing them and cut one of the competing gangs. ( van dale's groot woordenboek der nederlandse taal)
18:59:24 <Gregor> fizzie: Why does fungot ignore HackEgo? :(
18:59:25 <fungot> Gregor: as crom is my witness, i'll never go hungry again!
19:00:44 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
19:01:15 <Bike> Does fungot use logs of itself to construct its text? It'd better.
19:01:16 <fungot> Bike: did you suceed in building my kali port ( to the same code
19:01:30 <Bike> No, fungot. I did not suceed. And neither have you.
19:01:31 <fungot> Bike: i guess so.) i think i'll just push the button under each light, then eventually moved up to an alive esoteric!
19:02:15 <fungot> FireFly: even python is guilty of that sometimes get sent in a request to the members of our society to look down to my pants when i wear this top.
19:02:38 <fungot> FireFly: your client is using. don't care about anything else for mac which supports syntax highlighting??
19:15:29 -!- nooga has quit (Read error: Connection reset by peer).
19:15:39 <fizzie> Gregor: He doesn't like other bots.
19:15:47 <fizzie> fungot: Isn't that right?
19:15:48 <fungot> fizzie: can someone explain why the arabic, hebrew, arabic, brazilian ( portuguese), dutch, russian, greek, latin.
19:16:22 <fizzie> fungot: I don't think anyone can explain that.
19:16:22 <fungot> fizzie: there are no files, just write a
19:21:11 -!- nooga has joined.
19:21:48 -!- Taneb has joined.
19:30:32 <Gregor> `bf ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
19:30:35 -!- Phantom___Hoover has joined.
19:32:59 -!- zzo38 has quit (Remote host closed the connection).
19:35:04 <HackEgo> 16Kinterps/bfjoust/programs \ 288Kinterps/bfjoust \ 60Kinterps/befunge \ 200Kinterps/axo \ 44Kinterps/glypho \ 600Kinterps/sadol \ 40Kinterps/fukyorbrane/programs \ 232Kinterps/fukyorbrane \ 8.0Kinterps/gcccomp \ 28Kinterps/qbf \ 12Kinterps/whirl \ 52Kinterps/lambda \ 8.0Kinterps/ghc \ 24Kinterps/udage01 \ 20Kinterps/glass/exa \ 3.6M
19:35:10 <HackEgo> 16Kinterps/bfjoust/programs \ 288Kinterps/bfjoust \ 60Kinterps/befunge \ 200Kinterps/axo \ 44Kinterps/glypho \ 600Kinterps/sadol \ 40Kinterps/fukyorbrane/programs \ 232Kinterps/fukyorbrane \ 8.0Kinterps/gcccomp \ 28Kinterps/qbf \ 12Kinterps/whirl \ 52Kinterps/lambda \ 8.0Kinterps/ghc \ 24Kinterps/udage01 \ 20Kinterps/glass/exa \ 3.6M
19:35:57 <Taneb> Deprecating Egobot?
19:37:28 <Gregor> It ain't there yet, because
19:37:35 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bfjoust: not found
19:42:00 <HackEgo> interps/bfjoust: directory
19:42:10 <Gregor> The interpreter is there, yeah.
19:43:46 -!- carado has quit (Ping timeout: 246 seconds).
19:44:04 <HackEgo> TERM=linux \ http_proxy=http://127.0.0.1:3128 \ HACKENV=/hackenv \ PATH=/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin \ PWD=/hackenv \ HOME=/tmp \ SHLVL=1 \ _=/usr/bin/env
19:44:18 <Gregor> Damn it, it's TOO FAST.
19:45:47 <HackEgo> ls: cannot access && env: No such file or directory
19:45:53 <HackEgo> ls: cannot access . && env: No such file or directory
19:46:09 <HackEgo> ls: cannot access "." && env: No such file or directory
19:46:35 <HackEgo> bin \ canary \ egobot.tar.xz \ foo \ interps \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo \ zalgo.hi \ zalgo.hs \ zalgo.o \ TERM=linux \ http_proxy=http://127.0.0.1:3128 \ HACKENV=/hackenv \ PATH=/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin \ PWD=/hackenv \ HOME=/tmp \ SHLVL=1 \ _=/usr/bin/env
19:59:31 -!- epicmonkey has quit (Read error: Operation timed out).
20:00:28 <jdiez> hm, HackEgo seems to be sending me extraneous CTCPs
20:00:39 <jdiez> which I did not ask for
20:05:35 <Taneb> "Several people have died since [...] last month." -- BBC News
20:06:42 -!- ais523 has joined.
20:07:07 <FireFly> the `cat /dev/urandom might've triggered a CTCP
20:08:00 <FireFly> Gregor: maybe you should at least filter out \x01 to avoid CTCPs
20:08:23 <Gregor> Uhh, HackEgo cannot send CTCPs.
20:08:40 <Gregor> It adds a zero-width space before any output that starts with \x01.
20:08:43 <jdiez> * Received unknown CTCP UjÏ by HackEgo!codu@codu.org with arguments: \ Ì·¯Ë»Ô×ÚøõÐ9SìÊfjXà¥HN¿öJ·Äyð~\}Œ£%?ß(a;~ J^š<Rv5¥ìqFFEŸ²xùEO{6ºR,×KŠ>{ßcGêcíUåþŸ¡#Í)6í€ÈÊÄ\§¡ÝcEHűsð}ÇE
20:08:54 <Gregor> It's possible that somebody bonked with it before I readded the fix.
20:08:55 <FireFly> I think some clients don't require it to start with \x01
20:09:01 <Gregor> ... then some clients are broken.
20:09:02 <FireFly> I think some clients allow multiple CTCPs in one message, e.g.
20:09:12 <Gregor> `printf '\x01ACTION does not do CTCP.\x0`'
20:09:27 <Gregor> `printf '\x01ACTION does not do CTCP.\x01'
20:09:50 <Gregor> HackEgo has become unresponsive X-D
20:10:11 <FireFly> http://www.kvirc.de/docu/doc_ctcp_handling.html
20:10:15 <Gregor> Either way, if your client is interpreting anything it's doing since about 9AM PST as CTCP, your client is broken.
20:10:16 <nortti> I hope my `cat zalgo.o didn't do it
20:10:43 <jdiez> I received it about 1.5 hours ago
20:11:18 <Phantom___Hoover> is jdiez some poor unfortunate who got tcp'ed out of nowhere or something
20:11:49 <Gregor> Random CTCPs bring idlers out of the woodworks X_D
20:12:23 <FireFly> "The two delimiters were used to begin and terminate the CTCP message; The origial protocol allowed more than one CTCP message inside a single IRC message. Nobody sends more than one message at once, no client can recognize it (since it complicates the message parsing), it could be even dangerous (see below)."
20:12:31 -!- HackEgo has quit (Remote host closed the connection).
20:12:40 -!- HackEgo has joined.
20:12:55 <Gregor> So, what, I have to filter out \x01 ENTIRELY?
20:13:08 <Gregor> `printf '\x01ACTION This should not be a CTCP.\x01'
20:13:09 <HackEgo> '<CTCP>ACTION This should not be a CTCP.<CTCP>'
20:13:19 <Gregor> Well, certainly not like that it shouldn't X-D
20:13:22 <Gregor> `printf \x01ACTION This should not be a CTCP.\x01
20:13:23 <HackEgo> <CTCP>ACTION This should not be a CTCP.<CTCP>
20:13:32 <Gregor> jdiez: Was that a CTCP ACTION (/me) to you?
20:13:54 <jdiez> nope, just a plain CTCP
20:14:05 <FireFly> What CTCP did the client report?
20:14:10 <Gregor> What broken-ass client are you using that's interpreting that as a CTCP >_<
20:14:21 <jdiez> * Received unknown CTCP UjÏ by HackEgo!codu@codu.org with arguments: \ Ì·¯Ë»Ô×ÚøõÐ9SìÊfjXà¥HN¿öJ·Äyð~\}Œ£%?ß(a;~ J^š<Rv5¥ìqFFEŸ²xùEO{6ºR,×KŠ>{ßcGêcíUåþŸ¡#Í)6í€ÈÊÄ\§¡ÝcEHűsð}ÇE
20:14:28 <Gregor> ... no, the one just a second ago.
20:14:40 <FireFly> the "This should not be a valid CTCP" mesasge
20:14:41 <jdiez> no, I did not get any CTCPs now
20:14:44 <jdiez> I did get an ACTION
20:14:50 <jdiez> [21:13:27] -*- HackEgo This should not be a CTCP.
20:14:54 <jdiez> but in the channel
20:15:02 <FireFly> Yes, that's what Gregor meant
20:15:11 <Gregor> jdiez: That is a CTCP, and your client is seriously fucking terrible.
20:16:00 <Gregor> `printf \x01ACTION This should not be a CTCP.\x01
20:16:01 <HackEgo> .ACTION This should not be a CTCP..
20:16:24 <Gregor> JUST for clients that are so, so broken, I'll filter out \x01 entirely.
20:23:13 <nortti> :D it really does freeze hackego
20:27:47 <nortti> well now I know what to do when I'm bored
20:28:44 <FireFly> after you've frozen him you can't play around with shell commands
20:29:09 <nortti> hmm. I meant I'll try to find out why it freezes
20:30:10 -!- HackEgo has quit (Remote host closed the connection).
20:30:21 -!- HackEgo has joined.
20:30:28 <Gregor> I believe that was the problem.
20:30:33 <HackEgo> ELF.............>.....................H..........@.....@..........................HEL9...I8M;...wlHE....H]ID$....ID$o..ID$....ID$...ID$....ID$ID$ID$I$ID$HEHE....A....H....IDž...8...Ae....................9...HEL9rKIM;...w3HE....H]ID$........A........I|$H....IDž.....
20:30:34 -!- Phantom__Hoover has joined.
20:30:34 <FireFly> I was about to suggest that too :P
20:30:37 <fizzie> Arguably it's not "broken" to follow the specification, such as it is.
20:30:37 <Gregor> Side-effect of switching to Python.
20:30:57 <nortti> what language did you use before?
20:33:16 <nortti> brb, rewriting oonbotti in rc
20:33:48 <Gregor> elliott rewrote it to make it transactional, and even though the underlying transactional part was broken, it was easier to use his infrastructure than to rewrite that back in shell.
20:33:55 -!- Phantom___Hoover has quit (Ping timeout: 241 seconds).
20:35:03 -!- Sgeo|web has quit (Ping timeout: 245 seconds).
20:35:12 <fizzie> Also, I have a vague feeling the zzo38 IRC client supported mid-line CTCPs.
20:35:29 <fizzie> [2012-01-01 03:49:05] <zzo38> My client parses CTCP requests anywhere in a line.
20:36:03 <Gregor> Well, either way, that's "fixed".
20:36:10 <FireFly> Did he start writing his client on new years' eve?
20:36:21 <fizzie> fungot: You should be "fixed" too.
20:36:22 <fungot> fizzie: i know it does not seem to figure out
20:36:33 <fizzie> fungot: You're not "fixed" yet, but you should be.
20:36:33 <fungot> fizzie: are scheme's types, but thats because all the files which are there more libs? i think you should
20:36:56 <Gregor> But I want there to be widdle funglings :(
20:38:38 <fizzie> <zzo38> As far as I know, once someone in this channel tried sending CTCP request in the middle of another message, and my client is the only one that responded.
20:38:45 <fizzie> (That "someone" was ais523.)
20:39:45 <fizzie> FireFly: The client's older than that. It was just discussed around the new year.
20:45:15 <fizzie> Will Moore's Law stop working when Gordon Moore dies?
20:45:50 <pikhq> Gordon Moore is the first immortal.
20:45:54 <nortti> I hope not as then I'd catch up on computational speed with normal people
20:46:48 <Taneb> Gordon Moore's expected lifespan doubles every 18 months
20:47:04 <Gregor> `addquote <Taneb> Gordon Moore's expected lifespan doubles every 18 months
20:47:08 <Phantom__Hoover> i think we need a new version of shutup that responds to nortti talking about his outdated hardware
20:47:08 <HackEgo> 861) <Taneb> Gordon Moore's expected lifespan doubles every 18 months
20:47:22 <nortti> Phantom__Hoover: agreed
20:47:24 <fizzie> "-- the 2010 update to the International Technology Roadmap for Semiconductors has growth slowing at the end of 2013,[13] after which time transistor counts and densities are to double only every three years --" I suppose it's kind of tailing off.
20:48:02 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26869
20:50:50 <nortti> thay will make a great fortune file
20:51:23 <Gregor> wtf is the use of `pastequotes with no argument X_X
20:51:26 <Gregor> It could just link to quotes.
20:51:46 <HackEgo> 6.3M.hg/store/data/bin \ 2.1M.hg/store/data/lib \ 16M.hg/store/data/paste \ 12M.hg/store/data/share/_word_data \ 12M.hg/store/data/share \ 8.0K.hg/store/data/wisdom/~c2~af~5c(~c2~b0__o) \ 400K.hg/store/data/wisdom \ 2.5M.hg/store/data/test \ 12K.hg/store/data/maketext \ 44K.hg/store/data/p7zip__9.20.1/_d_o_c_s/_m_a_n_u_a_l/commands \ 108K
20:53:12 <HackEgo> 683) <shachaf> fizzie: What kind of speech recognition do you do? <shachaf> If you only need to recognize famous speeches, like Churchill or something, it should be pretty easy.
20:53:22 <HackEgo> 75) <Warrigal> So, I'm inside a bottle which is being carried by a robot.
20:53:25 <HackEgo> 738) <elliott> then they edited their own talk page comments after someone replied to it, and edited /the replier's comment/ so that it made sense in context
20:53:27 <HackEgo> 334) <zzo38> I figured out something about C program. If you use ? : a lot then you don't need as much parentheses but it makes it more difficult to understand.
20:53:28 <HackEgo> 663) <oerjan> well, i have to assume if i'm going to make any asses
20:58:24 <Gregor> `echo HOLY SHIT GUYS I'M SO FAST RIGHT NOW
20:58:26 <HackEgo> HOLY SHIT GUYS I'M SO FAST RIGHT NOW
21:00:32 <HackEgo> 718) <fizzie> fungot: Yeah, "fungott" would [...] remind people of elliott. <fungot> fizzie: now that could be nice for a simple language can be used
21:00:59 <Taneb> Reading that after its happend loses the effect somewhat
21:01:13 <HackEgo> 163) [spam] Any flavored hell can pee on the pig pen, but it takes a real football team to throw a slyly optimal formless void at a hole puncher. \ 420) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once. \ 635) <elliott> ais523: I pronounce "xor" by punching myself in the face and then "or"
21:01:14 -!- SingingBoyo has quit (Ping timeout: 255 seconds).
21:01:26 <HackEgo> 189) "Every physicist wants to violate Einstein, but thus far the great man has remained pretty chaste." --Kode Vicious
21:01:26 <HackEgo> 48) <GregorR> ??? <GregorR> Are the cocks actually just implanted dildos? <GregorR> Or are there monster dildos and cocks? <GregorR> Or are both the dildos and cocks monster?
21:01:26 <HackEgo> 29) <zzo38> I am not on the moon.
21:01:26 <HackEgo> 810) <zzo38> But I still sign by my pens and use extra dots and shapes and so on so that I can claim I was threatened to sign it and put those dots there to warn you, or whatever
21:01:26 <HackEgo> 662) <kallisti> man, I love pseudo-random decision making <Gregor> kallisti: Man, I base most of my life on pseudo-random decision making. <oklopol> i usually just ask my dick and i then rarely even bother to listen
21:02:44 <FireFly> I wonder what a slyly optimal formless void is, and how you throw it at a hole puncher
21:05:12 <fungot> FireFly: it just means i'm always coming and going without so much as " dark side of the conversation).
21:07:02 <HackEgo> 222) <A. Gelman and G. Romero> We originally wrote this article in Word, but then we converted it to Latex to make it look more like science.
21:08:18 -!- ared_ has joined.
21:08:58 -!- ared_ has changed nick to xDEADCA7.
21:11:59 <shachaf> elliott: Did you write it yet?
21:13:11 -!- sonicspin has joined.
21:13:26 <HackEgo> sonicspin: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
21:14:27 <shachaf> Gregor: Would cat /dev/urandom still break it?
21:14:40 <HackEgo> Xe؍j仞 \ JZ3?%Oj߈9ђ4Nn(\E48qwc%J6^L/x&4ff1rdeP+[/\"osJL8u\R$J"z5.ellD 1h]|%*"O5wr2Ȥy5fްA[S.lY=ۥnd-XvՐDR7M b7릈SFm*4%hv<[hg2 >+jJϏɍxR|#I?AM1uTAI/o~3
21:14:53 <HackEgo> Taneb is not elliott, no matter who you ask.
21:15:03 <HackEgo> ԙV`V{b3bcSDr1o6T=I$f!KJX}%^aIm߮RѲf-61vżזouLW.@)N;8ѕP/]G?W fBӫȅpV ¼9w
21:15:54 <Taneb> My school's shouting at me so I do now!
21:16:17 <Taneb> York, Exeter, Edinburgh, Loughborough, Newcastle
21:17:21 <Phantom__Hoover> if you apply to warwick or birmingham we can have the biggest #esoteric meetup ever!
21:17:33 <Taneb> Haven't got the grades :(
21:17:51 -!- oerjan has joined.
21:17:57 <Taneb> ais523, ping re: birmingham university
21:18:29 <olsner> you can always go to farming school, like Sgeo
21:18:51 <Gregor> `quote poultry science
21:18:53 <HackEgo> 169) <Gregor> elliott: My university has two Poultry Science buildings. <Gregor> Two! \ 255) <Phantom__Hoover> Gregor, yeah, but Purdue has poultry science facilities beyond the dreams of avarice.
21:20:41 <Taneb> Maths and Computer Science
21:20:48 <Taneb> Birmingham wants A*AA
21:22:48 <Taneb> You can't actually get A* at AS
21:22:50 <shachaf> Is this some sort of code?
21:22:56 <Taneb> But if you could, I would have?
21:23:22 <Phantom__Hoover> shachaf, England uses letter grades, with A* added on because grade inflation had made an A worthless.
21:23:50 <Taneb> AS is a qualification
21:23:57 <Taneb> Obtained roughly at age 16-17
21:24:05 <Taneb> It's worth half an A2
21:24:11 <Taneb> Which is obtained at 17-18
21:24:25 <oerjan> i vaguely recall there was this place (in norway?) which was so strict you couldn't get in with just perfect grades
21:24:29 <shachaf> So you confirm that it's some sort of code.
21:24:50 <Taneb> I don't completely understand it
21:24:51 <oerjan> you had to have some kind of bonus beyond high school
21:24:54 <Phantom__Hoover> oerjan, there's a continual stream of horror stories like that in the UK.
21:25:33 <Phantom__Hoover> I mean, Warwick and Cambridge both just flat-out expect you to sit their test as well as the national one for maths.
21:25:48 <Taneb> Phantom__Hoover, it occurs to me I have no idea what you look like
21:26:00 <Taneb> In fact, there are two people in this channel I know the appearance of
21:26:10 <olsner> I guess for any sufficiently popular education there will be more people with perfect grades applying than they have places
21:26:11 <shachaf> Phantom__Hoover is invisible.
21:26:30 <shachaf> I look like this: http://slbkbs.org/sb/1.png
21:27:11 <Phantom__Hoover> Taneb, well if you see a young-ish girl with black hair in Hexham, that's probably elliott.
21:27:13 <oerjan> well, in norway there is a common system for applications, so i don't think they can make special demands like having their own tests.
21:27:38 <Taneb> Phantom__Hoover, in that case I know at least 8 of elliott
21:27:57 <Phantom__Hoover> I'm not entirely sure why Cambridge gets away with it TbH.
21:28:21 <Fiora> that would make me elliott too. though not in hexham. so I suppose not.
21:28:37 <Phantom__Hoover> Their test is a standardised pre-interview thing, and it's a lot less taxing.
21:29:06 <Fiora> I know stanford has a similar reputation with grades, they reject loooads of people with 4.1 GPAs and perfect SATs.
21:29:12 <Taneb> Fiora, how old are you, if you don't mind me asking?
21:29:39 <oerjan> <Taneb> Phantom__Hoover, in that case I know at least 8 of elliott <-- elliott has clones? makes sense.
21:30:08 <Taneb> Fiora, not the right age then
21:30:28 <oerjan> lessee i know what Taneb looks like, because he linked youtube, and ais (well a few years ago), because of the wolfram biography
21:30:45 <Taneb> oerjan, I've had a haircut since
21:30:47 <Phantom__Hoover> There are a /lot/ of people doing maths at Warwick because they couldn't get into Cambridge.
21:32:39 <Taneb> Screw it, I'm gonna apply to Birmingham
21:34:05 <Phantom__Hoover> ask your teacher to predict you a grade better in the thing you have a b for
21:35:09 -!- quintopia has quit (Ping timeout: 276 seconds).
21:35:22 <oerjan> fiora also looks like a cartoon, i know that from her tumblr
21:35:38 <Fiora> yes, I am actually a purple-haired Tales character
21:35:57 <Fiora> it's a game, actually :P
21:36:11 <oerjan> ...i am using cartoon as the most general term here.
21:36:29 <oerjan> i was considering saying manga
21:36:29 -!- quintopia has joined.
21:36:30 <Fiora> (this is silly pedantry)
21:36:35 <Phantom__Hoover> but the fans of it get really pissed if you call it the wrong thing!
21:36:59 <Fiora> in extra fairness, like half the tales series has somehow ended up with anime adaptations too
21:37:23 <fizzie> Our "end of high school" exams assign a letter grade on the I/A/B/C/M/E/L scale, but at least the technical universities use the actual points (x/60) of the maths exam as an additional differentiator, presumably because of so many L's.
21:37:26 <oerjan> i'll just call it "tegneserie" and claim that all the other terms are completely unpronouncable in norwegian, ok?
21:37:34 <Phantom__Hoover> my impression of japanese things is that they exist in at least 5 manifestations in no less than 3 media
21:38:05 <Fiora> that's just the mega-franchises really
21:38:08 <Taneb> Phantom__Hoover, if you do that, eventually nobody in your school gets to go to university
21:38:47 <fizzie> And the E was added relatively recently too, to provide better resolution at the high end, it used to go directly to L from M.
21:40:46 <Taneb> Yeah, it kind of is
21:41:34 <shachaf> Not to be confused with the meta-franchises, where you can read a book about someone watching a film about someone playing a game.
21:42:41 <Fiora> would that be the sims?
21:43:00 <shachaf> Fiora: It would probably be the person watching you play the sims.
21:43:10 <oerjan> `addquote <Jafet> The world needs better healthcare, social justice and wealth distribution, but a monads library for clojure surely won't hurt
21:43:11 <Fiora> an LP of the Sims?
21:43:11 <shachaf> (You don't think you're at the top, do you?)
21:43:13 <HackEgo> 862) <Jafet> The world needs better healthcare, social justice and wealth distribution, but a monads library for clojure surely won't hurt
21:44:26 <shachaf> Can someone make elliott finish the thing?
21:44:47 <shachaf> Maybe I'll do it instead and do it really badly.
21:44:59 <shachaf> OK, constraint: The format has to be the same as the current one.
21:47:39 <shachaf> Gregor: How do I upload a script to HackEgo?
21:49:22 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
21:57:15 <Phantom__Hoover> (While the topic of education is still vaguely present: do you do calculus in high school in the US?)
21:57:36 <oerjan> <Gregor> ... then some clients are broken. <-- the ctcp specification actually says it can be anywhere in the message
21:58:01 <oerjan> thus, nearly _all_ clients are broken by not allowing it.
22:01:00 <Phantom__Hoover> whoah, american schools do a solid year of geometry and then two solid years of algebra?
22:01:38 <Phantom__Hoover> oh, a year of algebra, a year of geometry, then a year of algebra
22:01:48 <Gregor> oerjan: YOUR FACE IS BROKEN
22:01:52 <shachaf> I think trigonometry counts as algebra or something like that?
22:01:58 * shachaf has never quite understood the system.
22:02:15 <Phantom__Hoover> trigonometry is always counted as algebra because it's taught idiotically
22:02:33 <Fiora> I think it depends on the area, every state (and sometimes county) has differing systems
22:02:34 <shachaf> Everything is taught idiotically.
22:02:47 <Fiora> I did algebra I, geometry, algebra II, precalc
22:02:56 -!- sebbu has quit (Ping timeout: 276 seconds).
22:03:11 -!- sebbu has joined.
22:03:11 -!- sebbu has quit (Changing host).
22:03:11 -!- sebbu has joined.
22:03:14 <FreeFull> I think it's stupid that the US splits maths up like that
22:05:24 <oerjan> `run allquotes | tail -1
22:05:25 <HackEgo> 808) <Phantom_Hoover> BF derivatives are a cancer running throughout the fringes of the esolang community, and as the fringes vastly outweigh the core, we're screwed.
22:06:03 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
22:07:28 -!- Vorpal has quit (Read error: Operation timed out).
22:07:37 <oerjan> `run allquotes | tail -1
22:07:38 <HackEgo> 862) <Jafet> The world needs better healthcare, social justice and wealth distribution, but a monads library for clojure surely won't hurt
22:07:40 <fizzie> Wow, checking the changeset of that revert 0 was perhaps a bad idea. That's one big list of changes.
22:08:45 <HackEgo> 232) <ineiros> HELLWORLD! <fizzie> It's like HELLO WORLD, except not *quite*. <ineiros> There is more agony.
22:08:49 <HackEgo> 135) <cpressey> Never ever use a quote which contains both the words "aloofness" and "gel" (verb).
22:08:51 <HackEgo> 104) <fungot> pikhq: from csh type ' exit', is a simple protocol which provides an interface to c. [...]
22:08:54 <HackEgo> 12) <Warrigal> "You're at that stage in your life where you're going to want to do some things in private." --my mom
22:08:56 <HackEgo> 171) <oklopol> well i just ate some stuff and watched family guy <oklopol> and i own a piano <oklopol> and i'm not wearing socks
22:09:03 <kmc> "HELLWORLD" reminds me of mrtaint.ko
22:09:12 <lambdabot> Couldn't match expected type `GHC.Arr.Array i0 e0'
22:09:29 <fizzie> Oh no, you can't do the "five `quote's, then they all appear in a row" thing anymore.
22:09:33 <kmc> `delquote 171
22:09:38 <HackEgo> *poof* <oklopol> well i just ate some stuff and watched family guy <oklopol> and i own a piano <oklopol> and i'm not wearing socks
22:09:52 <FireFly> Just introduce `quotes <N>
22:10:23 <fizzie> But that would run into line length limits.
22:10:36 <FireFly> it could still send separate messages
22:10:41 <FireFly> ...assuming that's possible
22:10:42 <fizzie> It could? How could it?
22:11:05 <fizzie> `run echo -e 'foo\nbar'
22:11:22 <fizzie> That's what it does to newlines.
22:11:32 <fizzie> Possibly there's a HACK to do it, but I'm not aware of one.
22:11:41 <FireFly> there could be a respond binary
22:11:45 <FireFly> but that could easily be abused
22:12:18 <FireFly> (one that's supplied by the environment and produces a single line, I mean)
22:12:24 <shachaf> `run printf '\x01ACTION blah\x01'
22:12:36 <olsner> `run echo -e 'foo\x00bar'
22:12:50 <shachaf> Did Gregor just take out \x03?
22:13:09 <fizzie> You can \x03. And \x1b.
22:13:34 <Gregor> Just no \x00 and no \x01.
22:14:04 <fizzie> `run printf '\x032so \x1b[31mcon\x035fusing\x1b[0m.'
22:14:55 <fizzie> Given that some clients don't do ANSI colors, perhaps you could use that kind of like the CSS conditional comment things to show different messages to different people.
22:15:42 <Gregor> My client certainly doesn't do ANSI.
22:16:14 -!- Nisstyre-laptop has joined.
22:26:13 -!- xDEADCA7 has quit (Remote host closed the connection).
22:30:19 <oerjan> it's december 2012 after all
22:30:33 <Taneb> And I now lack a kitchen ceiling!
22:30:54 <oerjan> that sounds serious. you might want to call a carpenter or something.
22:31:02 <Gregor> `echo HackBot is the coolest bot.
22:31:03 <Taneb> We will in the morning
22:31:04 <HackEgo> HackBot is the coolest bot.
22:31:24 <fizzie> fungot: Are you going to just sit there and take talk like that?
22:31:25 <fungot> fizzie: just listen to it. do it right, even if it's an engineer model vs. mathematician model thing.
22:32:34 <shachaf> What's the matter with \x01?
22:34:27 <fizzie> According to the file name, this manual is the version that has the contents in Danish and "Finish".
22:34:58 <Taneb> I saw a book yesterday that was a phrasebook for "Danish, Norwegian, Swedish... and some Finnish."
22:34:59 <FireFly> I guess they didn't Finnish the translation
22:35:25 <olsner> FireFly: or rather that's what they did, but to the finnish translation
22:35:28 -!- Nisstyre-laptop has quit (Quit: Leaving).
22:36:58 -!- Taneb has quit (Quit: Leaving).
22:37:02 <shachaf> People who tab-complete and then don't delete the space oughtn't exist.
22:37:05 <fizzie> It also mentions that I should follow the washing instruction tags in clothing in order to avoid an explosion.
22:37:07 <oerjan> `learn Finnish suomilaiset ei P erkeleistä on hakkapellittään.
22:37:14 <HackEgo> bin/?: POSIX shell script text executable
22:37:24 <HackEgo> #!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z) \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic"
22:37:30 <oerjan> `learn Finnish suomilaiset ei Perkeleistä on hakkapellittään.
22:38:07 -!- Nisstyre-laptop has joined.
22:38:22 <oerjan> `learn Finnish suomilaiset ei Perkeleistä on hakkapellittaan.
22:38:24 -!- augur has quit (Remote host closed the connection).
22:38:37 <oerjan> sorry, meesed up the wolev armonhwy
22:38:58 <HackEgo> ? \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ england \ esoteric \ europe \ everyone \ finland \ finns \ fizzie \ flower \ freefull \ friendship \ functor \ fungot \ gaspacho \ gazpacho \ glogbot \ gregor \ hackego \ haskell \ hexham \ hom
22:39:11 <FireFly> Sorry for the diverse highlights
22:39:12 <HackEgo> Unbound implicit parameter (?haskell::Wisdom) \ arising from a use of implicit parameter `?haskell'
22:39:29 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure. \ F
22:39:34 <HackEgo> cat: wisdom/hom: No such file or directory
22:39:43 <HackEgo> bin \ canary \ egobot.tar.xz \ foo \ interps \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo \ zalgo.hi \ zalgo.hs \ zalgo.o
22:39:50 <HackEgo> ls: cannot access wisdom/hom*: No such file or directory
22:39:55 <HackEgo> ls: cannot access wisdom/h*: No such file or directory
22:40:00 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure. \ F
22:40:18 <HackEgo> Homestuck is a cult religion for disaffected teens. Gamzee drives the bus.
22:40:22 <FreeFull> shachaf: I might have restored a revision
22:40:36 <HackEgo> C is the language of��V�>WIד�.��Segmentation fault
22:40:40 <HackEgo> Monads are just monoids in the category of endofunctors.
22:40:46 <fungot> FreeFull: eval `(a b c))
22:40:47 <HackEgo> fungot cannot be stopped by that sword alone.
22:41:00 <fungot> FreeFull: once the forms are read it, there's an extra special guest coming to visit me at the moment.
22:41:17 <oerjan> `learn Finnish suomilaiset ei Perkeleistä on hakkapellittaan. Ei saa peittää.
22:41:38 <oerjan> just adding a necessary warning.
22:41:41 <HackEgo> Finns are helpful, albeit grossly overpopulated (cf. 'Finland').
22:41:53 <HackEgo> Finland is a European country. There are two people in Finland, and at least nine of them are in this channel. Corun drives the bus.
22:41:57 <HackEgo> Monoids are just categories with a single object.
22:41:59 <HackEgo> Categories are just categories.
22:42:08 <oerjan> `learn Finnish suomilaiset ei Perkeleistä on hakkapellittaan. Ei saa peittää. Parasta ennen!
22:42:11 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
22:43:15 <HackEgo> Europe is the national anthem of the Republic of Kosovo.
22:43:21 <oerjan> `learn Finnish suomilaiset ei Perkeleistä on hakkapeliittaan. Ei saa peittää. Parasta ennen!
22:44:43 <fizzie> fungot: Are you, in fact, written in Scheme? Is the Funge-98 source code you always give just a giant sham? #fungotgate
22:44:43 <fungot> fizzie: oh i see, and scheme48 would find them there automatically on startup. it's pretty easy to google.)
22:44:56 <oerjan> `learn Finnish suomalaiset ei Perkeleistä on hakkapeliittaan. Ei saa peittää. Parasta ennen!
22:44:57 <fizzie> The truth is revealed.
22:45:40 <oerjan> i think it now might actually mean something.
22:48:15 <oerjan> Gregor: why is none of this showing up in the repository D:
22:49:28 <fizzie> The tailing part is just "Do not cover. Best before!", but the initial part is a bit vaguer.
22:49:53 <Gregor> oerjan: Because it HATES YOU
22:50:04 <Gregor> `run ls wisdom/*innish*
22:50:06 <HackEgo> ls: cannot access wisdom/*innish*: No such file or directory
22:50:47 <Gregor> Idonno, maybe learn is somehow weirdly incompatible with the new setup...
22:50:58 <Gregor> `learn Finnish isn't a real language.
22:51:07 <HackEgo> Finnish isn't a real language.
22:51:22 <Gregor> Hm. Maybe it has issues with Unicode still???
22:51:26 <HackEgo> ls wisdom/*inni*? ¯\(°_o)/¯
22:52:01 <FireFly> `learn foo/bar this is a test
22:52:03 <HackEgo> /hackenv/bin/learn: 4: cannot create wisdom/foo/bar: Directory nonexistent \ I knew that.
22:52:16 <oerjan> `learn Finnish suomalaiset ei Perkeleistä on hakkapeliittaan. Ei saa peittää. Parasta ennen!
22:52:33 <HackEgo> Finnish isn't a real language.
22:53:02 <oerjan> looks very unicode related...
22:54:23 <oerjan> `run echo höm... >hm...
22:54:32 <HackEgo> cat: hm...: No such file or directory
22:55:45 <oerjan> ït cöüld pössïblÿ älrëädÿ hävë ëxïstëd.
22:56:48 <Gregor> `run echo ë > uuunicode
22:56:52 <copumpkin> http://html9responsiveboilerstrapjs.com/
22:56:58 <HackEgo> cat: uuunicod: No such file or directory
22:56:59 <HackEgo> cat: uuunicode: No such file or directory
22:57:55 <Bike> I like the documentation.
23:19:36 -!- iamcal has quit.
23:19:45 -!- iamcal_ has joined.
23:29:26 -!- ais523 has quit.
23:33:59 -!- sonicspin has quit (Quit: Page closed).
23:36:37 <Gregor> I've got no fucking clue.
23:40:52 <oerjan> well, being 8 bit clean on everything that doesn't need to know unicode should be a good start.
23:40:59 <fizzie> Uuencode the uunicode.
23:41:15 <oerjan> `learn Finnish suomalaiset ei Perkeleistä on hakkapeliittaan. Ei saa peittää. Parasta ennen!
23:41:24 <HackEgo> Finnish suomalaiset ei Perkeleistä on hakkapeliittaan. Ei saa peittää. Parasta ennen!
23:43:36 <oerjan> i have (indirectly) made a monster...
23:43:40 <Gregor> `learn 🐐 <(Unicode goat laments your inability to render Unicode goat.)
23:43:49 <HackEgo> 🐐 <(Unicode goat laments your inability to render Unicode goat.)
23:44:32 <kmc> http://☃.net
23:45:36 <oerjan> it's a snowman? i thought it looked like a catface...
23:46:56 <oerjan> i don't know what that is, but google gives a search suggestion of r ay3 65.c om
23:47:01 <fizzie> This terminal does not recognize http://☃.net as a link.
23:55:23 -!- sebbu has quit (Ping timeout: 276 seconds).